Add basic message class
This commit is contained in:
parent
2eb26c5532
commit
d54df18d5e
1 changed files with 37 additions and 0 deletions
37
cheuph/message.py
Normal file
37
cheuph/message.py
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
from typing import Hashable, Optional
|
||||
|
||||
from .markup import AttributedText
|
||||
|
||||
__all__ = ["Message"]
|
||||
|
||||
|
||||
class Message:
|
||||
def __init__(self,
|
||||
message_id: Hashable,
|
||||
parent_id: Optional[Hashable],
|
||||
author: str,
|
||||
content: str,
|
||||
) -> None:
|
||||
self._message_id = message_id
|
||||
self._parent_id = parent_id
|
||||
self._author = author
|
||||
self._content = content
|
||||
|
||||
@property
|
||||
def message_id(self) -> Hashable:
|
||||
return self._message_id
|
||||
|
||||
@property
|
||||
def parent_id(self) -> Optional[Hashable]:
|
||||
return self._parent_id
|
||||
|
||||
@property
|
||||
def author(self) -> str:
|
||||
return self._author
|
||||
|
||||
@property
|
||||
def content(self) -> str:
|
||||
return self._content
|
||||
|
||||
def render_content(self) -> AttributedText:
|
||||
return AttributedText(self.content)
|
||||
Loading…
Add table
Add a link
Reference in a new issue