refactor(api/core/app/segments): Support more kinds of Segments. (#6706)
Signed-off-by: -LAN- <laipz8200@outlook.com>pull/6688/head^2
parent
6b50bb0fe6
commit
c6996a48a4
@ -1,19 +1,22 @@
|
|||||||
from pydantic import BaseModel
|
|
||||||
|
|
||||||
from .segments import Segment
|
from .segments import Segment
|
||||||
|
from .types import SegmentType
|
||||||
|
|
||||||
|
|
||||||
class SegmentGroup(BaseModel):
|
class SegmentGroup(Segment):
|
||||||
segments: list[Segment]
|
value_type: SegmentType = SegmentType.GROUP
|
||||||
|
value: list[Segment]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def text(self):
|
def text(self):
|
||||||
return ''.join([segment.text for segment in self.segments])
|
return ''.join([segment.text for segment in self.value])
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def log(self):
|
def log(self):
|
||||||
return ''.join([segment.log for segment in self.segments])
|
return ''.join([segment.log for segment in self.value])
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def markdown(self):
|
def markdown(self):
|
||||||
return ''.join([segment.markdown for segment in self.segments])
|
return ''.join([segment.markdown for segment in self.value])
|
||||||
|
|
||||||
|
def to_object(self):
|
||||||
|
return [segment.to_object() for segment in self.value]
|
||||||
|
|||||||
Loading…
Reference in New Issue