source: frontend/node_modules/fork-ts-checker-webpack-plugin/lib/rpc/RpcMessageChannel.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 12 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 2.1 KB
Line 
1"use strict";
2var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4 return new (P || (P = Promise))(function (resolve, reject) {
5 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8 step((generator = generator.apply(thisArg, _arguments || [])).next());
9 });
10};
11Object.defineProperty(exports, "__esModule", { value: true });
12function createRpcMessageChannel(servicePort, clientPort, linkPorts, unlinkPorts) {
13 // if there is not link and unlink function provided, we assume that channel is automatically linked
14 let arePortsLinked = !linkPorts && !unlinkPorts;
15 return {
16 servicePort,
17 clientPort,
18 isOpen: () => servicePort.isOpen() && clientPort.isOpen() && arePortsLinked,
19 open: () => __awaiter(this, void 0, void 0, function* () {
20 if (!servicePort.isOpen()) {
21 yield servicePort.open();
22 }
23 if (!clientPort.isOpen()) {
24 yield clientPort.open();
25 }
26 if (!arePortsLinked) {
27 if (linkPorts) {
28 yield linkPorts();
29 }
30 arePortsLinked = true;
31 }
32 }),
33 close: () => __awaiter(this, void 0, void 0, function* () {
34 if (arePortsLinked) {
35 if (unlinkPorts) {
36 yield unlinkPorts();
37 }
38 arePortsLinked = false;
39 }
40 if (servicePort.isOpen()) {
41 yield servicePort.close();
42 }
43 if (clientPort.isOpen()) {
44 yield clientPort.close();
45 }
46 }),
47 };
48}
49exports.createRpcMessageChannel = createRpcMessageChannel;
Note: See TracBrowser for help on using the repository browser.