diff options
| author | Tim Keller <tjk@tjkeller.xyz> | 2025-05-31 17:17:49 -0500 |
|---|---|---|
| committer | Tim Keller <tjk@tjkeller.xyz> | 2025-05-31 17:17:49 -0500 |
| commit | 9e8bc4a1e2361c4a4e4a0657df9cd893acc68682 (patch) | |
| tree | f4b165ebbb404c5b720a1fba85231bc924a45a2c /src/connector.js | |
| parent | caacbe50c567da5d267558b52b69120d1ccabd42 (diff) | |
| download | immich-frame-9e8bc4a1e2361c4a4e4a0657df9cd893acc68682.tar.xz immich-frame-9e8bc4a1e2361c4a4e4a0657df9cd893acc68682.zip | |
connector communicates with websocket and make slides into class
Diffstat (limited to 'src/connector.js')
| -rw-r--r-- | src/connector.js | 21 |
1 files changed, 20 insertions, 1 deletions
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() { |
