@equinor/echo-framework 0.9.13 → 0.9.16

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.
Files changed (207) hide show
  1. package/dist/components/appLinks/applinkUtils.d.ts +2 -0
  2. package/dist/components/appLinks/applinkUtils.test.d.ts +1 -0
  3. package/dist/components/containers/layouts.d.ts +5 -3
  4. package/dist/components/panel/corePanelLeft.d.ts +1 -4
  5. package/dist/components/panel/corePanelRight.d.ts +1 -4
  6. package/dist/components/router/echoRoute.d.ts +2 -2
  7. package/dist/components/router/index.d.ts +1 -0
  8. package/dist/components/router/useLayout.d.ts +3 -0
  9. package/dist/coreApplication/index.d.ts +0 -2
  10. package/dist/hooks/index.d.ts +0 -2
  11. package/dist/index.d.ts +0 -8
  12. package/dist/index.js +3 -0
  13. package/dist/types/eventTypes/legendEvent.d.ts +1 -1
  14. package/dist/types/hookLibrary.d.ts +0 -1
  15. package/package.json +43 -39
  16. package/dist/_virtual/_tslib.js +0 -67
  17. package/dist/_virtual/index.js +0 -9
  18. package/dist/coreApplication/EchoBarComponent.d.ts +0 -9
  19. package/dist/coreApplication/EchoUserInterfaceContextProvider.d.ts +0 -11
  20. package/dist/hooks/useIsCompactLayout.d.ts +0 -5
  21. package/dist/hooks/useScreenOrientation.d.ts +0 -5
  22. package/dist/hooks/useScreenValues.d.ts +0 -13
  23. package/dist/hooks/useWindowSize.d.ts +0 -9
  24. package/dist/node_modules/@babel/runtime/helpers/esm/extends.js +0 -25
  25. package/dist/node_modules/@equinor/eds-icons/dist/icons.esm.js +0 -5285
  26. package/dist/node_modules/@microsoft/signalr/dist/esm/AbortController.js +0 -54
  27. package/dist/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js +0 -96
  28. package/dist/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js +0 -47
  29. package/dist/node_modules/@microsoft/signalr/dist/esm/Errors.js +0 -287
  30. package/dist/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js +0 -283
  31. package/dist/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js +0 -86
  32. package/dist/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js +0 -20
  33. package/dist/node_modules/@microsoft/signalr/dist/esm/HttpClient.js +0 -82
  34. package/dist/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js +0 -1169
  35. package/dist/node_modules/@microsoft/signalr/dist/esm/HubConnection.js +0 -1346
  36. package/dist/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js +0 -165
  37. package/dist/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js +0 -33
  38. package/dist/node_modules/@microsoft/signalr/dist/esm/ILogger.js +0 -37
  39. package/dist/node_modules/@microsoft/signalr/dist/esm/ITransport.js +0 -37
  40. package/dist/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js +0 -179
  41. package/dist/node_modules/@microsoft/signalr/dist/esm/Loggers.js +0 -35
  42. package/dist/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js +0 -448
  43. package/dist/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js +0 -238
  44. package/dist/node_modules/@microsoft/signalr/dist/esm/Subject.js +0 -99
  45. package/dist/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js +0 -45
  46. package/dist/node_modules/@microsoft/signalr/dist/esm/Utils.js +0 -435
  47. package/dist/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js +0 -264
  48. package/dist/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js +0 -133
  49. package/dist/node_modules/classnames/index.js +0 -67
  50. package/dist/node_modules/history/esm/history.js +0 -498
  51. package/dist/node_modules/resolve-pathname/esm/resolve-pathname.js +0 -73
  52. package/dist/node_modules/style-inject/dist/style-inject.es.js +0 -36
  53. package/dist/node_modules/tiny-invariant/dist/tiny-invariant.esm.js +0 -23
  54. package/dist/node_modules/tiny-warning/dist/tiny-warning.esm.js +0 -26
  55. package/dist/src/components/appLinks/AppLinks.js +0 -38
  56. package/dist/src/components/appLinks/AppLinks.module.css.js +0 -14
  57. package/dist/src/components/appLinks/linkButton/linkButton.js +0 -45
  58. package/dist/src/components/containers/layout.module.css.js +0 -29
  59. package/dist/src/components/containers/layouts.js +0 -101
  60. package/dist/src/components/contextualAppLinks/contextualAppLinks.context.js +0 -20
  61. package/dist/src/components/contextualAppLinks/contextualAppLinks.js +0 -47
  62. package/dist/src/components/contextualAppLinks/externalAppsMenu.js +0 -157
  63. package/dist/src/components/contextualAppLinks/externalAppsMenu.module.css.js +0 -16
  64. package/dist/src/components/contextualAppLinks/externalLinkButtons/allExternalLinks.js +0 -127
  65. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkButtons.helpers.js +0 -169
  66. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToCommApp.js +0 -95
  67. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToMcApp.js +0 -95
  68. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToProCoSys.js +0 -84
  69. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSafeX.js +0 -38
  70. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSap.js +0 -110
  71. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToSemiDoc.js +0 -59
  72. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToStid.js +0 -40
  73. package/dist/src/components/contextualAppLinks/externalLinkButtons/externalLinkToTr2000.js +0 -114
  74. package/dist/src/components/contextualAppLinks/externalLinkButtons/iconButtonSpinner.js +0 -44
  75. package/dist/src/components/contextualAppLinks/externalLinkButtons/iconButtonSpinner.module.css.js +0 -15
  76. package/dist/src/components/contextualAppLinks/hooks/useContextualAppLinks.js +0 -52
  77. package/dist/src/components/contextualAppLinks/hooks/useContextualAppLinksContext.js +0 -36
  78. package/dist/src/components/contextualAppLinks/index.js +0 -22
  79. package/dist/src/components/contextualAppLinks/internalAppLinks.js +0 -115
  80. package/dist/src/components/contextualAppLinks/linkButton.js +0 -57
  81. package/dist/src/components/echoLogo/echoLogo.js +0 -30
  82. package/dist/src/components/echoLogo/echoLogo.module.css.js +0 -15
  83. package/dist/src/components/errorBoundary/components/chunkLoadErrorMessage.js +0 -64
  84. package/dist/src/components/errorBoundary/components/chunkLoadErrorMessage.module.css.js +0 -17
  85. package/dist/src/components/errorBoundary/components/errorBoundaryBaseMessage.js +0 -85
  86. package/dist/src/components/errorBoundary/components/errorBoundaryBaseMessage.module.css.js +0 -19
  87. package/dist/src/components/errorBoundary/components/notificationCardWithLogo.js +0 -55
  88. package/dist/src/components/errorBoundary/components/notificationCardWithLogo.module.css.js +0 -19
  89. package/dist/src/components/errorBoundary/errorBoundary.js +0 -100
  90. package/dist/src/components/externalLinkButton/externalLinkButton.js +0 -310
  91. package/dist/src/components/externalLinkButton/externalLinkButton.module.css.js +0 -23
  92. package/dist/src/components/footer/footer.js +0 -42
  93. package/dist/src/components/footer/footer.module.css.js +0 -17
  94. package/dist/src/components/lazyLoading/appLoadingIndicator.js +0 -34
  95. package/dist/src/components/lazyLoading/appLoadingIndicator.module.css.js +0 -15
  96. package/dist/src/components/lazyLoading/lazyLoadedAppWrapper.js +0 -40
  97. package/dist/src/components/mediator/mediator.js +0 -32
  98. package/dist/src/components/pageMenu/Navigation/applicationList.js +0 -35
  99. package/dist/src/components/pageMenu/Navigation/applicationList.module.css.js +0 -17
  100. package/dist/src/components/pageMenu/accordionItem.module.css.js +0 -16
  101. package/dist/src/components/pageMenu/defaultAccordionItem.js +0 -61
  102. package/dist/src/components/pageMenu/pageMenu.js +0 -141
  103. package/dist/src/components/pageMenu/pageMenu.module.css.js +0 -17
  104. package/dist/src/components/pageMenu/pageMenuDrawerItem.js +0 -77
  105. package/dist/src/components/pageMenu/pageMenuDrawerItem.module.css.js +0 -20
  106. package/dist/src/components/pageMenu/settings/asset.js +0 -40
  107. package/dist/src/components/pageMenu/settings/profile.js +0 -62
  108. package/dist/src/components/pageMenu/settings/settings.js +0 -41
  109. package/dist/src/components/pageMenu/settings/settings.module.css.js +0 -25
  110. package/dist/src/components/pageMenu/version/version.js +0 -88
  111. package/dist/src/components/pageMenu/version/version.module.css.js +0 -14
  112. package/dist/src/components/panel/corePanelIcon.js +0 -31
  113. package/dist/src/components/panel/corePanelLeft.js +0 -94
  114. package/dist/src/components/panel/corePanelLeft.module.css.js +0 -21
  115. package/dist/src/components/panel/corePanelRight.js +0 -98
  116. package/dist/src/components/panel/corePanelRight.module.css.js +0 -18
  117. package/dist/src/components/panelButton/panelButton.js +0 -124
  118. package/dist/src/components/panelButton/panelButton.module.css.js +0 -25
  119. package/dist/src/components/plantSelector/plantSelector.js +0 -137
  120. package/dist/src/components/projectSelector/ProcosysProjectSelector.js +0 -115
  121. package/dist/src/components/projectSelector/ProcosysProjectSelector.module.css.js +0 -14
  122. package/dist/src/components/realTimeData/RealTimePopoverButton.js +0 -168
  123. package/dist/src/components/realTimeData/components/IMSDropdown/RealTimeIMSDropdown.js +0 -83
  124. package/dist/src/components/realTimeData/components/IMSDropdown/RealTimeIMSDropdown.module.css.js +0 -15
  125. package/dist/src/components/realTimeData/components/connectorForIMSTag/IMSConnector.module.css.js +0 -17
  126. package/dist/src/components/realTimeData/components/connectorForIMSTag/RealTimeConnectorForIMSTag.js +0 -149
  127. package/dist/src/components/realTimeData/components/contextButton/RealTimeContextButton.js +0 -75
  128. package/dist/src/components/realTimeData/components/contextButton/RealTimeContextButton.module.css.js +0 -15
  129. package/dist/src/components/realTimeData/components/contextPopover/Popover.js +0 -37
  130. package/dist/src/components/realTimeData/components/contextPopover/Popover.module.css.js +0 -15
  131. package/dist/src/components/realTimeData/hooks/useRealTimeHub.js +0 -124
  132. package/dist/src/components/realTimeData/hooks/useSignalR.js +0 -175
  133. package/dist/src/components/realTimeData/hooks/useSignalRListener.js +0 -22
  134. package/dist/src/components/router/echoRoute.js +0 -51
  135. package/dist/src/components/router/echoRouter.js +0 -30
  136. package/dist/src/components/router/echoWrapper.js +0 -33
  137. package/dist/src/components/router/routes.js +0 -43
  138. package/dist/src/components/searchMenu/searchMenu.js +0 -46
  139. package/dist/src/components/searchMenu/searchMenu.module.css.js +0 -16
  140. package/dist/src/components/tagNumber/tagNo.module.css.js +0 -14
  141. package/dist/src/components/tagNumber/tagNumber.js +0 -38
  142. package/dist/src/components/toaster/toaster.js +0 -44
  143. package/dist/src/components/toaster/toaster.module.css.js +0 -16
  144. package/dist/src/components/toaster/toasters.js +0 -101
  145. package/dist/src/coreApplication/EchoBarComponent.js +0 -164
  146. package/dist/src/coreApplication/EchoContent.js +0 -52
  147. package/dist/src/coreApplication/EchoContent.module.css.js +0 -17
  148. package/dist/src/coreApplication/EchoContentPanels.js +0 -40
  149. package/dist/src/coreApplication/EchoEventHandler.js +0 -79
  150. package/dist/src/coreApplication/EchoEventHandler.module.css.js +0 -14
  151. package/dist/src/coreApplication/EchoUserInterfaceContextProvider.js +0 -66
  152. package/dist/src/globalStyles.css.js +0 -6
  153. package/dist/src/hooks/hookLibrary.js +0 -86
  154. package/dist/src/hooks/index.js +0 -18
  155. package/dist/src/hooks/useEchoHistory.js +0 -38
  156. package/dist/src/hooks/useIsCompactLayout.js +0 -50
  157. package/dist/src/hooks/useLongPress.js +0 -37
  158. package/dist/src/hooks/useScreenOrientation.js +0 -62
  159. package/dist/src/hooks/useScreenValues.js +0 -35
  160. package/dist/src/hooks/useSemi.js +0 -100
  161. package/dist/src/hooks/useTagDetails.js +0 -153
  162. package/dist/src/hooks/useWindowSize.js +0 -62
  163. package/dist/src/icons/common/CommissionApp-icon.png.js +0 -7
  164. package/dist/src/icons/common/Evision.svg.js +0 -68
  165. package/dist/src/icons/common/Fusion.svg.js +0 -111
  166. package/dist/src/icons/common/McApp.svg.js +0 -70
  167. package/dist/src/icons/common/Notification.svg.js +0 -81
  168. package/dist/src/icons/common/ProCoSysIcon.svg.js +0 -68
  169. package/dist/src/icons/common/Robim.svg.js +0 -66
  170. package/dist/src/icons/common/SX-logo.png.js +0 -7
  171. package/dist/src/icons/common/SapLogo.svg.js +0 -95
  172. package/dist/src/icons/common/SemiIcon.svg.js +0 -82
  173. package/dist/src/icons/common/Stid.svg.js +0 -65
  174. package/dist/src/icons/common/TR2000.svg.js +0 -73
  175. package/dist/src/icons/common/WorkOrder.svg.js +0 -71
  176. package/dist/src/icons/common/Yammer.svg.js +0 -65
  177. package/dist/src/icons/common/satos-logo.png.js +0 -7
  178. package/dist/src/icons/edsIons.js +0 -15
  179. package/dist/src/icons/equinor-logo.js +0 -62
  180. package/dist/src/icons/logo_ee.js +0 -37
  181. package/dist/src/icons/search.js +0 -35
  182. package/dist/src/index.js +0 -218
  183. package/dist/src/index2.js +0 -205
  184. package/dist/src/services/api/api-manager.js +0 -190
  185. package/dist/src/services/api/api-plantinfo.js +0 -196
  186. package/dist/src/services/api/api-plants.js +0 -75
  187. package/dist/src/services/api/api-realtimedata.js +0 -55
  188. package/dist/src/services/api/api-tag-details.js +0 -69
  189. package/dist/src/services/api/api-tags.js +0 -88
  190. package/dist/src/services/api/api-version.js +0 -124
  191. package/dist/src/services/componentRegistry/componentRegistry.js +0 -69
  192. package/dist/src/services/echopediaAnalyticsModule/echopediaAnalyticsModule.js +0 -10
  193. package/dist/src/services/eventCallbacks/plantChanged.js +0 -42
  194. package/dist/src/services/eventHubActions/toastActions.js +0 -18
  195. package/dist/src/theme/themeConst.js +0 -75
  196. package/dist/src/types/extensions.js +0 -10
  197. package/dist/src/types/legend.js +0 -58
  198. package/dist/src/types/pingableSources.js +0 -11
  199. package/dist/src/utils/copyText.js +0 -67
  200. package/dist/src/utils/eventHandlerUtils.js +0 -11
  201. package/dist/src/utils/legendUtils.js +0 -168
  202. package/dist/src/utils/navigationUtils.js +0 -28
  203. package/dist/src/utils/plantInfo.js +0 -535
  204. package/dist/src/utils/plantsDataUtils.js +0 -35
  205. package/dist/src/utils/projectSelectorUtils.js +0 -19
  206. package/dist/src/utils/startup.js +0 -89
  207. package/dist/src/utils/taskCache.js +0 -89
