1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-webtorrent-element

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
index.js 1.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Mikeal Rogers Отправлено 03.10.2017 00:44 8187c4a
const ZComponent = require('zcomponent')
const WebTorrent = require('webtorrent')
const magnetURL = require('magnet-uri')
const client = new WebTorrent()
const getTorrent = (magnet, fn) => {
let decoded = magnetURL(magnet)
for (let torrent of client.torrents) {
if (torrent.infoHash === decoded.infoHash) {
// TODO: make sure all trackers and web seeds are added
return fn(torrent)
}
}
client.add(magnet, fn)
}
class WebTorrentElement extends ZComponent {
set file (file) {
this._file = file
}
set src (magnet) {
getTorrent(magnet, torrent => {
torrent.files.forEach(file => {
if (this._file) {
if (file.name === this._file || file.path === this._file) {
file.appendTo(this)
}
} else {
file.appendTo(this)
}
})
})
}
get shadow () {
return `
<style>
:host {
padding: 0 0 0 0;
margin: 0 0 0 0;
}
</style>
<slot>
</slot>
`
}
}
module.exports = WebTorrentElement
window.customElements.define('web-torrent', WebTorrentElement)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-webtorrent-element.git
git@api.gitlife.ru:oschina-mirror/mirrors-webtorrent-element.git
oschina-mirror
mirrors-webtorrent-element
mirrors-webtorrent-element
master