Compare commits
8 Commits
1.2.3
...
d08afcc4d6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d08afcc4d6 | ||
|
|
d47379aacc | ||
|
|
01b8319aef | ||
|
|
993501f049 | ||
|
|
343126bee3 | ||
|
|
588c778122 | ||
|
|
2ec9585c74 | ||
|
|
d5b4cfefc3 |
@@ -17,7 +17,7 @@ export class QueuedSong extends Song {
|
||||
}
|
||||
|
||||
export class PlayingSong extends QueuedSong {
|
||||
constructor(type: SongType, title: string, songId: string, image: string, listener: string, public length: number, public position: number) {
|
||||
constructor(type: SongType, title: string, songId: string, image: string, listener: string, public length: number, public position: number, public tags: string[]) {
|
||||
super(type, title, songId, image, listener);
|
||||
}
|
||||
}
|
||||
@@ -28,7 +28,5 @@ export class Playlist {
|
||||
}
|
||||
export class PlaylistDescription {
|
||||
constructor(public title: string, public listener: string) {
|
||||
this.title = title;
|
||||
this.listener = listener;
|
||||
}
|
||||
}
|
||||
|
||||
2
dist/common.js
vendored
2
dist/common.js
vendored
@@ -13,7 +13,7 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
||||
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||
};
|
||||
exports.__esModule = true;
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
__exportStar(require("./dataTypes"), exports);
|
||||
__exportStar(require("./messageTypes"), exports);
|
||||
__exportStar(require("./parseMessage"), exports);
|
||||
|
||||
3
dist/dataTypes.d.ts
vendored
3
dist/dataTypes.d.ts
vendored
@@ -16,7 +16,8 @@ export declare class QueuedSong extends Song {
|
||||
export declare class PlayingSong extends QueuedSong {
|
||||
length: number;
|
||||
position: number;
|
||||
constructor(type: SongType, title: string, songId: string, image: string, listener: string, length: number, position: number);
|
||||
tags: string[];
|
||||
constructor(type: SongType, title: string, songId: string, image: string, listener: string, length: number, position: number, tags: string[]);
|
||||
}
|
||||
export declare class Playlist {
|
||||
title: string;
|
||||
|
||||
9
dist/dataTypes.js
vendored
9
dist/dataTypes.js
vendored
@@ -14,13 +14,13 @@ var __extends = (this && this.__extends) || (function () {
|
||||
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
||||
};
|
||||
})();
|
||||
exports.__esModule = true;
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.PlaylistDescription = exports.Playlist = exports.PlayingSong = exports.QueuedSong = exports.Song = exports.SongType = void 0;
|
||||
var SongType;
|
||||
(function (SongType) {
|
||||
SongType[SongType["YouTube"] = 0] = "YouTube";
|
||||
SongType[SongType["Spotify"] = 1] = "Spotify";
|
||||
})(SongType = exports.SongType || (exports.SongType = {}));
|
||||
})(SongType || (exports.SongType = SongType = {}));
|
||||
var Song = /** @class */ (function () {
|
||||
function Song(type, title, songId, image) {
|
||||
this.type = type;
|
||||
@@ -43,10 +43,11 @@ var QueuedSong = /** @class */ (function (_super) {
|
||||
exports.QueuedSong = QueuedSong;
|
||||
var PlayingSong = /** @class */ (function (_super) {
|
||||
__extends(PlayingSong, _super);
|
||||
function PlayingSong(type, title, songId, image, listener, length, position) {
|
||||
function PlayingSong(type, title, songId, image, listener, length, position, tags) {
|
||||
var _this = _super.call(this, type, title, songId, image, listener) || this;
|
||||
_this.length = length;
|
||||
_this.position = position;
|
||||
_this.tags = tags;
|
||||
return _this;
|
||||
}
|
||||
return PlayingSong;
|
||||
@@ -65,8 +66,6 @@ var PlaylistDescription = /** @class */ (function () {
|
||||
function PlaylistDescription(title, listener) {
|
||||
this.title = title;
|
||||
this.listener = listener;
|
||||
this.title = title;
|
||||
this.listener = listener;
|
||||
}
|
||||
return PlaylistDescription;
|
||||
}());
|
||||
|
||||
17
dist/messageTypes.d.ts
vendored
17
dist/messageTypes.d.ts
vendored
@@ -1,5 +1,5 @@
|
||||
import { Song, PlayingSong, QueuedSong, Playlist, PlaylistDescription } from "./dataTypes";
|
||||
export declare type StuenMessages = ListenerLeft | ListenerList | ListenerJoined | SendChatMessage | SearchSong | SearchSongResult | Join | QueueSong | CurrentQueue | CurrentSong | UnqueueSong | ReorderSong | SkipSong | SongLikes | ToggleSongLike | CreatePlaylist | AddSongToPlaylist | RemoveSongFromPlaylist | Playlists | GetPlaylist | PlaylistSongs;
|
||||
export type StuenMessages = ListenerLeft | ListenerList | ListenerJoined | SendChatMessage | SearchSong | SearchSongResult | Join | QueueSong | CurrentQueue | CurrentSong | UnqueueSong | ReorderSong | SkipSong | SongLikes | ToggleSongLike | CreatePlaylist | RemovePlaylist | AddSongToPlaylist | RemoveSongFromPlaylist | Playlists | GetPlaylist | PlaylistSongs | ToggleTag | Shuffle | RemoveFromAutoPlay;
|
||||
export declare abstract class StuenMessage {
|
||||
type: string;
|
||||
constructor(type: string);
|
||||
@@ -73,6 +73,10 @@ export declare class CreatePlaylist extends StuenMessage {
|
||||
title: string;
|
||||
constructor(title: string);
|
||||
}
|
||||
export declare class RemovePlaylist extends StuenMessage {
|
||||
title: string;
|
||||
constructor(title: string);
|
||||
}
|
||||
export declare class Playlists extends StuenMessage {
|
||||
playlists: PlaylistDescription[];
|
||||
constructor(playlists: PlaylistDescription[]);
|
||||
@@ -95,3 +99,14 @@ export declare class RemoveSongFromPlaylist extends StuenMessage {
|
||||
playlist: string;
|
||||
constructor(song: Song, playlist: string);
|
||||
}
|
||||
export declare class ToggleTag extends StuenMessage {
|
||||
song: Song;
|
||||
tag: string;
|
||||
constructor(song: Song, tag: string);
|
||||
}
|
||||
export declare class Shuffle extends StuenMessage {
|
||||
constructor();
|
||||
}
|
||||
export declare class RemoveFromAutoPlay extends StuenMessage {
|
||||
constructor();
|
||||
}
|
||||
|
||||
41
dist/messageTypes.js
vendored
41
dist/messageTypes.js
vendored
@@ -14,8 +14,8 @@ var __extends = (this && this.__extends) || (function () {
|
||||
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
||||
};
|
||||
})();
|
||||
exports.__esModule = true;
|
||||
exports.RemoveSongFromPlaylist = exports.AddSongToPlaylist = exports.PlaylistSongs = exports.GetPlaylist = exports.Playlists = exports.CreatePlaylist = exports.SongLikes = exports.ToggleSongLike = exports.SkipSong = exports.ReorderSong = exports.UnqueueSong = exports.CurrentSong = exports.CurrentQueue = exports.QueueSong = exports.SearchSongResult = exports.SearchSong = exports.ChatMessage = exports.SendChatMessage = exports.ListenerList = exports.ListenerLeft = exports.ListenerJoined = exports.Join = exports.StuenMessage = void 0;
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.RemoveFromAutoPlay = exports.Shuffle = exports.ToggleTag = exports.RemoveSongFromPlaylist = exports.AddSongToPlaylist = exports.PlaylistSongs = exports.GetPlaylist = exports.Playlists = exports.RemovePlaylist = exports.CreatePlaylist = exports.SongLikes = exports.ToggleSongLike = exports.SkipSong = exports.ReorderSong = exports.UnqueueSong = exports.CurrentSong = exports.CurrentQueue = exports.QueueSong = exports.SearchSongResult = exports.SearchSong = exports.ChatMessage = exports.SendChatMessage = exports.ListenerList = exports.ListenerLeft = exports.ListenerJoined = exports.Join = exports.StuenMessage = void 0;
|
||||
var StuenMessage = /** @class */ (function () {
|
||||
function StuenMessage(type) {
|
||||
this.type = type;
|
||||
@@ -193,6 +193,16 @@ var CreatePlaylist = /** @class */ (function (_super) {
|
||||
return CreatePlaylist;
|
||||
}(StuenMessage));
|
||||
exports.CreatePlaylist = CreatePlaylist;
|
||||
var RemovePlaylist = /** @class */ (function (_super) {
|
||||
__extends(RemovePlaylist, _super);
|
||||
function RemovePlaylist(title) {
|
||||
var _this = _super.call(this, 'RemovePlaylist') || this;
|
||||
_this.title = title;
|
||||
return _this;
|
||||
}
|
||||
return RemovePlaylist;
|
||||
}(StuenMessage));
|
||||
exports.RemovePlaylist = RemovePlaylist;
|
||||
var Playlists = /** @class */ (function (_super) {
|
||||
__extends(Playlists, _super);
|
||||
function Playlists(playlists) {
|
||||
@@ -245,3 +255,30 @@ var RemoveSongFromPlaylist = /** @class */ (function (_super) {
|
||||
return RemoveSongFromPlaylist;
|
||||
}(StuenMessage));
|
||||
exports.RemoveSongFromPlaylist = RemoveSongFromPlaylist;
|
||||
var ToggleTag = /** @class */ (function (_super) {
|
||||
__extends(ToggleTag, _super);
|
||||
function ToggleTag(song, tag) {
|
||||
var _this = _super.call(this, 'ToggleTag') || this;
|
||||
_this.song = song;
|
||||
_this.tag = tag;
|
||||
return _this;
|
||||
}
|
||||
return ToggleTag;
|
||||
}(StuenMessage));
|
||||
exports.ToggleTag = ToggleTag;
|
||||
var Shuffle = /** @class */ (function (_super) {
|
||||
__extends(Shuffle, _super);
|
||||
function Shuffle() {
|
||||
return _super.call(this, 'Shuffle') || this;
|
||||
}
|
||||
return Shuffle;
|
||||
}(StuenMessage));
|
||||
exports.Shuffle = Shuffle;
|
||||
var RemoveFromAutoPlay = /** @class */ (function (_super) {
|
||||
__extends(RemoveFromAutoPlay, _super);
|
||||
function RemoveFromAutoPlay() {
|
||||
return _super.call(this, 'RemoveFromAutoPlay') || this;
|
||||
}
|
||||
return RemoveFromAutoPlay;
|
||||
}(StuenMessage));
|
||||
exports.RemoveFromAutoPlay = RemoveFromAutoPlay;
|
||||
|
||||
12
dist/parseMessage.js
vendored
12
dist/parseMessage.js
vendored
@@ -1,5 +1,5 @@
|
||||
"use strict";
|
||||
exports.__esModule = true;
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
var messageTypes_1 = require("./messageTypes");
|
||||
function parseMessage(message) {
|
||||
try {
|
||||
@@ -45,10 +45,18 @@ function parseMessage(message) {
|
||||
return new messageTypes_1.PlaylistSongs(data.playlist);
|
||||
case 'CreatePlaylist':
|
||||
return new messageTypes_1.CreatePlaylist(data.title);
|
||||
case 'RemovePlaylist':
|
||||
return new messageTypes_1.RemovePlaylist(data.title);
|
||||
case 'AddSongToPlaylist':
|
||||
return new messageTypes_1.AddSongToPlaylist(data.song, data.playlist);
|
||||
case 'RemoveSongFromPlaylist':
|
||||
return new messageTypes_1.RemoveSongFromPlaylist(data.song, data.playlist);
|
||||
case 'ToggleTag':
|
||||
return new messageTypes_1.ToggleTag(data.song, data.tag);
|
||||
case 'Shuffle':
|
||||
return new messageTypes_1.Shuffle();
|
||||
case 'RemoveFromAutoPlay':
|
||||
return new messageTypes_1.RemoveFromAutoPlay();
|
||||
default:
|
||||
console.error('Unknown message type:', data.type);
|
||||
return null;
|
||||
@@ -59,4 +67,4 @@ function parseMessage(message) {
|
||||
return null; // Handle parsing errors
|
||||
}
|
||||
}
|
||||
exports["default"] = parseMessage;
|
||||
exports.default = parseMessage;
|
||||
|
||||
@@ -17,11 +17,15 @@ export type StuenMessages =
|
||||
| SongLikes
|
||||
| ToggleSongLike
|
||||
| CreatePlaylist
|
||||
| RemovePlaylist
|
||||
| AddSongToPlaylist
|
||||
| RemoveSongFromPlaylist
|
||||
| Playlists
|
||||
| GetPlaylist
|
||||
| PlaylistSongs
|
||||
| ToggleTag
|
||||
| Shuffle
|
||||
| RemoveFromAutoPlay
|
||||
|
||||
export abstract class StuenMessage {
|
||||
constructor(public type: string) {
|
||||
@@ -132,6 +136,11 @@ export class CreatePlaylist extends StuenMessage {
|
||||
super('CreatePlaylist');
|
||||
}
|
||||
}
|
||||
export class RemovePlaylist extends StuenMessage {
|
||||
constructor(public title: string) {
|
||||
super('RemovePlaylist');
|
||||
}
|
||||
}
|
||||
|
||||
export class Playlists extends StuenMessage {
|
||||
constructor(public playlists: PlaylistDescription[]) {
|
||||
@@ -161,3 +170,21 @@ export class RemoveSongFromPlaylist extends StuenMessage {
|
||||
super('RemoveSongFromPlaylist');
|
||||
}
|
||||
}
|
||||
|
||||
export class ToggleTag extends StuenMessage {
|
||||
constructor(public song: Song, public tag: string) {
|
||||
super('ToggleTag');
|
||||
}
|
||||
}
|
||||
|
||||
export class Shuffle extends StuenMessage {
|
||||
constructor() {
|
||||
super('Shuffle');
|
||||
}
|
||||
}
|
||||
|
||||
export class RemoveFromAutoPlay extends StuenMessage {
|
||||
constructor() {
|
||||
super('RemoveFromAutoPlay');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "stuen-common",
|
||||
"version": "1.2.3",
|
||||
"version": "1.2.10",
|
||||
"main": "dist/common.js",
|
||||
"type": "commonjs",
|
||||
"types": "dist/common.d.ts",
|
||||
|
||||
@@ -11,16 +11,16 @@ import {
|
||||
ListenerList,
|
||||
Playlists,
|
||||
PlaylistSongs,
|
||||
QueueSong,
|
||||
QueueSong, RemoveFromAutoPlay, RemovePlaylist,
|
||||
RemoveSongFromPlaylist,
|
||||
ReorderSong,
|
||||
SearchSong,
|
||||
SearchSongResult,
|
||||
SendChatMessage,
|
||||
SendChatMessage, Shuffle,
|
||||
SkipSong,
|
||||
SongLikes,
|
||||
StuenMessage,
|
||||
ToggleSongLike,
|
||||
ToggleSongLike, ToggleTag,
|
||||
UnqueueSong
|
||||
} from "./messageTypes";
|
||||
|
||||
@@ -69,10 +69,18 @@ export default function parseMessage(message: string): StuenMessage | null {
|
||||
return new PlaylistSongs(data.playlist);
|
||||
case 'CreatePlaylist':
|
||||
return new CreatePlaylist(data.title);
|
||||
case 'RemovePlaylist':
|
||||
return new RemovePlaylist(data.title);
|
||||
case 'AddSongToPlaylist':
|
||||
return new AddSongToPlaylist(data.song, data.playlist);
|
||||
case 'RemoveSongFromPlaylist':
|
||||
return new RemoveSongFromPlaylist(data.song, data.playlist);
|
||||
case 'ToggleTag':
|
||||
return new ToggleTag(data.song, data.tag);
|
||||
case 'Shuffle':
|
||||
return new Shuffle();
|
||||
case 'RemoveFromAutoPlay':
|
||||
return new RemoveFromAutoPlay();
|
||||
default:
|
||||
console.error('Unknown message type:', data.type);
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user