@twilio/flex-plugin-e2e-tests 6.3.4-alpha.202405081240 → 6.3.4-alpha.202405090906

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,7 @@
1
- import { ConsoleAuthOptions } from '../utils';
1
+ interface ConsoleAuthOptions {
2
+ email: string;
3
+ password: string;
4
+ }
2
5
  interface Hidden {
3
6
  __hidden: boolean;
4
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/core/parameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parameters.js","sourceRoot":"","sources":["../../src/core/parameters.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ export { default as assertion } from './assertion';
3
3
  export { writeFileSync } from 'fs';
4
4
  export { default as api } from './plugins-api';
5
5
  export { default as pluginHelper } from './plugin-helper';
6
- export * from './console-api';
7
6
  export * from './browser';
8
7
  export * from './timers';
9
8
  export { join as joinPath } from 'path';
@@ -27,7 +27,6 @@ var plugins_api_1 = require("./plugins-api");
27
27
  Object.defineProperty(exports, "api", { enumerable: true, get: function () { return __importDefault(plugins_api_1).default; } });
28
28
  var plugin_helper_1 = require("./plugin-helper");
29
29
  Object.defineProperty(exports, "pluginHelper", { enumerable: true, get: function () { return __importDefault(plugin_helper_1).default; } });
30
- __exportStar(require("./console-api"), exports);
31
30
  __exportStar(require("./browser"), exports);
32
31
  __exportStar(require("./timers"), exports);
33
32
  var path_1 = require("path");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;;;;;;;;;;;;;;AAE7C,iCAAiF;AAAxE,8FAAA,gBAAgB,OAAS;AAAE,kGAAA,SAAS,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAC/D,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yBAAmC;AAA1B,mGAAA,aAAa,OAAA;AACtB,6CAA+C;AAAtC,mHAAA,OAAO,OAAO;AACvB,iDAA0D;AAAjD,8HAAA,OAAO,OAAgB;AAChC,gDAA8B;AAC9B,4CAA0B;AAC1B,2CAAyB;AACzB,6BAAwC;AAA/B,gGAAA,IAAI,OAAY"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;;;;;;;;;;;;;;AAE7C,iCAAiF;AAAxE,8FAAA,gBAAgB,OAAS;AAAE,kGAAA,SAAS,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAC/D,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yBAAmC;AAA1B,mGAAA,aAAa,OAAA;AACtB,6CAA+C;AAAtC,mHAAA,OAAO,OAAO;AACvB,iDAA0D;AAAjD,8HAAA,OAAO,OAAgB;AAChC,4CAA0B;AAC1B,2CAAyB;AACzB,6BAAwC;AAA/B,gGAAA,IAAI,OAAY"}
@@ -2,9 +2,6 @@ import { Page } from 'puppeteer';
2
2
  import { Base } from './base';
