
async function listVideos() {
    const resp = await fetch("/api/video/list/");
    return await resp.json();
}

async function listDisplays() {
    const resp = await fetch("/api/display/list/");
    return await resp.json();
}

async function listAudioSinks() {
    const resp = await fetch("/api/audio/list/");
    return await resp.json();
}

function changeAudioSink(sink) {
    fetch("/api/audio/change/", {
        method: "POST",
        body: JSON.stringify({sink}),
    });
}

function showVideo(videoID, display) {
    fetch("/api/video/show/", {
        method: "POST",
        body: JSON.stringify({id: videoID, display: display}),
    }).then(updateUI);
}

function hideVideo(videoID) {
    fetch("/api/video/hide/", {
        method: "POST",
        body: JSON.stringify({id: videoID}),
    }).then(updateUI);
}

function openVideo(link) {
    const display = localStorage.getItem("display");
    fetch("/api/video/open/", {
        method: "POST",
        body: JSON.stringify({link, display}),
    }).then(updateUI);
}

function openVideoInBackground(link) {
    fetch("/api/video/open/hide/", {
        method: "POST",
        body: JSON.stringify({link}),
    }).then(updateUI);
}

function closeVideo(videoID) {
    fetch("/api/video/close/", {
        method: "POST",
        body: JSON.stringify({id: videoID}),
    }).then(updateUI);
}

function pauseVideo(videoID) {
    fetch("/api/video/pause/", {
        method: "POST",
        body: JSON.stringify({id: videoID}),
    }).then(updateUI);
}

function unpauseVideo(videoID) {
    fetch("/api/video/play/", {
        method: "POST",
        body: JSON.stringify({id: videoID}),
    }).then(updateUI);
}

function seekVideo(videoID, second) {
    fetch("/api/video/seek/", {
        method: "POST",
        body: JSON.stringify({id: videoID, second: second}),
    }).then(updateUI);
}

function seekVideoRelative(videoID, second) {
    fetch("/api/video/seek/relative/", {
        method: "POST",
        body: JSON.stringify({id: videoID, second: second}),
    }).then(updateUI);
}


function setVolume(volume) {
    fetch("/api/video/volume/", {
        method: "POST",
        body: JSON.stringify({volume}),
    }).then(updateUI);
}