summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go')
-rw-r--r--vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go84
1 files changed, 0 insertions, 84 deletions
diff --git a/vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go b/vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go
deleted file mode 100644
index 827bf35b..00000000
--- a/vendor/github.com/mattermost/mattermost-server/model/slack_attachment.go
+++ /dev/null
@@ -1,84 +0,0 @@
-// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-package model
-
-import (
- "fmt"
- "regexp"
-)
-
-var linkWithTextRegex = regexp.MustCompile(`<([^<\|]+)\|([^>]+)>`)
-
-type SlackAttachment struct {
- Id int64 `json:"id"`
- Fallback string `json:"fallback"`
- Color string `json:"color"`
- Pretext string `json:"pretext"`
- AuthorName string `json:"author_name"`
- AuthorLink string `json:"author_link"`
- AuthorIcon string `json:"author_icon"`
- Title string `json:"title"`
- TitleLink string `json:"title_link"`
- Text string `json:"text"`
- Fields []*SlackAttachmentField `json:"fields"`
- ImageURL string `json:"image_url"`
- ThumbURL string `json:"thumb_url"`
- Footer string `json:"footer"`
- FooterIcon string `json:"footer_icon"`
- Timestamp interface{} `json:"ts"` // This is either a string or an int64
- Actions []*PostAction `json:"actions,omitempty"`
-}
-
-type SlackAttachmentField struct {
- Title string `json:"title"`
- Value interface{} `json:"value"`
- Short bool `json:"short"`
-}
-
-func StringifySlackFieldValue(a []*SlackAttachment) []*SlackAttachment {
- var nonNilAttachments []*SlackAttachment
- for _, attachment := range a {
- if attachment == nil {
- continue
- }
- nonNilAttachments = append(nonNilAttachments, attachment)
-
- var nonNilFields []*SlackAttachmentField
- for _, field := range attachment.Fields {
- if field == nil {
- continue
- }
- nonNilFields = append(nonNilFields, field)
-
- if field.Value != nil {
- // Ensure the value is set to a string if it is set
- field.Value = fmt.Sprintf("%v", field.Value)
- }
- }
- attachment.Fields = nonNilFields
- }
- return nonNilAttachments
-}
-
-// This method only parses and processes the attachments,
-// all else should be set in the post which is passed
-func ParseSlackAttachment(post *Post, attachments []*SlackAttachment) {
- post.Type = POST_SLACK_ATTACHMENT
-
- for _, attachment := range attachments {
- attachment.Text = ParseSlackLinksToMarkdown(attachment.Text)
- attachment.Pretext = ParseSlackLinksToMarkdown(attachment.Pretext)
-
- for _, field := range attachment.Fields {
- if value, ok := field.Value.(string); ok {
- field.Value = ParseSlackLinksToMarkdown(value)
- }
- }
- }
- post.AddProp("attachments", attachments)
-}
-
-func ParseSlackLinksToMarkdown(text string) string {
- return linkWithTextRegex.ReplaceAllString(text, "[${2}](${1})")
-}