instance_v2

package
v0.0.0-...-dcb9e79 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2024 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Handler

func Handler(c *gin.Context)

Types

type Instance

type Instance struct {
	Domain        string                `json:"domain"`
	Title         string                `json:"title"`
	Version       string                `json:"version"`
	SourceURL     string                `json:"source_url"`
	Description   string                `json:"description"`
	Usage         InstanceUsage         `json:"usage"`
	Thumbnail     InstanceThumbnail     `json:"thumbnail"`
	Languages     []string              `json:"languages"`
	Configuration InstanceConfiguration `json:"configuration"`
	Registrations InstanceRegistrations `json:"registrations"`
	Contact       InstanceContact       `json:"contact"`
	Rules         []InstanceRule        `json:"rules"`
}

type InstanceConfiguration

type InstanceConfiguration struct {
	URLs struct {
		Streaming string `json:"streaming"`
		Status    string `json:"status"`
	} `json:"urls"`
	Vapid struct {
		PublicKey string `json:"public_key"`
	} `json:"vapid"`
	Accounts struct {
		MaxPinnedStatuses int64 `json:"max_pinned_statuses"`
		MaxFeaturedTags   int64 `json:"max_featured_tags"`
	} `json:"accounts"`
	Statuses struct {
		MaxCharacters            int64    `json:"max_characters"`
		MaxMediaAttachments      int64    `json:"max_media_attachments"`
		CharactersReservedPerURL int64    `json:"characters_reserved_per_url"`
		SupportedMimeTypes       []string `json:"supported_mime_types"`
	} `json:"statuses"`
	MediaAttachments struct {
		SupportedMimeTypes  []string `json:"supported_mime_types"`
		ImageSizeLimit      int64    `json:"image_size_limit"`
		ImageMatrixLimit    int64    `json:"image_matrix_limit"`
		VideoSizeLimit      int64    `json:"video_size_limit"`
		VideoFrameRateLimit int64    `json:"video_frame_rate_limit"`
		VideoMatrixLimit    int64    `json:"video_matrix_limit"`
	} `json:"media_attachments"`
	Polls struct {
		AllowMedia             bool  `json:"allow_media"`
		MaxOptions             int64 `json:"max_options"`
		MaxCharactersPerOption int64 `json:"max_characters_per_option"`
		MinExpiration          int64 `json:"min_expiration"`
		MaxExpiration          int64 `json:"max_expiration"`
	} `json:"polls"`
	Translation struct {
		Enabled bool `json:"enabled"`
	} `json:"translation"`
	Reactions struct {
		MaxReactions int64 `json:"max_reactions"`
	} `json:"reactions"`
}

type InstanceContact

type InstanceContact struct {
	Email   string                `json:"email"`
	Account account_model.Account `json:"account"`
}

type InstanceRegistrations

type InstanceRegistrations struct {
	Enabled          bool    `json:"enabled"`
	ApprovalRequired bool    `json:"approval_required"`
	Message          string  `json:"message"`
	URL              *string `json:"url"`
}

type InstanceRule

type InstanceRule struct {
	ID   string `json:"id"`
	Text string `json:"text"`
	Hint string `json:"hint"`
}

type InstanceThumbnail

type InstanceThumbnail struct {
	URL      string `json:"url"`
	Blurhash string `json:"blurhash"`
	Versions struct {
		Standard string `json:"@1x"`
		Large    string `json:"@2x"`
	}
}

type InstanceUsage

type InstanceUsage struct {
	Users struct {
		ActiveMonth int64 `json:"active_month"`
	} `json:"users"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL