@gitpod/gitpod-protocol 0.1.5-sje-cert-manager.0 → 0.1.5-sje-server-installation-admin.8

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 (214) hide show
  1. package/data/gitpod-schema.json +21 -2
  2. package/lib/accounting-protocol.d.ts +0 -1
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +10 -11
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +8 -2
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js +2 -13
  9. package/lib/admin-protocol.js.map +1 -1
  10. package/lib/analytics.d.ts +1 -0
  11. package/lib/analytics.d.ts.map +1 -1
  12. package/lib/context-url.js +4 -4
  13. package/lib/context-url.js.map +1 -1
  14. package/lib/context-url.spec.js +45 -48
  15. package/lib/context-url.spec.js.map +1 -1
  16. package/lib/email-protocol.js +4 -4
  17. package/lib/email-protocol.js.map +1 -1
  18. package/lib/encryption/container-module.js +4 -4
  19. package/lib/encryption/container-module.js.map +1 -1
  20. package/lib/encryption/encryption-engine.js +19 -20
  21. package/lib/encryption/encryption-engine.js.map +1 -1
  22. package/lib/encryption/encryption-engine.spec.js +29 -36
  23. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  24. package/lib/encryption/encryption-service.js +29 -43
  25. package/lib/encryption/encryption-service.js.map +1 -1
  26. package/lib/encryption/key-provider.js +25 -30
  27. package/lib/encryption/key-provider.js.map +1 -1
  28. package/lib/env.js +12 -13
  29. package/lib/env.js.map +1 -1
  30. package/lib/gitpod-file-parser.js +25 -41
  31. package/lib/gitpod-file-parser.js.map +1 -1
  32. package/lib/gitpod-file-parser.spec.js +116 -116
  33. package/lib/gitpod-file-parser.spec.js.map +1 -1
  34. package/lib/gitpod-service.d.ts +24 -11
  35. package/lib/gitpod-service.d.ts.map +1 -1
  36. package/lib/gitpod-service.js +149 -295
  37. package/lib/gitpod-service.js.map +1 -1
  38. package/lib/ide-protocol.d.ts +81 -0
  39. package/lib/ide-protocol.d.ts.map +1 -0
  40. package/lib/ide-protocol.js +8 -0
  41. package/lib/ide-protocol.js.map +1 -0
  42. package/lib/index.d.ts +2 -0
  43. package/lib/index.d.ts.map +1 -1
  44. package/lib/index.js +2 -0
  45. package/lib/index.js.map +1 -1
  46. package/lib/messaging/browser/connection.js +91 -156
  47. package/lib/messaging/browser/connection.js.map +1 -1
  48. package/lib/messaging/browser/window-connection.js +35 -55
  49. package/lib/messaging/browser/window-connection.js.map +1 -1
  50. package/lib/messaging/client-call-metrics.js +17 -18
  51. package/lib/messaging/client-call-metrics.js.map +1 -1
  52. package/lib/messaging/connection-error-handler.js +11 -23
  53. package/lib/messaging/connection-error-handler.js.map +1 -1
  54. package/lib/messaging/error.d.ts +1 -1
  55. package/lib/messaging/error.d.ts.map +1 -1
  56. package/lib/messaging/error.js +2 -2
  57. package/lib/messaging/error.js.map +1 -1
  58. package/lib/messaging/node/connection.d.ts +0 -10
  59. package/lib/messaging/node/connection.d.ts.map +1 -1
  60. package/lib/messaging/node/connection.js +11 -49
  61. package/lib/messaging/node/connection.js.map +1 -1
  62. package/lib/messaging/proxy-factory.js +71 -162
  63. package/lib/messaging/proxy-factory.js.map +1 -1
  64. package/lib/oss-allowlist.d.ts +14 -0
  65. package/lib/oss-allowlist.d.ts.map +1 -0
  66. package/lib/oss-allowlist.js +8 -0
  67. package/lib/oss-allowlist.js.map +1 -0
  68. package/lib/permission.js +12 -12
  69. package/lib/permission.js.map +1 -1
  70. package/lib/plans.d.ts +1 -1
  71. package/lib/plans.d.ts.map +1 -1
  72. package/lib/plans.js +38 -57
  73. package/lib/plans.js.map +1 -1
  74. package/lib/protocol.d.ts +13 -40
  75. package/lib/protocol.d.ts.map +1 -1
  76. package/lib/protocol.js +44 -114
  77. package/lib/protocol.js.map +1 -1
  78. package/lib/snapshot-url.d.ts +14 -0
  79. package/lib/snapshot-url.d.ts.map +1 -0
  80. package/lib/snapshot-url.js +26 -0
  81. package/lib/snapshot-url.js.map +1 -0
  82. package/lib/snapshot-url.spec.d.ts +7 -0
  83. package/lib/snapshot-url.spec.d.ts.map +1 -0
  84. package/lib/snapshot-url.spec.js +41 -0
  85. package/lib/snapshot-url.spec.js.map +1 -0
  86. package/lib/team-subscription-protocol.js +13 -13
  87. package/lib/team-subscription-protocol.js.map +1 -1
  88. package/lib/teams-projects-protocol.d.ts +15 -0
  89. package/lib/teams-projects-protocol.d.ts.map +1 -1
  90. package/lib/teams-projects-protocol.js +4 -15
  91. package/lib/teams-projects-protocol.js.map +1 -1
  92. package/lib/util/analytics.js +25 -32
  93. package/lib/util/analytics.js.map +1 -1
  94. package/lib/util/async-iterator.js +55 -133
  95. package/lib/util/async-iterator.js.map +1 -1
  96. package/lib/util/cancelable.js +17 -59
  97. package/lib/util/cancelable.js.map +1 -1
  98. package/lib/util/date-time.js +8 -8
  99. package/lib/util/date-time.js.map +1 -1
  100. package/lib/util/deferred.js +10 -12
  101. package/lib/util/deferred.js.map +1 -1
  102. package/lib/util/disposable.js +26 -39
  103. package/lib/util/disposable.js.map +1 -1
  104. package/lib/util/event.js +58 -74
  105. package/lib/util/event.js.map +1 -1
  106. package/lib/util/garbage-collected-cache.d.ts +1 -0
  107. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  108. package/lib/util/garbage-collected-cache.js +26 -46
  109. package/lib/util/garbage-collected-cache.js.map +1 -1
  110. package/lib/util/generate-workspace-id.d.ts +1 -1
  111. package/lib/util/generate-workspace-id.d.ts.map +1 -1
  112. package/lib/util/generate-workspace-id.js +28 -68
  113. package/lib/util/generate-workspace-id.js.map +1 -1
  114. package/lib/util/generate-workspace-id.spec.js +56 -78
  115. package/lib/util/generate-workspace-id.spec.js.map +1 -1
  116. package/lib/util/gitpod-cookie.d.ts +20 -0
  117. package/lib/util/gitpod-cookie.d.ts.map +1 -0
  118. package/lib/util/gitpod-cookie.js +44 -0
  119. package/lib/util/gitpod-cookie.js.map +1 -0
  120. package/lib/util/gitpod-host-url.d.ts +1 -1
  121. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  122. package/lib/util/gitpod-host-url.js +93 -103
  123. package/lib/util/gitpod-host-url.js.map +1 -1
  124. package/lib/util/gitpod-host-url.spec.js +87 -135
  125. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  126. package/lib/util/jaeger-client-types.d.ts +68 -0
  127. package/lib/util/jaeger-client-types.d.ts.map +1 -0
  128. package/lib/util/jaeger-client-types.js +8 -0
  129. package/lib/util/jaeger-client-types.js.map +1 -0
  130. package/lib/util/logging.d.ts +32 -32
  131. package/lib/util/logging.d.ts.map +1 -1
  132. package/lib/util/logging.js +50 -113
  133. package/lib/util/logging.js.map +1 -1
  134. package/lib/util/make-link.js +2 -2
  135. package/lib/util/make-link.js.map +1 -1
  136. package/lib/util/parse-workspace-id.d.ts +10 -0
  137. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  138. package/lib/util/parse-workspace-id.js +31 -7
  139. package/lib/util/parse-workspace-id.js.map +1 -1
  140. package/lib/util/parse-workspace-id.spec.d.ts +4 -0
  141. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  142. package/lib/util/parse-workspace-id.spec.js +123 -84
  143. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  144. package/lib/util/queue.js +16 -55
  145. package/lib/util/queue.js.map +1 -1
  146. package/lib/util/queue.spec.js +144 -288
  147. package/lib/util/queue.spec.js.map +1 -1
  148. package/lib/util/repeat.d.ts +15 -0
  149. package/lib/util/repeat.d.ts.map +1 -0
  150. package/lib/util/repeat.js +55 -0
  151. package/lib/util/repeat.js.map +1 -0
  152. package/lib/util/safe-promise.js +9 -12
  153. package/lib/util/safe-promise.js.map +1 -1
  154. package/lib/util/semaphore.js +15 -46
  155. package/lib/util/semaphore.js.map +1 -1
  156. package/lib/util/skip-if.js +6 -6
  157. package/lib/util/skip-if.js.map +1 -1
  158. package/lib/util/timeutil.js +16 -16
  159. package/lib/util/timeutil.js.map +1 -1
  160. package/lib/util/timeutil.spec.js +21 -24
  161. package/lib/util/timeutil.spec.js.map +1 -1
  162. package/lib/util/tracing.d.ts +51 -5
  163. package/lib/util/tracing.d.ts.map +1 -1
  164. package/lib/util/tracing.js +193 -62
  165. package/lib/util/tracing.js.map +1 -1
  166. package/lib/util/tracing.spec.d.ts +7 -0
  167. package/lib/util/tracing.spec.d.ts.map +1 -0
  168. package/lib/util/tracing.spec.js +121 -0
  169. package/lib/util/tracing.spec.js.map +1 -0
  170. package/lib/util/workspace-port-authentication.js +2 -2
  171. package/lib/util/workspace-port-authentication.js.map +1 -1
  172. package/lib/workspace-cluster.js +3 -3
  173. package/lib/workspace-cluster.js.map +1 -1
  174. package/lib/workspace-instance.d.ts +3 -2
  175. package/lib/workspace-instance.d.ts.map +1 -1
  176. package/lib/wsready.js +1 -1
  177. package/package.json +22 -13
  178. package/pkg-yarn.lock +12 -7
  179. package/provenance-bundle.jsonl +2 -0
  180. package/src/accounting-protocol.ts +1 -3
  181. package/src/admin-protocol.ts +9 -3
  182. package/src/analytics.ts +2 -0
  183. package/src/email-protocol.ts +1 -1
  184. package/src/gitpod-service.ts +27 -16
  185. package/src/ide-protocol.ts +92 -0
  186. package/src/index.ts +2 -0
  187. package/src/messaging/error.ts +2 -2
  188. package/src/messaging/node/connection.ts +1 -45
  189. package/src/oss-allowlist.ts +15 -0
  190. package/src/protocol.ts +17 -42
  191. package/src/snapshot-url.spec.ts +25 -0
  192. package/src/snapshot-url.ts +27 -0
  193. package/src/team-subscription-protocol.ts +1 -1
  194. package/src/teams-projects-protocol.ts +19 -1
  195. package/src/util/garbage-collected-cache.ts +7 -1
  196. package/src/util/generate-workspace-id.spec.ts +16 -0
  197. package/src/util/generate-workspace-id.ts +19 -2
  198. package/src/util/gitpod-cookie.ts +39 -0
  199. package/src/util/gitpod-host-url.ts +10 -10
  200. package/src/util/jaeger-client-types.ts +102 -0
  201. package/src/util/logging.ts +32 -32
  202. package/src/util/parse-workspace-id.spec.ts +21 -1
  203. package/src/util/parse-workspace-id.ts +32 -6
  204. package/src/util/repeat.ts +45 -0
  205. package/src/util/tracing.spec.ts +83 -0
  206. package/src/util/tracing.ts +180 -18
  207. package/src/workspace-instance.ts +9 -6
  208. package/src/wsready.ts +1 -1
  209. package/lib/util/repeater.d.ts +0 -22
  210. package/lib/util/repeater.d.ts.map +0 -1
  211. package/lib/util/repeater.js +0 -118
  212. package/lib/util/repeater.js.map +0 -1
  213. package/src/util/jaeger-client.d.ts +0 -105
  214. package/src/util/repeater.ts +0 -49
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
3
+ * Licensed under the GNU Affero General Public License (AGPL).
4
+ * See License-AGPL.txt in the project root for license information.
5
+ */
6
+ /**
7
+ * `IDEServer` provides a list of available IDEs.
8
+ */
9
+ export interface IDEServer {
10
+ /**
11
+ * Returns the IDE preferences.
12
+ */
13
+ getIDEOptions(): Promise<IDEOptions>;
14
+ }
15
+ export interface IDEOptions {
16
+ /**
17
+ * A list of available IDEs.
18
+ */
19
+ options: {
20
+ [key: string]: IDEOption;
21
+ };
22
+ /**
23
+ * The default (browser) IDE when the user has not specified one.
24
+ */
25
+ defaultIde: string;
26
+ /**
27
+ * The default desktop IDE when the user has not specified one.
28
+ */
29
+ defaultDesktopIde: string;
30
+ }
31
+ export interface IDEOption {
32
+ /**
33
+ * To ensure a stable order one can set an `orderKey`.
34
+ */
35
+ orderKey?: string;
36
+ /**
37
+ * Human readable title text of the IDE (plain text only).
38
+ */
39
+ title: string;
40
+ /**
41
+ * The type of the IDE, currently 'browser' or 'desktop'.
42
+ */
43
+ type: 'browser' | 'desktop';
44
+ /**
45
+ * The logo for the IDE. That could be a key in (see
46
+ * components/dashboard/src/images/ideLogos.ts) or a URL.
47
+ */
48
+ logo: string;
49
+ /**
50
+ * Text of an optional tooltip (plain text only).
51
+ */
52
+ tooltip?: string;
53
+ /**
54
+ * Text of an optional label next to the IDE option like “Insiders” (plain
55
+ * text only).
56
+ */
57
+ label?: string;
58
+ /**
59
+ * Notes to the IDE option that are renderd in the preferences when a user
60
+ * chooses this IDE.
61
+ */
62
+ notes?: string[];
63
+ /**
64
+ * If `true` this IDE option is not visible in the IDE preferences.
65
+ */
66
+ hidden?: boolean;
67
+ /**
68
+ * The image ref to the IDE image.
69
+ */
70
+ image: string;
71
+ /**
72
+ * When this is `true`, the tag of this image is resolved to the latest
73
+ * image digest regularly.
74
+ *
75
+ * This is useful if this image points to a tag like `nightly` that will be
76
+ * updated regularly. When `resolveImageDigest` is `true`, we make sure that
77
+ * we resolve the tag regularly to the most recent image version.
78
+ */
79
+ resolveImageDigest?: boolean;
80
+ }
81
+ //# sourceMappingURL=ide-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ide-protocol.d.ts","sourceRoot":"","sources":["../src/ide-protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,UAAU;IACvB;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IAEtC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,SAAS;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAE5B;;;MAGE;IACF,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB;;MAEE;IACF,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
4
+ * Licensed under the GNU Affero General Public License (AGPL).
5
+ * See License-AGPL.txt in the project root for license information.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=ide-protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ide-protocol.js","sourceRoot":"","sources":["../src/ide-protocol.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
package/lib/index.d.ts CHANGED
@@ -16,4 +16,6 @@ export * from './email-protocol';
16
16
  export * from './headless-workspace-log';
17
17
  export * from './context-url';
18
18
  export * from './teams-projects-protocol';
19
+ export * from './snapshot-url';
20
+ export * from './oss-allowlist';
19
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
package/lib/index.js CHANGED
@@ -28,4 +28,6 @@ __exportStar(require("./email-protocol"), exports);
28
28
  __exportStar(require("./headless-workspace-log"), exports);
29
29
  __exportStar(require("./context-url"), exports);
30
30
  __exportStar(require("./teams-projects-protocol"), exports);
31
+ __exportStar(require("./snapshot-url"), exports);
32
+ __exportStar(require("./oss-allowlist"), exports);
31
33
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,6CAA2B;AAC3B,mDAAiC;AACjC,oDAAkC;AAClC,+CAA6B;AAC7B,+CAA6B;AAC7B,qDAAmC;AACnC,uDAAqC;AACrC,+CAA6B;AAC7B,mDAAiC;AACjC,mDAAiC;AACjC,2DAAyC;AACzC,gDAA8B;AAC9B,4DAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,6CAA2B;AAC3B,mDAAiC;AACjC,oDAAkC;AAClC,+CAA6B;AAC7B,+CAA6B;AAC7B,qDAAmC;AACnC,uDAAqC;AACrC,+CAA6B;AAC7B,mDAAiC;AACjC,mDAAiC;AACjC,2DAAyC;AACzC,gDAA8B;AAC9B,4DAA0C;AAC1C,iDAA+B;AAC/B,kDAAgC"}
@@ -5,61 +5,15 @@
5
5
  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
