@gitpod/gitpod-protocol 0.1.5-patch-2-fork.0 → 0.1.5-pavel-9469.26

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 (348) hide show
  1. package/data/gitpod-schema.json +188 -26
  2. package/lib/accounting-protocol.d.ts +10 -13
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +31 -46
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +27 -4
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js +15 -0
  9. package/lib/admin-protocol.js.map +1 -1
  10. package/lib/analytics.d.ts +44 -0
  11. package/lib/analytics.d.ts.map +1 -0
  12. package/lib/analytics.js +10 -0
  13. package/lib/analytics.js.map +1 -0
  14. package/lib/auth.d.ts.map +1 -1
  15. package/lib/context-url.d.ts +31 -0
  16. package/lib/context-url.d.ts.map +1 -0
  17. package/lib/context-url.js +102 -0
  18. package/lib/context-url.js.map +1 -0
  19. package/lib/context-url.spec.d.ts +14 -0
  20. package/lib/context-url.spec.d.ts.map +1 -0
  21. package/lib/context-url.spec.js +109 -0
  22. package/lib/context-url.spec.js.map +1 -0
  23. package/lib/email-protocol.d.ts +1 -2
  24. package/lib/email-protocol.d.ts.map +1 -1
  25. package/lib/email-protocol.js +4 -4
  26. package/lib/email-protocol.js.map +1 -1
  27. package/lib/encryption/container-module.d.ts.map +1 -1
  28. package/lib/encryption/container-module.js +5 -4
  29. package/lib/encryption/container-module.js.map +1 -1
  30. package/lib/encryption/encryption-engine.d.ts.map +1 -1
  31. package/lib/encryption/encryption-engine.js +25 -26
  32. package/lib/encryption/encryption-engine.js.map +1 -1
  33. package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
  34. package/lib/encryption/encryption-engine.spec.js +29 -37
  35. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  36. package/lib/encryption/encryption-service.d.ts.map +1 -1
  37. package/lib/encryption/encryption-service.js +30 -44
  38. package/lib/encryption/encryption-service.js.map +1 -1
  39. package/lib/encryption/key-provider.d.ts.map +1 -1
  40. package/lib/encryption/key-provider.js +31 -38
  41. package/lib/encryption/key-provider.js.map +1 -1
  42. package/lib/env.d.ts +0 -6
  43. package/lib/env.d.ts.map +1 -1
  44. package/lib/env.js +7 -27
  45. package/lib/env.js.map +1 -1
  46. package/lib/gitpod-file-parser.d.ts.map +1 -1
  47. package/lib/gitpod-file-parser.js +26 -42
  48. package/lib/gitpod-file-parser.js.map +1 -1
  49. package/lib/gitpod-file-parser.spec.js +145 -142
  50. package/lib/gitpod-file-parser.spec.js.map +1 -1
  51. package/lib/gitpod-service.d.ts +139 -40
  52. package/lib/gitpod-service.d.ts.map +1 -1
  53. package/lib/gitpod-service.js +186 -289
  54. package/lib/gitpod-service.js.map +1 -1
  55. package/lib/headless-workspace-log.d.ts +9 -11
  56. package/lib/headless-workspace-log.d.ts.map +1 -1
  57. package/lib/headless-workspace-log.js +6 -8
  58. package/lib/headless-workspace-log.js.map +1 -1
  59. package/lib/ide-frontend-service.d.ts +1 -1
  60. package/lib/ide-protocol.d.ts +105 -0
  61. package/lib/ide-protocol.d.ts.map +1 -0
  62. package/lib/{util/without.js → ide-protocol.js} +2 -2
  63. package/lib/ide-protocol.js.map +1 -0
  64. package/lib/index.d.ts +16 -10
  65. package/lib/index.d.ts.map +1 -1
  66. package/lib/index.js +7 -1
  67. package/lib/index.js.map +1 -1
  68. package/lib/installation-admin-protocol.d.ts +27 -0
  69. package/lib/installation-admin-protocol.d.ts.map +1 -0
  70. package/lib/installation-admin-protocol.js +30 -0
  71. package/lib/installation-admin-protocol.js.map +1 -0
  72. package/lib/license-protocol.d.ts.map +1 -1
  73. package/lib/license-protocol.js.map +1 -1
  74. package/lib/messaging/browser/connection.d.ts +5 -3
  75. package/lib/messaging/browser/connection.d.ts.map +1 -1
  76. package/lib/messaging/browser/connection.js +184 -34
  77. package/lib/messaging/browser/connection.js.map +1 -1
  78. package/lib/messaging/browser/window-connection.d.ts +4 -4
  79. package/lib/messaging/browser/window-connection.d.ts.map +1 -1
  80. package/lib/messaging/browser/window-connection.js +42 -59
  81. package/lib/messaging/browser/window-connection.js.map +1 -1
  82. package/lib/messaging/client-call-metrics.d.ts +35 -0
  83. package/lib/messaging/client-call-metrics.d.ts.map +1 -0
  84. package/lib/messaging/client-call-metrics.js +83 -0
  85. package/lib/messaging/client-call-metrics.js.map +1 -0
  86. package/lib/messaging/error.d.ts +4 -1
  87. package/lib/messaging/error.d.ts.map +1 -1
  88. package/lib/messaging/error.js +8 -2
  89. package/lib/messaging/error.js.map +1 -1
  90. package/lib/messaging/handler.d.ts +10 -0
  91. package/lib/messaging/handler.d.ts.map +1 -1
  92. package/lib/messaging/handler.js +1 -1
  93. package/lib/messaging/node/connection.d.ts +1 -17
  94. package/lib/messaging/node/connection.d.ts.map +1 -1
  95. package/lib/messaging/node/connection.js +24 -60
  96. package/lib/messaging/node/connection.js.map +1 -1
  97. package/lib/messaging/proxy-factory.d.ts +3 -1
  98. package/lib/messaging/proxy-factory.d.ts.map +1 -1
  99. package/lib/messaging/proxy-factory.js +75 -162
  100. package/lib/messaging/proxy-factory.js.map +1 -1
  101. package/lib/oss-allowlist.d.ts +14 -0
  102. package/lib/oss-allowlist.d.ts.map +1 -0
  103. package/lib/oss-allowlist.js +8 -0
  104. package/lib/oss-allowlist.js.map +1 -0
  105. package/lib/payment-protocol.d.ts.map +1 -1
  106. package/lib/payment-protocol.js +1 -1
  107. package/lib/payment-protocol.js.map +1 -1
  108. package/lib/permission.d.ts +10 -3
  109. package/lib/permission.d.ts.map +1 -1
  110. package/lib/permission.js +41 -31
  111. package/lib/permission.js.map +1 -1
  112. package/lib/plans.d.ts +210 -0
  113. package/lib/plans.d.ts.map +1 -0
  114. package/lib/plans.js +605 -0
  115. package/lib/plans.js.map +1 -0
  116. package/lib/protocol.d.ts +190 -82
  117. package/lib/protocol.d.ts.map +1 -1
  118. package/lib/protocol.js +216 -200
  119. package/lib/protocol.js.map +1 -1
  120. package/lib/snapshot-url.d.ts +14 -0
  121. package/lib/snapshot-url.d.ts.map +1 -0
  122. package/lib/snapshot-url.js +26 -0
  123. package/lib/snapshot-url.js.map +1 -0
  124. package/{src/util/without.ts → lib/snapshot-url.spec.d.ts} +2 -3
  125. package/lib/snapshot-url.spec.d.ts.map +1 -0
  126. package/lib/snapshot-url.spec.js +41 -0
  127. package/lib/snapshot-url.spec.js.map +1 -0
  128. package/lib/team-subscription-protocol.d.ts +7 -5
  129. package/lib/team-subscription-protocol.d.ts.map +1 -1
  130. package/lib/team-subscription-protocol.js +19 -16
  131. package/lib/team-subscription-protocol.js.map +1 -1
  132. package/lib/teams-projects-protocol.d.ts +117 -0
  133. package/lib/teams-projects-protocol.d.ts.map +1 -0
  134. package/lib/teams-projects-protocol.js +30 -0
  135. package/lib/teams-projects-protocol.js.map +1 -0
  136. package/lib/typings/globals.d.ts +2 -2
  137. package/lib/typings/globals.d.ts.map +1 -1
  138. package/lib/util/analytics.d.ts +8 -0
  139. package/lib/util/analytics.d.ts.map +1 -0
  140. package/lib/util/analytics.js +88 -0
  141. package/lib/util/analytics.js.map +1 -0
  142. package/lib/util/async-iterator.d.ts.map +1 -1
  143. package/lib/util/async-iterator.js +57 -135
  144. package/lib/util/async-iterator.js.map +1 -1
  145. package/lib/util/cancelable.js +17 -59
  146. package/lib/util/cancelable.js.map +1 -1
  147. package/lib/util/date-time.js +11 -11
  148. package/lib/util/date-time.js.map +1 -1
  149. package/lib/util/deferred.js +10 -12
  150. package/lib/util/deferred.js.map +1 -1
  151. package/lib/util/disposable.d.ts.map +1 -1
  152. package/lib/util/disposable.js +27 -40
  153. package/lib/util/disposable.js.map +1 -1
  154. package/lib/util/event.d.ts.map +1 -1
  155. package/lib/util/event.js +63 -77
  156. package/lib/util/event.js.map +1 -1
  157. package/lib/util/garbage-collected-cache.d.ts +1 -0
  158. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  159. package/lib/util/garbage-collected-cache.js +27 -47
  160. package/lib/util/garbage-collected-cache.js.map +1 -1
  161. package/lib/util/generate-workspace-id.d.ts +6 -1
  162. package/lib/util/generate-workspace-id.d.ts.map +1 -1
  163. package/lib/util/generate-workspace-id.js +469 -502
  164. package/lib/util/generate-workspace-id.js.map +1 -1
  165. package/lib/util/generate-workspace-id.spec.js +68 -78
  166. package/lib/util/generate-workspace-id.spec.js.map +1 -1
  167. package/lib/util/gitpod-cookie.d.ts +20 -0
  168. package/lib/util/gitpod-cookie.d.ts.map +1 -0
  169. package/lib/util/gitpod-cookie.js +41 -0
  170. package/lib/util/gitpod-cookie.js.map +1 -0
  171. package/lib/util/gitpod-host-url.d.ts +1 -2
  172. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  173. package/lib/util/gitpod-host-url.js +108 -109
  174. package/lib/util/gitpod-host-url.js.map +1 -1
  175. package/lib/util/gitpod-host-url.spec.d.ts +7 -1
  176. package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
  177. package/lib/util/gitpod-host-url.spec.js +113 -31
  178. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  179. package/lib/util/grpc.d.ts +15 -0
  180. package/lib/util/grpc.d.ts.map +1 -0
  181. package/lib/util/grpc.js +18 -0
  182. package/lib/util/grpc.js.map +1 -0
  183. package/lib/util/jaeger-client-types.d.ts +68 -0
  184. package/lib/util/jaeger-client-types.d.ts.map +1 -0
  185. package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
  186. package/lib/util/jaeger-client-types.js.map +1 -0
  187. package/lib/util/logging.d.ts +49 -33
  188. package/lib/util/logging.d.ts.map +1 -1
  189. package/lib/util/logging.js +125 -129
  190. package/lib/util/logging.js.map +1 -1
  191. package/lib/util/make-link.js +5 -5
  192. package/lib/util/make-link.js.map +1 -1
  193. package/lib/util/parse-workspace-id.d.ts +10 -0
  194. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  195. package/lib/util/parse-workspace-id.js +31 -7
  196. package/lib/util/parse-workspace-id.js.map +1 -1
  197. package/lib/util/parse-workspace-id.spec.d.ts +4 -0
  198. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  199. package/lib/util/parse-workspace-id.spec.js +123 -84
  200. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  201. package/lib/util/queue.js +16 -55
  202. package/lib/util/queue.js.map +1 -1
  203. package/lib/util/queue.spec.js +147 -288
  204. package/lib/util/queue.spec.js.map +1 -1
  205. package/lib/util/repeat.d.ts +15 -0
  206. package/lib/util/repeat.d.ts.map +1 -0
  207. package/lib/util/repeat.js +55 -0
  208. package/lib/util/repeat.js.map +1 -0
  209. package/lib/util/semaphore.d.ts.map +1 -1
  210. package/lib/util/semaphore.js +15 -46
  211. package/lib/util/semaphore.js.map +1 -1
  212. package/lib/util/skip-if.d.ts.map +1 -1
  213. package/lib/util/skip-if.js +6 -6
  214. package/lib/util/skip-if.js.map +1 -1
  215. package/lib/util/timeutil.d.ts.map +1 -1
  216. package/lib/util/timeutil.js +28 -16
  217. package/lib/util/timeutil.js.map +1 -1
  218. package/lib/util/timeutil.spec.d.ts.map +1 -1
  219. package/lib/util/timeutil.spec.js +21 -24
  220. package/lib/util/timeutil.spec.js.map +1 -1
  221. package/lib/util/tracing.d.ts +52 -6
  222. package/lib/util/tracing.d.ts.map +1 -1
  223. package/lib/util/tracing.js +197 -64
  224. package/lib/util/tracing.js.map +1 -1
  225. package/lib/util/tracing.spec.d.ts +7 -0
  226. package/lib/util/tracing.spec.d.ts.map +1 -0
  227. package/lib/util/tracing.spec.js +121 -0
  228. package/lib/util/tracing.spec.js.map +1 -0
  229. package/lib/util/workspace-port-authentication.d.ts +7 -7
  230. package/lib/util/workspace-port-authentication.d.ts.map +1 -1
  231. package/lib/util/workspace-port-authentication.js +10 -12
  232. package/lib/util/workspace-port-authentication.js.map +1 -1
  233. package/lib/workspace-cluster.d.ts +76 -0
  234. package/lib/workspace-cluster.d.ts.map +1 -0
  235. package/lib/workspace-cluster.js +31 -0
  236. package/lib/workspace-cluster.js.map +1 -0
  237. package/lib/workspace-instance.d.ts +31 -4
  238. package/lib/workspace-instance.d.ts.map +1 -1
  239. package/lib/wsready.d.ts +1 -1
  240. package/lib/wsready.d.ts.map +1 -1
  241. package/lib/wsready.js +2 -2
  242. package/package.json +31 -17
  243. package/pkg-yarn.lock +17 -9
  244. package/provenance-bundle.jsonl +2 -0
  245. package/src/accounting-protocol.ts +53 -57
  246. package/src/admin-protocol.ts +64 -19
  247. package/src/analytics.ts +52 -0
  248. package/src/auth.ts +2 -2
  249. package/src/context-url.spec.ts +67 -0
  250. package/src/context-url.ts +109 -0
  251. package/src/email-protocol.ts +5 -7
  252. package/src/encryption/container-module.ts +2 -3
  253. package/src/encryption/encryption-engine.spec.ts +9 -8
  254. package/src/encryption/encryption-engine.ts +14 -14
  255. package/src/encryption/encryption-service.ts +4 -5
  256. package/src/encryption/key-provider.ts +16 -19
  257. package/src/env.ts +0 -22
  258. package/src/gitpod-file-parser.spec.ts +55 -61
  259. package/src/gitpod-file-parser.ts +16 -17
  260. package/src/gitpod-service.ts +281 -118
  261. package/src/headless-workspace-log.ts +12 -14
  262. package/src/ide-frontend-service.ts +2 -2
  263. package/src/ide-protocol.ts +119 -0
  264. package/src/index.ts +16 -10
  265. package/src/installation-admin-protocol.ts +42 -0
  266. package/src/license-protocol.ts +5 -6
  267. package/src/messaging/browser/connection.ts +197 -18
  268. package/src/messaging/browser/window-connection.ts +39 -29
  269. package/src/messaging/client-call-metrics.ts +96 -0
  270. package/src/messaging/error.ts +12 -5
  271. package/src/messaging/handler.ts +13 -1
  272. package/src/messaging/node/connection.ts +23 -70
  273. package/src/messaging/proxy-factory.ts +35 -34
  274. package/src/oss-allowlist.ts +15 -0
  275. package/src/payment-protocol.ts +2 -2
  276. package/src/permission.ts +42 -33
  277. package/src/plans.ts +679 -0
  278. package/src/protocol.ts +441 -275
  279. package/src/snapshot-url.spec.ts +27 -0
  280. package/src/snapshot-url.ts +27 -0
  281. package/src/team-subscription-protocol.ts +36 -24
  282. package/src/teams-projects-protocol.ts +152 -0
  283. package/src/typings/globals.ts +4 -4
  284. package/src/util/analytics.ts +109 -0
  285. package/src/util/async-iterator.ts +4 -5
  286. package/src/util/cancelable.ts +3 -3
  287. package/src/util/date-time.ts +8 -8
  288. package/src/util/deferred.ts +6 -6
  289. package/src/util/disposable.ts +3 -6
  290. package/src/util/event.ts +9 -11
  291. package/src/util/garbage-collected-cache.ts +11 -8
  292. package/src/util/generate-workspace-id.spec.ts +37 -10
  293. package/src/util/generate-workspace-id.ts +464 -438
  294. package/src/util/gitpod-cookie.ts +38 -0
  295. package/src/util/gitpod-host-url.spec.ts +59 -8
  296. package/src/util/gitpod-host-url.ts +52 -40
  297. package/src/util/grpc.ts +15 -0
  298. package/src/util/jaeger-client-types.ts +102 -0
  299. package/src/util/logging.ts +145 -72
  300. package/src/util/make-link.ts +6 -7
  301. package/src/util/parse-workspace-id.spec.ts +37 -8
  302. package/src/util/parse-workspace-id.ts +32 -7
  303. package/src/util/queue.spec.ts +28 -26
  304. package/src/util/repeat.ts +45 -0
  305. package/src/util/semaphore.ts +6 -8
  306. package/src/util/skip-if.ts +10 -7
  307. package/src/util/timeutil.spec.ts +14 -15
  308. package/src/util/timeutil.ts +19 -15
  309. package/src/util/tracing.spec.ts +88 -0
  310. package/src/util/tracing.ts +200 -31
  311. package/src/util/workspace-port-authentication.ts +10 -13
  312. package/src/workspace-cluster.ts +107 -0
  313. package/src/workspace-instance.ts +74 -30
  314. package/src/wsready.ts +3 -3
  315. package/data/builtin-theia-plugins.json +0 -372
  316. package/lib/messaging/connection-error-handler.d.ts +0 -27
  317. package/lib/messaging/connection-error-handler.d.ts.map +0 -1
  318. package/lib/messaging/connection-error-handler.js +0 -46
  319. package/lib/messaging/connection-error-handler.js.map +0 -1
  320. package/lib/theia-plugins.d.ts +0 -11
  321. package/lib/theia-plugins.d.ts.map +0 -1
  322. package/lib/theia-plugins.js.map +0 -1
  323. package/lib/util/context-url.d.ts +0 -13
  324. package/lib/util/context-url.d.ts.map +0 -1
  325. package/lib/util/context-url.js +0 -26
  326. package/lib/util/context-url.js.map +0 -1
  327. package/lib/util/context-url.spec.d.ts +0 -10
  328. package/lib/util/context-url.spec.d.ts.map +0 -1
  329. package/lib/util/context-url.spec.js +0 -52
  330. package/lib/util/context-url.spec.js.map +0 -1
  331. package/lib/util/repeater.d.ts +0 -22
  332. package/lib/util/repeater.d.ts.map +0 -1
  333. package/lib/util/repeater.js +0 -118
  334. package/lib/util/repeater.js.map +0 -1
  335. package/lib/util/safe-promise.d.ts +0 -11
  336. package/lib/util/safe-promise.d.ts.map +0 -1
  337. package/lib/util/safe-promise.js +0 -34
  338. package/lib/util/safe-promise.js.map +0 -1
  339. package/lib/util/without.d.ts +0 -7
  340. package/lib/util/without.d.ts.map +0 -1
  341. package/lib/util/without.js.map +0 -1
  342. package/src/messaging/connection-error-handler.ts +0 -62
  343. package/src/theia-plugins.ts +0 -11
  344. package/src/util/context-url.spec.ts +0 -25
  345. package/src/util/context-url.ts +0 -23
  346. package/src/util/jaeger-client.d.ts +0 -105
  347. package/src/util/repeater.ts +0 -49
  348. package/src/util/safe-promise.ts +0 -26
