diff --git a/package.json b/package.json index b69c3df..2a54c1c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "Miru", - "version": "3.0.4", + "version": "3.0.5", "author": "ThaUnknown_ ", "main": "src/index.js", "homepage": "https://github.com/ThaUnknown/miru#readme", @@ -113,7 +113,7 @@ "jassub": "^1.1.8", "matroska-subtitles": "github:ThaUnknown/matroska-subtitles#patch", "mime": "^3.0.0", - "p2pcf": "1.3.6", + "p2pcf": "github.com/ThaUnknown/p2pcf#no-remove", "pump": "^3.0.0", "quartermoon": "^1.2.1", "range-parser": "^1.2.1", diff --git a/src/renderer/src/lib/WatchTogether/p2pworker.js b/src/renderer/src/lib/WatchTogether/p2pworker.js new file mode 100644 index 0000000..a8226b2 --- /dev/null +++ b/src/renderer/src/lib/WatchTogether/p2pworker.js @@ -0,0 +1,32 @@ +const P2PT = require('p2pt') + +class P2PWorker extends P2PT { + constructor (...args) { + super(...args) + + onmessage = this.handleMessage.bind(this) + this.start() + } + + dispatch (type, data) { + postMessage({ type, data }) + } + + handleMessage ({ data }) { + switch (data.type) { + case 'current': { + break + } + case 'torrent': { + break + } + } + } +} + +let client = null + +onmessage = ({ data }) => { + if (!client && data.type === 'settings') client = new P2PWorker(data.data) + if (data.type === 'destroy') client?.predestroy() +}