@@ -1,1169 +0,0 @@
1
- 'use strict';
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
6
-
7
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
-
9
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
-
11
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12
-
13
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
14
-
15
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
-
17
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
18
-
19
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
20
-
21
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
22
-
23
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
24
-
25
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
26
-
27
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
28
-
29
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
30
-
31
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
32
-
33
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
34
-
35
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
36
-
37
- Object.defineProperty(exports, '__esModule', {
38
- value: true
39
- });
40
-
41
- var DefaultHttpClient = require('./DefaultHttpClient.js');
42
-
43
- var Errors = require('./Errors.js');
44
-
45
- var HeaderNames = require('./HeaderNames.js');
46
-
47
- var ILogger = require('./ILogger.js');
48
-
49
- var ITransport = require('./ITransport.js');
50
-
51
- var LongPollingTransport = require('./LongPollingTransport.js');
52
-
53
- var ServerSentEventsTransport = require('./ServerSentEventsTransport.js');
54
-
55
- var Utils = require('./Utils.js');
56
-
57
- var WebSocketTransport = require('./WebSocketTransport.js'); // Licensed to the .NET Foundation under one or more agreements.
58
-
59
-
60
- var MAX_REDIRECTS = 100;
61
- /** @private */
62
-
63
- var HttpConnection = /*#__PURE__*/function () {
64
- function HttpConnection(url) {
65
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
66
-
67
- _classCallCheck(this, HttpConnection);
68
-
69
- this._stopPromiseResolver = function () {};
70
-
71
- this.features = {};
72
- this._negotiateVersion = 1;
73
- Utils.Arg.isRequired(url, "url");
74
- this._logger = Utils.createLogger(options.logger);
75
- this.baseUrl = this._resolveUrl(url);
76
- options = options || {};
77
- options.logMessageContent = options.logMessageContent === undefined ? false : options.logMessageContent;
78
-
79
- if (typeof options.withCredentials === "boolean" || options.withCredentials === undefined) {
80
- options.withCredentials = options.withCredentials === undefined ? true : options.withCredentials;
81
- } else {
82
- throw new Error("withCredentials option was not a 'boolean' or 'undefined' value");
83
- }
84
-
85
- options.timeout = options.timeout === undefined ? 100 * 1000 : options.timeout;
86
- var webSocketModule = null;
87
- var eventSourceModule = null;
88
-
89
- if (Utils.Platform.isNode && typeof require !== "undefined") {
90
- // In order to ignore the dynamic require in webpack builds we need to do this magic
91
- // @ts-ignore: TS doesn't know about these names
92
- var requireFunc = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require;
93
- webSocketModule = requireFunc("ws");
94
- eventSourceModule = requireFunc("eventsource");
95
- }
96
-
97
- if (!Utils.Platform.isNode && typeof WebSocket !== "undefined" && !options.WebSocket) {
98
- options.WebSocket = WebSocket;
99
- } else if (Utils.Platform.isNode && !options.WebSocket) {
100
- if (webSocketModule) {
101
- options.WebSocket = webSocketModule;
102
- }
103
- }
104
-
105
- if (!Utils.Platform.isNode && typeof EventSource !== "undefined" && !options.EventSource) {
106
- options.EventSource = EventSource;
107
- } else if (Utils.Platform.isNode && !options.EventSource) {
108
- if (typeof eventSourceModule !== "undefined") {
109
- options.EventSource = eventSourceModule;
110
- }
111
- }
112
-
113
- this._httpClient = options.httpClient || new DefaultHttpClient.DefaultHttpClient(this._logger);
114
- this._connectionState = "Disconnected"
115
- /* Disconnected */
116
- ;
117
- this._connectionStarted = false;
118
- this._options = options;
119
- this.onreceive = null;
120
- this.onclose = null;
121
- }
122
-
123
- _createClass(HttpConnection, [{
124
- key: "start",
125
- value: function () {
126
- var _start = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(transferFormat) {
127
- var message, _message;
128
-
129
- return _regeneratorRuntime().wrap(function _callee$(_context) {
130
- while (1) {
131
- switch (_context.prev = _context.next) {
132
- case 0:
133
- transferFormat = transferFormat || ITransport.TransferFormat.Binary;
134
- Utils.Arg.isIn(transferFormat, ITransport.TransferFormat, "transferFormat");
135
-
136
- this._logger.log(ILogger.LogLevel.Debug, "Starting connection with transfer format '".concat(ITransport.TransferFormat[transferFormat], "'."));
137
-
138
- if (!(this._connectionState !== "Disconnected"
139
- /* Disconnected */
140
- )) {
141
- _context.next = 5;
142
- break;
143
- }
144
-
145
- return _context.abrupt("return", Promise.reject(new Error("Cannot start an HttpConnection that is not in the 'Disconnected' state.")));
146
-
147
- case 5:
148
- this._connectionState = "Connecting"
149
- /* Connecting */
150
- ;
151
- this._startInternalPromise = this._startInternal(transferFormat);
152
- _context.next = 9;
153
- return this._startInternalPromise;
154
-
155
- case 9:
156
- if (!(this._connectionState === "Disconnecting"
157
- /* Disconnecting */
158
- )) {
159
- _context.next = 17;
160
- break;
161
- }
162
-
163
- // stop() was called and transitioned the client into the Disconnecting state.
164
- message = "Failed to start the HttpConnection before stop() was called.";
165
-
166
- this._logger.log(ILogger.LogLevel.Error, message); // We cannot await stopPromise inside startInternal since stopInternal awaits the startInternalPromise.
167
-
168
-
169
- _context.next = 14;
170
- return this._stopPromise;
171
-
172
- case 14:
173
- return _context.abrupt("return", Promise.reject(new Error(message)));
174
-
175
- case 17:
176
- if (!(this._connectionState !== "Connected"
177
- /* Connected */
178
- )) {
179
- _context.next = 21;
180
- break;
181
- }
182
-
183
- // stop() was called and transitioned the client into the Disconnecting state.
184
- _message = "HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!";
185
-
186
- this._logger.log(ILogger.LogLevel.Error, _message);
187
-
188
- return _context.abrupt("return", Promise.reject(new Error(_message)));
189
-
190
- case 21:
191
- this._connectionStarted = true;
192
-
193
- case 22:
194
- case "end":
195
- return _context.stop();
196
- }
197
- }
198
- }, _callee, this);
199
- }));
200
-
201
- function start(_x) {
202
- return _start.apply(this, arguments);
203
- }
204
-
205
- return start;
206
- }()
207
- }, {
208
- key: "send",
209
- value: function send(data) {
210
- if (this._connectionState !== "Connected"
211
- /* Connected */
212
- ) {
213
- return Promise.reject(new Error("Cannot send data if the connection is not in the 'Connected' State."));
214
- }
215
-
216
- if (!this._sendQueue) {
217
- this._sendQueue = new TransportSendQueue(this.transport);
218
- } // Transport will not be null if state is connected
219
-
220
-
221
- return this._sendQueue.send(data);
222
- }
223
- }, {
224
- key: "stop",
225
- value: function () {
226
- var _stop = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(error) {
227
- var _this = this;
228
-
229
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
230
- while (1) {
231
- switch (_context2.prev = _context2.next) {
232
- case 0:
233
- if (!(this._connectionState === "Disconnected"
234
- /* Disconnected */
235
- )) {
236
- _context2.next = 3;
237
- break;
238
- }
239
-
240
- this._logger.log(ILogger.LogLevel.Debug, "Call to HttpConnection.stop(".concat(error, ") ignored because the connection is already in the disconnected state."));
241
-
242
- return _context2.abrupt("return", Promise.resolve());
243
-
244
- case 3:
245
- if (!(this._connectionState === "Disconnecting"
246
- /* Disconnecting */
247
- )) {
248
- _context2.next = 6;
249
- break;
250
- }
251
-
252
- this._logger.log(ILogger.LogLevel.Debug, "Call to HttpConnection.stop(".concat(error, ") ignored because the connection is already in the disconnecting state."));
253
-
254
- return _context2.abrupt("return", this._stopPromise);
255
-
256
- case 6:
257
- this._connectionState = "Disconnecting"
258
- /* Disconnecting */
259
- ;
260
- this._stopPromise = new Promise(function (resolve) {
261
- // Don't complete stop() until stopConnection() completes.
262
- _this._stopPromiseResolver = resolve;
263
- }); // stopInternal should never throw so just observe it.
264
-
265
- _context2.next = 10;
266
- return this._stopInternal(error);
267
-
268
- case 10:
269
- _context2.next = 12;
270
- return this._stopPromise;
271
-
272
- case 12:
273
- case "end":
274
- return _context2.stop();
275
- }
276
- }
277
- }, _callee2, this);
278
- }));
279
-
280
- function stop(_x2) {
281
- return _stop.apply(this, arguments);
282
- }
283
-
284
- return stop;
285
- }()
286
- }, {
287
- key: "_stopInternal",
288
- value: function () {
289
- var _stopInternal2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(error) {
290
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
291
- while (1) {
292
- switch (_context3.prev = _context3.next) {
293
- case 0:
294
- // Set error as soon as possible otherwise there is a race between
295
- // the transport closing and providing an error and the error from a close message
296
- // We would prefer the close message error.
297
- this._stopError = error;
298
- _context3.prev = 1;
299
- _context3.next = 4;
300
- return this._startInternalPromise;
301
-
302
- case 4:
303
- _context3.next = 8;
304
- break;
305
-
306
- case 6:
307
- _context3.prev = 6;
308
- _context3.t0 = _context3["catch"](1);
309
-
310
- case 8:
311
- if (!this.transport) {
312
- _context3.next = 21;
313
- break;
314
- }
315
-
316
- _context3.prev = 9;
317
- _context3.next = 12;
318
- return this.transport.stop();
319
-
320
- case 12:
321
- _context3.next = 18;
322
- break;
323
-
324
- case 14:
325
- _context3.prev = 14;
326
- _context3.t1 = _context3["catch"](9);
327
-
328
- this._logger.log(ILogger.LogLevel.Error, "HttpConnection.transport.stop() threw error '".concat(_context3.t1, "'."));
329
-
330
- this._stopConnection();
331
-
332
- case 18:
333
- this.transport = undefined;
334
- _context3.next = 22;
335
- break;
336
-
337
- case 21:
338
- this._logger.log(ILogger.LogLevel.Debug, "HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.");
339
-
340
- case 22:
341
- case "end":
342
- return _context3.stop();
343
- }
344
- }
345
- }, _callee3, this, [[1, 6], [9, 14]]);
346
- }));
347
-
348
- function _stopInternal(_x3) {
349
- return _stopInternal2.apply(this, arguments);
350
- }
351
-
352
- return _stopInternal;
353
- }()
354
- }, {
355
- key: "_startInternal",
356
- value: function () {
357
- var _startInternal2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(transferFormat) {
358
- var _this2 = this;
359
-
360
- var url, negotiateResponse, redirects;
361
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
362
- while (1) {
363
- switch (_context4.prev = _context4.next) {
364
- case 0:
365
- // Store the original base url and the access token factory since they may change
366
- // as part of negotiating
367
- url = this.baseUrl;
368
- this._accessTokenFactory = this._options.accessTokenFactory;
369
- _context4.prev = 2;
370
-
371
- if (!this._options.skipNegotiation) {
372
- _context4.next = 13;
373
- break;
374
- }
375
-
376
- if (!(this._options.transport === ITransport.HttpTransportType.WebSockets)) {
377
- _context4.next = 10;
378
- break;
379
- }
380
-
381
- // No need to add a connection ID in this case
382
- this.transport = this._constructTransport(ITransport.HttpTransportType.WebSockets); // We should just call connect directly in this case.
383
- // No fallback or negotiate in this case.
384
-
385
- _context4.next = 8;
386
- return this._startTransport(url, transferFormat);
387
-
388
- case 8:
389
- _context4.next = 11;
390
- break;
391
-
392
- case 10:
393
- throw new Error("Negotiation can only be skipped when using the WebSocket transport directly.");
394
-
395
- case 11:
396
- _context4.next = 32;
397
- break;
398
-
399
- case 13:
400
- negotiateResponse = null;
401
- redirects = 0;
402
-
403
- case 15:
404
- _context4.next = 17;
405
- return this._getNegotiationResponse(url);
406
-
407
- case 17:
408
- negotiateResponse = _context4.sent;
409
-
410
- if (!(this._connectionState === "Disconnecting"
411
- /* Disconnecting */
412
- || this._connectionState === "Disconnected"
413
- /* Disconnected */
414
- )) {
415
- _context4.next = 20;
416
- break;
417
- }
418
-
419
- throw new Error("The connection was stopped during negotiation.");
420
-
421
- case 20:
422
- if (!negotiateResponse.error) {
423
- _context4.next = 22;
424
- break;
425
- }
426
-
427
- throw new Error(negotiateResponse.error);
428
-
429
- case 22:
430
- if (!negotiateResponse.ProtocolVersion) {
431
- _context4.next = 24;
432
- break;
433
- }
434
-
435
- 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.");
436
-
437
- case 24:
438
- if (negotiateResponse.url) {
439
- url = negotiateResponse.url;
440
- }
441
-
442
- if (negotiateResponse.accessToken) {
443
- (function () {
444
- // Replace the current access token factory with one that uses
445
- // the returned access token
446
- var accessToken = negotiateResponse.accessToken;
447
-
448
- _this2._accessTokenFactory = function () {
449
- return accessToken;
450
- };
451
- })();
452
- }
453
-
454
- redirects++;
455
-
456
- case 27:
457
- if (negotiateResponse.url && redirects < MAX_REDIRECTS) {
458
- _context4.next = 15;
459
- break;
460
- }
461
-
462
- case 28:
463
- if (!(redirects === MAX_REDIRECTS && negotiateResponse.url)) {
464
- _context4.next = 30;
465
- break;
466
- }
467
-
468
- throw new Error("Negotiate redirection limit exceeded.");
469
-
470
- case 30:
471
- _context4.next = 32;
472
- return this._createTransport(url, this._options.transport, negotiateResponse, transferFormat);
473
-
474
- case 32:
475
- if (this.transport instanceof LongPollingTransport.LongPollingTransport) {
476
- this.features.inherentKeepAlive = true;
477
- }
478
-
479
- if (this._connectionState === "Connecting"
480
- /* Connecting */
481
- ) {
482
- // Ensure the connection transitions to the connected state prior to completing this.startInternalPromise.
483
- // start() will handle the case when stop was called and startInternal exits still in the disconnecting state.
484
- this._logger.log(ILogger.LogLevel.Debug, "The HttpConnection connected successfully.");
485
-
486
- this._connectionState = "Connected"
487
- /* Connected */
488
- ;
489
- } // stop() is waiting on us via this.startInternalPromise so keep this.transport around so it can clean up.
490
- // This is the only case startInternal can exit in neither the connected nor disconnected state because stopConnection()
491
- // will transition to the disconnected state. start() will wait for the transition using the stopPromise.
492
-
493
-
494
- _context4.next = 43;
495
- break;
496
-
497
- case 36:
498
- _context4.prev = 36;
499
- _context4.t0 = _context4["catch"](2);
500
-
501
- this._logger.log(ILogger.LogLevel.Error, "Failed to start the connection: " + _context4.t0);
502
-
503
- this._connectionState = "Disconnected"
504
- /* Disconnected */
505
- ;
506
- this.transport = undefined; // if start fails, any active calls to stop assume that start will complete the stop promise
507
-
508
- this._stopPromiseResolver();
509
-
510
- return _context4.abrupt("return", Promise.reject(_context4.t0));
511
-
512
- case 43:
513
- case "end":
514
- return _context4.stop();
515
- }
516
- }
517
- }, _callee4, this, [[2, 36]]);
518
- }));
519
-
520
- function _startInternal(_x4) {
521
- return _startInternal2.apply(this, arguments);
522
- }
523
-
524
- return _startInternal;
525
- }()
526
- }, {
527
- key: "_getNegotiationResponse",
528
- value: function () {
529
- var _getNegotiationResponse2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(url) {
530
- var headers, token, _Utils$getUserAgentHe, _Utils$getUserAgentHe2, name, value, negotiateUrl, response, negotiateResponse, errorMessage;
531
-
532
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
533
- while (1) {
534
- switch (_context5.prev = _context5.next) {
535
- case 0:
536
- headers = {};
537
-
538
- if (!this._accessTokenFactory) {
539
- _context5.next = 6;
540
- break;
541
- }
542
-
543
- _context5.next = 4;
544
- return this._accessTokenFactory();
545
-
546
- case 4:
547
- token = _context5.sent;
548
-
549
- if (token) {
550
- headers[HeaderNames.HeaderNames.Authorization] = "Bearer ".concat(token);
551
- }
552
-
553
- case 6:
554
- _Utils$getUserAgentHe = Utils.getUserAgentHeader(), _Utils$getUserAgentHe2 = _slicedToArray(_Utils$getUserAgentHe, 2), name = _Utils$getUserAgentHe2[0], value = _Utils$getUserAgentHe2[1];
555
- headers[name] = value;
556
- negotiateUrl = this._resolveNegotiateUrl(url);
557
-
558
- this._logger.log(ILogger.LogLevel.Debug, "Sending negotiation request: ".concat(negotiateUrl, "."));
559
-
560
- _context5.prev = 10;
561
- _context5.next = 13;
562
- return this._httpClient.post(negotiateUrl, {
563
- content: "",
564
- headers: _objectSpread(_objectSpread({}, headers), this._options.headers),
565
- timeout: this._options.timeout,
566
- withCredentials: this._options.withCredentials
567
- });
568
-
569
- case 13:
570
- response = _context5.sent;
571
-
572
- if (!(response.statusCode !== 200)) {
573
- _context5.next = 16;
574
- break;
575
- }
576
-
577
- return _context5.abrupt("return", Promise.reject(new Error("Unexpected status code returned from negotiate '".concat(response.statusCode, "'"))));
578
-
579
- case 16:
580
- negotiateResponse = JSON.parse(response.content);
581
-
582
- if (!negotiateResponse.negotiateVersion || negotiateResponse.negotiateVersion < 1) {
583
- // Negotiate version 0 doesn't use connectionToken
584
- // So we set it equal to connectionId so all our logic can use connectionToken without being aware of the negotiate version
585
- negotiateResponse.connectionToken = negotiateResponse.connectionId;
586
- }
587
-
588
- return _context5.abrupt("return", negotiateResponse);
589
-
590
- case 21:
591
- _context5.prev = 21;
592
- _context5.t0 = _context5["catch"](10);
593
- errorMessage = "Failed to complete negotiation with the server: " + _context5.t0;
594
-
595
- if (_context5.t0 instanceof Errors.HttpError) {
596
- if (_context5.t0.statusCode === 404) {
597
- errorMessage = errorMessage + " Either this is not a SignalR endpoint or there is a proxy blocking the connection.";
598
- }
599
- }
600
-
601
- this._logger.log(ILogger.LogLevel.Error, errorMessage);
602
-
603
- return _context5.abrupt("return", Promise.reject(new Errors.FailedToNegotiateWithServerError(errorMessage)));
604
-
605
- case 27:
606
- case "end":
607
- return _context5.stop();
608
- }
609
- }
610
- }, _callee5, this, [[10, 21]]);
611
- }));
612
-
613
- function _getNegotiationResponse(_x5) {
614
- return _getNegotiationResponse2.apply(this, arguments);
615
- }
616
-
617
- return _getNegotiationResponse;
618
- }()
619
- }, {
620
- key: "_createConnectUrl",
621
- value: function _createConnectUrl(url, connectionToken) {
622
- if (!connectionToken) {
623
- return url;
624
- }
625
-
626
- return url + (url.indexOf("?") === -1 ? "?" : "&") + "id=".concat(connectionToken);
627
- }
628
- }, {
629
- key: "_createTransport",
630
- value: function () {
631
- var _createTransport2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(url, requestedTransport, negotiateResponse, requestedTransferFormat) {
632
- var connectUrl, transportExceptions, transports, negotiate, _iterator, _step, endpoint, transportOrError, message;
633
-
634
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
635
- while (1) {
636
- switch (_context6.prev = _context6.next) {
637
- case 0:
638
- connectUrl = this._createConnectUrl(url, negotiateResponse.connectionToken);
639
-
640
- if (!this._isITransport(requestedTransport)) {
641
- _context6.next = 8;
642
- break;
643
- }
644
-
645
- this._logger.log(ILogger.LogLevel.Debug, "Connection was provided an instance of ITransport, using that directly.");
646
-
647
- this.transport = requestedTransport;
648
- _context6.next = 6;
649
- return this._startTransport(connectUrl, requestedTransferFormat);
650
-
651
- case 6:
652
- this.connectionId = negotiateResponse.connectionId;
653
- return _context6.abrupt("return");
654
-
655
- case 8:
656
- transportExceptions = [];
657
- transports = negotiateResponse.availableTransports || [];
658
- negotiate = negotiateResponse;
659
- _iterator = _createForOfIteratorHelper(transports);
660
- _context6.prev = 12;
661
-
662
- _iterator.s();
663
-
664
- case 14:
665
- if ((_step = _iterator.n()).done) {
666
- _context6.next = 53;
667
- break;
668
- }
669
-
670
- endpoint = _step.value;
671
- transportOrError = this._resolveTransportOrError(endpoint, requestedTransport, requestedTransferFormat);
672
-
673
- if (!(transportOrError instanceof Error)) {
674
- _context6.next = 22;
675
- break;
676
- }
677
-
678
- // Store the error and continue, we don't want to cause a re-negotiate in these cases
679
- transportExceptions.push("".concat(endpoint.transport, " failed:"));
680
- transportExceptions.push(transportOrError);
681
- _context6.next = 51;
682
- break;
683
-
684
- case 22:
685
- if (!this._isITransport(transportOrError)) {
686
- _context6.next = 51;
687
- break;
688
- }
689
-
690
- this.transport = transportOrError;
691
-
692
- if (negotiate) {
693
- _context6.next = 35;
694
- break;
695
- }
696
-
697
- _context6.prev = 25;
698
- _context6.next = 28;
699
- return this._getNegotiationResponse(url);
700
-
701
- case 28:
702
- negotiate = _context6.sent;
703
- _context6.next = 34;
704
- break;
705
-
706
- case 31:
707
- _context6.prev = 31;
708
- _context6.t0 = _context6["catch"](25);
709
- return _context6.abrupt("return", Promise.reject(_context6.t0));
710
-
711
- case 34:
712
- connectUrl = this._createConnectUrl(url, negotiate.connectionToken);
713
-
714
- case 35:
715
- _context6.prev = 35;
716
- _context6.next = 38;
717
- return this._startTransport(connectUrl, requestedTransferFormat);
718
-
719
- case 38:
720
- this.connectionId = negotiate.connectionId;
721
- return _context6.abrupt("return");
722
-
723
- case 42:
724
- _context6.prev = 42;
725
- _context6.t1 = _context6["catch"](35);
726
-
727
- this._logger.log(ILogger.LogLevel.Error, "Failed to start the transport '".concat(endpoint.transport, "': ").concat(_context6.t1));
728
-
729
- negotiate = undefined;
730
- transportExceptions.push(new Errors.FailedToStartTransportError("".concat(endpoint.transport, " failed: ").concat(_context6.t1), ITransport.HttpTransportType[endpoint.transport]));
731
-
732
- if (!(this._connectionState !== "Connecting"
733
- /* Connecting */
734
- )) {
735
- _context6.next = 51;
736
- break;
737
- }
738
-
739
- message = "Failed to select transport before stop() was called.";
740
-
741
- this._logger.log(ILogger.LogLevel.Debug, message);
742
-
743
- return _context6.abrupt("return", Promise.reject(new Error(message)));
744
-
745
- case 51:
746
- _context6.next = 14;
747
- break;
748
-
749
- case 53:
750
- _context6.next = 58;
751
- break;
752
-
753
- case 55:
754
- _context6.prev = 55;
755
- _context6.t2 = _context6["catch"](12);
756
-
757
- _iterator.e(_context6.t2);
758
-
759
- case 58:
760
- _context6.prev = 58;
761
-
762
- _iterator.f();
763
-
764
- return _context6.finish(58);
765
-
766
- case 61:
767
- if (!(transportExceptions.length > 0)) {
768
- _context6.next = 63;
769
- break;
770
- }
771
-
772
- return _context6.abrupt("return", Promise.reject(new Errors.AggregateErrors("Unable to connect to the server with any of the available transports. ".concat(transportExceptions.join(" ")), transportExceptions)));
773
-
774
- case 63:
775
- return _context6.abrupt("return", Promise.reject(new Error("None of the transports supported by the client are supported by the server.")));
776
-
777
- case 64:
778
- case "end":
779
- return _context6.stop();
780
- }
781
- }
782
- }, _callee6, this, [[12, 55, 58, 61], [25, 31], [35, 42]]);
783
- }));
784
-
785
- function _createTransport(_x6, _x7, _x8, _x9) {
786
- return _createTransport2.apply(this, arguments);
787
- }
788
-
789
- return _createTransport;
790
- }()
791
- }, {
792
- key: "_constructTransport",
793
- value: function _constructTransport(transport) {
794
- switch (transport) {
795
- case ITransport.HttpTransportType.WebSockets:
796
- if (!this._options.WebSocket) {
797
- throw new Error("'WebSocket' is not supported in your environment.");
798
- }
799
-
800
- return new WebSocketTransport.WebSocketTransport(this._httpClient, this._accessTokenFactory, this._logger, this._options.logMessageContent, this._options.WebSocket, this._options.headers || {});
801
-
802
- case ITransport.HttpTransportType.ServerSentEvents:
803
- if (!this._options.EventSource) {
804
- throw new Error("'EventSource' is not supported in your environment.");
805
- }
806
-
807
- return new ServerSentEventsTransport.ServerSentEventsTransport(this._httpClient, this._accessTokenFactory, this._logger, this._options);
808
-
809
- case ITransport.HttpTransportType.LongPolling:
810
- return new LongPollingTransport.LongPollingTransport(this._httpClient, this._accessTokenFactory, this._logger, this._options);
811
-
812
- default:
813
- throw new Error("Unknown transport: ".concat(transport, "."));
814
- }
815
- }
816
- }, {
817
- key: "_startTransport",
818
- value: function _startTransport(url, transferFormat) {
819
- var _this3 = this;
820
-
821
- this.transport.onreceive = this.onreceive;
822
-
823
- this.transport.onclose = function (e) {
824
- return _this3._stopConnection(e);
825
- };
826
-
827
- return this.transport.connect(url, transferFormat);
828
- }
829
- }, {
830
- key: "_resolveTransportOrError",
831
- value: function _resolveTransportOrError(endpoint, requestedTransport, requestedTransferFormat) {
832
- var transport = ITransport.HttpTransportType[endpoint.transport];
833
-
834
- if (transport === null || transport === undefined) {
835
- this._logger.log(ILogger.LogLevel.Debug, "Skipping transport '".concat(endpoint.transport, "' because it is not supported by this client."));
836
-
837
- return new Error("Skipping transport '".concat(endpoint.transport, "' because it is not supported by this client."));
838
- } else {
839
- if (transportMatches(requestedTransport, transport)) {
840
- var transferFormats = endpoint.transferFormats.map(function (s) {
841
- return ITransport.TransferFormat[s];
842
- });
843
-
844
- if (transferFormats.indexOf(requestedTransferFormat) >= 0) {
845
- if (transport === ITransport.HttpTransportType.WebSockets && !this._options.WebSocket || transport === ITransport.HttpTransportType.ServerSentEvents && !this._options.EventSource) {
846
- this._logger.log(ILogger.LogLevel.Debug, "Skipping transport '".concat(ITransport.HttpTransportType[transport], "' because it is not supported in your environment.'"));
847
-
848
- return new Errors.UnsupportedTransportError("'".concat(ITransport.HttpTransportType[transport], "' is not supported in your environment."), transport);
849
- } else {
850
- this._logger.log(ILogger.LogLevel.Debug, "Selecting transport '".concat(ITransport.HttpTransportType[transport], "'."));
851
-
852
- try {
853
- return this._constructTransport(transport);
854
- } catch (ex) {
855
- return ex;
856
- }
857
- }
858
- } else {
859
- this._logger.log(ILogger.LogLevel.Debug, "Skipping transport '".concat(ITransport.HttpTransportType[transport], "' because it does not support the requested transfer format '").concat(ITransport.TransferFormat[requestedTransferFormat], "'."));
860
-
861
- return new Error("'".concat(ITransport.HttpTransportType[transport], "' does not support ").concat(ITransport.TransferFormat[requestedTransferFormat], "."));
862
- }
863
- } else {
864
- this._logger.log(ILogger.LogLevel.Debug, "Skipping transport '".concat(ITransport.HttpTransportType[transport], "' because it was disabled by the client."));
865
-
866
- return new Errors.DisabledTransportError("'".concat(ITransport.HttpTransportType[transport], "' is disabled by the client."), transport);
867
- }
868
- }
869
- }
870
- }, {
871
- key: "_isITransport",
872
- value: function _isITransport(transport) {
873
- return transport && _typeof(transport) === "object" && "connect" in transport;
874
- }
875
- }, {
876
- key: "_stopConnection",
877
- value: function _stopConnection(error) {
878
- var _this4 = this;
879
-
880
- this._logger.log(ILogger.LogLevel.Debug, "HttpConnection.stopConnection(".concat(error, ") called while in state ").concat(this._connectionState, "."));
881
-
882
- this.transport = undefined; // If we have a stopError, it takes precedence over the error from the transport
883
-
884
- error = this._stopError || error;
885
- this._stopError = undefined;
886
-
887
- if (this._connectionState === "Disconnected"
888
- /* Disconnected */
889
- ) {
890
- this._logger.log(ILogger.LogLevel.Debug, "Call to HttpConnection.stopConnection(".concat(error, ") was ignored because the connection is already in the disconnected state."));
891
-
892
- return;
893
- }
894
-
895
- if (this._connectionState === "Connecting"
896
- /* Connecting */
897
- ) {
898
- this._logger.log(ILogger.LogLevel.Warning, "Call to HttpConnection.stopConnection(".concat(error, ") was ignored because the connection is still in the connecting state."));
899
-
900
- throw new Error("HttpConnection.stopConnection(".concat(error, ") was called while the connection is still in the connecting state."));
901
- }
902
-
903
- if (this._connectionState === "Disconnecting"
904
- /* Disconnecting */
905
- ) {
906
- // A call to stop() induced this call to stopConnection and needs to be completed.
907
- // Any stop() awaiters will be scheduled to continue after the onclose callback fires.
908
- this._stopPromiseResolver();
909
- }
910
-
911
- if (error) {
912
- this._logger.log(ILogger.LogLevel.Error, "Connection disconnected with error '".concat(error, "'."));
913
- } else {
914
- this._logger.log(ILogger.LogLevel.Information, "Connection disconnected.");
915
- }
916
-
917
- if (this._sendQueue) {
918
- this._sendQueue.stop()["catch"](function (e) {
919
- _this4._logger.log(ILogger.LogLevel.Error, "TransportSendQueue.stop() threw error '".concat(e, "'."));
920
- });
921
-
922
- this._sendQueue = undefined;
923
- }
924
-
925
- this.connectionId = undefined;
926
- this._connectionState = "Disconnected"
927
- /* Disconnected */
928
- ;
929
-
930
- if (this._connectionStarted) {
931
- this._connectionStarted = false;
932
-
933
- try {
934
- if (this.onclose) {
935
- this.onclose(error);
936
- }
937
- } catch (e) {
938
- this._logger.log(ILogger.LogLevel.Error, "HttpConnection.onclose(".concat(error, ") threw error '").concat(e, "'."));
939
- }
940
- }
941
- }
942
- }, {
943
- key: "_resolveUrl",
944
- value: function _resolveUrl(url) {
945
- // startsWith is not supported in IE
946
- if (url.lastIndexOf("https://", 0) === 0 || url.lastIndexOf("http://", 0) === 0) {
947
- return url;
948
- }
949
-
950
- if (!Utils.Platform.isBrowser) {
951
- throw new Error("Cannot resolve '".concat(url, "'."));
952
- } // Setting the url to the href propery of an anchor tag handles normalization
953
- // for us. There are 3 main cases.
954
- // 1. Relative path normalization e.g "b" -> "http://localhost:5000/a/b"
955
- // 2. Absolute path normalization e.g "/a/b" -> "http://localhost:5000/a/b"
956
- // 3. Networkpath reference normalization e.g "//localhost:5000/a/b" -> "http://localhost:5000/a/b"
957
-
958
-
959
- var aTag = window.document.createElement("a");
960
- aTag.href = url;
961
-
962
- this._logger.log(ILogger.LogLevel.Information, "Normalizing '".concat(url, "' to '").concat(aTag.href, "'."));
963
-
964
- return aTag.href;
965
- }
966
- }, {
967
- key: "_resolveNegotiateUrl",
968
- value: function _resolveNegotiateUrl(url) {
969
- var index = url.indexOf("?");
970
- var negotiateUrl = url.substring(0, index === -1 ? url.length : index);
971
-
972
- if (negotiateUrl[negotiateUrl.length - 1] !== "/") {
973
- negotiateUrl += "/";
974
- }
975
-
976
- negotiateUrl += "negotiate";
977
- negotiateUrl += index === -1 ? "" : url.substring(index);
978
-
979
- if (negotiateUrl.indexOf("negotiateVersion") === -1) {
980
- negotiateUrl += index === -1 ? "?" : "&";
981
- negotiateUrl += "negotiateVersion=" + this._negotiateVersion;
982
- }
983
-
984
- return negotiateUrl;
985
- }
986
- }]);
987
-
988
- return HttpConnection;
989
- }();
990
-
991
- function transportMatches(requestedTransport, actualTransport) {
992
- return !requestedTransport || (actualTransport & requestedTransport) !== 0;
993
- }
994
- /** @private */
995
-
996
-
997
- var TransportSendQueue = /*#__PURE__*/function () {
998
- function TransportSendQueue(_transport) {
999
- _classCallCheck(this, TransportSendQueue);
1000
-
1001
- this._transport = _transport;
1002
- this._buffer = [];
1003
- this._executing = true;
1004
- this._sendBufferedData = new PromiseSource();
1005
- this._transportResult = new PromiseSource();
1006
- this._sendLoopPromise = this._sendLoop();
1007
- }
1008
-
1009
- _createClass(TransportSendQueue, [{
1010
- key: "send",
1011
- value: function send(data) {
1012
- this._bufferData(data);
1013
-
1014
- if (!this._transportResult) {
1015
- this._transportResult = new PromiseSource();
1016
- }
1017
-
1018
- return this._transportResult.promise;
1019
- }
1020
- }, {
1021
- key: "stop",
1022
- value: function stop() {
1023
- this._executing = false;
1024
-
1025
- this._sendBufferedData.resolve();
1026
-
1027
- return this._sendLoopPromise;
1028
- }
1029
- }, {
1030
- key: "_bufferData",
1031
- value: function _bufferData(data) {
1032
- if (this._buffer.length && _typeof(this._buffer[0]) !== _typeof(data)) {
1033
- throw new Error("Expected data to be of type ".concat(_typeof(this._buffer), " but was of type ").concat(_typeof(data)));
1034
- }
1035
-
1036
- this._buffer.push(data);
1037
-
1038
- this._sendBufferedData.resolve();
1039
- }
1040
- }, {
1041
- key: "_sendLoop",
1042
- value: function () {
1043
- var _sendLoop2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
1044
- var transportResult, data;
1045
- return _regeneratorRuntime().wrap(function _callee7$(_context7) {
1046
- while (1) {
1047
- switch (_context7.prev = _context7.next) {
1048
- case 0:
1049
- if (!true) {
1050
- _context7.next = 22;
1051
- break;
1052
- }
1053
-
1054
- _context7.next = 3;
1055
- return this._sendBufferedData.promise;
1056
-
1057
- case 3:
1058
- if (this._executing) {
1059
- _context7.next = 6;
1060
- break;
1061
- }
1062
-
1063
- if (this._transportResult) {
1064
- this._transportResult.reject("Connection stopped.");
1065
- }
1066
-
1067
- return _context7.abrupt("break", 22);
1068
-
1069
- case 6:
1070
- this._sendBufferedData = new PromiseSource();
1071
- transportResult = this._transportResult;
1072
- this._transportResult = undefined;
1073
- data = typeof this._buffer[0] === "string" ? this._buffer.join("") : TransportSendQueue._concatBuffers(this._buffer);
1074
- this._buffer.length = 0;
1075
- _context7.prev = 11;
1076
- _context7.next = 14;
1077
- return this._transport.send(data);
1078
-
1079
- case 14:
1080
- transportResult.resolve();
1081
- _context7.next = 20;
1082
- break;
1083
-
1084
- case 17:
1085
- _context7.prev = 17;
1086
- _context7.t0 = _context7["catch"](11);
1087
- transportResult.reject(_context7.t0);
1088
-
1089
- case 20:
1090
- _context7.next = 0;
1091
- break;
1092
-
1093
- case 22:
1094
- case "end":
1095
- return _context7.stop();
1096
- }
1097
- }
1098
- }, _callee7, this, [[11, 17]]);
1099
- }));
1100
-
1101
- function _sendLoop() {
1102
- return _sendLoop2.apply(this, arguments);
1103
- }
1104
-
1105
- return _sendLoop;
1106
- }()
1107
- }], [{
1108
- key: "_concatBuffers",
1109
- value: function _concatBuffers(arrayBuffers) {
1110
- var totalLength = arrayBuffers.map(function (b) {
1111
- return b.byteLength;
1112
- }).reduce(function (a, b) {
1113
- return a + b;
1114
- });
1115
- var result = new Uint8Array(totalLength);
1116
- var offset = 0;
1117
-
1118
- var _iterator2 = _createForOfIteratorHelper(arrayBuffers),
1119
- _step2;
1120
-
1121
- try {
1122
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1123
- var item = _step2.value;
1124
- result.set(new Uint8Array(item), offset);
1125
- offset += item.byteLength;
1126
- }
1127
- } catch (err) {
1128
- _iterator2.e(err);
1129
- } finally {
1130
- _iterator2.f();
1131
- }
1132
-
1133
- return result.buffer;
1134
- }
1135
- }]);
1136
-
1137
- return TransportSendQueue;
1138
- }();
1139
-
1140
- var PromiseSource = /*#__PURE__*/function () {
1141
- function PromiseSource() {
1142
- var _this5 = this;
1143
-
1144
- _classCallCheck(this, PromiseSource);
1145
-
1146
- this.promise = new Promise(function (resolve, reject) {
1147
- var _ref;
1148
-
1149
- return _ref = [resolve, reject], _this5._resolver = _ref[0], _this5._rejecter = _ref[1], _ref;
1150
- });
1151
- }
1152
-
1153
- _createClass(PromiseSource, [{
1154
- key: "resolve",
1155
- value: function resolve() {
1156
- this._resolver();
1157
- }
1158
- }, {
1159
- key: "reject",
1160
- value: function reject(reason) {
1161
- this._rejecter(reason);
1162
- }
1163
- }]);
1164
-
1165
- return PromiseSource;
1166
- }();
1167
-
1168
- exports.HttpConnection = HttpConnection;
1169
- exports.TransportSendQueue = TransportSendQueue;