From 9e8bc4a1e2361c4a4e4a0657df9cd893acc68682 Mon Sep 17 00:00:00 2001 From: Tim Keller Date: Sat, 31 May 2025 17:17:49 -0500 Subject: connector communicates with websocket and make slides into class --- src/connector.js | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/connector.js') diff --git a/src/connector.js b/src/connector.js index 1fa513b..6c557a8 100644 --- a/src/connector.js +++ b/src/connector.js @@ -1,6 +1,24 @@ +import io from "socket.io-client" + class APIConnector { constructor(url) { this.url = url ?? "" + this.socket = io(url) + + this.asset_index = 0 + this.asset = null + this.prevAssets = null + this.nextAssets = null + this.seekCallbacks = [] + + this.socket.on("seek", e => { + this.asset_index = e.asset_index + this.asset = e.asset + this.prevAssets = e.prev_assets + this.nextAssets = e.next_assets + for (const cb of this.seekCallbacks) + cb() + }) } #fetch(endpoint) { @@ -23,7 +41,8 @@ class APIConnector { } seek(increment) { - return this.fetch(`/seek?increment=${increment}`) + //return this.fetch(`/seek?increment=${increment}`) + this.socket.emit("seek", increment) } fetchAlbums() { -- cgit v1.2.3