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"`
|
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
|
// EmbedType is the type of embed
|
||||||
// https://discord.com/developers/docs/resources/channel#embed-object-embed-types
|
// https://discord.com/developers/docs/resources/channel#embed-object-embed-types
|
||||||
type EmbedType string
|
type EmbedType string
|
||||||
|
|
Loading…
Reference in a new issue