- dispose () {
- this.parentNode.removeChild(this)
- }
-}
-Button.registerComponent('PeerTubeLinkButton', PeertubeLinkButton)
-
-class WebTorrentButton extends Button {
- createEl () {
- const div = document.createElement('div')
- const subDiv = document.createElement('div')
- div.appendChild(subDiv)
-
- const downloadIcon = document.createElement('span')
- downloadIcon.classList.add('icon', 'icon-download')
- subDiv.appendChild(downloadIcon)
-
- const downloadSpeedText = document.createElement('span')
- downloadSpeedText.classList.add('download-speed-text')
- const downloadSpeedNumber = document.createElement('span')
- downloadSpeedNumber.classList.add('download-speed-number')
- const downloadSpeedUnit = document.createElement('span')
- downloadSpeedText.appendChild(downloadSpeedNumber)
- downloadSpeedText.appendChild(downloadSpeedUnit)
- subDiv.appendChild(downloadSpeedText)
-
- const uploadIcon = document.createElement('span')
- uploadIcon.classList.add('icon', 'icon-upload')
- subDiv.appendChild(uploadIcon)
-
- const uploadSpeedText = document.createElement('span')
- uploadSpeedText.classList.add('upload-speed-text')
- const uploadSpeedNumber = document.createElement('span')
- uploadSpeedNumber.classList.add('upload-speed-number')
- const uploadSpeedUnit = document.createElement('span')
- uploadSpeedText.appendChild(uploadSpeedNumber)
- uploadSpeedText.appendChild(uploadSpeedUnit)
- subDiv.appendChild(uploadSpeedText)
-
- const peersText = document.createElement('span')
- peersText.textContent = ' peers'
- peersText.classList.add('peers-text')
- const peersNumber = document.createElement('span')
- peersNumber.classList.add('peers-number')
- subDiv.appendChild(peersNumber)
- subDiv.appendChild(peersText)
-
- div.className = 'vjs-webtorrent'
- // Hide the stats before we get the info
- subDiv.className = 'vjs-webtorrent-hidden'
-
- this.player_.peertube().on('torrentInfo', (event, data) => {
- const downloadSpeed = bytes(data.downloadSpeed)
- const uploadSpeed = bytes(data.uploadSpeed)
- const numPeers = data.numPeers
-
- downloadSpeedNumber.textContent = downloadSpeed[0]
- downloadSpeedUnit.textContent = ' ' + downloadSpeed[1]
-
- uploadSpeedNumber.textContent = uploadSpeed[0]
- uploadSpeedUnit.textContent = ' ' + uploadSpeed[1]
-
- peersNumber.textContent = numPeers
-
- subDiv.className = 'vjs-webtorrent-displayed'