summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/slack-go/slack/block_image.go
blob: 6de3f63a24146ae5f76997d4e1ef24b634abdd82 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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"`
	Title    *TextBlockObject `json:"title"`
}

// 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,
	}
}