diff options
author | 2023-03-02 03:06:40 -0800 | |
---|---|---|
committer | 2023-03-02 12:06:40 +0100 | |
commit | e6cde25466e03ec864cd9defed96957e741b5e7c (patch) | |
tree | 2fe1db6383efc9b788de8bb3f9926627874ccd7c /internal/typeutils/internaltofrontend.go | |
parent | [chore] move client/federator workerpools to Workers{} (#1575) (diff) | |
download | gotosocial-e6cde25466e03ec864cd9defed96957e741b5e7c.tar.xz |
[feature] Advertise rich text formats, support content_type field (#1370)
* Advertise rich text formats, support content_type field
* Update JSON in instance patch tests
* Replace format with content_type everywhere
* update migration to work with both pg and sqlite
* regenerate swagger docs
* update instance serialization + tests
* fix up
* learn to code tobi please, i'm begging you
---------
Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
Diffstat (limited to 'internal/typeutils/internaltofrontend.go')
-rw-r--r-- | internal/typeutils/internaltofrontend.go | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/internal/typeutils/internaltofrontend.go b/internal/typeutils/internaltofrontend.go index ebea023cf..aa9352272 100644 --- a/internal/typeutils/internaltofrontend.go +++ b/internal/typeutils/internaltofrontend.go @@ -46,6 +46,11 @@ const ( instanceSourceURL = "https://github.com/superseriousbusiness/gotosocial" ) +var instanceStatusesSupportedMimeTypes = []string{ + string(apimodel.StatusContentTypePlain), + string(apimodel.StatusContentTypeMarkdown), +} + func (c *converter) AccountToAPIAccountSensitive(ctx context.Context, a *gtsmodel.Account) (*apimodel.Account, error) { // we can build this sensitive account easily by first getting the public account.... apiAccount, err := c.AccountToAPIAccountPublic(ctx, a) @@ -67,16 +72,16 @@ func (c *converter) AccountToAPIAccountSensitive(ctx context.Context, a *gtsmode frc = len(frs) } - statusFormat := string(apimodel.StatusFormatDefault) - if a.StatusFormat != "" { - statusFormat = a.StatusFormat + statusContentType := string(apimodel.StatusContentTypeDefault) + if a.StatusContentType != "" { + statusContentType = a.StatusContentType } apiAccount.Source = &apimodel.Source{ Privacy: c.VisToAPIVis(ctx, a.Privacy), Sensitive: *a.Sensitive, Language: a.Language, - StatusFormat: statusFormat, + StatusContentType: statusContentType, Note: a.NoteRaw, Fields: apiAccount.Fields, FollowRequestsCount: frc, @@ -695,6 +700,7 @@ func (c *converter) InstanceToAPIV1Instance(ctx context.Context, i *gtsmodel.Ins instance.Configuration.Statuses.MaxCharacters = config.GetStatusesMaxChars() instance.Configuration.Statuses.MaxMediaAttachments = config.GetStatusesMediaMaxFiles() instance.Configuration.Statuses.CharactersReservedPerURL = instanceStatusesCharactersReservedPerURL + instance.Configuration.Statuses.SupportedMimeTypes = instanceStatusesSupportedMimeTypes instance.Configuration.MediaAttachments.SupportedMimeTypes = media.SupportedMIMETypes instance.Configuration.MediaAttachments.ImageSizeLimit = int(config.GetMediaImageMaxSize()) instance.Configuration.MediaAttachments.ImageMatrixLimit = instanceMediaAttachmentsImageMatrixLimit @@ -820,6 +826,7 @@ func (c *converter) InstanceToAPIV2Instance(ctx context.Context, i *gtsmodel.Ins instance.Configuration.Statuses.MaxCharacters = config.GetStatusesMaxChars() instance.Configuration.Statuses.MaxMediaAttachments = config.GetStatusesMediaMaxFiles() instance.Configuration.Statuses.CharactersReservedPerURL = instanceStatusesCharactersReservedPerURL + instance.Configuration.Statuses.SupportedMimeTypes = instanceStatusesSupportedMimeTypes instance.Configuration.MediaAttachments.SupportedMimeTypes = media.SupportedMIMETypes instance.Configuration.MediaAttachments.ImageSizeLimit = int(config.GetMediaImageMaxSize()) instance.Configuration.MediaAttachments.ImageMatrixLimit = instanceMediaAttachmentsImageMatrixLimit |