3.0.3 • Published 8 years ago
cassette v3.0.3
Cassette
An extensible playlist module designed to make playlist management easy and powerful.
How to use
Assume cassette is imported like so:
const cassette = require('cassette');- Create a playlist. That's what we're here for, after all.
const playlist = new cassette.Playlist();- Create some services. Cassette ships with several, but you can always make your own by implementing
IService.
const ytService = new cassette.YouTubeService('your api key');- Add some stuff to this new playlist.
playlist.add('some awesome song', [ytService]);- Profit.
Reference
Playlist extends Array
constructor(client: Client)loop:
booleanwhether to loop the playlist at extremeties- autoplay:
booleanwhether to use the last song to find the next song when at the end of the playlist - pos:
number(readonly) the current 0-based position of the playlist current:
Song?(readonly) the currentreset():
voidreset the playlist's songs and position- hasPrev():
booleanwhether the playlist is not at the first position - prev():
booleanadvance the playlist backwards and return whether it was successful - hasNext():
booleanwhether the playlist is not at the last position - next():
Promise<boolean>advance the playlist and return whether it was successful - shuffle():
voidshuffle the playlist - add(content: string, services: IService[], options: { position?: number, searchType?: 'song' | 'playlist' }):
Promise<Song[]>add content to the playlist
Song
constructor(service: IService)service:
IService(readonly) the service that loaded this song- type:
string(abstract, readonly) the type of the song, based on the service - title:
string(abstract, readonly) the title of the song - trackID:
string | number(abstract, readonly) the ID of the song, relative to the service - playlistID?:
string | number(abstract, readonly) the ID of the playlist this song came from, if any, relative to the service - streamURL:
string(abstract, readonly) the URL to stream audio from