mirror of
https://github.com/cwinfo/matterbridge.git
synced 2025-07-03 18:57:45 +00:00
Update dependencies/vendor (#1659)
This commit is contained in:
17
vendor/github.com/slack-go/slack/block.go
generated
vendored
17
vendor/github.com/slack-go/slack/block.go
generated
vendored
@ -9,14 +9,15 @@ package slack
|
||||
type MessageBlockType string
|
||||
|
||||
const (
|
||||
MBTSection MessageBlockType = "section"
|
||||
MBTDivider MessageBlockType = "divider"
|
||||
MBTImage MessageBlockType = "image"
|
||||
MBTAction MessageBlockType = "actions"
|
||||
MBTContext MessageBlockType = "context"
|
||||
MBTFile MessageBlockType = "file"
|
||||
MBTInput MessageBlockType = "input"
|
||||
MBTHeader MessageBlockType = "header"
|
||||
MBTSection MessageBlockType = "section"
|
||||
MBTDivider MessageBlockType = "divider"
|
||||
MBTImage MessageBlockType = "image"
|
||||
MBTAction MessageBlockType = "actions"
|
||||
MBTContext MessageBlockType = "context"
|
||||
MBTFile MessageBlockType = "file"
|
||||
MBTInput MessageBlockType = "input"
|
||||
MBTHeader MessageBlockType = "header"
|
||||
MBTRichText MessageBlockType = "rich_text"
|
||||
)
|
||||
|
||||
// Block defines an interface all block types should implement
|
||||
|
2
vendor/github.com/slack-go/slack/block_conv.go
generated
vendored
2
vendor/github.com/slack-go/slack/block_conv.go
generated
vendored
@ -65,6 +65,8 @@ func (b *Blocks) UnmarshalJSON(data []byte) error {
|
||||
block = &ImageBlock{}
|
||||
case "input":
|
||||
block = &InputBlock{}
|
||||
case "rich_text":
|
||||
block = &RichTextBlock{}
|
||||
case "section":
|
||||
block = &SectionBlock{}
|
||||
default:
|
||||
|
19
vendor/github.com/slack-go/slack/block_element.go
generated
vendored
19
vendor/github.com/slack-go/slack/block_element.go
generated
vendored
@ -389,13 +389,18 @@ func NewTimePickerBlockElement(actionID string) *TimePickerBlockElement {
|
||||
//
|
||||
// More Information: https://api.slack.com/reference/block-kit/block-elements#input
|
||||
type PlainTextInputBlockElement struct {
|
||||
Type MessageElementType `json:"type"`
|
||||
ActionID string `json:"action_id,omitempty"`
|
||||
Placeholder *TextBlockObject `json:"placeholder,omitempty"`
|
||||
InitialValue string `json:"initial_value,omitempty"`
|
||||
Multiline bool `json:"multiline,omitempty"`
|
||||
MinLength int `json:"min_length,omitempty"`
|
||||
MaxLength int `json:"max_length,omitempty"`
|
||||
Type MessageElementType `json:"type"`
|
||||
ActionID string `json:"action_id,omitempty"`
|
||||
Placeholder *TextBlockObject `json:"placeholder,omitempty"`
|
||||
InitialValue string `json:"initial_value,omitempty"`
|
||||
Multiline bool `json:"multiline,omitempty"`
|
||||
MinLength int `json:"min_length,omitempty"`
|
||||
MaxLength int `json:"max_length,omitempty"`
|
||||
DispatchActionConfig *DispatchActionConfig `json:"dispatch_action_config,omitempty"`
|
||||
}
|
||||
|
||||
type DispatchActionConfig struct {
|
||||
TriggerActionsOn []string `json:"trigger_actions_on,omitempty"`
|
||||
}
|
||||
|
||||
// ElementType returns the type of the Element
|
||||
|
383
vendor/github.com/slack-go/slack/block_rich_text.go
generated
vendored
Normal file
383
vendor/github.com/slack-go/slack/block_rich_text.go
generated
vendored
Normal file
@ -0,0 +1,383 @@
|
||||
package slack
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
)
|
||||
|
||||
// RichTextBlock defines a new block of type rich_text.
|
||||
// More Information: https://api.slack.com/changelog/2019-09-what-they-see-is-what-you-get-and-more-and-less
|
||||
type RichTextBlock struct {
|
||||
Type MessageBlockType `json:"type"`
|
||||
BlockID string `json:"block_id,omitempty"`
|
||||
Elements []RichTextElement `json:"elements"`
|
||||
}
|
||||
|
||||
func (b RichTextBlock) BlockType() MessageBlockType {
|
||||
return b.Type
|
||||
}
|
||||
|
||||
func (e *RichTextBlock) UnmarshalJSON(b []byte) error {
|
||||
var raw struct {
|
||||
Type MessageBlockType `json:"type"`
|
||||
BlockID string `json:"block_id"`
|
||||
RawElements []json.RawMessage `json:"elements"`
|
||||
}
|
||||
if string(b) == "{}" {
|
||||
return nil
|
||||
}
|
||||
if err := json.Unmarshal(b, &raw); err != nil {
|
||||
return err
|
||||
}
|
||||
elems := make([]RichTextElement, 0, len(raw.RawElements))
|
||||
for _, r := range raw.RawElements {
|
||||
var s struct {
|
||||
Type RichTextElementType `json:"type"`
|
||||
}
|
||||
if err := json.Unmarshal(r, &s); err != nil {
|
||||
return err
|
||||
}
|
||||
var elem RichTextElement
|
||||
switch s.Type {
|
||||
case RTESection:
|
||||
elem = &RichTextSection{}
|
||||
default:
|
||||
elems = append(elems, &RichTextUnknown{
|
||||
Type: s.Type,
|
||||
Raw: string(r),
|
||||
})
|
||||
continue
|
||||
}
|
||||
if err := json.Unmarshal(r, &elem); err != nil {
|
||||
return err
|
||||
}
|
||||
elems = append(elems, elem)
|
||||
}
|
||||
*e = RichTextBlock{
|
||||
Type: raw.Type,
|
||||
BlockID: raw.BlockID,
|
||||
Elements: elems,
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// NewRichTextBlock returns a new instance of RichText Block.
|
||||
func NewRichTextBlock(blockID string, elements ...RichTextElement) *RichTextBlock {
|
||||
return &RichTextBlock{
|
||||
Type: MBTRichText,
|
||||
BlockID: blockID,
|
||||
Elements: elements,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextElementType string
|
||||
|
||||
type RichTextElement interface {
|
||||
RichTextElementType() RichTextElementType
|
||||
}
|
||||
|
||||
const (
|
||||
RTEList RichTextElementType = "rich_text_list"
|
||||
RTEPreformatted RichTextElementType = "rich_text_preformatted"
|
||||
RTEQuote RichTextElementType = "rich_text_quote"
|
||||
RTESection RichTextElementType = "rich_text_section"
|
||||
RTEUnknown RichTextElementType = "rich_text_unknown"
|
||||
)
|
||||
|
||||
type RichTextUnknown struct {
|
||||
Type RichTextElementType
|
||||
Raw string
|
||||
}
|
||||
|
||||
func (u RichTextUnknown) RichTextElementType() RichTextElementType {
|
||||
return u.Type
|
||||
}
|
||||
|
||||
type RichTextSection struct {
|
||||
Type RichTextElementType `json:"type"`
|
||||
Elements []RichTextSectionElement `json:"elements"`
|
||||
}
|
||||
|
||||
// ElementType returns the type of the Element
|
||||
func (s RichTextSection) RichTextElementType() RichTextElementType {
|
||||
return s.Type
|
||||
}
|
||||
|
||||
func (e *RichTextSection) UnmarshalJSON(b []byte) error {
|
||||
var raw struct {
|
||||
RawElements []json.RawMessage `json:"elements"`
|
||||
}
|
||||
if string(b) == "{}" {
|
||||
return nil
|
||||
}
|
||||
if err := json.Unmarshal(b, &raw); err != nil {
|
||||
return err
|
||||
}
|
||||
elems := make([]RichTextSectionElement, 0, len(raw.RawElements))
|
||||
for _, r := range raw.RawElements {
|
||||
var s struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
}
|
||||
if err := json.Unmarshal(r, &s); err != nil {
|
||||
return err
|
||||
}
|
||||
var elem RichTextSectionElement
|
||||
switch s.Type {
|
||||
case RTSEText:
|
||||
elem = &RichTextSectionTextElement{}
|
||||
case RTSEChannel:
|
||||
elem = &RichTextSectionChannelElement{}
|
||||
case RTSEUser:
|
||||
elem = &RichTextSectionUserElement{}
|
||||
case RTSEEmoji:
|
||||
elem = &RichTextSectionEmojiElement{}
|
||||
case RTSELink:
|
||||
elem = &RichTextSectionLinkElement{}
|
||||
case RTSETeam:
|
||||
elem = &RichTextSectionTeamElement{}
|
||||
case RTSEUserGroup:
|
||||
elem = &RichTextSectionUserGroupElement{}
|
||||
case RTSEDate:
|
||||
elem = &RichTextSectionDateElement{}
|
||||
case RTSEBroadcast:
|
||||
elem = &RichTextSectionBroadcastElement{}
|
||||
case RTSEColor:
|
||||
elem = &RichTextSectionColorElement{}
|
||||
default:
|
||||
elems = append(elems, &RichTextSectionUnknownElement{
|
||||
Type: s.Type,
|
||||
Raw: string(r),
|
||||
})
|
||||
continue
|
||||
}
|
||||
if err := json.Unmarshal(r, elem); err != nil {
|
||||
return err
|
||||
}
|
||||
elems = append(elems, elem)
|
||||
}
|
||||
*e = RichTextSection{
|
||||
Type: RTESection,
|
||||
Elements: elems,
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// NewRichTextSectionBlockElement .
|
||||
func NewRichTextSection(elements ...RichTextSectionElement) *RichTextSection {
|
||||
return &RichTextSection{
|
||||
Type: RTESection,
|
||||
Elements: elements,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionElementType string
|
||||
|
||||
const (
|
||||
RTSEBroadcast RichTextSectionElementType = "broadcast"
|
||||
RTSEChannel RichTextSectionElementType = "channel"
|
||||
RTSEColor RichTextSectionElementType = "color"
|
||||
RTSEDate RichTextSectionElementType = "date"
|
||||
RTSEEmoji RichTextSectionElementType = "emoji"
|
||||
RTSELink RichTextSectionElementType = "link"
|
||||
RTSETeam RichTextSectionElementType = "team"
|
||||
RTSEText RichTextSectionElementType = "text"
|
||||
RTSEUser RichTextSectionElementType = "user"
|
||||
RTSEUserGroup RichTextSectionElementType = "usergroup"
|
||||
|
||||
RTSEUnknown RichTextSectionElementType = "unknown"
|
||||
)
|
||||
|
||||
type RichTextSectionElement interface {
|
||||
RichTextSectionElementType() RichTextSectionElementType
|
||||
}
|
||||
|
||||
type RichTextSectionTextStyle struct {
|
||||
Bold bool `json:"bold,omitempty"`
|
||||
Italic bool `json:"italic,omitempty"`
|
||||
Strike bool `json:"strike,omitempty"`
|
||||
Code bool `json:"code,omitempty"`
|
||||
}
|
||||
|
||||
type RichTextSectionTextElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Text string `json:"text"`
|
||||
Style *RichTextSectionTextStyle `json:"style,omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionTextElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionTextElement(text string, style *RichTextSectionTextStyle) *RichTextSectionTextElement {
|
||||
return &RichTextSectionTextElement{
|
||||
Type: RTSEText,
|
||||
Text: text,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionChannelElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
ChannelID string `json:"channel_id"`
|
||||
Style *RichTextSectionTextStyle `json:"style,omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionChannelElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionChannelElement(channelID string, style *RichTextSectionTextStyle) *RichTextSectionChannelElement {
|
||||
return &RichTextSectionChannelElement{
|
||||
Type: RTSEText,
|
||||
ChannelID: channelID,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionUserElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
UserID string `json:"user_id"`
|
||||
Style *RichTextSectionTextStyle `json:"style,omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionUserElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionUserElement(userID string, style *RichTextSectionTextStyle) *RichTextSectionUserElement {
|
||||
return &RichTextSectionUserElement{
|
||||
Type: RTSEUser,
|
||||
UserID: userID,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionEmojiElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Name string `json:"name"`
|
||||
SkinTone int `json:"skin_tone"`
|
||||
Style *RichTextSectionTextStyle `json:"style,omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionEmojiElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionEmojiElement(name string, skinTone int, style *RichTextSectionTextStyle) *RichTextSectionEmojiElement {
|
||||
return &RichTextSectionEmojiElement{
|
||||
Type: RTSEEmoji,
|
||||
Name: name,
|
||||
SkinTone: skinTone,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionLinkElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
URL string `json:"url"`
|
||||
Text string `json:"text"`
|
||||
Style *RichTextSectionTextStyle `json:"style,omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionLinkElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionLinkElement(url, text string, style *RichTextSectionTextStyle) *RichTextSectionLinkElement {
|
||||
return &RichTextSectionLinkElement{
|
||||
Type: RTSELink,
|
||||
URL: url,
|
||||
Text: text,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionTeamElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
TeamID string `json:"team_id"`
|
||||
Style *RichTextSectionTextStyle `json:"style.omitempty"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionTeamElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionTeamElement(teamID string, style *RichTextSectionTextStyle) *RichTextSectionTeamElement {
|
||||
return &RichTextSectionTeamElement{
|
||||
Type: RTSETeam,
|
||||
TeamID: teamID,
|
||||
Style: style,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionUserGroupElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
UsergroupID string `json:"usergroup_id"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionUserGroupElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionUserGroupElement(usergroupID string) *RichTextSectionUserGroupElement {
|
||||
return &RichTextSectionUserGroupElement{
|
||||
Type: RTSEUserGroup,
|
||||
UsergroupID: usergroupID,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionDateElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Timestamp string `json:"timestamp"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionDateElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionDateElement(timestamp string) *RichTextSectionDateElement {
|
||||
return &RichTextSectionDateElement{
|
||||
Type: RTSEDate,
|
||||
Timestamp: timestamp,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionBroadcastElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Range string `json:"range"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionBroadcastElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionBroadcastElement(rangeStr string) *RichTextSectionBroadcastElement {
|
||||
return &RichTextSectionBroadcastElement{
|
||||
Type: RTSEBroadcast,
|
||||
Range: rangeStr,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionColorElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Value string `json:"value"`
|
||||
}
|
||||
|
||||
func (r RichTextSectionColorElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
||||
|
||||
func NewRichTextSectionColorElement(value string) *RichTextSectionColorElement {
|
||||
return &RichTextSectionColorElement{
|
||||
Type: RTSEColor,
|
||||
Value: value,
|
||||
}
|
||||
}
|
||||
|
||||
type RichTextSectionUnknownElement struct {
|
||||
Type RichTextSectionElementType `json:"type"`
|
||||
Raw string
|
||||
}
|
||||
|
||||
func (r RichTextSectionUnknownElement) RichTextSectionElementType() RichTextSectionElementType {
|
||||
return r.Type
|
||||
}
|
7
vendor/github.com/slack-go/slack/chat.go
generated
vendored
7
vendor/github.com/slack-go/slack/chat.go
generated
vendored
@ -188,7 +188,12 @@ func (api *Client) UpdateMessageContext(ctx context.Context, channelID, timestam
|
||||
|
||||
// UnfurlMessage unfurls a message in a channel
|
||||
func (api *Client) UnfurlMessage(channelID, timestamp string, unfurls map[string]Attachment, options ...MsgOption) (string, string, string, error) {
|
||||
return api.SendMessageContext(context.Background(), channelID, MsgOptionUnfurl(timestamp, unfurls), MsgOptionCompose(options...))
|
||||
return api.UnfurlMessageContext(context.Background(), channelID, timestamp, unfurls, options...)
|
||||
}
|
||||
|
||||
// UnfurlMessageContext unfurls a message in a channel with a custom context
|
||||
func (api *Client) UnfurlMessageContext(ctx context.Context, channelID, timestamp string, unfurls map[string]Attachment, options ...MsgOption) (string, string, string, error) {
|
||||
return api.SendMessageContext(ctx, channelID, MsgOptionUnfurl(timestamp, unfurls), MsgOptionCompose(options...))
|
||||
}
|
||||
|
||||
// UnfurlMessageWithAuthURL sends an unfurl request containing an
|
||||
|
32
vendor/github.com/slack-go/slack/messages.go
generated
vendored
32
vendor/github.com/slack-go/slack/messages.go
generated
vendored
@ -19,6 +19,38 @@ type Message struct {
|
||||
PreviousMessage *Msg `json:"previous_message,omitempty"`
|
||||
}
|
||||
|
||||
// Msg SubTypes (https://api.slack.com/events/message)
|
||||
const (
|
||||
MsgSubTypeBotMessage = "bot_message" // [Events API, RTM] A message was posted by an integration
|
||||
MsgSubTypeMeMessage = "me_message" // [Events API, RTM] A /me message was sent
|
||||
MsgSubTypeMessageChanged = "message_changed" // [Events API, RTM] A message was changed
|
||||
MsgSubTypeMessageDeleted = "message_deleted" // [Events API, RTM] A message was deleted
|
||||
MsgSubTypeMessageReplied = "message_replied" // [Events API, RTM] A message thread received a reply
|
||||
MsgSubTypeReplyBroadcast = "reply_broadcast" // @Deprecated (No longer served) A message thread's reply was broadcast to a channel
|
||||
MsgSubTypeThreadBroadcast = "thread_broadcast" // [Events API, RTM] A message thread's reply was broadcast to a channel
|
||||
MsgSubTypeChannelJoin = "channel_join" // [Events API, RTM] A member joined a channel
|
||||
MsgSubTypeChannelLeave = "channel_leave" // [Events API, RTM] A member left a channel
|
||||
MsgSubTypeChannelTopic = "channel_topic" // [Events API, RTM] A channel topic was updated
|
||||
MsgSubTypeChannelPurpose = "channel_purpose" // [Events API, RTM] A channel purpose was updated
|
||||
MsgSubTypeChannelName = "channel_name" // [Events API, RTM] A channel was renamed
|
||||
MsgSubTypeChannelArchive = "channel_archive" // [Events API, RTM] A channel was archived
|
||||
MsgSubTypeChannelUnarchive = "channel_unarchive" // [Events API, RTM] A channel was unarchived
|
||||
MsgSubTypeGroupJoin = "group_join" // [RTM] A member joined a group
|
||||
MsgSubTypeGroupLeave = "group_leave" // [RTM] A member left a group
|
||||
MsgSubTypeGroupTopic = "group_topic" // [RTM] A group topic was updated
|
||||
MsgSubTypeGroupPurpose = "group_purpose" // [RTM] A group purpose was updated
|
||||
MsgSubTypeGroupName = "group_name" // [RTM] A group was renamed
|
||||
MsgSubTypeGroupArchive = "group_archive" // [RTM] A group was archived
|
||||
MsgSubTypeGroupUnarchive = "group_unarchive" // [RTM] A group was unarchived
|
||||
MsgSubTypeFileShare = "file_share" // [Events API, RTM] A file was shared into a channel
|
||||
MsgSubTypeFileComment = "file_comment" // [RTM] A comment was added to a file
|
||||
MsgSubTypeGileMention = "file_mention" // [RTM] A file was mentioned in a channel
|
||||
MsgSubTypePinnedItem = "pinned_item" // [RTM] An item was pinned in a channel
|
||||
MsgSubTypeUnpinnedItem = "unpinned_item" // [RTM] An item was unpinned from a channel
|
||||
MsgSubTypeEkmAccessDenied = "ekm_access_denied" // [Events API, RTM] Message content redacted due to Enterprise Key Management (EKM)
|
||||
MsgSubTypeChannelPostingPermissions = "channel_posting_permissions" // [Events API, RTM] The posting permissions for a channel changed
|
||||
)
|
||||
|
||||
// Msg contains information about a slack message
|
||||
type Msg struct {
|
||||
// Basic Message
|
||||
|
10
vendor/github.com/slack-go/slack/misc.go
generated
vendored
10
vendor/github.com/slack-go/slack/misc.go
generated
vendored
@ -41,9 +41,17 @@ func (t SlackResponse) Err() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
return errors.New(t.Error)
|
||||
return SlackErrorResponse{Err: t.Error, ResponseMetadata: t.ResponseMetadata}
|
||||
}
|
||||
|
||||
// SlackErrorResponse brings along the metadata of errors returned by the Slack API.
|
||||
type SlackErrorResponse struct {
|
||||
Err string
|
||||
ResponseMetadata ResponseMetadata
|
||||
}
|
||||
|
||||
func (r SlackErrorResponse) Error() string { return r.Err }
|
||||
|
||||
// RateLimitedError represents the rate limit respond from slack
|
||||
type RateLimitedError struct {
|
||||
RetryAfter time.Duration
|
||||
|
22
vendor/github.com/slack-go/slack/oauth.go
generated
vendored
22
vendor/github.com/slack-go/slack/oauth.go
generated
vendored
@ -42,6 +42,8 @@ type OAuthV2Response struct {
|
||||
IncomingWebhook OAuthResponseIncomingWebhook `json:"incoming_webhook"`
|
||||
Enterprise OAuthV2ResponseEnterprise `json:"enterprise"`
|
||||
AuthedUser OAuthV2ResponseAuthedUser `json:"authed_user"`
|
||||
RefreshToken string `json:"refresh_token"`
|
||||
ExpiresIn int `json:"expires_in"`
|
||||
SlackResponse
|
||||
}
|
||||
|
||||
@ -132,3 +134,23 @@ func GetOAuthV2ResponseContext(ctx context.Context, client httpClient, clientID,
|
||||
}
|
||||
return response, response.Err()
|
||||
}
|
||||
|
||||
// RefreshOAuthV2AccessContext with a context, gets a V2 OAuth access token response
|
||||
func RefreshOAuthV2Token(client httpClient, clientID, clientSecret, refreshToken string) (resp *OAuthV2Response, err error) {
|
||||
return RefreshOAuthV2TokenContext(context.Background(), client, clientID, clientSecret, refreshToken)
|
||||
}
|
||||
|
||||
// RefreshOAuthV2AccessContext with a context, gets a V2 OAuth access token response
|
||||
func RefreshOAuthV2TokenContext(ctx context.Context, client httpClient, clientID, clientSecret, refreshToken string) (resp *OAuthV2Response, err error) {
|
||||
values := url.Values{
|
||||
"client_id": {clientID},
|
||||
"client_secret": {clientSecret},
|
||||
"refresh_token": {refreshToken},
|
||||
"grant_type": {"refresh_token"},
|
||||
}
|
||||
response := &OAuthV2Response{}
|
||||
if err = postForm(ctx, client, APIURL+"oauth.v2.access", values, response, discard{}); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return response, response.Err()
|
||||
}
|
||||
|
4
vendor/github.com/slack-go/slack/users.go
generated
vendored
4
vendor/github.com/slack-go/slack/users.go
generated
vendored
@ -469,9 +469,7 @@ func (api *Client) SetUserPhoto(image string, params UserSetPhotoParams) error {
|
||||
// SetUserPhotoContext changes the currently authenticated user's profile image using a custom context
|
||||
func (api *Client) SetUserPhotoContext(ctx context.Context, image string, params UserSetPhotoParams) (err error) {
|
||||
response := &SlackResponse{}
|
||||
values := url.Values{
|
||||
"token": {api.token},
|
||||
}
|
||||
values := url.Values{}
|
||||
if params.CropX != DEFAULT_USER_PHOTO_CROP_X {
|
||||
values.Add("crop_x", strconv.Itoa(params.CropX))
|
||||
}
|
||||
|
3
vendor/github.com/slack-go/slack/webhooks.go
generated
vendored
3
vendor/github.com/slack-go/slack/webhooks.go
generated
vendored
@ -15,6 +15,9 @@ type WebhookMessage struct {
|
||||
Attachments []Attachment `json:"attachments,omitempty"`
|
||||
Parse string `json:"parse,omitempty"`
|
||||
Blocks *Blocks `json:"blocks,omitempty"`
|
||||
ResponseType string `json:"response_type,omitempty"`
|
||||
ReplaceOriginal bool `json:"replace_original,omitempty"`
|
||||
DeleteOriginal bool `json:"delete_original,omitempty"`
|
||||
}
|
||||
|
||||
func PostWebhook(url string, msg *WebhookMessage) error {
|
||||
|
Reference in New Issue
Block a user