damonjs
Version:
A modified Shoukaku wrapper with enhanced queue support.
97 lines (96 loc) • 3.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DamonJsError = exports.DamonJsPlugin = exports.PlayerState = exports.State = exports.SupportedSources = exports.SearchResultTypes = exports.LoopState = exports.PlayerMovedState = exports.Events = exports.SourceIDs = exports.escapeRegExp = void 0;
const escapeRegExp = (str) => str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
exports.escapeRegExp = escapeRegExp;
exports.SourceIDs = {
youtube: 'yt',
youtube_music: 'ytm',
soundcloud: 'sc',
};
var Events;
(function (Events) {
Events["PlayerDestroy"] = "playerDestroy";
Events["PlayerCreate"] = "playerCreate";
Events["PlayerStart"] = "playerStart";
Events["PlayerEnd"] = "playerEnd";
Events["PlayerEmpty"] = "playerEmpty";
Events["PlayerClosed"] = "playerClosed";
Events["PlayerUpdate"] = "playerUpdate";
Events["PlayerException"] = "playerException";
Events["PlayerResumed"] = "playerResumed";
Events["PlayerStuck"] = "playerStuck";
Events["PlayerError"] = "playerError";
Events["PlayerResolveError"] = "playerResolveError";
Events["PlayerMoved"] = "playerMoved";
Events["Debug"] = "debug";
Events["InitQueue"] = "initQueue";
})(Events = exports.Events || (exports.Events = {}));
var PlayerMovedState;
(function (PlayerMovedState) {
PlayerMovedState["Unknown"] = "UNKNOWN";
PlayerMovedState["Joined"] = "JOINED";
PlayerMovedState["Left"] = "LEFT";
PlayerMovedState["Moved"] = "MOVED";
})(PlayerMovedState = exports.PlayerMovedState || (exports.PlayerMovedState = {}));
var LoopState;
(function (LoopState) {
LoopState["Track"] = "track";
LoopState["Queue"] = "queue";
LoopState["None"] = "none";
})(LoopState = exports.LoopState || (exports.LoopState = {}));
var SearchResultTypes;
(function (SearchResultTypes) {
SearchResultTypes["Playlist"] = "PLAYLIST";
SearchResultTypes["Track"] = "TRACK";
SearchResultTypes["Search"] = "SEARCH";
SearchResultTypes["Empty"] = "EMPTY";
SearchResultTypes["Error"] = "Error";
})(SearchResultTypes = exports.SearchResultTypes || (exports.SearchResultTypes = {}));
exports.SupportedSources = [
'bandcamp',
'beam',
'getyarn',
'http',
'local',
'nico',
'soundcloud',
'stream',
'twitch',
'vimeo',
'youtube',
];
var State;
(function (State) {
State[State["CONNECTING"] = 0] = "CONNECTING";
State[State["CONNECTED"] = 1] = "CONNECTED";
State[State["DISCONNECTING"] = 2] = "DISCONNECTING";
State[State["DISCONNECTED"] = 3] = "DISCONNECTED";
})(State = exports.State || (exports.State = {}));
var PlayerState;
(function (PlayerState) {
PlayerState[PlayerState["CONNECTING"] = 0] = "CONNECTING";
PlayerState[PlayerState["CONNECTED"] = 1] = "CONNECTED";
PlayerState[PlayerState["DISCONNECTING"] = 2] = "DISCONNECTING";
PlayerState[PlayerState["DISCONNECTED"] = 3] = "DISCONNECTED";
PlayerState[PlayerState["DESTROYING"] = 4] = "DESTROYING";
PlayerState[PlayerState["DESTROYED"] = 5] = "DESTROYED";
})(PlayerState = exports.PlayerState || (exports.PlayerState = {}));
class DamonJsPlugin {
load(damonjs) {
throw new DamonJsError(1, 'Plugin must implement load()');
}
unload(damonjs) {
throw new DamonJsError(1, 'Plugin must implement unload()');
}
}
exports.DamonJsPlugin = DamonJsPlugin;
/* tslint:disable:max-classes-per-file */
class DamonJsError extends Error {
constructor(code, message) {
super(message);
this.code = code;
this.message = message;
}
}
exports.DamonJsError = DamonJsError;