6
6
  * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
7
7
  */
8
- var __extends = (this && this.__extends) || (function () {
9
- var extendStatics = function (d, b) {
10
- extendStatics = Object.setPrototypeOf ||
11
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
12
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
13
- return extendStatics(d, b);
14
- };
15
- return function (d, b) {
16
- extendStatics(d, b);
17
- function __() { this.constructor = d; }
18
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
19
- };
20
- })();
21
- var __read = (this && this.__read) || function (o, n) {
22
- var m = typeof Symbol === "function" && o[Symbol.iterator];
23
- if (!m) return o;
24
- var i = m.call(o), r, ar = [], e;
25
- try {
26
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
27
- }
28
- catch (error) { e = { error: error }; }
29
- finally {
30
- try {
31
- if (r && !r.done && (m = i["return"])) m.call(i);
32
- }
33
- finally { if (e) throw e.error; }
34
- }
35
- return ar;
36
- };
37
- var __spread = (this && this.__spread) || function () {
38
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
39
- return ar;
40
- };
41
- var __values = (this && this.__values) || function(o) {
42
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
43
- if (m) return m.call(o);
44
- if (o && typeof o.length === "number") return {
45
- next: function () {
46
- if (o && i >= o.length) o = void 0;
47
- return { value: o && o[i++], done: !o };
48
- }
49
- };
50
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
51
- };
52
8
  Object.defineProperty(exports, "__esModule", { value: true });
