X-Git-Url: https://git.r.bdr.sh/rbdr/junction/blobdiff_plain/e2da0c51692b64318a0f1b8d888536ee632c53d6..b9a2baf2a7c957089e63844b857e05c07b87c2fb:/extension/peers.js diff --git a/extension/peers.js b/extension/peers.js index 41155d4..2b4e3d6 100644 --- a/extension/peers.js +++ b/extension/peers.js @@ -1,41 +1,43 @@ -'use strict'; - const internals = { peers: {}, createAudioElement(source) { + const audioElement = document.createElement("audio"); + audioElement.setAttribute("class", "junction-call-audio"); + audioElement.autoplay = "autoplay"; + + // WE WILL NOT LOSE TADA SUPPORT + if (typeof source === "string") { + audioElement.src = source; + } else { + audioElement.srcObject = source; + } - const audioElement = document.createElement('audio'); - audioElement.setAttribute('class', 'junction-call-audio'); - audioElement.src = source; - audioElement.autoplay = 'autoplay'; - document.querySelector('body').appendChild(audioElement); + document.querySelector("body").appendChild(audioElement); return audioElement; - } + }, }; -module.exports = { - add(id, url) { - +export default { + add(id, source) { internals.peers[id] && this.remove(id); - internals.peers[id] = internals.createAudioElement(url) + internals.peers[id] = internals.createAudioElement(source); }, remove(id) { - internals.peers[id] && internals.peers[id].remove(); delete internals.peers[id]; }, count() { - return Object.keys(internals.peers).length; }, reset() { - internals.peers = {}; - document.querySelectorAll('.junction-call-audio').forEach((audioElement) => audioElement.remove()); - } + document + .querySelectorAll(".junction-call-audio") + .forEach((audioElement) => audioElement.remove()); + }, };