@@ -228,6 +228,8 @@ <h3>Inherited members</h3>
228228 return CallBlock(**block)
229229 elif type == HeaderBlock.type:
230230 return HeaderBlock(**block)
231+ elif type == MarkdownBlock.type:
232+ return MarkdownBlock(**block)
231233 elif type == VideoBlock.type:
232234 return VideoBlock(**block)
233235 elif type == RichTextBlock.type:
@@ -261,6 +263,7 @@ <h3>Subclasses</h3>
261263< li > < a title ="slack_sdk.models.blocks.blocks.HeaderBlock " href ="#slack_sdk.models.blocks.blocks.HeaderBlock "> HeaderBlock</ a > </ li >
262264< li > < a title ="slack_sdk.models.blocks.blocks.ImageBlock " href ="#slack_sdk.models.blocks.blocks.ImageBlock "> ImageBlock</ a > </ li >
263265< li > < a title ="slack_sdk.models.blocks.blocks.InputBlock " href ="#slack_sdk.models.blocks.blocks.InputBlock "> InputBlock</ a > </ li >
266+ < li > < a title ="slack_sdk.models.blocks.blocks.MarkdownBlock " href ="#slack_sdk.models.blocks.blocks.MarkdownBlock "> MarkdownBlock</ a > </ li >
264267< li > < a title ="slack_sdk.models.blocks.blocks.RichTextBlock " href ="#slack_sdk.models.blocks.blocks.RichTextBlock "> RichTextBlock</ a > </ li >
265268< li > < a title ="slack_sdk.models.blocks.blocks.SectionBlock " href ="#slack_sdk.models.blocks.blocks.SectionBlock "> SectionBlock</ a > </ li >
266269< li > < a title ="slack_sdk.models.blocks.blocks.VideoBlock " href ="#slack_sdk.models.blocks.blocks.VideoBlock "> VideoBlock</ a > </ li >
@@ -1098,6 +1101,113 @@ <h3>Inherited members</h3>
10981101</ li >
10991102</ ul >
11001103</ dd >
1104+ < dt id ="slack_sdk.models.blocks.blocks.MarkdownBlock "> < code class ="flex name class ">
1105+ < span > class < span class ="ident "> MarkdownBlock</ span > </ span >
1106+ < span > (</ span > < span > *, text: str, block_id: str | None = None, **others: dict)</ span >
1107+ </ code > </ dt >
1108+ < dd >
1109+ < details class ="source ">
1110+ < summary >
1111+ < span > Expand source code</ span >
1112+ </ summary >
1113+ < pre > < code class ="python "> class MarkdownBlock(Block):
1114+ type = "markdown"
1115+ text_max_length = 12000
1116+
1117+ @property
1118+ def attributes(self) -> Set[str]: # type: ignore[override]
1119+ return super().attributes.union({"text"})
1120+
1121+ def __init__(
1122+ self,
1123+ *,
1124+ text: str,
1125+ block_id: Optional[str] = None,
1126+ **others: dict,
1127+ ):
1128+ """Displays formatted markdown.
1129+ https://docs.slack.dev/reference/block-kit/blocks/markdown-block/
1130+
1131+ Args:
1132+ block_id: A string acting as a unique identifier for a block. If not specified, one will be generated.
1133+ Maximum length for this field is 255 characters.
1134+ block_id should be unique for each message and each iteration of a message.
1135+ If a message is updated, use a new block_id.
1136+ text (required): The standard markdown-formatted text. Limit 12,000 characters max.
1137+ """
1138+ super().__init__(type=self.type, block_id=block_id)
1139+ show_unknown_key_warning(self, others)
1140+
1141+ self.text = text
1142+
1143+ @JsonValidator("text attribute must be specified")
1144+ def _validate_text(self):
1145+ return self.text != ""
1146+
1147+ @JsonValidator(f"text attribute cannot exceed {text_max_length} characters")
1148+ def _validate_alt_text_length(self):
1149+ return len(self.text) <= self.text_max_length</ code > </ pre >
1150+ </ details >
1151+ < div class ="desc "> < p > Blocks are a series of components that can be combined
1152+ to create visually rich and compellingly interactive messages.
1153+ < a href ="https://api.slack.com/reference/block-kit/blocks "> https://api.slack.com/reference/block-kit/blocks</ a > </ p >
1154+ < p > Displays formatted markdown.
1155+ < a href ="https://docs.slack.dev/reference/block-kit/blocks/markdown-block/ "> https://docs.slack.dev/reference/block-kit/blocks/markdown-block/</ a > </ p >
1156+ < h2 id ="args "> Args</ h2 >
1157+ < dl >
1158+ < dt > < strong > < code > block_id</ code > </ strong > </ dt >
1159+ < dd > A string acting as a unique identifier for a block. If not specified, one will be generated.
1160+ Maximum length for this field is 255 characters.
1161+ block_id should be unique for each message and each iteration of a message.
1162+ If a message is updated, use a new block_id.</ dd >
1163+ < dt > < strong > < code > text</ code > </ strong > : < code > required</ code > </ dt >
1164+ < dd > The standard markdown-formatted text. Limit 12,000 characters max.</ dd >
1165+ </ dl > </ div >
1166+ < h3 > Ancestors</ h3 >
1167+ < ul class ="hlist ">
1168+ < li > < a title ="slack_sdk.models.blocks.blocks.Block " href ="#slack_sdk.models.blocks.blocks.Block "> Block</ a > </ li >
1169+ < li > < a title ="slack_sdk.models.basic_objects.JsonObject " href ="../basic_objects.html#slack_sdk.models.basic_objects.JsonObject "> JsonObject</ a > </ li >
1170+ < li > < a title ="slack_sdk.models.basic_objects.BaseObject " href ="../basic_objects.html#slack_sdk.models.basic_objects.BaseObject "> BaseObject</ a > </ li >
1171+ </ ul >
1172+ < h3 > Class variables</ h3 >
1173+ < dl >
1174+ < dt id ="slack_sdk.models.blocks.blocks.MarkdownBlock.text_max_length "> < code class ="name "> var < span class ="ident "> text_max_length</ span > </ code > </ dt >
1175+ < dd >
1176+ < div class ="desc "> < p > The type of the None singleton.</ p > </ div >
1177+ </ dd >
1178+ < dt id ="slack_sdk.models.blocks.blocks.MarkdownBlock.type "> < code class ="name "> var < span class ="ident "> type</ span > </ code > </ dt >
1179+ < dd >
1180+ < div class ="desc "> < p > The type of the None singleton.</ p > </ div >
1181+ </ dd >
1182+ </ dl >
1183+ < h3 > Instance variables</ h3 >
1184+ < dl >
1185+ < dt id ="slack_sdk.models.blocks.blocks.MarkdownBlock.attributes "> < code class ="name "> prop < span class ="ident "> attributes</ span > : Set[str]</ code > </ dt >
1186+ < dd >
1187+ < details class ="source ">
1188+ < summary >
1189+ < span > Expand source code</ span >
1190+ </ summary >
1191+ < pre > < code class ="python "> @property
1192+ def attributes(self) -> Set[str]: # type: ignore[override]
1193+ return super().attributes.union({"text"})</ code > </ pre >
1194+ </ details >
1195+ < div class ="desc "> < p > Build an unordered collection of unique elements.</ p > </ div >
1196+ </ dd >
1197+ </ dl >
1198+ < h3 > Inherited members</ h3 >
1199+ < ul class ="hlist ">
1200+ < li > < code > < b > < a title ="slack_sdk.models.blocks.blocks.Block " href ="#slack_sdk.models.blocks.blocks.Block "> Block</ a > </ b > </ code > :
1201+ < ul class ="hlist ">
1202+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.Block.block_id_max_length " href ="#slack_sdk.models.blocks.blocks.Block.block_id_max_length "> block_id_max_length</ a > </ code > </ li >
1203+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.Block.get_non_null_attributes " href ="../basic_objects.html#slack_sdk.models.basic_objects.JsonObject.get_non_null_attributes "> get_non_null_attributes</ a > </ code > </ li >
1204+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.Block.logger " href ="#slack_sdk.models.blocks.blocks.Block.logger "> logger</ a > </ code > </ li >
1205+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.Block.to_dict " href ="../basic_objects.html#slack_sdk.models.basic_objects.JsonObject.to_dict "> to_dict</ a > </ code > </ li >
1206+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.Block.validate_json " href ="../basic_objects.html#slack_sdk.models.basic_objects.JsonObject.validate_json "> validate_json</ a > </ code > </ li >
1207+ </ ul >
1208+ </ li >
1209+ </ ul >
1210+ </ dd >
11011211< dt id ="slack_sdk.models.blocks.blocks.RichTextBlock "> < code class ="flex name class ">
11021212< span > class < span class ="ident "> RichTextBlock</ span > </ span >
11031213< span > (</ span > < span > *,< br > elements: Sequence[dict | < a title ="slack_sdk.models.blocks.block_elements.RichTextElement " href ="block_elements.html#slack_sdk.models.blocks.block_elements.RichTextElement "> RichTextElement</ a > ],< br > block_id: str | None = None,< br > **others: dict)</ span >
@@ -1652,6 +1762,14 @@ <h4><code><a title="slack_sdk.models.blocks.blocks.InputBlock" href="#slack_sdk.
16521762</ ul >
16531763</ li >
16541764< li >
1765+ < h4 > < code > < a title ="slack_sdk.models.blocks.blocks.MarkdownBlock " href ="#slack_sdk.models.blocks.blocks.MarkdownBlock "> MarkdownBlock</ a > </ code > </ h4 >
1766+ < ul class ="">
1767+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.MarkdownBlock.attributes " href ="#slack_sdk.models.blocks.blocks.MarkdownBlock.attributes "> attributes</ a > </ code > </ li >
1768+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.MarkdownBlock.text_max_length " href ="#slack_sdk.models.blocks.blocks.MarkdownBlock.text_max_length "> text_max_length</ a > </ code > </ li >
1769+ < li > < code > < a title ="slack_sdk.models.blocks.blocks.MarkdownBlock.type " href ="#slack_sdk.models.blocks.blocks.MarkdownBlock.type "> type</ a > </ code > </ li >
1770+ </ ul >
1771+ </ li >
1772+ < li >
16551773< h4 > < code > < a title ="slack_sdk.models.blocks.blocks.RichTextBlock " href ="#slack_sdk.models.blocks.blocks.RichTextBlock "> RichTextBlock</ a > </ code > </ h4 >
16561774< ul class ="">
16571775< li > < code > < a title ="slack_sdk.models.blocks.blocks.RichTextBlock.attributes " href ="#slack_sdk.models.blocks.blocks.RichTextBlock.attributes "> attributes</ a > </ code > </ li >
0 commit comments