1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const __1 = require("..");
|
4 | function launch(implementation) {
|
5 | return __1.launch(endpointForParent(), implementation);
|
6 | }
|
7 | exports.launch = launch;
|
8 | function connect(worker) {
|
9 | return __1.connect(endpointForWorker(worker));
|
10 | }
|
11 | exports.connect = connect;
|
12 | function endpointForWorker(worker) {
|
13 | return {
|
14 | onMessage: callback => worker.addEventListener('message', event => callback(event.data)),
|
15 | sendMessage: message => worker.postMessage(message),
|
16 | disconnect: () => worker.terminate()
|
17 | };
|
18 | }
|
19 | exports.endpointForWorker = endpointForWorker;
|
20 | function endpointForParent() {
|
21 | return {
|
22 | onMessage: callback => addEventListener('message', event => callback(event.data)),
|
23 | sendMessage: message => postMessage(message),
|
24 | disconnect: () => close()
|
25 | };
|
26 | }
|
27 | exports.endpointForParent = endpointForParent;
|