Squash merge audio-player-component into main

This commit is contained in:
2026-02-13 20:39:23 -06:00
parent 9b7cfd5bd1
commit d78c0584e2
122 changed files with 11750 additions and 1175 deletions
+200
View File
@@ -0,0 +1,200 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.29.0
// source: queue.sql
package sqlcgen
import (
"context"
"database/sql"
)
const clearQueueTracks = `-- name: ClearQueueTracks :exec
DELETE FROM queue_tracks
`
func (q *Queries) ClearQueueTracks(ctx context.Context) error {
_, err := q.db.ExecContext(ctx, clearQueueTracks)
return err
}
const getQueueState = `-- name: GetQueueState :one
SELECT source_playlist_id, current_position, shuffle_mode, repeat_mode, shuffle_order
FROM queue WHERE id = 1
`
type GetQueueStateRow struct {
SourcePlaylistID sql.NullInt64
CurrentPosition int64
ShuffleMode bool
RepeatMode string
ShuffleOrder sql.NullString
}
func (q *Queries) GetQueueState(ctx context.Context) (GetQueueStateRow, error) {
row := q.db.QueryRowContext(ctx, getQueueState)
var i GetQueueStateRow
err := row.Scan(
&i.SourcePlaylistID,
&i.CurrentPosition,
&i.ShuffleMode,
&i.RepeatMode,
&i.ShuffleOrder,
)
return i, err
}
const getQueueTrackCount = `-- name: GetQueueTrackCount :one
SELECT count(*) FROM queue_tracks
`
func (q *Queries) GetQueueTrackCount(ctx context.Context) (int64, error) {
row := q.db.QueryRowContext(ctx, getQueueTrackCount)
var count int64
err := row.Scan(&count)
return count, err
}
const getQueueTracks = `-- name: GetQueueTracks :many
SELECT qt.id, qt.audio_file_id, qt.position, af.file_path,
COALESCE(r.name, '') AS title,
COALESCE(ac.text, '') AS artist
FROM queue_tracks qt
JOIN audio_files af ON qt.audio_file_id = af.id
LEFT JOIN recordings r ON af.recording_id = r.id
LEFT JOIN artist_credit ac ON r.artist_credit_id = ac.id
ORDER BY qt.position
`
type GetQueueTracksRow struct {
ID int64
AudioFileID int64
Position int64
FilePath string
Title string
Artist string
}
func (q *Queries) GetQueueTracks(ctx context.Context) ([]GetQueueTracksRow, error) {
rows, err := q.db.QueryContext(ctx, getQueueTracks)
if err != nil {
return nil, err
}
defer rows.Close()
var items []GetQueueTracksRow
for rows.Next() {
var i GetQueueTracksRow
if err := rows.Scan(
&i.ID,
&i.AudioFileID,
&i.Position,
&i.FilePath,
&i.Title,
&i.Artist,
); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const insertQueueTrack = `-- name: InsertQueueTrack :one
INSERT INTO queue_tracks (audio_file_id, position) VALUES (?, ?)
RETURNING id, audio_file_id, position
`
type InsertQueueTrackParams struct {
AudioFileID int64
Position int64
}
func (q *Queries) InsertQueueTrack(ctx context.Context, arg InsertQueueTrackParams) (QueueTrack, error) {
row := q.db.QueryRowContext(ctx, insertQueueTrack, arg.AudioFileID, arg.Position)
var i QueueTrack
err := row.Scan(&i.ID, &i.AudioFileID, &i.Position)
return i, err
}
const removeQueueTrack = `-- name: RemoveQueueTrack :exec
DELETE FROM queue_tracks WHERE id = ?
`
func (q *Queries) RemoveQueueTrack(ctx context.Context, id int64) error {
_, err := q.db.ExecContext(ctx, removeQueueTrack, id)
return err
}
const removeQueueTrackByPosition = `-- name: RemoveQueueTrackByPosition :exec
DELETE FROM queue_tracks WHERE position = ?
`
func (q *Queries) RemoveQueueTrackByPosition(ctx context.Context, position int64) error {
_, err := q.db.ExecContext(ctx, removeQueueTrackByPosition, position)
return err
}
const shiftQueuePositionsDown = `-- name: ShiftQueuePositionsDown :exec
UPDATE queue_tracks
SET position = position - 1
WHERE position > ?
`
func (q *Queries) ShiftQueuePositionsDown(ctx context.Context, position int64) error {
_, err := q.db.ExecContext(ctx, shiftQueuePositionsDown, position)
return err
}
const shiftQueuePositionsUp = `-- name: ShiftQueuePositionsUp :exec
UPDATE queue_tracks
SET position = position + 1
WHERE position >= ?
`
func (q *Queries) ShiftQueuePositionsUp(ctx context.Context, position int64) error {
_, err := q.db.ExecContext(ctx, shiftQueuePositionsUp, position)
return err
}
const updateQueuePosition = `-- name: UpdateQueuePosition :exec
UPDATE queue
SET current_position = ?
WHERE id = 1
`
func (q *Queries) UpdateQueuePosition(ctx context.Context, currentPosition int64) error {
_, err := q.db.ExecContext(ctx, updateQueuePosition, currentPosition)
return err
}
const updateQueueState = `-- name: UpdateQueueState :exec
UPDATE queue
SET source_playlist_id = ?, current_position = ?, shuffle_mode = ?, repeat_mode = ?, shuffle_order = ?
WHERE id = 1
`
type UpdateQueueStateParams struct {
SourcePlaylistID sql.NullInt64
CurrentPosition int64
ShuffleMode bool
RepeatMode string
ShuffleOrder sql.NullString
}
func (q *Queries) UpdateQueueState(ctx context.Context, arg UpdateQueueStateParams) error {
_, err := q.db.ExecContext(ctx, updateQueueState,
arg.SourcePlaylistID,
arg.CurrentPosition,
arg.ShuffleMode,
arg.RepeatMode,
arg.ShuffleOrder,
)
return err
}