Add comprehensive godoc documentation to all exported symbols
- Document all exported types, functions, methods, and constants across 52 files - Add package-level doc comments to client, models, utils, and ynison packages - Document HTTP method and endpoint path for each API client method - Document model struct fields and DeJSON/DeList/ToJSON/ToMap methods - Fix duplicate package doc comment in internal/models/base.go Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
1 parent
7a68ad86cb
commit
0456ca0665
54 files changed
+1097
-652
No files matched your search
+20
-30
@@ -17,7 +17,8 @@ func (c *Client) GetQueue(ctx context.Context) (*models.Queue, error) {
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// CreateQueue creates a new queue
|
||||
// CreateQueue creates a new playback queue (POST /queues).
|
||||
// The queueType parameter specifies the type of queue (e.g., "radio", "album", "playlist").
|
||||
func (c *Client) CreateQueue(ctx context.Context, trackID string, queueType string) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"track_id": trackID,
|
||||
@@ -32,8 +33,7 @@ func (c *Client) CreateQueue(ctx context.Context, trackID string, queueType stri
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// GetQueueItem gets a queue item
|
||||
// GET /queues/{queue_id}
|
||||
// GetQueueItem gets a queue item by queue ID (GET /queues/{queue_id}).
|
||||
func (c *Client) GetQueueItem(ctx context.Context, queueID string) (*models.QueueItem, error) {
|
||||
var result models.QueueItem
|
||||
if err := c.request.Get(ctx, fmt.Sprintf("/queues/%s", queueID), nil, &result); err != nil {
|
||||
@@ -43,8 +43,7 @@ func (c *Client) GetQueueItem(ctx context.Context, queueID string) (*models.Queu
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// AddToQueue adds a track to the queue
|
||||
// POST /queues/{queue_id}/add
|
||||
// AddToQueue adds a track to the queue at the given position (POST /queues/{queue_id}/add).
|
||||
func (c *Client) AddToQueue(ctx context.Context, queueID, trackID string, position int) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"track_id": trackID,
|
||||
@@ -59,8 +58,7 @@ func (c *Client) AddToQueue(ctx context.Context, queueID, trackID string, positi
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// RemoveFromQueue removes a track from the queue
|
||||
// DELETE /queues/{queue_id}/remove
|
||||
// RemoveFromQueue removes a track from the queue (DELETE /queues/{queue_id}/remove).
|
||||
func (c *Client) RemoveFromQueue(ctx context.Context, queueID, trackID string) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"track_id": trackID,
|
||||
@@ -74,8 +72,7 @@ func (c *Client) RemoveFromQueue(ctx context.Context, queueID, trackID string) (
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// ReorderQueue reorders the queue
|
||||
// PUT /queues/{queue_id}/reorder
|
||||
// ReorderQueue reorders items in the queue from one position to another (PUT /queues/{queue_id}/reorder).
|
||||
func (c *Client) ReorderQueue(ctx context.Context, queueID string, from, to int) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"from": fmt.Sprintf("%d", from),
|
||||
@@ -90,15 +87,13 @@ func (c *Client) ReorderQueue(ctx context.Context, queueID string, from, to int)
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// ClearQueue clears the queue
|
||||
// DELETE /queues/{queue_id}/clear
|
||||
// ClearQueue clears the queue (DELETE /queues/{queue_id}/clear).
|
||||
func (c *Client) ClearQueue(ctx context.Context, queueID string) error {
|
||||
var result map[string]any
|
||||
return c.request.Delete(ctx, fmt.Sprintf("/queues/%s/clear", queueID), nil, &result)
|
||||
}
|
||||
|
||||
// NextTrack moves to the next track in the queue
|
||||
// POST /queues/{queue_id}/next
|
||||
// NextTrack moves to the next track in the queue (POST /queues/{queue_id}/next).
|
||||
func (c *Client) NextTrack(ctx context.Context, queueID string) (*models.Queue, error) {
|
||||
var result models.Queue
|
||||
if err := c.request.Post(ctx, fmt.Sprintf("/queues/%s/next", queueID), nil, &result); err != nil {
|
||||
@@ -108,8 +103,7 @@ func (c *Client) NextTrack(ctx context.Context, queueID string) (*models.Queue,
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// PreviousTrack moves to the previous track in the queue
|
||||
// POST /queues/{queue_id}/prev
|
||||
// PreviousTrack moves to the previous track in the queue (POST /queues/{queue_id}/prev).
|
||||
func (c *Client) PreviousTrack(ctx context.Context, queueID string) (*models.Queue, error) {
|
||||
var result models.Queue
|
||||
if err := c.request.Post(ctx, fmt.Sprintf("/queues/%s/prev", queueID), nil, &result); err != nil {
|
||||
@@ -119,8 +113,8 @@ func (c *Client) PreviousTrack(ctx context.Context, queueID string) (*models.Que
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// Seek seeks to a specific position in the current track (in milliseconds)
|
||||
// POST /queues/{queue_id}/seek
|
||||
// Seek seeks to a specific position in the current track (POST /queues/{queue_id}/seek).
|
||||
// The positionMs parameter is the position in milliseconds.
|
||||
func (c *Client) Seek(ctx context.Context, queueID string, positionMs int) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"position": fmt.Sprintf("%d", positionMs),
|
||||
@@ -134,9 +128,8 @@ func (c *Client) Seek(ctx context.Context, queueID string, positionMs int) (*mod
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// SetRepeatMode sets the repeat mode for the queue
|
||||
// mode can be "off", "one", or "all"
|
||||
// POST /queues/{queue_id}/repeat
|
||||
// SetRepeatMode sets the repeat mode for the queue (POST /queues/{queue_id}/repeat).
|
||||
// The mode parameter can be "off", "one", or "all".
|
||||
func (c *Client) SetRepeatMode(ctx context.Context, queueID, mode string) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"mode": mode,
|
||||
@@ -150,8 +143,7 @@ func (c *Client) SetRepeatMode(ctx context.Context, queueID, mode string) (*mode
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// SetShuffle enables or disables shuffle for the queue
|
||||
// POST /queues/{queue_id}/shuffle
|
||||
// SetShuffle enables or disables shuffle for the queue (POST /queues/{queue_id}/shuffle).
|
||||
func (c *Client) SetShuffle(ctx context.Context, queueID string, enabled bool) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"enabled": fmt.Sprintf("%t", enabled),
|
||||
@@ -165,8 +157,8 @@ func (c *Client) SetShuffle(ctx context.Context, queueID string, enabled bool) (
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// SetVolume sets the volume for the queue (0-100)
|
||||
// POST /queues/{queue_id}/volume
|
||||
// SetVolume sets the volume for the queue (POST /queues/{queue_id}/volume).
|
||||
// The volume parameter should be between 0 and 100.
|
||||
func (c *Client) SetVolume(ctx context.Context, queueID string, volume int) (*models.Queue, error) {
|
||||
params := map[string]string{
|
||||
"volume": fmt.Sprintf("%d", volume),
|
||||
@@ -180,8 +172,7 @@ func (c *Client) SetVolume(ctx context.Context, queueID string, volume int) (*mo
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// GetCurrentTrack gets the currently playing track from the queue
|
||||
// GET /queues/{queue_id}/current
|
||||
// GetCurrentTrack gets the currently playing track from the queue (GET /queues/{queue_id}/current).
|
||||
func (c *Client) GetCurrentTrack(ctx context.Context, queueID string) (*models.QueueItem, error) {
|
||||
var result models.QueueItem
|
||||
if err := c.request.Get(ctx, fmt.Sprintf("/queues/%s/current", queueID), nil, &result); err != nil {
|
||||
@@ -191,8 +182,7 @@ func (c *Client) GetCurrentTrack(ctx context.Context, queueID string) (*models.Q
|
||||
return &result, nil
|
||||
}
|
||||
|
||||
// GetQueueHistory gets the queue history (recently played tracks)
|
||||
// GET /queues/{queue_id}/history
|
||||
// GetQueueHistory gets the queue history (recently played tracks) (GET /queues/{queue_id}/history).
|
||||
func (c *Client) GetQueueHistory(ctx context.Context, queueID string, limit int) ([]*models.QueueItem, error) {
|
||||
params := map[string]string{
|
||||
"limit": fmt.Sprintf("%d", limit),
|
||||
@@ -211,7 +201,7 @@ func (c *Client) GetQueueHistory(ctx context.Context, queueID string, limit int)
|
||||
return items, nil
|
||||
}
|
||||
|
||||
// GetPlayContexts gets play contexts
|
||||
// GetPlayContexts gets play contexts (GET /play-contexts).
|
||||
func (c *Client) GetPlayContexts(ctx context.Context) ([]*models.PlayContext, error) {
|
||||
var result []models.PlayContext
|
||||
if err := c.request.Get(ctx, "/play-contexts", nil, &result); err != nil {
|
||||
@@ -226,7 +216,7 @@ func (c *Client) GetPlayContexts(ctx context.Context) ([]*models.PlayContext, er
|
||||
return contexts, nil
|
||||
}
|
||||
|
||||
// GetPlayContextsData gets play contexts data
|
||||
// GetPlayContextsData gets play contexts data (GET /play-contexts/data).
|
||||
func (c *Client) GetPlayContextsData(ctx context.Context) (*models.PlayContextsData, error) {
|
||||
var result models.PlayContextsData
|
||||
if err := c.request.Get(ctx, "/play-contexts/data", nil, &result); err != nil {
|
||||
|
||||
Reference in new issue
Block a user