1
0
Fork 0
mirror of https://github.com/diamondburned/cchat-discord.git synced 2025-03-28 04:49:52 +00:00
cchat-discord/internal/segments/avatar/avatar.go

36 lines
667 B
Go
Raw Normal View History

2021-03-13 08:21:12 +00:00
package avatar
import (
"github.com/diamondburned/cchat/text"
"github.com/diamondburned/cchat/utils/empty"
)
// Segment describes an avatar segment.
type Segment struct {
empty.TextSegment
Position int
URL string
Size int // optional
Text string // optional
}
func (s Segment) Bounds() (int, int) { return s.Position, s.Position }
2021-03-26 06:32:15 +00:00
func (s Segment) AsAvatarer() text.Avatarer { return avatarURL(s) }
2021-03-13 08:21:12 +00:00
2021-03-26 06:32:15 +00:00
type avatarURL Segment
2021-03-13 08:21:12 +00:00
var _ text.Avatarer = avatarURL{}
func (aurl avatarURL) AvatarText() string {
2021-03-26 06:32:15 +00:00
return aurl.Text
2021-03-13 08:21:12 +00:00
}
func (aurl avatarURL) AvatarSize() int {
2021-03-26 06:32:15 +00:00
return aurl.Size
2021-03-13 08:21:12 +00:00
}
func (aurl avatarURL) Avatar() string {
2021-03-26 06:32:15 +00:00
return aurl.URL
2021-03-13 08:21:12 +00:00
}