Queue message

This commit is contained in:
Torben Pi Jensen
2023-11-05 20:55:43 +01:00
parent 1e98cc84d5
commit f8104ffbfe
5 changed files with 52 additions and 5 deletions

View File

@@ -1,5 +1,5 @@
import { Song } from "./dataTypes";
export declare type StuenMessages = ListenerLeft | ListenerList | ListenerJoined | SendChatMessage | SearchSong | SearchSongResult | Join;
export declare type StuenMessages = ListenerLeft | ListenerList | ListenerJoined | SendChatMessage | SearchSong | SearchSongResult | Join | QueueSong | CurrentQueue;
export declare abstract class StuenMessage {
type: string;
constructor(type: string);
@@ -37,3 +37,11 @@ export declare class SearchSongResult extends StuenMessage {
result: Song[];
constructor(result: Song[]);
}
export declare class QueueSong extends StuenMessage {
song: Song;
constructor(song: Song);
}
export declare class CurrentQueue extends StuenMessage {
songs: Song[];
constructor(songs: Song[]);
}

22
dist/messageTypes.js vendored
View File

@@ -15,7 +15,7 @@ var __extends = (this && this.__extends) || (function () {
};
})();
exports.__esModule = true;
exports.SearchSongResult = exports.SearchSong = exports.ChatMessage = exports.SendChatMessage = exports.ListenerList = exports.ListenerLeft = exports.ListenerJoined = exports.Join = exports.StuenMessage = void 0;
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;
@@ -104,3 +104,23 @@ var SearchSongResult = /** @class */ (function (_super) {
return SearchSongResult;
}(StuenMessage));
exports.SearchSongResult = SearchSongResult;
var QueueSong = /** @class */ (function (_super) {
__extends(QueueSong, _super);
function QueueSong(song) {
var _this = _super.call(this, 'QueueSong') || this;
_this.song = song;
return _this;
}
return QueueSong;
}(StuenMessage));
exports.QueueSong = QueueSong;
var CurrentQueue = /** @class */ (function (_super) {
__extends(CurrentQueue, _super);
function CurrentQueue(songs) {
var _this = _super.call(this, 'CurrentQueue') || this;
_this.songs = songs;
return _this;
}
return CurrentQueue;
}(StuenMessage));
exports.CurrentQueue = CurrentQueue;

View File

@@ -21,6 +21,10 @@ function parseMessage(message) {
return new messageTypes_1.SearchSong(data.query);
case 'SearchSongResult':
return new messageTypes_1.SearchSongResult(data.result);
case 'QueueSong':
return new messageTypes_1.QueueSong(data.song);
case 'CurrentQueue':
return new messageTypes_1.CurrentQueue(data.songs);
default:
console.error('Unknown message type:', data.type);
return null;