types

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Jun 6, 2025 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BatchUploadRequest

type BatchUploadRequest struct {
	Images  []ImageUpload   `json:"images"`
	Common  *CommonSettings `json:"common,omitempty"`
	Social  *SocialSettings `json:"social,omitempty"`
	Options *UploadOptions  `json:"options,omitempty"`
}

BatchUploadRequest represents the JSON input for batch upload operations

type BatchUploadResponse

type BatchUploadResponse struct {
	Success bool               `json:"success"`
	Uploads []UploadResult     `json:"uploads"`
	Social  *SocialPostResults `json:"social,omitempty"`
}

BatchUploadResponse represents the JSON output from batch uploads

type BlueskySettings

type BlueskySettings struct {
	Enabled bool   `json:"enabled"`
	Post    string `json:"post,omitempty"`
}

BlueskySettings for Bluesky posts

type CommonSettings

type CommonSettings struct {
	Tags    []string `json:"tags,omitempty"`
	Private bool     `json:"private,omitempty"`
	Service string   `json:"service,omitempty"` // "flickr" or "smugmug"
}

CommonSettings applies to all images in the batch

type ImageSizes added in v0.10.0

type ImageSizes struct {
	Large  string `json:"large"`
	Medium string `json:"medium"`
	Small  string `json:"small"`
	Thumb  string `json:"thumb"`
}

ImageSizes contains URLs for different image sizes

type ImageUpload

type ImageUpload struct {
	Path        string   `json:"path"`
	Title       string   `json:"title,omitempty"`
	Alt         string   `json:"alt,omitempty"`
	Description string   `json:"description,omitempty"`
	Tags        []string `json:"tags,omitempty"`
}

ImageUpload represents a single image in the batch

type MastodonSettings

type MastodonSettings struct {
	Enabled    bool   `json:"enabled"`
	Post       string `json:"post,omitempty"`
	Visibility string `json:"visibility,omitempty"` // public, unlisted, followers, direct
}

MastodonSettings for Mastodon posts

type PullImage added in v0.10.0

type PullImage struct {
	ID          string     `json:"id"` // temporary ID for selection
	Title       string     `json:"title"`
	Description string     `json:"description,omitempty"`
	SourceURL   string     `json:"source_url"` // original photo page
	Sizes       ImageSizes `json:"sizes"`
	Alt         string     `json:"alt"`            // alt text
	Tags        []string   `json:"tags,omitempty"` // from source service
}

PullImage represents an image that can be selected for posting

type PullRequest added in v0.10.0

type PullRequest struct {
	Source     PullSource  `json:"source"`
	Post       string      `json:"post"` // Single post text for all images
	Images     []PullImage `json:"images"`
	Targets    []string    `json:"targets,omitempty"`    // ["mastodon", "bluesky"]
	Visibility string      `json:"visibility,omitempty"` // for mastodon
	Format     string      `json:"format,omitempty"`     // output format: social, markdown, html
}

PullRequest represents the JSON format for pull operations

type PullSource added in v0.10.0

type PullSource struct {
	Service string `json:"service"`         // "smugmug" or "flickr"
	Album   string `json:"album,omitempty"` // album name
}

PullSource identifies where images are pulled from

type SocialPostResult

type SocialPostResult struct {
	Success bool    `json:"success"`
	URL     string  `json:"url,omitempty"`
	Error   *string `json:"error"`
}

SocialPostResult represents the result of a social media post

type SocialPostResults

type SocialPostResults struct {
	Mastodon *SocialPostResult `json:"mastodon,omitempty"`
	Bluesky  *SocialPostResult `json:"bluesky,omitempty"`
}

SocialPostResults contains results from social media posting

type SocialSettings

type SocialSettings struct {
	Mastodon *MastodonSettings `json:"mastodon,omitempty"`
	Bluesky  *BlueskySettings  `json:"bluesky,omitempty"`
}

SocialSettings configures social media posting

type UploadOptions

type UploadOptions struct {
	Format string `json:"format,omitempty"` // Output format preference
	DryRun bool   `json:"dry_run,omitempty"`
	Force  bool   `json:"force,omitempty"` // Force upload even if duplicate
}

UploadOptions controls upload behavior

type UploadResult

type UploadResult struct {
	Path      string   `json:"path"`
	URL       string   `json:"url,omitempty"`
	ImageURL  string   `json:"imageUrl,omitempty"`
	PhotoID   string   `json:"photoId,omitempty"`
	Duplicate bool     `json:"duplicate"`
	Error     *string  `json:"error"`
	Warnings  []string `json:"warnings,omitempty"`
}

UploadResult represents the result of a single image upload

Jump to

Keyboard shortcuts

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