47 lines
1.0 KiB
Go
47 lines
1.0 KiB
Go
package plugin
|
|
|
|
import (
|
|
"regexp"
|
|
|
|
"gitea.elara.ws/Hazel/music-kraken/internal/data"
|
|
)
|
|
|
|
type Musify struct {
|
|
}
|
|
|
|
func (m Musify) Name() string {
|
|
return "Musify"
|
|
}
|
|
|
|
func (m Musify) Regex() *regexp.Regexp {
|
|
return regexp.MustCompile(`(?i)https?://musify\.club/(artist|release|track)/[a-z\-0-9]+`)
|
|
}
|
|
|
|
func (m Musify) RegexArtist() *regexp.Regexp {
|
|
return regexp.MustCompile(`(?i)https?://musify\.club/artist/[a-z\-0-9]+`)
|
|
}
|
|
|
|
func (m Musify) RegexAlbum() *regexp.Regexp {
|
|
return regexp.MustCompile(`(?i)https?://musify\.club/release/[a-z\-0-9]+`)
|
|
}
|
|
|
|
func (m Musify) RegexSong() *regexp.Regexp {
|
|
return regexp.MustCompile(`(?i)https?://musify\.club/track/[a-z\-0-9]+`)
|
|
}
|
|
|
|
func (m *Musify) FetchArtist(source data.Source) (data.Artist, error) {
|
|
panic("unimplemented")
|
|
}
|
|
|
|
func (m *Musify) FetchAlbum(source data.Source) (data.Album, error) {
|
|
panic("unimplemented")
|
|
}
|
|
|
|
func (m *Musify) FetchSong(source data.Source) (data.Song, error) {
|
|
panic("unimplemented")
|
|
}
|
|
|
|
func (m *Musify) Search(query string) ([]data.MusicObject, error) {
|
|
panic("unimplemented")
|
|
}
|