Sanitize post for audit with preview links (#23745)

* sanitize post for audit with preview links

* add unit test

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
Doug Lauder
2023-06-15 08:23:56 -04:00
коммит произвёл GitHub
родитель 5d66883b04
Коммит d655ab94a3
4 изменённых файлов: 86 добавлений и 1 удалений

Просмотреть файл

@@ -30,6 +30,26 @@ type PostMetadata struct {
Acknowledgements []*PostAcknowledgement `json:"acknowledgements,omitempty"`
}
func (pm *PostMetadata) Auditable() map[string]any {
embeds := make([]map[string]any, 0, len(pm.Embeds))
for _, pe := range pm.Embeds {
embeds = append(embeds, pe.Auditable())
}
if len(embeds) == 0 {
embeds = nil
}
return map[string]any{
"embeds": embeds,
"emojis": pm.Emojis,
"files": pm.Files,
"images": pm.Images,
"reactions": pm.Reactions,
"priority": pm.Priority,
"acknowledgements": pm.Acknowledgements,
}
}
type PostImage struct {
Width int `json:"width"`
Height int `json:"height"`