53
9
  exports.WebSocketConnectionProvider = void 0;
54
- var vscode_ws_jsonrpc_1 = require("vscode-ws-jsonrpc");
55
- var vscode_jsonrpc_1 = require("vscode-jsonrpc");
56
- var messageWriter_1 = require("vscode-jsonrpc/lib/messageWriter");
57
- var messageReader_1 = require("vscode-jsonrpc/lib/messageReader");
58
- var proxy_factory_1 = require("../proxy-factory");
59
- var reconnecting_websocket_1 = require("reconnecting-websocket");
60
- var WebSocketConnectionProvider = /** @class */ (function () {
61
- function WebSocketConnectionProvider() {
62
- }
10
+ const vscode_ws_jsonrpc_1 = require("vscode-ws-jsonrpc");
11
+ const vscode_jsonrpc_1 = require("vscode-jsonrpc");
12
+ const messageWriter_1 = require("vscode-jsonrpc/lib/messageWriter");
13
+ const messageReader_1 = require("vscode-jsonrpc/lib/messageReader");
14
+ const proxy_factory_1 = require("../proxy-factory");
15
+ const reconnecting_websocket_1 = require("reconnecting-websocket");
16
+ class WebSocketConnectionProvider {
63
17
  /**
64
18
  * Create a proxy object to remote interface of T type
65
19
  * over a web socket connection for the given path.
@@ -67,16 +21,15 @@ var WebSocketConnectionProvider = /** @class */ (function () {
67
21
  * An optional target can be provided to handle
68
22
  * notifications and requests from a remote side.
69
23
  */
70
- WebSocketConnectionProvider.prototype.createProxy = function (path, target, options) {
71
- var _this = this;
72
- var factory = new proxy_factory_1.JsonRpcProxyFactory(target);
73
- var startListening = function (path) {
74
- var socket = _this.listen({
75
- path: path,
76
- onConnection: function (c) { return factory.listen(c); },
24
+ createProxy(path, target, options) {
25
+ const factory = new proxy_factory_1.JsonRpcProxyFactory(target);
26
+ const startListening = (path) => {
27
+ const socket = this.listen({
28
+ path,
29
+ onConnection: c => factory.listen(c),
77
30
  }, {
78
- onTransportDidClose: function () { return factory.fireConnectionClosed(); },
79
- onTransportDidOpen: function () { return factory.fireConnectionOpened(); },
31
+ onTransportDidClose: () => factory.fireConnectionClosed(),
32
+ onTransportDidOpen: () => factory.fireConnectionOpened(),
80
33
  }, options);
81
34
  if (options === null || options === void 0 ? void 0 : options.onListening) {
82
35
  options.onListening(socket);
@@ -86,38 +39,38 @@ var WebSocketConnectionProvider = /** @class */ (function () {
86
39
  startListening(path);
87
40
  }
88
41
  else {
89
- path.then(function (path) { return startListening(path); });
42
+ path.then(path => startListening(path));
90
43
  }
91
44
  return factory.createProxy();
92
- };
45
+ }
93
46
  /**
94
47
  * Install a connection handler for the given path.
95
48
  */
96
- WebSocketConnectionProvider.prototype.listen = function (handler, eventHandler, options) {
97
- var url = handler.path;
98
- var webSocket = this.createWebSocket(url);
99
- var logger = this.createLogger();
49
+ listen(handler, eventHandler, options) {
50
+ const url = handler.path;
51
+ const webSocket = this.createWebSocket(url);
52
+ const logger = this.createLogger();
100
53
  if (options && options.onerror) {
101
- var onerror_1 = options.onerror;
102
- webSocket.addEventListener('error', function (event) {
103
- onerror_1(event);
54
+ const onerror = options.onerror;
55
+ webSocket.addEventListener('error', (event) => {
56
+ onerror(event);
104
57
  });
105
58
  }
106
59
  else {
107
- webSocket.addEventListener('error', function (error) {
60
+ webSocket.addEventListener('error', (error) => {
108
61
  logger.error(JSON.stringify(error));
109
62
  });
110
63
  }
111
64
  doListen(webSocket, handler, eventHandler, logger);
112
65
  return webSocket;
113
- };
114
- WebSocketConnectionProvider.prototype.createLogger = function () {
66
+ }
67
+ createLogger() {
115
68
  return new vscode_ws_jsonrpc_1.ConsoleLogger();
116
- };
69
+ }
117
70
  /**
118
71
  * Creates a web socket for the given url
119
72
  */
120
- WebSocketConnectionProvider.prototype.createWebSocket = function (url) {
73
+ createWebSocket(url) {
121
74
  return new reconnecting_websocket_1.default(url, undefined, {
122
75
  maxReconnectionDelay: 10000,
123
76
  minReconnectionDelay: 1000,
@@ -126,9 +79,8 @@ var WebSocketConnectionProvider = /** @class */ (function () {
126
79
  debug: false,
127
80
  WebSocket: WebSocket
128
81
  });
129
- };
130
- return WebSocketConnectionProvider;
131
- }());
82
+ }
83
+ }
132
84
  exports.WebSocketConnectionProvider = WebSocketConnectionProvider;
133
85
  // The following was extracted from vscode-ws-jsonrpc to make these changes:
134
86
  // - switch from WebSocket to ReconnectingWebSocket
@@ -136,9 +88,9 @@ exports.WebSocketConnectionProvider = WebSocketConnectionProvider;
136
88
  // - WebSocketMessageWriter: buffer and re-try messages instead of throwing an error immidiately
137
89
  // - WebSocketMessageReader: don't close MessageConnection on 'socket.onclose'
138
90
  function doListen(resocket, handler, eventHandler, logger) {
139
- resocket.addEventListener("close", function () { return eventHandler.onTransportDidClose(); });
140
- var alreadyOpened = false;
141
- resocket.onopen = function () {
91
+ resocket.addEventListener("close", () => eventHandler.onTransportDidClose());
92
+ let alreadyOpened = false;
93
+ resocket.onopen = () => {
142
94
  // trigerr "open" every time we re-open the underlying websocket
143
95
  eventHandler.onTransportDidOpen();
144
96
  // make sure we're only ever creating one MessageConnection, irregardless of how many times we have to re-open the underlying (reconnecting) websocket
@@ -146,39 +98,37 @@ function doListen(resocket, handler, eventHandler, logger) {
146
98
  return;
147
99
  }
148
100
  alreadyOpened = true;
149
- var connection = createWebSocketConnection(resocket, logger);
101
+ const connection = createWebSocketConnection(resocket, logger);
150
102
  handler.onConnection(connection);
151
103
  };
152
104
  }
153
105
  function createWebSocketConnection(resocket, logger) {
154
- var socket = vscode_ws_jsonrpc_1.toSocket(resocket);
155
- var messageReader = new NonClosingWebSocketMessageReader(socket);
156
- var messageWriter = new BufferingWebSocketMessageWriter(resocket, logger);
157
- var connection = vscode_jsonrpc_1.createMessageConnection(messageReader, messageWriter, logger);
158
- connection.onClose(function () { return connection.dispose(); });
106
+ const socket = (0, vscode_ws_jsonrpc_1.toSocket)(resocket);
107
+ const messageReader = new NonClosingWebSocketMessageReader(socket);
108
+ const messageWriter = new BufferingWebSocketMessageWriter(resocket, logger);
109
+ const connection = (0, vscode_jsonrpc_1.createMessageConnection)(messageReader, messageWriter, logger);
110
+ connection.onClose(() => connection.dispose());
159
111
  return connection;
160
112
  }
161
113
  /**
162
114
  * This takes vscode-ws-jsonrpc/lib/socket/writer/WebSocketMessageWriter and adds a buffer
163
115
  */
164
- var BufferingWebSocketMessageWriter = /** @class */ (function (_super) {
165
- __extends(BufferingWebSocketMessageWriter, _super);
166
- function BufferingWebSocketMessageWriter(socket, logger) {
167
- var _this = _super.call(this) || this;
168
- _this.errorCount = 0;
169
- _this.buffer = [];
170
- _this.socket = socket;
171
- _this.logger = logger;
172
- socket.addEventListener("open", function (event) { return _this.flushBuffer(); });
173
- return _this;
116
+ class BufferingWebSocketMessageWriter extends messageWriter_1.AbstractMessageWriter {
117
+ constructor(socket, logger) {
118
+ super();
119
+ this.errorCount = 0;
120
+ this.buffer = [];
121
+ this.socket = socket;
122
+ this.logger = logger;
123
+ socket.addEventListener("open", (event) => this.flushBuffer());
174
124
  }
175
- BufferingWebSocketMessageWriter.prototype.write = function (msg) {
125
+ write(msg) {
176
126
  if (this.socket.readyState !== reconnecting_websocket_1.default.OPEN) {
177
127
  this.bufferMsg(msg);
178
128
  return;
179
129
  }
180
130
  try {
181
- var content = JSON.stringify(msg);
131
+ const content = JSON.stringify(msg);
182
132
  this.socket.send(content);
183
133
  }
184
134
  catch (e) {
@@ -186,104 +136,89 @@ var BufferingWebSocketMessageWriter = /** @class */ (function (_super) {
186
136
  this.fireError(e, msg, this.errorCount);
187
137
  this.bufferMsg(msg);
188
138
  }
189
- };
190
- BufferingWebSocketMessageWriter.prototype.flushBuffer = function () {
191
- var e_1, _a;
139
+ }
140
+ flushBuffer() {
192
141
  if (this.buffer.length === 0) {
193
142
  return;
194
143
  }
195
- var buffer = __spread(this.buffer);
144
+ const buffer = [...this.buffer];
196
145
  this.buffer = [];
197
- try {
198
- for (var buffer_1 = __values(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) {
199
- var msg = buffer_1_1.value;
200
- this.write(msg);
201
- }
202
- }
203
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
204
- finally {
205
- try {
206
- if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1);
207
- }
208
- finally { if (e_1) throw e_1.error; }
146
+ for (const msg of buffer) {
147
+ this.write(msg);
209
148
  }
210
149
  //this.logger.info(`flushed buffer (${this.buffer.length})`)
211
- };
212
- BufferingWebSocketMessageWriter.prototype.bufferMsg = function (msg) {
150
+ }
151
+ bufferMsg(msg) {
213
152
  this.buffer.push(msg);
214
153
  //this.logger.info(`buffered message (${this.buffer.length})`);
215
- };
216
- return BufferingWebSocketMessageWriter;
217
- }(messageWriter_1.AbstractMessageWriter));
154
+ }
155
+ }
218
156
  /**
219
157
  * This takes vscode-ws-jsonrpc/lib/socket/reader/WebSocketMessageReader and removes the "onClose -> fireClose" connection
220
158
  */
221
- var NonClosingWebSocketMessageReader = /** @class */ (function (_super) {
222
- __extends(NonClosingWebSocketMessageReader, _super);
223
- function NonClosingWebSocketMessageReader(socket) {
224
- var _this = _super.call(this) || this;
225
- _this.events = [];
226
- _this.state = 'initial';
227
- _this.callback = function () { };
228
- _this.socket = socket;
229
- _this.socket.onMessage(function (message) { return _this.readMessage(message); });
230
- _this.socket.onError(function (error) { return _this.fireError(error); });
231
- _this.socket.onClose(function (code, reason) {
159
+ class NonClosingWebSocketMessageReader extends messageReader_1.AbstractMessageReader {
160
+ constructor(socket) {
161
+ super();
162
+ this.events = [];
163
+ this.state = 'initial';
164
+ this.callback = () => { };
165
+ this.socket = socket;
166
+ this.socket.onMessage(message => this.readMessage(message));
167
+ this.socket.onError(error => this.fireError(error));
168
+ this.socket.onClose((code, reason) => {
232
169
  if (code !== 1000) {
233
- var error = {
170
+ const error = {
234
171
  name: '' + code,
235
- message: "Error during socket reconnect: code = " + code + ", reason = " + reason
172
+ message: `Error during socket reconnect: code = ${code}, reason = ${reason}`
236
173
  };
237
- _this.fireError(error);
174
+ this.fireError(error);
238
175
  }
239
176
  // this.fireClose(); // <-- reason for this class to be copied over
240
177
  });
241
- return _this;
242
178
  }
243
- NonClosingWebSocketMessageReader.prototype.listen = function (callback) {
179
+ listen(callback) {
244
180
  if (this.state === 'initial') {
245
181
  this.state = 'listening';
246
182
  this.callback = callback;
247
183
  while (this.events.length !== 0) {
248
- var event_1 = this.events.pop();
249
- if (event_1.message) {
250
- this.readMessage(event_1.message);
184
+ const event = this.events.pop();
185
+ if (event.message) {
186
+ this.readMessage(event.message);
251
187
  }
252
- else if (event_1.error) {
253
- this.fireError(event_1.error);
188
+ else if (event.error) {
189
+ this.fireError(event.error);
254
190
  }
255
191
  else {
256
192
  this.fireClose();
257
193
  }
258
194
  }
259
195
  }
260
- };
261
- NonClosingWebSocketMessageReader.prototype.readMessage = function (message) {
196
+ }
197
+ readMessage(message) {
262
198
  if (this.state === 'initial') {
263
- this.events.splice(0, 0, { message: message });
199
+ this.events.splice(0, 0, { message });
264
200
  }
265
201
  else if (this.state === 'listening') {
266
- var data = JSON.parse(message);
202
+ const data = JSON.parse(message);
267
203
  this.callback(data);
268
204
  }
269
- };
270
- NonClosingWebSocketMessageReader.prototype.fireError = function (error) {
205
+ }
206
+ fireError(error) {
271
207
  if (this.state === 'initial') {
272
- this.events.splice(0, 0, { error: error });
208
+ this.events.splice(0, 0, { error });
273
209
  }
274
210
  else if (this.state === 'listening') {
275
- _super.prototype.fireError.call(this, error);
211
+ super.fireError(error);
276
212
  }
277
- };
278
- NonClosingWebSocketMessageReader.prototype.fireClose = function () {
213
+ }
214
+ fireClose() {
279
215
  if (this.state === 'initial') {
280
216
  this.events.splice(0, 0, {});
281
217
  }
282
218
  else if (this.state === 'listening') {
283
- _super.prototype.fireClose.call(this);
219
+ super.fireClose();
284
220
  }
285
221
  this.state = 'closed';
286
- };
287
- return NonClosingWebSocketMessageReader;
288
- }(messageReader_1.AbstractMessageReader));
222
+ }
223
+ }
289
224
  //# sourceMappingURL=connection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/messaging/browser/connection.ts"],"names":[],"mappings":"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"}