projecte_ionic/node_modules/blocking-proxy/built/lib/client.js
2022-02-09 18:30:03 +01:00

68 lines
2.5 KiB
JavaScript
Executable file

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const http = require("http");
const url = require("url");
const blockingproxy_1 = require("./blockingproxy");
class BPClient {
constructor(bpUrlValue) {
let bpUrl = url.parse(bpUrlValue);
this.hostname = bpUrl.hostname;
this.port = parseInt(bpUrl.port);
}
/**
* Toggle whether waiting for Angular is enabled.
*
* @param enabled Whether or not to enable waiting for angular.
* @returns {Promise<T>}
*/
setWaitEnabled(enabled) {
return new Promise((resolve, reject) => {
let options = { host: this.hostname, port: this.port, method: 'POST', path: `/${blockingproxy_1.BP_PREFIX}/waitEnabled` };
let request = http.request(options, (response) => {
response.on('data', () => { });
response.on('error', (err) => reject(err));
response.on('end', () => {
resolve();
});
});
request.write(JSON.stringify({ value: enabled }));
request.end();
});
}
/**
* Set the selector used to find the root element of the Angular application to wait for. See
* AngularWaitBarrier for more details.
*
* @param selector A selector, or empty string to wait for all Angular apps.
*/
setWaitParams(rootSelector) {
return new Promise((resolve, reject) => {
let options = { host: this.hostname, port: this.port, method: 'POST', path: `/${blockingproxy_1.BP_PREFIX}/waitParams` };
let request = http.request(options, (response) => {
response.on('data', () => { });
response.on('error', (err) => reject(err));
response.on('end', () => {
resolve();
});
});
request.write(JSON.stringify({ rootSelector: rootSelector }));
request.end();
});
}
isWaitEnabled() {
return new Promise((res) => {
let options = { host: this.hostname, port: this.port, path: `/${blockingproxy_1.BP_PREFIX}/waitEnabled` };
http.get(options, (response) => {
let body = '';
response.on('data', (data) => {
body += data;
});
response.on('end', () => {
res(JSON.parse(body).value);
});
});
});
}
}
exports.BPClient = BPClient;
//# sourceMappingURL=client.js.map