Innovenergy_trunk/frontend/node_modules/testcafe/lib/dashboard/connector.js

84 lines
9.7 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const get_testcafe_version_1 = __importDefault(require("../utils/get-testcafe-version"));
const get_dashboard_url_1 = __importDefault(require("./get-dashboard-url"));
const https_1 = __importDefault(require("https"));
const debug_1 = __importDefault(require("debug"));
const DEBUG_LOGGER = (0, debug_1.default)('testcafe:dashboard:connector');
class DashboardConnector {
constructor(baseUrl = (0, get_dashboard_url_1.default)()) {
this.baseUrl = baseUrl;
}
async _sendPostJsonRequest(relativeUrl, body) {
const url = new URL(relativeUrl, this.baseUrl);
const postData = JSON.stringify(body);
const options = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': Buffer.byteLength(postData),
},
};
return new Promise((resolve, reject) => {
const req = https_1.default.request(url, options, res => {
res.setEncoding('utf8');
let responseBody = '';
res.on('data', chunk => {
responseBody += chunk.toString();
});
res.on('end', () => {
resolve({
statusCode: res.statusCode,
headers: res.headers,
body: responseBody,
});
});
});
req.on('error', reject);
req.write(postData);
req.end();
});
}
async _postRequest(relativeUrl, body) {
try {
const response = await this._sendPostJsonRequest(relativeUrl, body);
if (response.statusCode >= 200 && response.statusCode <= 299)
return { success: true };
return {
success: false,
errorMessage: response.body,
isDashboardError: true,
};
}
catch (err) {
DEBUG_LOGGER(err);
return {
success: false,
errorMessage: err.message,
isDashboardError: false,
};
}
}
async sendEmail(email) {
return this._postRequest(DashboardConnector.API_URLS.sendMagicLinkMail, {
email,
thirdPartyRegistration: true,
});
}
async validateToken(token) {
return this._postRequest(DashboardConnector.API_URLS.validateToken, {
token,
testcafeVersion: (0, get_testcafe_version_1.default)(),
});
}
}
exports.default = DashboardConnector;
DashboardConnector.API_URLS = {
sendMagicLinkMail: '/api/sendMagicLinkMail',
validateToken: '/api/validateAuthToken',
};
module.exports = exports.default;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Rhc2hib2FyZC9jb25uZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5RkFBK0Q7QUFDL0QsNEVBQWtEO0FBQ2xELGtEQUEwQjtBQUMxQixrREFBMEI7QUFFMUIsTUFBTSxZQUFZLEdBQUcsSUFBQSxlQUFLLEVBQUMsOEJBQThCLENBQUMsQ0FBQztBQUUzRCxNQUFxQixrQkFBa0I7SUFRbkMsWUFBb0IsT0FBTyxHQUFHLElBQUEsMkJBQWUsR0FBRTtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUMzQixDQUFDO0lBRU8sS0FBSyxDQUFDLG9CQUFvQixDQUFFLFdBQW1CLEVBQUUsSUFBWTtRQUNqRSxNQUFNLEdBQUcsR0FBUSxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEMsTUFBTSxPQUFPLEdBQUc7WUFDWixNQUFNLEVBQUcsTUFBTTtZQUNmLE9BQU8sRUFBRTtnQkFDTCxjQUFjLEVBQUksa0JBQWtCO2dCQUNwQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQzthQUNoRDtTQUNKLENBQUM7UUFFRixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ25DLE1BQU0sR0FBRyxHQUFHLGVBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsRUFBRTtnQkFDMUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFeEIsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO2dCQUV0QixHQUFHLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtvQkFDbkIsWUFBWSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsR0FBRyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFO29CQUNmLE9BQU8sQ0FBQzt3QkFDSixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7d0JBQzFCLE9BQU8sRUFBSyxHQUFHLENBQUMsT0FBTzt3QkFDdkIsSUFBSSxFQUFRLFlBQVk7cUJBQzNCLENBQUMsQ0FBQztnQkFDUCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1lBRUgsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFeEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxLQUFLLENBQUMsWUFBWSxDQUFFLFdBQW1CLEVBQUUsSUFBUztRQUN0RCxJQUFJO1lBQ0EsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBRXBFLElBQUksUUFBUSxDQUFDLFVBQVUsSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLFVBQVUsSUFBSSxHQUFHO2dCQUN4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1lBRTdCLE9BQU87Z0JBQ0gsT0FBTyxFQUFXLEtBQUs7Z0JBQ3ZCLFlBQVksRUFBTSxRQUFRLENBQUMsSUFBSTtnQkFDL0IsZ0JBQWdCLEVBQUUsSUFBSTthQUN6QixDQUFDO1NBQ0w7UUFDRCxPQUFPLEdBQVEsRUFBRTtZQUNiLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUVsQixPQUFPO2dCQUNILE9BQU8sRUFBVyxLQUFLO2dCQUN2QixZQUFZLEVBQU0sR0FBRyxDQUFDLE9BQU87Z0JBQzdCLGdCQUFnQixFQUFFLEtBQUs7YUFDMUIsQ0FBQztTQUNMO0lBQ0wsQ0FBQztJQUVNLEtBQUssQ0FBQyxTQUFTLENBQUUsS0FBYTtRQUNqQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFO1lBQ3BFLEtBQUs7WUFDTCxzQkFBc0IsRUFBRSxJQUFJO1NBQy9CLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUFFLEtBQWE7UUFDckMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUU7WUFDaEUsS0FBSztZQUNMLGVBQWUsRUFBRSxJQUFBLDhCQUFrQixHQUFFO1NBQ3hDLENBQUMsQ0FBQztJQUNQLENBQUM7O0FBckZMLHFDQXNGQztBQW5GaUIsMkJBQVEsR0FBRztJQUNyQixpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsYUFBYSxFQUFNLHdCQUF3QjtDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldFRlc3RjYWZlVmVyc2lvbiBmcm9tICcuLi91dGlscy9nZXQtdGVzdGNhZmUtdmVyc2lvbic7XG5pbXBvcnQgZ2V0RGFzaGJvYXJkVXJsIGZyb20gJy4vZ2V0LWRhc2hib2FyZC11cmwnO1xuaW1wb3J0IGh0dHBzIGZyb20gJ2h0dHBzJztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5cbmNvbnN0IERFQlVHX0xPR0dFUiA9IGRlYnVnKCd0ZXN0Y2FmZTpkYXNoYm9hcmQ6Y29ubmVjdG9yJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERhc2hib2FyZENvbm5lY3RvciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBiYXNlVXJsOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgc3RhdGljIEFQSV9VUkxTID0ge1xuICAgICAgICBzZW5kTWFnaWNMaW5rTWFpbDogJy9hcGkvc2VuZE1hZ2ljTGlua01haWwnLFxuICAgICAgICB2YWxpZGF0ZVRva2VuOiAgICAgJy9hcGkvdmFsaWRhdGVBdXRoVG9rZW4nLFxuICAgIH07XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IgKGJhc2VVcmwgPSBnZXREYXNoYm9hcmRVcmwoKSkge1xuICAgICAgICB0aGlzLmJhc2VVcmwgPSBiYXNlVXJsO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgX3NlbmRQb3N0SnNvblJlcXVlc3QgKHJlbGF0aXZlVXJsOiBzdHJpbmcsIGJvZHk6IG9iamVjdCk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIGNvbnN0IHVybCAgICAgID0gbmV3IFVSTChyZWxhdGl2ZVVybCwgdGhpcy5iYXNlVXJsKTtcbiAgICAgICAgY29uc3QgcG9zdERhdGEgPSBKU09OLnN0cmluZ2lmeShib2R5KTtcblxuICAgICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICAgICAgbWV0aG9kOiAgJ1BPU1QnLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAgICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQ29udGVudC1MZW5ndGgnOiBCdWZmZXIuYnl0ZUxlbmd0aChwb3N0RGF0YSksXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXEgPSBodHRwcy5yZXF1ZXN0KHVybCwgb3B0aW9ucywgcmVzID0+IHtcbiAgICAgICAgICAgICAgICByZXMuc2V0RW5jb2RpbmcoJ3V0ZjgnKTtcblxuICAgICAgICAgICAgICAgIGxldCByZXNwb25zZUJvZHkgPSAnJztcblxuICAgICAgICAgICAgICAgIHJlcy5vbignZGF0YScsIGNodW5rID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VCb2R5ICs9IGNodW5rLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmVzLm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzQ29kZTogcmVzLnN0YXR1c0NvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiAgICByZXMuaGVhZGVycyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHk6ICAgICAgIHJlc3BvbnNlQm9keSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmVxLm9uKCdlcnJvcicsIHJlamVjdCk7XG5cbiAgICAgICAgICAgIHJlcS53cml0ZShwb3N0RGF0YSk7XG4gICAgICAgICAgICByZXEuZW5kKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgX3Bvc3RSZXF1ZXN0IChyZWxhdGl2ZVVybDogc3RyaW5nLCBib2R5OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLl9zZW5kUG9zdEpzb25SZXF1ZXN0KHJlbGF0aXZlVXJsLCBib2R5KTtcblxuICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1c0NvZGUgPj0gMjAwICYmIHJlc3BvbnNlLnN0YXR1c0NvZGUgPD0gMjk5KVxuICAgICAgICAgICAgICAgIHJldHVybiB7IHN1Y2Nlc3M6IHRydWUgfTtcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBzdWNjZXNzOiAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6ICAgICByZXNwb25zZS5ib2R5LFxuICAgICAgICAgICAgICAgIGlzRGFzaGJvYXJkRXJyb3I6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnI6IGFueSkge1xuICAgICAgICAgICAgREVCVUdfTE9HR0VSKGVycik7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgc3VjY2VzczogICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiAgICAgZXJyLm1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgaXNEYXNoYm9hcmRFcnJvcjogZmFsc2UsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlbmRFbWFpbCAoZW1haWw6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wb3N0UmVxdWVzdChEYXNoYm9hcmRDb25uZWN0b3IuQVBJX1VSTFMuc2VuZE1hZ2ljTGlua01haWwsIHtcbiAgICAgICAgICAgIGVtYWlsLFxuICAgICAgICAgICAgdGhpcmRQYXJ0eVJlZ2lzdHJhdGlvbjogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHZhbGlkYXRlVG9rZW4gKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcG9zdFJlcXVlc3QoRGFzaGJvYXJkQ29ubmVjdG9yLkFQSV9VUkxTLnZhbGlkYXRlVG9rZW4sIHtcbiAgICAgICAgICAgIHRva2VuLFxuICAgICAgICAgICAgdGVzdGNhZmVWZXJzaW9uOiBnZXRUZXN0Y2FmZVZlcnNpb24oKSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19