chore: move MessageEmbedBuilder
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / format (pull_request) Has been cancelled
CI / test (1.13) (pull_request) Has been cancelled
CI / test (1.14) (pull_request) Has been cancelled
CI / test (1.15) (pull_request) Has been cancelled
CI / test (1.16) (pull_request) Has been cancelled
CI / test (1.17) (pull_request) Has been cancelled
CI / test (1.18) (pull_request) Has been cancelled
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / format (pull_request) Has been cancelled
CI / test (1.13) (pull_request) Has been cancelled
CI / test (1.14) (pull_request) Has been cancelled
CI / test (1.15) (pull_request) Has been cancelled
CI / test (1.16) (pull_request) Has been cancelled
CI / test (1.17) (pull_request) Has been cancelled
CI / test (1.18) (pull_request) Has been cancelled
This commit is contained in:
parent
6221ca05b9
commit
88a40c83dc
2 changed files with 78 additions and 75 deletions
78
builder.go
Normal file
78
builder.go
Normal file
|
@ -0,0 +1,78 @@
|
|||
package discordgo
|
||||
|
||||
import "time"
|
||||
|
||||
// MessageEmbedBuilder for make MessageEmbed struct.
|
||||
type MessageEmbedBuilder struct {
|
||||
*MessageEmbed
|
||||
}
|
||||
|
||||
// NewMessageEmbedBuilder creates a new MessageEmbedBuilder struct.
|
||||
func NewMessageEmbedBuilder() *MessageEmbedBuilder {
|
||||
return &MessageEmbedBuilder{}
|
||||
}
|
||||
|
||||
// SetTitle sets title for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetTitle(title string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Title = title
|
||||
return b
|
||||
}
|
||||
|
||||
// SetDescription sets description for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetDescription(desc string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Description = desc
|
||||
return b
|
||||
}
|
||||
|
||||
// SetColor sets color for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetColor(color int) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Color = color
|
||||
return b
|
||||
}
|
||||
|
||||
// SetThumbnail sets thumbnail for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetThumbnail(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Thumbnail = &MessageEmbedThumbnail{URL: url}
|
||||
return b
|
||||
}
|
||||
|
||||
// SetImage sets image for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetImage(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Image = &MessageEmbedImage{URL: url}
|
||||
return b
|
||||
}
|
||||
|
||||
// SetTimestamp sets timestamp for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetTimestamp(times time.Time) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Timestamp = times.Format(time.RFC3339)
|
||||
return b
|
||||
}
|
||||
|
||||
// SetFooter sets footer for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetFooter(footer MessageEmbedFooter) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Footer = &footer
|
||||
return b
|
||||
}
|
||||
|
||||
// AddFields adds fields for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) AddFields(fields ...*MessageEmbedField) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Fields = fields
|
||||
return b
|
||||
}
|
||||
|
||||
// SetAuthor sets author for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetAuthor(author MessageEmbedAuthor) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Author = &author
|
||||
return b
|
||||
}
|
||||
|
||||
// SetURL sets url for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetURL(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.URL = url
|
||||
return b
|
||||
}
|
||||
|
||||
// Build to MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) Build() *MessageEmbed {
|
||||
return b.MessageEmbed
|
||||
}
|
75
message.go
75
message.go
|
@ -431,81 +431,6 @@ type MessageEmbed struct {
|
|||
Fields []*MessageEmbedField `json:"fields,omitempty"`
|
||||
}
|
||||
|
||||
// MessageEmbedBuilder for make MessageEmbed struct.
|
||||
type MessageEmbedBuilder struct {
|
||||
*MessageEmbed
|
||||
}
|
||||
|
||||
// NewMessageEmbedBuilder creates a new MessageEmbedBuilder struct.
|
||||
func NewMessageEmbedBuilder() *MessageEmbedBuilder {
|
||||
return &MessageEmbedBuilder{}
|
||||
}
|
||||
|
||||
// SetTitle sets title for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetTitle(title string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Title = title
|
||||
return b
|
||||
}
|
||||
|
||||
// SetDescription sets description for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetDescription(desc string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Description = desc
|
||||
return b
|
||||
}
|
||||
|
||||
// SetColor sets color for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetColor(color int) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Color = color
|
||||
return b
|
||||
}
|
||||
|
||||
// SetThumbnail sets thumbnail for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetThumbnail(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Thumbnail = &MessageEmbedThumbnail{URL: url}
|
||||
return b
|
||||
}
|
||||
|
||||
// SetImage sets image for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetImage(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Image = &MessageEmbedImage{URL: url}
|
||||
return b
|
||||
}
|
||||
|
||||
// SetTimestamp sets timestamp for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetTimestamp(times time.Time) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Timestamp = times.Format(time.RFC3339)
|
||||
return b
|
||||
}
|
||||
|
||||
// SetFooter sets footer for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetFooter(footer MessageEmbedFooter) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Footer = &footer
|
||||
return b
|
||||
}
|
||||
|
||||
// AddFields adds fields for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) AddFields(fields ...*MessageEmbedField) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Fields = fields
|
||||
return b
|
||||
}
|
||||
|
||||
// SetAuthor sets author for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetAuthor(author MessageEmbedAuthor) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.Author = &author
|
||||
return b
|
||||
}
|
||||
|
||||
// SetURL sets url for MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) SetURL(url string) *MessageEmbedBuilder {
|
||||
b.MessageEmbed.URL = url
|
||||
return b
|
||||
}
|
||||
|
||||
// Build to MessageEmbed.
|
||||
func (b *MessageEmbedBuilder) Build() *MessageEmbed {
|
||||
return b.MessageEmbed
|
||||
}
|
||||
|
||||
// EmbedType is the type of embed
|
||||
// https://discord.com/developers/docs/resources/channel#embed-object-embed-types
|
||||
type EmbedType string
|
||||
|
|
Loading…
Reference in a new issue