@@ -13,227 +13,135 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
13
13
  step((generator = generator.apply(thisArg, _arguments || [])).next());
14
14
  });
15
15
  };
16
- var __generator = (this && this.__generator) || function (thisArg, body) {
17
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
18
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
19
- function verb(n) { return function (v) { return step([n, v]); }; }
20
- function step(op) {
21
- if (f) throw new TypeError("Generator is already executing.");
22
- while (_) try {
23
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
24
- if (y = 0, t) op = [op[0] & 2, t.value];
25
- switch (op[0]) {
26
- case 0: case 1: t = op; break;
27
- case 4: _.label++; return { value: op[1], done: false };
28
- case 5: _.label++; y = op[1]; op = [0]; continue;
29
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
30
- default:
31
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
32
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
33
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
34
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
35
- if (t[2]) _.ops.pop();
36
- _.trys.pop(); continue;
37
- }
38
- op = body.call(thisArg, _);
39
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
40
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
41
- }
42
- };
43
- var __values = (this && this.__values) || function(o) {
44
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
45
- if (m) return m.call(o);
46
- if (o && typeof o.length === "number") return {
47
- next: function () {
48
- if (o && i >= o.length) o = void 0;
49
- return { value: o && o[i++], done: !o };
50
- }
51
- };
52
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
53
- };
54
16
  Object.defineProperty(exports, "__esModule", { value: true });
55
- exports.createGitpodService = exports.GitpodServiceImpl = exports.WorkspaceInstanceUpdateListener = exports.GitpodCompositeClient = exports.GitpodServerProxy = exports.GitpodServerPath = exports.createServerMock = exports.createServiceMock = exports.WorkspaceTimeoutValues = exports.GitpodServer = void 0;
56
- var vscode_jsonrpc_1 = require("vscode-jsonrpc");
57
- var gitpod_host_url_1 = require("./util/gitpod-host-url");
58
- var connection_1 = require("./messaging/browser/connection");
59
- var event_1 = require("./util/event");
60
- exports.GitpodServer = Symbol('GitpodServer');
61
- exports.WorkspaceTimeoutValues = ["30m", "60m", "180m"];
62
- exports.createServiceMock = function (methods) {
63
- return new GitpodServiceImpl(exports.createServerMock(methods));
17
+ exports.createGitpodService = exports.GitpodServiceImpl = exports.WorkspaceInstanceUpdateListener = exports.GitpodCompositeClient = exports.GitpodServerProxy = exports.GitpodServerPath = exports.createServerMock = exports.createServiceMock = exports.WorkspaceTimeoutValues = exports.WORKSPACE_TIMEOUT_EXTENDED_ALT = exports.WORKSPACE_TIMEOUT_EXTENDED = exports.WORKSPACE_TIMEOUT_DEFAULT_LONG = exports.WORKSPACE_TIMEOUT_DEFAULT_SHORT = exports.GitpodServer = void 0;
18
+ const vscode_jsonrpc_1 = require("vscode-jsonrpc");
19
+ const gitpod_host_url_1 = require("./util/gitpod-host-url");
20
+ const connection_1 = require("./messaging/browser/connection");
21
+ const event_1 = require("./util/event");
22
+ exports.GitpodServer = Symbol("GitpodServer");
23
+ exports.WORKSPACE_TIMEOUT_DEFAULT_SHORT = "short";
24
+ exports.WORKSPACE_TIMEOUT_DEFAULT_LONG = "long";
25
+ exports.WORKSPACE_TIMEOUT_EXTENDED = "extended";
26
+ exports.WORKSPACE_TIMEOUT_EXTENDED_ALT = "180m"; // for backwards compatibility since the IDE uses this
27
+ exports.WorkspaceTimeoutValues = [
28
+ exports.WORKSPACE_TIMEOUT_DEFAULT_SHORT,
29
+ exports.WORKSPACE_TIMEOUT_DEFAULT_LONG,
30
+ exports.WORKSPACE_TIMEOUT_EXTENDED,
31
+ exports.WORKSPACE_TIMEOUT_EXTENDED_ALT,
32
+ ];
33
+ const createServiceMock = function (methods) {
34
+ return new GitpodServiceImpl((0, exports.createServerMock)(methods));
64
35
  };
65
- exports.createServerMock = function (methods) {
66
- methods.setClient = methods.setClient || (function () { });
67
- methods.dispose = methods.dispose || (function () { });
36
+ exports.createServiceMock = createServiceMock;
37
+ const createServerMock = function (methods) {
38
+ methods.setClient = methods.setClient || (() => { });
39
+ methods.dispose = methods.dispose || (() => { });
68
40
  return new Proxy(methods, {
69
- get: function (target, property) {
70
- var result = target[property];
41
+ // @ts-ignore
42
+ get: (target, property) => {
43
+ const result = target[property];
71
44
  if (!result) {
72
- throw new Error("Method " + property + " not implemented");
45
+ throw new Error(`Method ${property} not implemented`);
73
46
  }
74
47
  return result;
75
- }
48
+ },
76
49
  });
77
50
  };
78
- exports.GitpodServerPath = '/gitpod';
79
- exports.GitpodServerProxy = Symbol('GitpodServerProxy');
80
- var GitpodCompositeClient = /** @class */ (function () {
81
- function GitpodCompositeClient() {
51
+ exports.createServerMock = createServerMock;
52
+ exports.GitpodServerPath = "/gitpod";
53
+ exports.GitpodServerProxy = Symbol("GitpodServerProxy");
54
+ class GitpodCompositeClient {
55
+ constructor() {
82
56
  this.clients = [];
83
57
  }
84
- GitpodCompositeClient.prototype.registerClient = function (client) {
85
- var _this = this;
58
+ registerClient(client) {
86
59
  this.clients.push(client);
87
- var index = this.clients.length;
88
60
  return {
89
- dispose: function () {
90
- _this.clients.slice(index, 1);
91
- }
61
+ dispose: () => {
62
+ const index = this.clients.indexOf(client);
63
+ if (index > -1) {
64
+ this.clients.splice(index, 1);
65
+ }
66
+ },
92
67
  };
93
- };
94
- GitpodCompositeClient.prototype.onInstanceUpdate = function (instance) {
95
- var e_1, _a;
96
- try {
97
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
98
- var client = _c.value;
99
- if (client.onInstanceUpdate) {
100
- try {
101
- client.onInstanceUpdate(instance);
102
- }
103
- catch (error) {
104
- console.error(error);
105
- }
68
+ }
69
+ onInstanceUpdate(instance) {
70
+ for (const client of this.clients) {
71
+ if (client.onInstanceUpdate) {
72
+ try {
73
+ client.onInstanceUpdate(instance);
106
74
  }
107
- }
108
- }
109
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
110
- finally {
111
- try {
112
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
113
- }
114
- finally { if (e_1) throw e_1.error; }
115
- }
116
- };
117
- GitpodCompositeClient.prototype.onWorkspaceImageBuildLogs = function (info, content) {
118
- var e_2, _a;
119
- try {
120
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
121
- var client = _c.value;
122
- if (client.onWorkspaceImageBuildLogs) {
123
- try {
124
- client.onWorkspaceImageBuildLogs(info, content);
125
- }
126
- catch (error) {
127
- console.error(error);
128
- }
75
+ catch (error) {
76
+ console.error(error);
129
77
  }
130
78
  }
131
79
  }
132
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
133
- finally {
134
- try {
135
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
136
- }
137
- finally { if (e_2) throw e_2.error; }
138
- }
139
- };
140
- GitpodCompositeClient.prototype.onHeadlessWorkspaceLogs = function (evt) {
141
- var e_3, _a;
142
- try {
143
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
144
- var client = _c.value;
145
- if (client.onHeadlessWorkspaceLogs) {
146
- try {
147
- client.onHeadlessWorkspaceLogs(evt);
148
- }
149
- catch (error) {
150
- console.error(error);
151
- }
80
+ }
81
+ onPrebuildUpdate(update) {
82
+ for (const client of this.clients) {
83
+ if (client.onPrebuildUpdate) {
84
+ try {
85
+ client.onPrebuildUpdate(update);
152
86
  }
153
- }
154
- }
155
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
156
- finally {
157
- try {
158
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
159
- }
160
- finally { if (e_3) throw e_3.error; }
161
- }
162
- };
163
- GitpodCompositeClient.prototype.notifyDidOpenConnection = function () {
164
- var e_4, _a;
165
- try {
166
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
167
- var client = _c.value;
168
- if (client.notifyDidOpenConnection) {
169
- try {
170
- client.notifyDidOpenConnection();
171
- }
172
- catch (error) {
173
- console.error(error);
174
- }
87
+ catch (error) {
88
+ console.error(error);
175
89
  }
176
90
  }
177
91
  }
178
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
179
- finally {
180
- try {
181
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
182
- }
183
- finally { if (e_4) throw e_4.error; }
184
- }
185
- };
186
- GitpodCompositeClient.prototype.notifyDidCloseConnection = function () {
187
- var e_5, _a;
188
- try {
189
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
190
- var client = _c.value;
191
- if (client.notifyDidCloseConnection) {
192
- try {
193
- client.notifyDidCloseConnection();
194
- }
195
- catch (error) {
196
- console.error(error);
197
- }
92
+ }
93
+ onWorkspaceImageBuildLogs(info, content) {
94
+ for (const client of this.clients) {
95
+ if (client.onWorkspaceImageBuildLogs) {
96
+ try {
97
+ client.onWorkspaceImageBuildLogs(info, content);
98
+ }
99
+ catch (error) {
100
+ console.error(error);
198
101
  }
199
102
  }
200
103
  }
201
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
202
- finally {
203
- try {
204
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
104
+ }
105
+ notifyDidOpenConnection() {
106
+ for (const client of this.clients) {
107
+ if (client.notifyDidOpenConnection) {
108
+ try {
109
+ client.notifyDidOpenConnection();
110
+ }
111
+ catch (error) {
112
+ console.error(error);
113
+ }
205
114
  }
206
- finally { if (e_5) throw e_5.error; }
207
115
  }
208
- };
209
- GitpodCompositeClient.prototype.onCreditAlert = function (creditAlert) {
210
- var e_6, _a;
211
- try {
212
- for (var _b = __values(this.clients), _c = _b.next(); !_c.done; _c = _b.next()) {
213
- var client = _c.value;
214
- if (client.onCreditAlert) {
215
- try {
216
- client.onCreditAlert(creditAlert);
217
- }
218
- catch (error) {
219
- console.error(error);
220
- }
116
+ }
117
+ notifyDidCloseConnection() {
118
+ for (const client of this.clients) {
119
+ if (client.notifyDidCloseConnection) {
120
+ try {
121
+ client.notifyDidCloseConnection();
122
+ }
123
+ catch (error) {
124
+ console.error(error);
221
125
  }
222
126
  }
223
127
  }
224
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
225
- finally {
226
- try {
227
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
128
+ }
129
+ onCreditAlert(creditAlert) {
130
+ for (const client of this.clients) {
131
+ if (client.onCreditAlert) {
132
+ try {
133
+ client.onCreditAlert(creditAlert);
134
+ }
135
+ catch (error) {
136
+ console.error(error);
137
+ }
228
138
  }
229
- finally { if (e_6) throw e_6.error; }
230
139
  }
231
- };
232
- return GitpodCompositeClient;
233
- }());
140
+ }
141
+ }
234
142
  exports.GitpodCompositeClient = GitpodCompositeClient;
235
- var hasWindow = (typeof window !== 'undefined');
236
- var phasesOrder = {
143
+ const hasWindow = typeof window !== "undefined";
144
+ const phasesOrder = {
237
145
  unknown: 0,
238
146
  preparing: 1,
239
147
  pending: 2,
@@ -242,160 +150,149 @@ var phasesOrder = {
242
150
  running: 5,
243
151
  interrupted: 6,
244
152
  stopping: 7,
245
- stopped: 8
153
+ stopped: 8,
246
154
  };
247
- var WorkspaceInstanceUpdateListener = /** @class */ (function () {
248
- function WorkspaceInstanceUpdateListener(service, _info) {
249
- var _this = this;
155
+ class WorkspaceInstanceUpdateListener {
156
+ constructor(service, _info) {
250
157
  this.service = service;
251
158
  this._info = _info;
252
159
  this.onDidChangeEmitter = new event_1.Emitter();
253
160
  this.onDidChange = this.onDidChangeEmitter.event;
254
- this.source = 'sync';
161
+ this.source = "sync";
255
162
  this.syncQueue = Promise.resolve();
256
163
  service.registerClient({
257
- onInstanceUpdate: function (instance) {
258
- if (_this.isOutOfOrder(instance)) {
164
+ onInstanceUpdate: (instance) => {
165
+ if (this.isOutOfOrder(instance)) {
259
166
  return;
260
167
  }
261
- _this.cancelSync();
262
- _this._info.latestInstance = instance;
263
- _this.source = 'update';
264
- _this.onDidChangeEmitter.fire(undefined);
168
+ this.cancelSync();
169
+ this._info.latestInstance = instance;
170
+ this.source = "update";
171
+ this.onDidChangeEmitter.fire(undefined);
172
+ },
173
+ notifyDidOpenConnection: () => {
174
+ this.sync();
265
175
  },
266
- notifyDidOpenConnection: function () {
267
- _this.sync();
268
- }
269
176
  });
270
177
  if (hasWindow) {
271
178
  // learn about page lifecycle here: https://developers.google.com/web/updates/2018/07/page-lifecycle-api
272
- window.document.addEventListener('visibilitychange', function () { return __awaiter(_this, void 0, void 0, function () {
273
- return __generator(this, function (_a) {
274
- if (window.document.visibilityState === 'visible') {
275
- this.sync();
276
- }
277
- return [2 /*return*/];
278
- });
279
- }); });
280
- window.addEventListener('pageshow', function (e) {
179
+ window.document.addEventListener("visibilitychange", () => __awaiter(this, void 0, void 0, function* () {
180
+ if (window.document.visibilityState === "visible") {
181
+ this.sync();
182
+ }
183
+ }));
184
+ window.addEventListener("pageshow", (e) => {
281
185
  if (e.persisted) {
282
- _this.sync();
186
+ this.sync();
283
187
  }
284
188
  });
285
189
  }
286
190
  }
287
- Object.defineProperty(WorkspaceInstanceUpdateListener.prototype, "info", {
288
- get: function () {
289
- return this._info;
290
- },
291
- enumerable: false,
292
- configurable: true
293
- });
191
+ get info() {
192
+ return this._info;
193
+ }
294
194
  /**
295
195
  * Only one sync can be performed at the same time.
296
196
  * Any new sync request or instance update cancels all previously scheduled sync requests.
297
197
  */
298
- WorkspaceInstanceUpdateListener.prototype.sync = function () {
299
- var _this = this;
198
+ sync() {
300
199
  this.cancelSync();
301
200
  this.syncTokenSource = new vscode_jsonrpc_1.CancellationTokenSource();
302
- var token = this.syncTokenSource.token;
303
- this.syncQueue = this.syncQueue.then(function () { return __awaiter(_this, void 0, void 0, function () {
304
- var info, e_7;
305
- return __generator(this, function (_a) {
306
- switch (_a.label) {
307
- case 0:
308
- if (token.isCancellationRequested) {
309
- return [2 /*return*/];
310
- }
311
- _a.label = 1;
312
- case 1:
313
- _a.trys.push([1, 3, , 4]);
314
- return [4 /*yield*/, this.service.server.getWorkspace(this._info.workspace.id)];
315
- case 2:
316
- info = _a.sent();
317
- if (token.isCancellationRequested) {
318
- return [2 /*return*/];
319
- }
320
- this._info = info;
321
- this.source = 'sync';
322
- this.onDidChangeEmitter.fire(undefined);
323
- return [3 /*break*/, 4];
324
- case 3:
325
- e_7 = _a.sent();
326
- console.error('failed to sync workspace instance:', e_7);
327
- return [3 /*break*/, 4];
328
- case 4: return [2 /*return*/];
201
+ const token = this.syncTokenSource.token;
202
+ this.syncQueue = this.syncQueue.then(() => __awaiter(this, void 0, void 0, function* () {
203
+ if (token.isCancellationRequested) {
204
+ return;
205
+ }
206
+ try {
207
+ const info = yield this.service.server.getWorkspace(this._info.workspace.id);
208
+ if (token.isCancellationRequested) {
209
+ return;
329
210
  }
330
- });
331
- }); });
332
- };
333
- WorkspaceInstanceUpdateListener.prototype.cancelSync = function () {
211
+ this._info = info;
212
+ this.source = "sync";
213
+ this.onDidChangeEmitter.fire(undefined);
214
+ }
215
+ catch (e) {
216
+ console.error("failed to sync workspace instance:", e);
217
+ }
218
+ }));
219
+ }
220
+ cancelSync() {
334
221
  if (this.syncTokenSource) {
335
222
  this.syncTokenSource.cancel();
336
223
  this.syncTokenSource = undefined;
337
224
  }
338
- };
225
+ }
339
226
  /**
340
227
  * If sync seen more recent update then ignore all updates with previous phases.
341
228
  * Within the same phase still the race can occur but which should be eventually consistent.
342
229
  */
343
- WorkspaceInstanceUpdateListener.prototype.isOutOfOrder = function (instance) {
230
+ isOutOfOrder(instance) {
344
231
  var _a;
345
232
  if (instance.workspaceId !== this._info.workspace.id) {
346
233
  return true;
347
234
  }
348
- if (this.source === 'update') {
235
+ if (this.source === "update") {
349
236
  return false;
350
237
  }
351
238
  if (instance.id !== ((_a = this.info.latestInstance) === null || _a === void 0 ? void 0 : _a.id)) {
352
239
  return false;
353
240
  }
354
241
  return phasesOrder[instance.status.phase] < phasesOrder[this.info.latestInstance.status.phase];
355
- };
356
- return WorkspaceInstanceUpdateListener;
357
- }());
242
+ }
243
+ }
358
244
  exports.WorkspaceInstanceUpdateListener = WorkspaceInstanceUpdateListener;
359
- var GitpodServiceImpl = /** @class */ (function () {
360
- function GitpodServiceImpl(server) {
361
- var _this = this;
245
+ class GitpodServiceImpl {
246
+ constructor(server, options) {
362
247
  this.server = server;
248
+ this.options = options;
363
249
  this.compositeClient = new GitpodCompositeClient();
364
250
  this.instanceListeners = new Map();
365
251
  server.setClient(this.compositeClient);
366
- server.onDidOpenConnection(function () { return _this.compositeClient.notifyDidOpenConnection(); });
367
- server.onDidCloseConnection(function () { return _this.compositeClient.notifyDidCloseConnection(); });
252
+ server.onDidOpenConnection(() => this.compositeClient.notifyDidOpenConnection());
253
+ server.onDidCloseConnection(() => this.compositeClient.notifyDidCloseConnection());
368
254
  }
369
- GitpodServiceImpl.prototype.registerClient = function (client) {
255
+ registerClient(client) {
370
256
  return this.compositeClient.registerClient(client);
371
- };
372
- GitpodServiceImpl.prototype.listenToInstance = function (workspaceId) {
373
- var _this = this;
374
- var listener = this.instanceListeners.get(workspaceId) ||
375
- (function () { return __awaiter(_this, void 0, void 0, function () {
376
- var info;
377
- return __generator(this, function (_a) {
378
- switch (_a.label) {
379
- case 0: return [4 /*yield*/, this.server.getWorkspace(workspaceId)];
380
- case 1:
381
- info = _a.sent();
382
- return [2 /*return*/, new WorkspaceInstanceUpdateListener(this, info)];
383
- }
384
- });
385
- }); })();
257
+ }
258
+ listenToInstance(workspaceId) {
259
+ const listener = this.instanceListeners.get(workspaceId) ||
260
+ (() => __awaiter(this, void 0, void 0, function* () {
261
+ const info = yield this.server.getWorkspace(workspaceId);
262
+ return new WorkspaceInstanceUpdateListener(this, info);
263
+ }))();
386
264
  this.instanceListeners.set(workspaceId, listener);
387
265
  return listener;
388
- };
389
- return GitpodServiceImpl;
390
- }());
266
+ }
267
+ reconnect() {
268
+ var _a;
269
+ return __awaiter(this, void 0, void 0, function* () {
270
+ if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.onReconnect) {
271
+ yield this.options.onReconnect();
272
+ }
273
+ });
274
+ }
275
+ }
391
276
  exports.GitpodServiceImpl = GitpodServiceImpl;
392
277
  function createGitpodService(serverUrl) {
393
- var url = new gitpod_host_url_1.GitpodHostUrl(serverUrl)
394
- .asWebsocket()
395
- .withApi({ pathname: exports.GitpodServerPath });
396
- var connectionProvider = new connection_1.WebSocketConnectionProvider();
397
- var gitpodServer = connectionProvider.createProxy(url.toString());
398
- return new GitpodServiceImpl(gitpodServer);
278
+ const toWsUrl = (serverUrl) => {
279
+ return new gitpod_host_url_1.GitpodHostUrl(serverUrl).asWebsocket().withApi({ pathname: exports.GitpodServerPath }).toString();
280
+ };
281
+ let url;
282
+ if (typeof serverUrl === "string") {
283
+ url = toWsUrl(serverUrl);
284
+ }
285
+ else {
286
+ url = serverUrl.then((url) => toWsUrl(url));
287
+ }
288
+ const connectionProvider = new connection_1.WebSocketConnectionProvider();
289
+ let onReconnect = () => { };
290
+ const gitpodServer = connectionProvider.createProxy(url, undefined, {
291
+ onListening: (socket) => {
292
+ onReconnect = () => socket.reconnect();
293
+ },
294
+ });
295
+ return new GitpodServiceImpl(gitpodServer, { onReconnect });
399
296
  }
400
297
  exports.createGitpodService = createGitpodService;
401
298
  //# sourceMappingURL=gitpod-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gitpod-service.js","sourceRoot":"","sources":["../src/gitpod-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitpod-service.js","sourceRoot":"","sources":["../src/gitpod-service.ts"],"names":[],"mappings":"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"}