36 lines
1.2 KiB
Python
36 lines
1.2 KiB
Python
from orm.reaction import ReactionKind
|
||
|
||
PROPOSAL_REACTIONS = [
|
||
ReactionKind.ACCEPT.value,
|
||
ReactionKind.REJECT.value,
|
||
ReactionKind.AGREE.value,
|
||
ReactionKind.DISAGREE.value,
|
||
ReactionKind.ASK.value,
|
||
ReactionKind.PROPOSE.value,
|
||
]
|
||
|
||
PROOF_REACTIONS = [ReactionKind.PROOF.value, ReactionKind.DISPROOF.value]
|
||
RATING_REACTIONS = [ReactionKind.LIKE.value, ReactionKind.DISLIKE.value]
|
||
POSITIVE_REACTIONS = [ReactionKind.ACCEPT.value, ReactionKind.LIKE.value, ReactionKind.PROOF.value]
|
||
NEGATIVE_REACTIONS = [ReactionKind.REJECT.value, ReactionKind.DISLIKE.value, ReactionKind.DISPROOF.value]
|
||
|
||
|
||
def is_negative(x: ReactionKind | str) -> bool:
|
||
"""Проверяет, является ли реакция негативной.
|
||
|
||
Args:
|
||
x: ReactionKind enum или строка с названием реакции
|
||
"""
|
||
value = x.value if isinstance(x, ReactionKind) else x
|
||
return value in NEGATIVE_REACTIONS
|
||
|
||
|
||
def is_positive(x: ReactionKind | str) -> bool:
|
||
"""Проверяет, является ли реакция позитивной.
|
||
|
||
Args:
|
||
x: ReactionKind enum или строка с названием реакции
|
||
"""
|
||
value = x.value if isinstance(x, ReactionKind) else x
|
||
return value in POSITIVE_REACTIONS
|