{"version":3,"sources":["webpack:///./node_modules/@microsoft/signalr/dist/esm/HttpClient.js","webpack:///./node_modules/@microsoft/signalr/dist/esm/HttpConnection.js"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","HttpResponse","statusCode","statusText","content","this","HttpClient","get","url","options","send","method","post","delete","getCookieString","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","g","_","label","sent","trys","ops","verb","Symbol","iterator","v","op","TypeError","pop","push","MAX_REDIRECTS","HttpConnection","stopPromiseResolver","features","negotiateVersion","isRequired","logger","baseUrl","resolveUrl","logMessageContent","undefined","withCredentials","Error","webSocketModule","eventSourceModule","isNode","requireFunc","WebSocket","EventSource","httpClient","connectionState","connectionStarted","onreceive","onclose","start","transferFormat","message","_a","Binary","isIn","log","Debug","startInternalPromise","startInternal","stopPromise","data","sendQueue","TransportSendQueue","transport","stop","error","_this","stopInternal","e_2","stopError","stopConnection","negotiateResponse","redirects","_loop_1","this_1","e_3","accessTokenFactory","skipNegotiation","WebSockets","constructTransport","startTransport","accessToken_1","getNegotiationResponse","ProtocolVersion","accessToken","createTransport","inherentKeepAlive","headers","token","name","negotiateUrl","response","e_4","_b","resolveNegotiateUrl","JSON","parse","connectionToken","connectionId","createConnectUrl","indexOf","requestedTransport","requestedTransferFormat","connectUrl","transportExceptions","transports","negotiate","_i","transports_1","endpoint","transportOrError","ex_1","ex_2","isITransport","availableTransports","resolveTransportOrError","join","ServerSentEvents","LongPolling","connect","transportMatches","transferFormats","map","ex","Warning","Information","catch","lastIndexOf","isBrowser","window","document","aTag","createElement","href","index","substring","actualTransport","buffer","executing","sendBufferedData","PromiseSource","transportResult","sendLoopPromise","sendLoop","bufferData","promise","error_1","concatBuffers","arrayBuffers","totalLength","b","byteLength","reduce","a","Uint8Array","offset","arrayBuffers_1","item","set","resolver","rejecter","reason"],"mappings":"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","file":"js/chunk-vendors~608a5dfc.5c58f5bc.js","sourcesContent":["// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\n/** Represents an HTTP response. */\r\nvar HttpResponse = /** @class */ (function () {\r\n function HttpResponse(statusCode, statusText, content) {\r\n this.statusCode = statusCode;\r\n this.statusText = statusText;\r\n this.content = content;\r\n }\r\n return HttpResponse;\r\n}());\r\nexport { HttpResponse };\r\n/** Abstraction over an HTTP client.\r\n *\r\n * This class provides an abstraction over an HTTP client so that a different implementation can be provided on different platforms.\r\n */\r\nvar HttpClient = /** @class */ (function () {\r\n function HttpClient() {\r\n }\r\n HttpClient.prototype.get = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"GET\", url: url }));\r\n };\r\n HttpClient.prototype.post = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"POST\", url: url }));\r\n };\r\n HttpClient.prototype.delete = function (url, options) {\r\n return this.send(__assign({}, options, { method: \"DELETE\", url: url }));\r\n };\r\n /** Gets all cookies that apply to the specified URL.\r\n *\r\n * @param url The URL that the cookies are valid for.\r\n * @returns {string} A string containing all the key-value cookie pairs for the specified URL.\r\n */\r\n // @ts-ignore\r\n HttpClient.prototype.getCookieString = function (url) {\r\n return \"\";\r\n };\r\n return HttpClient;\r\n}());\r\nexport { HttpClient };\r\n//# sourceMappingURL=HttpClient.js.map","// Copyright (c) .NET Foundation. All rights reserved.\r\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\r\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nimport { DefaultHttpClient } from \"./DefaultHttpClient\";\r\nimport { LogLevel } from \"./ILogger\";\r\nimport { HttpTransportType, TransferFormat } from \"./ITransport\";\r\nimport { LongPollingTransport } from \"./LongPollingTransport\";\r\nimport { ServerSentEventsTransport } from \"./ServerSentEventsTransport\";\r\nimport { Arg, createLogger, getUserAgentHeader, Platform } from \"./Utils\";\r\nimport { WebSocketTransport } from \"./WebSocketTransport\";\r\nvar MAX_REDIRECTS = 100;\r\n/** @private */\r\nvar HttpConnection = /** @class */ (function () {\r\n function HttpConnection(url, options) {\r\n if (options === void 0) { options = {}; }\r\n this.stopPromiseResolver = function () { };\r\n this.features = {};\r\n this.negotiateVersion = 1;\r\n Arg.isRequired(url, \"url\");\r\n this.logger = createLogger(options.logger);\r\n this.baseUrl = this.resolveUrl(url);\r\n options = options || {};\r\n options.logMessageContent = options.logMessageContent === undefined ? false : options.logMessageContent;\r\n if (typeof options.withCredentials === \"boolean\" || options.withCredentials === undefined) {\r\n options.withCredentials = options.withCredentials === undefined ? true : options.withCredentials;\r\n }\r\n else {\r\n throw new Error(\"withCredentials option was not a 'boolean' or 'undefined' value\");\r\n }\r\n var webSocketModule = null;\r\n var eventSourceModule = null;\r\n if (Platform.isNode && typeof require !== \"undefined\") {\r\n // In order to ignore the dynamic require in webpack builds we need to do this magic\r\n // @ts-ignore: TS doesn't know about these names\r\n var requireFunc = typeof __webpack_require__ === \"function\" ? __non_webpack_require__ : require;\r\n webSocketModule = requireFunc(\"ws\");\r\n eventSourceModule = requireFunc(\"eventsource\");\r\n }\r\n if (!Platform.isNode && typeof WebSocket !== \"undefined\" && !options.WebSocket) {\r\n options.WebSocket = WebSocket;\r\n }\r\n else if (Platform.isNode && !options.WebSocket) {\r\n if (webSocketModule) {\r\n options.WebSocket = webSocketModule;\r\n }\r\n }\r\n if (!Platform.isNode && typeof EventSource !== \"undefined\" && !options.EventSource) {\r\n options.EventSource = EventSource;\r\n }\r\n else if (Platform.isNode && !options.EventSource) {\r\n if (typeof eventSourceModule !== \"undefined\") {\r\n options.EventSource = eventSourceModule;\r\n }\r\n }\r\n this.httpClient = options.httpClient || new DefaultHttpClient(this.logger);\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n this.connectionStarted = false;\r\n this.options = options;\r\n this.onreceive = null;\r\n this.onclose = null;\r\n }\r\n HttpConnection.prototype.start = function (transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var message, message;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n transferFormat = transferFormat || TransferFormat.Binary;\r\n Arg.isIn(transferFormat, TransferFormat, \"transferFormat\");\r\n this.logger.log(LogLevel.Debug, \"Starting connection with transfer format '\" + TransferFormat[transferFormat] + \"'.\");\r\n if (this.connectionState !== \"Disconnected\" /* Disconnected */) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Cannot start an HttpConnection that is not in the 'Disconnected' state.\"))];\r\n }\r\n this.connectionState = \"Connecting\" /* Connecting */;\r\n this.startInternalPromise = this.startInternal(transferFormat);\r\n return [4 /*yield*/, this.startInternalPromise];\r\n case 1:\r\n _a.sent();\r\n if (!(this.connectionState === \"Disconnecting\" /* Disconnecting */)) return [3 /*break*/, 3];\r\n message = \"Failed to start the HttpConnection before stop() was called.\";\r\n this.logger.log(LogLevel.Error, message);\r\n // We cannot await stopPromise inside startInternal since stopInternal awaits the startInternalPromise.\r\n return [4 /*yield*/, this.stopPromise];\r\n case 2:\r\n // We cannot await stopPromise inside startInternal since stopInternal awaits the startInternalPromise.\r\n _a.sent();\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n case 3:\r\n if (this.connectionState !== \"Connected\" /* Connected */) {\r\n message = \"HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!\";\r\n this.logger.log(LogLevel.Error, message);\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n }\r\n _a.label = 4;\r\n case 4:\r\n this.connectionStarted = true;\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.send = function (data) {\r\n if (this.connectionState !== \"Connected\" /* Connected */) {\r\n return Promise.reject(new Error(\"Cannot send data if the connection is not in the 'Connected' State.\"));\r\n }\r\n if (!this.sendQueue) {\r\n this.sendQueue = new TransportSendQueue(this.transport);\r\n }\r\n // Transport will not be null if state is connected\r\n return this.sendQueue.send(data);\r\n };\r\n HttpConnection.prototype.stop = function (error) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (this.connectionState === \"Disconnected\" /* Disconnected */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stop(\" + error + \") ignored because the connection is already in the disconnected state.\");\r\n return [2 /*return*/, Promise.resolve()];\r\n }\r\n if (this.connectionState === \"Disconnecting\" /* Disconnecting */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stop(\" + error + \") ignored because the connection is already in the disconnecting state.\");\r\n return [2 /*return*/, this.stopPromise];\r\n }\r\n this.connectionState = \"Disconnecting\" /* Disconnecting */;\r\n this.stopPromise = new Promise(function (resolve) {\r\n // Don't complete stop() until stopConnection() completes.\r\n _this.stopPromiseResolver = resolve;\r\n });\r\n // stopInternal should never throw so just observe it.\r\n return [4 /*yield*/, this.stopInternal(error)];\r\n case 1:\r\n // stopInternal should never throw so just observe it.\r\n _a.sent();\r\n return [4 /*yield*/, this.stopPromise];\r\n case 2:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.stopInternal = function (error) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var e_1, e_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // Set error as soon as possible otherwise there is a race between\r\n // the transport closing and providing an error and the error from a close message\r\n // We would prefer the close message error.\r\n this.stopError = error;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.startInternalPromise];\r\n case 2:\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3:\r\n e_1 = _a.sent();\r\n return [3 /*break*/, 4];\r\n case 4:\r\n if (!this.transport) return [3 /*break*/, 9];\r\n _a.label = 5;\r\n case 5:\r\n _a.trys.push([5, 7, , 8]);\r\n return [4 /*yield*/, this.transport.stop()];\r\n case 6:\r\n _a.sent();\r\n return [3 /*break*/, 8];\r\n case 7:\r\n e_2 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"HttpConnection.transport.stop() threw error '\" + e_2 + \"'.\");\r\n this.stopConnection();\r\n return [3 /*break*/, 8];\r\n case 8:\r\n this.transport = undefined;\r\n return [3 /*break*/, 10];\r\n case 9:\r\n this.logger.log(LogLevel.Debug, \"HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.\");\r\n _a.label = 10;\r\n case 10: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.startInternal = function (transferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var url, negotiateResponse, redirects, _loop_1, this_1, e_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n url = this.baseUrl;\r\n this.accessTokenFactory = this.options.accessTokenFactory;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 12, , 13]);\r\n if (!this.options.skipNegotiation) return [3 /*break*/, 5];\r\n if (!(this.options.transport === HttpTransportType.WebSockets)) return [3 /*break*/, 3];\r\n // No need to add a connection ID in this case\r\n this.transport = this.constructTransport(HttpTransportType.WebSockets);\r\n // We should just call connect directly in this case.\r\n // No fallback or negotiate in this case.\r\n return [4 /*yield*/, this.startTransport(url, transferFormat)];\r\n case 2:\r\n // We should just call connect directly in this case.\r\n // No fallback or negotiate in this case.\r\n _a.sent();\r\n return [3 /*break*/, 4];\r\n case 3: throw new Error(\"Negotiation can only be skipped when using the WebSocket transport directly.\");\r\n case 4: return [3 /*break*/, 11];\r\n case 5:\r\n negotiateResponse = null;\r\n redirects = 0;\r\n _loop_1 = function () {\r\n var accessToken_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this_1.getNegotiationResponse(url)];\r\n case 1:\r\n negotiateResponse = _a.sent();\r\n // the user tries to stop the connection when it is being started\r\n if (this_1.connectionState === \"Disconnecting\" /* Disconnecting */ || this_1.connectionState === \"Disconnected\" /* Disconnected */) {\r\n throw new Error(\"The connection was stopped during negotiation.\");\r\n }\r\n if (negotiateResponse.error) {\r\n throw new Error(negotiateResponse.error);\r\n }\r\n if (negotiateResponse.ProtocolVersion) {\r\n throw new Error(\"Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.\");\r\n }\r\n if (negotiateResponse.url) {\r\n url = negotiateResponse.url;\r\n }\r\n if (negotiateResponse.accessToken) {\r\n accessToken_1 = negotiateResponse.accessToken;\r\n this_1.accessTokenFactory = function () { return accessToken_1; };\r\n }\r\n redirects++;\r\n return [2 /*return*/];\r\n }\r\n });\r\n };\r\n this_1 = this;\r\n _a.label = 6;\r\n case 6: return [5 /*yield**/, _loop_1()];\r\n case 7:\r\n _a.sent();\r\n _a.label = 8;\r\n case 8:\r\n if (negotiateResponse.url && redirects < MAX_REDIRECTS) return [3 /*break*/, 6];\r\n _a.label = 9;\r\n case 9:\r\n if (redirects === MAX_REDIRECTS && negotiateResponse.url) {\r\n throw new Error(\"Negotiate redirection limit exceeded.\");\r\n }\r\n return [4 /*yield*/, this.createTransport(url, this.options.transport, negotiateResponse, transferFormat)];\r\n case 10:\r\n _a.sent();\r\n _a.label = 11;\r\n case 11:\r\n if (this.transport instanceof LongPollingTransport) {\r\n this.features.inherentKeepAlive = true;\r\n }\r\n if (this.connectionState === \"Connecting\" /* Connecting */) {\r\n // Ensure the connection transitions to the connected state prior to completing this.startInternalPromise.\r\n // start() will handle the case when stop was called and startInternal exits still in the disconnecting state.\r\n this.logger.log(LogLevel.Debug, \"The HttpConnection connected successfully.\");\r\n this.connectionState = \"Connected\" /* Connected */;\r\n }\r\n return [3 /*break*/, 13];\r\n case 12:\r\n e_3 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to start the connection: \" + e_3);\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n this.transport = undefined;\r\n // if start fails, any active calls to stop assume that start will complete the stop promise\r\n this.stopPromiseResolver();\r\n return [2 /*return*/, Promise.reject(e_3)];\r\n case 13: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.getNegotiationResponse = function (url) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var headers, token, _a, name, value, negotiateUrl, response, negotiateResponse, e_4;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n headers = {};\r\n if (!this.accessTokenFactory) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.accessTokenFactory()];\r\n case 1:\r\n token = _b.sent();\r\n if (token) {\r\n headers[\"Authorization\"] = \"Bearer \" + token;\r\n }\r\n _b.label = 2;\r\n case 2:\r\n _a = getUserAgentHeader(), name = _a[0], value = _a[1];\r\n headers[name] = value;\r\n negotiateUrl = this.resolveNegotiateUrl(url);\r\n this.logger.log(LogLevel.Debug, \"Sending negotiation request: \" + negotiateUrl + \".\");\r\n _b.label = 3;\r\n case 3:\r\n _b.trys.push([3, 5, , 6]);\r\n return [4 /*yield*/, this.httpClient.post(negotiateUrl, {\r\n content: \"\",\r\n headers: __assign({}, headers, this.options.headers),\r\n withCredentials: this.options.withCredentials,\r\n })];\r\n case 4:\r\n response = _b.sent();\r\n if (response.statusCode !== 200) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Unexpected status code returned from negotiate '\" + response.statusCode + \"'\"))];\r\n }\r\n negotiateResponse = JSON.parse(response.content);\r\n if (!negotiateResponse.negotiateVersion || negotiateResponse.negotiateVersion < 1) {\r\n // Negotiate version 0 doesn't use connectionToken\r\n // So we set it equal to connectionId so all our logic can use connectionToken without being aware of the negotiate version\r\n negotiateResponse.connectionToken = negotiateResponse.connectionId;\r\n }\r\n return [2 /*return*/, negotiateResponse];\r\n case 5:\r\n e_4 = _b.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to complete negotiation with the server: \" + e_4);\r\n return [2 /*return*/, Promise.reject(e_4)];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.createConnectUrl = function (url, connectionToken) {\r\n if (!connectionToken) {\r\n return url;\r\n }\r\n return url + (url.indexOf(\"?\") === -1 ? \"?\" : \"&\") + (\"id=\" + connectionToken);\r\n };\r\n HttpConnection.prototype.createTransport = function (url, requestedTransport, negotiateResponse, requestedTransferFormat) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var connectUrl, transportExceptions, transports, negotiate, _i, transports_1, endpoint, transportOrError, ex_1, ex_2, message;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n connectUrl = this.createConnectUrl(url, negotiateResponse.connectionToken);\r\n if (!this.isITransport(requestedTransport)) return [3 /*break*/, 2];\r\n this.logger.log(LogLevel.Debug, \"Connection was provided an instance of ITransport, using that directly.\");\r\n this.transport = requestedTransport;\r\n return [4 /*yield*/, this.startTransport(connectUrl, requestedTransferFormat)];\r\n case 1:\r\n _a.sent();\r\n this.connectionId = negotiateResponse.connectionId;\r\n return [2 /*return*/];\r\n case 2:\r\n transportExceptions = [];\r\n transports = negotiateResponse.availableTransports || [];\r\n negotiate = negotiateResponse;\r\n _i = 0, transports_1 = transports;\r\n _a.label = 3;\r\n case 3:\r\n if (!(_i < transports_1.length)) return [3 /*break*/, 13];\r\n endpoint = transports_1[_i];\r\n transportOrError = this.resolveTransportOrError(endpoint, requestedTransport, requestedTransferFormat);\r\n if (!(transportOrError instanceof Error)) return [3 /*break*/, 4];\r\n // Store the error and continue, we don't want to cause a re-negotiate in these cases\r\n transportExceptions.push(endpoint.transport + \" failed: \" + transportOrError);\r\n return [3 /*break*/, 12];\r\n case 4:\r\n if (!this.isITransport(transportOrError)) return [3 /*break*/, 12];\r\n this.transport = transportOrError;\r\n if (!!negotiate) return [3 /*break*/, 9];\r\n _a.label = 5;\r\n case 5:\r\n _a.trys.push([5, 7, , 8]);\r\n return [4 /*yield*/, this.getNegotiationResponse(url)];\r\n case 6:\r\n negotiate = _a.sent();\r\n return [3 /*break*/, 8];\r\n case 7:\r\n ex_1 = _a.sent();\r\n return [2 /*return*/, Promise.reject(ex_1)];\r\n case 8:\r\n connectUrl = this.createConnectUrl(url, negotiate.connectionToken);\r\n _a.label = 9;\r\n case 9:\r\n _a.trys.push([9, 11, , 12]);\r\n return [4 /*yield*/, this.startTransport(connectUrl, requestedTransferFormat)];\r\n case 10:\r\n _a.sent();\r\n this.connectionId = negotiate.connectionId;\r\n return [2 /*return*/];\r\n case 11:\r\n ex_2 = _a.sent();\r\n this.logger.log(LogLevel.Error, \"Failed to start the transport '\" + endpoint.transport + \"': \" + ex_2);\r\n negotiate = undefined;\r\n transportExceptions.push(endpoint.transport + \" failed: \" + ex_2);\r\n if (this.connectionState !== \"Connecting\" /* Connecting */) {\r\n message = \"Failed to select transport before stop() was called.\";\r\n this.logger.log(LogLevel.Debug, message);\r\n return [2 /*return*/, Promise.reject(new Error(message))];\r\n }\r\n return [3 /*break*/, 12];\r\n case 12:\r\n _i++;\r\n return [3 /*break*/, 3];\r\n case 13:\r\n if (transportExceptions.length > 0) {\r\n return [2 /*return*/, Promise.reject(new Error(\"Unable to connect to the server with any of the available transports. \" + transportExceptions.join(\" \")))];\r\n }\r\n return [2 /*return*/, Promise.reject(new Error(\"None of the transports supported by the client are supported by the server.\"))];\r\n }\r\n });\r\n });\r\n };\r\n HttpConnection.prototype.constructTransport = function (transport) {\r\n switch (transport) {\r\n case HttpTransportType.WebSockets:\r\n if (!this.options.WebSocket) {\r\n throw new Error(\"'WebSocket' is not supported in your environment.\");\r\n }\r\n return new WebSocketTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.WebSocket, this.options.headers || {});\r\n case HttpTransportType.ServerSentEvents:\r\n if (!this.options.EventSource) {\r\n throw new Error(\"'EventSource' is not supported in your environment.\");\r\n }\r\n return new ServerSentEventsTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.EventSource, this.options.withCredentials, this.options.headers || {});\r\n case HttpTransportType.LongPolling:\r\n return new LongPollingTransport(this.httpClient, this.accessTokenFactory, this.logger, this.options.logMessageContent || false, this.options.withCredentials, this.options.headers || {});\r\n default:\r\n throw new Error(\"Unknown transport: \" + transport + \".\");\r\n }\r\n };\r\n HttpConnection.prototype.startTransport = function (url, transferFormat) {\r\n var _this = this;\r\n this.transport.onreceive = this.onreceive;\r\n this.transport.onclose = function (e) { return _this.stopConnection(e); };\r\n return this.transport.connect(url, transferFormat);\r\n };\r\n HttpConnection.prototype.resolveTransportOrError = function (endpoint, requestedTransport, requestedTransferFormat) {\r\n var transport = HttpTransportType[endpoint.transport];\r\n if (transport === null || transport === undefined) {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + endpoint.transport + \"' because it is not supported by this client.\");\r\n return new Error(\"Skipping transport '\" + endpoint.transport + \"' because it is not supported by this client.\");\r\n }\r\n else {\r\n if (transportMatches(requestedTransport, transport)) {\r\n var transferFormats = endpoint.transferFormats.map(function (s) { return TransferFormat[s]; });\r\n if (transferFormats.indexOf(requestedTransferFormat) >= 0) {\r\n if ((transport === HttpTransportType.WebSockets && !this.options.WebSocket) ||\r\n (transport === HttpTransportType.ServerSentEvents && !this.options.EventSource)) {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it is not supported in your environment.'\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' is not supported in your environment.\");\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Selecting transport '\" + HttpTransportType[transport] + \"'.\");\r\n try {\r\n return this.constructTransport(transport);\r\n }\r\n catch (ex) {\r\n return ex;\r\n }\r\n }\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it does not support the requested transfer format '\" + TransferFormat[requestedTransferFormat] + \"'.\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' does not support \" + TransferFormat[requestedTransferFormat] + \".\");\r\n }\r\n }\r\n else {\r\n this.logger.log(LogLevel.Debug, \"Skipping transport '\" + HttpTransportType[transport] + \"' because it was disabled by the client.\");\r\n return new Error(\"'\" + HttpTransportType[transport] + \"' is disabled by the client.\");\r\n }\r\n }\r\n };\r\n HttpConnection.prototype.isITransport = function (transport) {\r\n return transport && typeof (transport) === \"object\" && \"connect\" in transport;\r\n };\r\n HttpConnection.prototype.stopConnection = function (error) {\r\n var _this = this;\r\n this.logger.log(LogLevel.Debug, \"HttpConnection.stopConnection(\" + error + \") called while in state \" + this.connectionState + \".\");\r\n this.transport = undefined;\r\n // If we have a stopError, it takes precedence over the error from the transport\r\n error = this.stopError || error;\r\n this.stopError = undefined;\r\n if (this.connectionState === \"Disconnected\" /* Disconnected */) {\r\n this.logger.log(LogLevel.Debug, \"Call to HttpConnection.stopConnection(\" + error + \") was ignored because the connection is already in the disconnected state.\");\r\n return;\r\n }\r\n if (this.connectionState === \"Connecting\" /* Connecting */) {\r\n this.logger.log(LogLevel.Warning, \"Call to HttpConnection.stopConnection(\" + error + \") was ignored because the connection is still in the connecting state.\");\r\n throw new Error(\"HttpConnection.stopConnection(\" + error + \") was called while the connection is still in the connecting state.\");\r\n }\r\n if (this.connectionState === \"Disconnecting\" /* Disconnecting */) {\r\n // A call to stop() induced this call to stopConnection and needs to be completed.\r\n // Any stop() awaiters will be scheduled to continue after the onclose callback fires.\r\n this.stopPromiseResolver();\r\n }\r\n if (error) {\r\n this.logger.log(LogLevel.Error, \"Connection disconnected with error '\" + error + \"'.\");\r\n }\r\n else {\r\n this.logger.log(LogLevel.Information, \"Connection disconnected.\");\r\n }\r\n if (this.sendQueue) {\r\n this.sendQueue.stop().catch(function (e) {\r\n _this.logger.log(LogLevel.Error, \"TransportSendQueue.stop() threw error '\" + e + \"'.\");\r\n });\r\n this.sendQueue = undefined;\r\n }\r\n this.connectionId = undefined;\r\n this.connectionState = \"Disconnected\" /* Disconnected */;\r\n if (this.connectionStarted) {\r\n this.connectionStarted = false;\r\n try {\r\n if (this.onclose) {\r\n this.onclose(error);\r\n }\r\n }\r\n catch (e) {\r\n this.logger.log(LogLevel.Error, \"HttpConnection.onclose(\" + error + \") threw error '\" + e + \"'.\");\r\n }\r\n }\r\n };\r\n HttpConnection.prototype.resolveUrl = function (url) {\r\n // startsWith is not supported in IE\r\n if (url.lastIndexOf(\"https://\", 0) === 0 || url.lastIndexOf(\"http://\", 0) === 0) {\r\n return url;\r\n }\r\n if (!Platform.isBrowser || !window.document) {\r\n throw new Error(\"Cannot resolve '\" + url + \"'.\");\r\n }\r\n // Setting the url to the href propery of an anchor tag handles normalization\r\n // for us. There are 3 main cases.\r\n // 1. Relative path normalization e.g \"b\" -> \"http://localhost:5000/a/b\"\r\n // 2. Absolute path normalization e.g \"/a/b\" -> \"http://localhost:5000/a/b\"\r\n // 3. Networkpath reference normalization e.g \"//localhost:5000/a/b\" -> \"http://localhost:5000/a/b\"\r\n var aTag = window.document.createElement(\"a\");\r\n aTag.href = url;\r\n this.logger.log(LogLevel.Information, \"Normalizing '\" + url + \"' to '\" + aTag.href + \"'.\");\r\n return aTag.href;\r\n };\r\n HttpConnection.prototype.resolveNegotiateUrl = function (url) {\r\n var index = url.indexOf(\"?\");\r\n var negotiateUrl = url.substring(0, index === -1 ? url.length : index);\r\n if (negotiateUrl[negotiateUrl.length - 1] !== \"/\") {\r\n negotiateUrl += \"/\";\r\n }\r\n negotiateUrl += \"negotiate\";\r\n negotiateUrl += index === -1 ? \"\" : url.substring(index);\r\n if (negotiateUrl.indexOf(\"negotiateVersion\") === -1) {\r\n negotiateUrl += index === -1 ? \"?\" : \"&\";\r\n negotiateUrl += \"negotiateVersion=\" + this.negotiateVersion;\r\n }\r\n return negotiateUrl;\r\n };\r\n return HttpConnection;\r\n}());\r\nexport { HttpConnection };\r\nfunction transportMatches(requestedTransport, actualTransport) {\r\n return !requestedTransport || ((actualTransport & requestedTransport) !== 0);\r\n}\r\n/** @private */\r\nvar TransportSendQueue = /** @class */ (function () {\r\n function TransportSendQueue(transport) {\r\n this.transport = transport;\r\n this.buffer = [];\r\n this.executing = true;\r\n this.sendBufferedData = new PromiseSource();\r\n this.transportResult = new PromiseSource();\r\n this.sendLoopPromise = this.sendLoop();\r\n }\r\n TransportSendQueue.prototype.send = function (data) {\r\n this.bufferData(data);\r\n if (!this.transportResult) {\r\n this.transportResult = new PromiseSource();\r\n }\r\n return this.transportResult.promise;\r\n };\r\n TransportSendQueue.prototype.stop = function () {\r\n this.executing = false;\r\n this.sendBufferedData.resolve();\r\n return this.sendLoopPromise;\r\n };\r\n TransportSendQueue.prototype.bufferData = function (data) {\r\n if (this.buffer.length && typeof (this.buffer[0]) !== typeof (data)) {\r\n throw new Error(\"Expected data to be of type \" + typeof (this.buffer) + \" but was of type \" + typeof (data));\r\n }\r\n this.buffer.push(data);\r\n this.sendBufferedData.resolve();\r\n };\r\n TransportSendQueue.prototype.sendLoop = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var transportResult, data, error_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!true) return [3 /*break*/, 6];\r\n return [4 /*yield*/, this.sendBufferedData.promise];\r\n case 1:\r\n _a.sent();\r\n if (!this.executing) {\r\n if (this.transportResult) {\r\n this.transportResult.reject(\"Connection stopped.\");\r\n }\r\n return [3 /*break*/, 6];\r\n }\r\n this.sendBufferedData = new PromiseSource();\r\n transportResult = this.transportResult;\r\n this.transportResult = undefined;\r\n data = typeof (this.buffer[0]) === \"string\" ?\r\n this.buffer.join(\"\") :\r\n TransportSendQueue.concatBuffers(this.buffer);\r\n this.buffer.length = 0;\r\n _a.label = 2;\r\n case 2:\r\n _a.trys.push([2, 4, , 5]);\r\n return [4 /*yield*/, this.transport.send(data)];\r\n case 3:\r\n _a.sent();\r\n transportResult.resolve();\r\n return [3 /*break*/, 5];\r\n case 4:\r\n error_1 = _a.sent();\r\n transportResult.reject(error_1);\r\n return [3 /*break*/, 5];\r\n case 5: return [3 /*break*/, 0];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n TransportSendQueue.concatBuffers = function (arrayBuffers) {\r\n var totalLength = arrayBuffers.map(function (b) { return b.byteLength; }).reduce(function (a, b) { return a + b; });\r\n var result = new Uint8Array(totalLength);\r\n var offset = 0;\r\n for (var _i = 0, arrayBuffers_1 = arrayBuffers; _i < arrayBuffers_1.length; _i++) {\r\n var item = arrayBuffers_1[_i];\r\n result.set(new Uint8Array(item), offset);\r\n offset += item.byteLength;\r\n }\r\n return result.buffer;\r\n };\r\n return TransportSendQueue;\r\n}());\r\nexport { TransportSendQueue };\r\nvar PromiseSource = /** @class */ (function () {\r\n function PromiseSource() {\r\n var _this = this;\r\n this.promise = new Promise(function (resolve, reject) {\r\n var _a;\r\n return _a = [resolve, reject], _this.resolver = _a[0], _this.rejecter = _a[1], _a;\r\n });\r\n }\r\n PromiseSource.prototype.resolve = function () {\r\n this.resolver();\r\n };\r\n PromiseSource.prototype.reject = function (reason) {\r\n this.rejecter(reason);\r\n };\r\n return PromiseSource;\r\n}());\r\n//# sourceMappingURL=HttpConnection.js.map"],"sourceRoot":""}