2025-10-07 16:45:52 +02:00

47 lines
986 B
Go

package plugin
import (
"regexp"
"gitea.elara.ws/Hazel/music-kraken/internal/data"
)
type Youtube struct {
}
func (m Youtube) Name() string {
return "Youtube"
}
func (m Youtube) Regex() *regexp.Regexp {
return regexp.MustCompile(`(?i)\b(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^\/\n\s]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[?&]v=)|youtu\.be\/)([a-zA-Z0-9_-]{11})\b`)
}
func (m Youtube) RegexAlbum() *regexp.Regexp {
panic("unimplemented")
}
func (m Youtube) RegexArtist() *regexp.Regexp {
panic("unimplemented")
}
func (m Youtube) RegexSong() *regexp.Regexp {
panic("unimplemented")
}
func (m Youtube) FetchAlbum(source data.Source) (data.Album, error) {
panic("unimplemented")
}
func (m Youtube) FetchArtist(source data.Source) (data.Artist, error) {
panic("unimplemented")
}
func (m Youtube) FetchSong(source data.Source) (data.Song, error) {
panic("unimplemented")
}
func (m Youtube) Search(query string) ([]data.MusicObject, error) {
panic("unimplemented")
}