2019-09-07 22:46:58 +02:00
|
|
|
package slack
|
|
|
|
|
|
|
|
// ImageBlock defines data required to display an image as a block element
|
|
|
|
//
|
|
|
|
// More Information: https://api.slack.com/reference/messaging/blocks#image
|
|
|
|
type ImageBlock struct {
|
|
|
|
Type MessageBlockType `json:"type"`
|
|
|
|
ImageURL string `json:"image_url"`
|
|
|
|
AltText string `json:"alt_text"`
|
|
|
|
BlockID string `json:"block_id,omitempty"`
|
2020-07-18 17:27:41 +02:00
|
|
|
Title *TextBlockObject `json:"title,omitempty"`
|
2019-09-07 22:46:58 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
// BlockType returns the type of the block
|
|
|
|
func (s ImageBlock) BlockType() MessageBlockType {
|
|
|
|
return s.Type
|
|
|
|
}
|
|
|
|
|
|
|
|
// NewImageBlock returns an instance of a new Image Block type
|
|
|
|
func NewImageBlock(imageURL, altText, blockID string, title *TextBlockObject) *ImageBlock {
|
|
|
|
return &ImageBlock{
|
|
|
|
Type: MBTImage,
|
|
|
|
ImageURL: imageURL,
|
|
|
|
AltText: altText,
|
|
|
|
BlockID: blockID,
|
|
|
|
Title: title,
|
|
|
|
}
|
|
|
|
}
|