3
3
  export declare class TwilioConsole extends Base {
4
4
  private static _loginForm;
5
- private static _password;
6
- private static _nextBtn;
7
- private static _loginBtn;
8
5
  assert: {};
9
6
  private readonly _baseUrl;
10
7
  private readonly _flexBaseUrl;
@@ -74,7 +74,7 @@ var TwilioConsole = /** @class */ (function (_super) {
74
74
  TwilioConsole.prototype.login = function (flexPath, accountSid, localhostPort, firstLoad) {
75
75
  if (firstLoad === void 0) { firstLoad = true; }
76
76
  return __awaiter(this, void 0, void 0, function () {
77
- var redirectUrl, path;
77
+ var redirectUrl, path, csrfToken, loginURL;
78
78
  return __generator(this, function (_a) {
79
79
  switch (_a.label) {
80
80
  case 0:
@@ -85,38 +85,53 @@ var TwilioConsole = /** @class */ (function (_super) {
85
85
  return [4 /*yield*/, this.goto({ baseUrl: this._baseUrl, path: path })];
86
86
  case 1:
87
87
  _a.sent();
88
- if (!firstLoad) return [3 /*break*/, 8];
89
- return [4 /*yield*/, this.elementVisible(TwilioConsole._loginForm, "Twilio Console's Login form")];
88
+ if (!firstLoad) return [3 /*break*/, 7];
89
+ return [4 /*yield*/, this.page.evaluate(function () {
90
+ var _a;
91
+ return (_a = document.head.querySelector('meta[name="csrfToken"]')) === null || _a === void 0 ? void 0 : _a.getAttribute('content');
92
+ })];
90
93
  case 2:
91
- _a.sent();
92
- return [4 /*yield*/, this.inputText(TwilioConsole._loginForm, core_1.testParams.secrets.console.email)];
94
+ csrfToken = _a.sent();
95
+ if (!csrfToken) return [3 /*break*/, 6];
96
+ loginURL = this._baseUrl + "/userauth/submitLoginPassword";
97
+ return [4 /*yield*/, this.page.evaluate(
98
+ // eslint-disable-next-line @typescript-eslint/promise-function-async
99
+ function (data) {
100
+ return fetch(data.url, {
101
+ headers: {
102
+ 'x-twilio-csrf': data.csrfToken,
103
+ 'Content-Type': 'application/json',
104
+ },
105
+ body: JSON.stringify({
106
+ email: data.email,
107
+ password: data.password,
108
+ }),
109
+ method: 'POST',
110
+ });
111
+ }, {
112
+ url: loginURL,
113
+ email: core_1.testParams.secrets.console.email,
114
+ password: core_1.testParams.secrets.console.password,
115
+ csrfToken: csrfToken,
116
+ })];
93
117
  case 3:
94
118
  _a.sent();
95
- return [4 /*yield*/, this.click(TwilioConsole._nextBtn)];
119
+ // Log in Flex via service login
120
+ return [4 /*yield*/, this.goto({ baseUrl: this._baseUrl, path: path })];
96
121
  case 4:
122
+ // Log in Flex via service login
97
123
  _a.sent();
98
- return [4 /*yield*/, this.inputText(TwilioConsole._password, core_1.testParams.secrets.console.password)];
124
+ return [4 /*yield*/, timers_1.sleep(30000)];
99
125
  case 5:
100
126
  _a.sent();
101
- return [4 /*yield*/, this.click(TwilioConsole._loginBtn)];
102
- case 6:
103
- _a.sent();
104
- return [4 /*yield*/, this.page.waitForNavigation()];
105
- case 7:
106
- _a.sent();
107
- _a.label = 8;
108
- case 8: return [4 /*yield*/, timers_1.sleep(30000)];
109
- case 9:
110
- _a.sent();
111
- return [2 /*return*/];
127
+ return [3 /*break*/, 7];
128
+ case 6: throw new Error('Unable to fetch CSRF token to login to Twilio Console');
129
+ case 7: return [2 /*return*/];
112
130
  }
113
131
  });
114
132
  });
115
133
  };
116
134
  TwilioConsole._loginForm = '#email';
117
- TwilioConsole._password = '#password';
118
- TwilioConsole._nextBtn = '#email-next';
119
- TwilioConsole._loginBtn = 'button[type=submit]';
120
135
  /**
121
136
  * Creates a localhost url
122
137
  * @param port
@@ -1 +1 @@
1
- {"version":3,"file":"twilio-console.js","sourceRoot":"","sources":["../../../../src/utils/pages/view/twilio-console.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAA8B;AAC9B,sCAA2C;AAC3C,uCAAqC;AAErC;IAAmC,iCAAI;IAerC,uBAAY,IAAU,EAAE,EAAgE;YAA9D,IAAI,UAAA,EAAE,aAAa,mBAAA;QAA7C,YACE,kBAAM,IAAI,CAAC,SAGZ;QAVD,YAAM,GAAG,EAAE,CAAC;QAQV,KAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;QAC9B,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC;;IAC3B,CAAC;IAQD;;;;;OAKG;IACG,6BAAK,GAAX,UAAY,QAAgB,EAAE,UAAkB,EAAE,aAAqB,EAAE,SAAyB;QAAzB,0BAAA,EAAA,gBAAyB;;;;;;wBAC1F,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC;4BACzD,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,CAAC;4BAClD,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;wBAChB,IAAI,GAAG,gCAA8B,UAAU,gBAAW,QAAQ,iBAAY,WAAa,CAAC;wBAElG,qBAAM,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,MAAA,EAAE,CAAC,EAAA;;wBAAjD,SAAiD,CAAC;6BAE9C,SAAS,EAAT,wBAAS;wBACX,qBAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,EAAE,6BAA6B,CAAC,EAAA;;wBAAlF,SAAkF,CAAC;wBACnF,qBAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,EAAE,iBAAU,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAAhF,SAAgF,CAAC;wBACjF,qBAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAA;;wBAAxC,SAAwC,CAAC;wBACzC,qBAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAA;;wBAAlF,SAAkF,CAAC;wBACnF,qBAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,EAAA;;wBAAzC,SAAyC,CAAC;wBAC1C,qBAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAA;;wBAAnC,SAAmC,CAAC;;4BAGtC,qBAAM,cAAK,CAAC,KAAK,CAAC,EAAA;;wBAAlB,SAAkB,CAAC;;;;;KACpB;IAlDc,wBAAU,GAAG,QAAQ,CAAC;IAEtB,uBAAS,GAAG,WAAW,CAAC;IAExB,sBAAQ,GAAG,aAAa,CAAC;IAEzB,uBAAS,GAAG,qBAAqB,CAAC;IAcjD;;;OAGG;IACY,iCAAmB,GAAG,UAAC,IAAY,IAAK,OAAA,sBAAoB,IAAI,mBAAc,IAAM,EAA5C,CAA4C,CAAC;IA2BtG,oBAAC;CAAA,AApDD,CAAmC,WAAI,GAoDtC;AApDY,sCAAa"}
1
+ {"version":3,"file":"twilio-console.js","sourceRoot":"","sources":["../../../../src/utils/pages/view/twilio-console.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAA8B;AAC9B,sCAA2C;AAC3C,uCAAqC;AAErC;IAAmC,iCAAI;IASrC,uBAAY,IAAU,EAAE,EAAgE;YAA9D,IAAI,UAAA,EAAE,aAAa,mBAAA;QAA7C,YACE,kBAAM,IAAI,CAAC,SAGZ;QAVD,YAAM,GAAG,EAAE,CAAC;QAQV,KAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;QAC9B,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC;;IAC3B,CAAC;IAQD;;;;;OAKG;IACG,6BAAK,GAAX,UAAY,QAAgB,EAAE,UAAkB,EAAE,aAAqB,EAAE,SAAyB;QAAzB,0BAAA,EAAA,gBAAyB;;;;;;wBAC1F,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC;4BACzD,CAAC,CAAC,aAAa,CAAC,mBAAmB,CAAC,aAAa,CAAC;4BAClD,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;wBAChB,IAAI,GAAG,gCAA8B,UAAU,gBAAW,QAAQ,iBAAY,WAAa,CAAC;wBAElG,qBAAM,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,MAAA,EAAE,CAAC,EAAA;;wBAAjD,SAAiD,CAAC;6BAE9C,SAAS,EAAT,wBAAS;wBACO,qBAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;;gCACzC,OAAO,MAAA,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,0CAAE,YAAY,CAAC,SAAS,CAAC,CAAC;4BACxF,CAAC,CAAC,EAAA;;wBAFI,SAAS,GAAG,SAEhB;6BAEE,SAAS,EAAT,wBAAS;wBACL,QAAQ,GAAM,IAAI,CAAC,QAAQ,kCAA+B,CAAC;wBACjE,qBAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;4BACtB,qEAAqE;4BACrE,UAAC,IAA4B;gCAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;oCACrB,OAAO,EAAE;wCACP,eAAe,EAAE,IAAI,CAAC,SAAS;wCAC/B,cAAc,EAAE,kBAAkB;qCACnC;oCACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wCACnB,KAAK,EAAE,IAAI,CAAC,KAAK;wCACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;qCACxB,CAAC;oCACF,MAAM,EAAE,MAAM;iCACf,CAAC,CAAC;4BACL,CAAC,EACD;gCACE,GAAG,EAAE,QAAQ;gCACb,KAAK,EAAE,iBAAU,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;gCACvC,QAAQ,EAAE,iBAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;gCAC7C,SAAS,WAAA;6BACV,CACF,EAAA;;wBArBD,SAqBC,CAAC;wBAEF,gCAAgC;wBAChC,qBAAM,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,MAAA,EAAE,CAAC,EAAA;;wBADjD,gCAAgC;wBAChC,SAAiD,CAAC;wBAClD,qBAAM,cAAK,CAAC,KAAK,CAAC,EAAA;;wBAAlB,SAAkB,CAAC;;4BAEnB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;;;;;KAG9E;IAvEc,wBAAU,GAAG,QAAQ,CAAC;IAcrC;;;OAGG;IACY,iCAAmB,GAAG,UAAC,IAAY,IAAK,OAAA,sBAAoB,IAAI,mBAAc,IAAM,EAA5C,CAA4C,CAAC;IAsDtG,oBAAC;CAAA,AAzED,CAAmC,WAAI,GAyEtC;AAzEY,sCAAa"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twilio/flex-plugin-e2e-tests",
3
- "version": "6.3.4-alpha.202405081240",
3
+ "version": "6.3.4-alpha.202405090906",
4
4
  "description": "Flex Plugin E2E Tests framework",
5
5
  "keywords": [
6
6
  "flex",
@@ -34,12 +34,12 @@
34
34
  "test": "exit 0"
35
35
  },
36
36
  "dependencies": {
37
- "@twilio/flex-dev-utils": "6.3.4-alpha.202405081240",
38
- "@twilio/flex-plugins-api-client": "6.3.4-alpha.202405081240",
37
+ "@twilio/flex-dev-utils": "6.3.4-alpha.202405090906",
38
+ "@twilio/flex-plugins-api-client": "6.3.4-alpha.202405090906",
39
39
  "axios": "^0.24.0",
40
40
  "lodash": "4.17.21",
41
41
  "package-json": "^7.0.0",
42
- "puppeteer": "^19.2.2",
42
+ "puppeteer": "^21.3.7",
43
43
  "replace-in-file": "^6.3.2",
44
44
  "semver": "^7.3.5"
45
45
  },
@@ -53,5 +53,5 @@
53
53
  "publishConfig": {
54
54
  "access": "public"
55
55
  },
56
- "gitHead": "af9cafc0bcbe5f4b18e33ace6cc5029555088d3d"
56
+ "gitHead": "a0627e049b36dce803cbda4b24bdaca006fa27ee"
57
57
  }
@@ -1,43 +0,0 @@
1
- export interface ConsoleAuthOptions {
2
- email: string;
3
- password: string;
4
- }
5
- export declare enum Cookie {
6
- visitor = "tw-visitor",
7
- sIdentity = "server-identity",
8
- identity = "identity"
9
- }
10
- export interface Cookies {
11
- [Cookie.identity]: string | undefined;
12
- [Cookie.sIdentity]: string;
13
- [Cookie.visitor]: string;
14
- }
15
- /**
16
- * Defines interactions with Console API
17
- */
18
- export declare class ConsoleAPI {
19
- private readonly baseUrl;
20
- private readonly consoleAuthOptions;
21
- /**
22
- * Initialises console base url and verifies console credentials
23
- * @param consoleBaseUrl base url of Twilio console
24
- * @param auth the {@link ConsoleAuthOptions}
25
- */
26
- constructor(consoleBaseUrl: string, auth: ConsoleAuthOptions);
27
- /**
28
- * Extracts value from response header using regex
29
- * @param regex regex to apply
30
- * @param response response to be searched
31
- * @param matchName name of the entity being looked for
32
- */
33
- private static getValueFromResponse;
34
- /**
35
- * Fetch response from the Twilio console endpoint
36
- * @param config request config to send
37
- */
38
- private static getResponse;
39
- /**
40
- * Get required cookies (tw-visitor, identity, server-identity) to authenticate
41
- */
42
- getCookies(): Promise<Cookies>;
43
- }
@@ -1,155 +0,0 @@
1
- "use strict";
2
- var __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
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
- Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.ConsoleAPI = exports.Cookie = void 0;
43
- var axios_1 = __importDefault(require("axios"));
44
- var flex_dev_utils_1 = require("@twilio/flex-dev-utils");
45
- var csrfTokenRegex = new RegExp(/name="csrfToken"\scontent="(.*?)"/m);
46
- var twVisitorCookieRegex = new RegExp(/tw-visitor=(.*?);/m);
47
- var identityCookieRegex = new RegExp(/identity=(.*?);/m);
48
- var serverIdentityCookieRegex = new RegExp(/server-identity=(.*?);/m);
49
- var SET_COOKIE = 'set-cookie';
50
- var Cookie;
51
- (function (Cookie) {
52
- Cookie["visitor"] = "tw-visitor";
53
- Cookie["sIdentity"] = "server-identity";
54
- Cookie["identity"] = "identity";
55
- })(Cookie = exports.Cookie || (exports.Cookie = {}));
56
- /**
57
- * Defines interactions with Console API
58
- */
59
- var ConsoleAPI = /** @class */ (function () {
60
- /**
61
- * Initialises console base url and verifies console credentials
62
- * @param consoleBaseUrl base url of Twilio console
63
- * @param auth the {@link ConsoleAuthOptions}
64
- */
65
- function ConsoleAPI(consoleBaseUrl, auth) {
66
- this.baseUrl = consoleBaseUrl;
67
- this.consoleAuthOptions = auth;
68
- }
69
- /**
70
- * Extracts value from response header using regex
71
- * @param regex regex to apply
72
- * @param response response to be searched
73
- * @param matchName name of the entity being looked for
74
- */
75
- ConsoleAPI.getValueFromResponse = function (regex, response, matchName) {
76
- var match = response.match(regex);
77
- if (!match || !match[1]) {
78
- flex_dev_utils_1.logger.error(response);
79
- throw new Error("Response does not contain " + matchName);
80
- }
81
- return match[1];
82
- };
83
- /**
84
- * Fetch response from the Twilio console endpoint
85
- * @param config request config to send
86
- */
87
- ConsoleAPI.getResponse = function (config) {
88
- return __awaiter(this, void 0, void 0, function () {
89
- return __generator(this, function (_a) {
90
- try {
91
- return [2 /*return*/, axios_1.default(config)];
92
- }
93
- catch (e) {
94
- flex_dev_utils_1.logger.error(config.method + ": " + config.url + " returned code " + e.status + ".");
95
- throw new Error(e.message);
96
- }
97
- return [2 /*return*/];
98
- });
99
- });
100
- };
101
- /**
102
- * Get required cookies (tw-visitor, identity, server-identity) to authenticate
103
- */
104
- ConsoleAPI.prototype.getCookies = function () {
105
- var _a, _b, _c, _d;
106
- return __awaiter(this, void 0, void 0, function () {
107
- var loginResponse, csrfToken, twVisitorCookie, loginPasswordResponse, loginPasswordCookies, serverIdentityCookie, identityCookie;
108
- var _e;
109
- return __generator(this, function (_f) {
110
- switch (_f.label) {
111
- case 0: return [4 /*yield*/, ConsoleAPI.getResponse({ method: 'GET', url: this.baseUrl + "/login" })];
112
- case 1:
113
- loginResponse = _f.sent();
114
- csrfToken = ConsoleAPI.getValueFromResponse(new RegExp(csrfTokenRegex), loginResponse.data, 'CSRF Token');
115
- twVisitorCookie = ConsoleAPI.getValueFromResponse(new RegExp(twVisitorCookieRegex), ((_b = (_a = loginResponse.headers) === null || _a === void 0 ? void 0 : _a[SET_COOKIE]) === null || _b === void 0 ? void 0 : _b.join()) || '', Cookie.visitor + " cookie");
116
- return [4 /*yield*/, ConsoleAPI.getResponse({
117
- method: 'POST',
118
- url: this.baseUrl + "/userauth/submitLoginPassword",
119
- withCredentials: true,
120
- maxRedirects: 0,
121
- headers: {
122
- 'x-twilio-csrf': csrfToken,
123
- cookie: "tw-visitor=" + twVisitorCookie,
124
- 'Content-Type': 'application/json',
125
- Accept: 'application/json',
126
- },
127
- validateStatus: function (status) { return status === 200; },
128
- data: JSON.stringify({
129
- email: this.consoleAuthOptions.email,
130
- password: this.consoleAuthOptions.password,
131
- }),
132
- })];
133
- case 2:
134
- loginPasswordResponse = _f.sent();
135
- loginPasswordCookies = ((_d = (_c = loginPasswordResponse.headers) === null || _c === void 0 ? void 0 : _c[SET_COOKIE]) === null || _d === void 0 ? void 0 : _d.join()) || '';
136
- serverIdentityCookie = ConsoleAPI.getValueFromResponse(new RegExp(serverIdentityCookieRegex), loginPasswordCookies, Cookie.sIdentity + " cookie");
137
- try {
138
- identityCookie = ConsoleAPI.getValueFromResponse(new RegExp(identityCookieRegex), loginPasswordCookies, Cookie.identity + " cookie");
139
- }
140
- catch (e) {
141
- identityCookie = undefined;
142
- }
143
- return [2 /*return*/, (_e = {},
144
- _e[Cookie.identity] = identityCookie,
145
- _e[Cookie.sIdentity] = serverIdentityCookie,
146
- _e[Cookie.visitor] = twVisitorCookie,
147
- _e)];
148
- }
149
- });
150
- });
151
- };
152
- return ConsoleAPI;
153
- }());
154
- exports.ConsoleAPI = ConsoleAPI;
155
- //# sourceMappingURL=console-api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"console-api.js","sourceRoot":"","sources":["../../src/utils/console-api.ts"],"names":[],"mappings":"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"}