@gitpod/gitpod-protocol 0.1.5-wth-test.80 → 0.1.5-wv-remove-without-ws-flag.5

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 (413) hide show
  1. package/data/gitpod-schema.json +132 -5
  2. package/lib/accounting-protocol.d.ts +19 -11
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +35 -33
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +19 -2
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js +1 -1
  9. package/lib/admin-protocol.js.map +1 -1
  10. package/lib/analytics.d.ts +1 -1
  11. package/lib/analytics.d.ts.map +1 -1
  12. package/lib/analytics.js +1 -1
  13. package/lib/analytics.js.map +1 -1
  14. package/lib/attribution.d.ts +24 -0
  15. package/lib/attribution.d.ts.map +1 -0
  16. package/lib/attribution.js +54 -0
  17. package/lib/attribution.js.map +1 -0
  18. package/lib/auth.d.ts +1 -1
  19. package/lib/auth.d.ts.map +1 -1
  20. package/lib/auth.js +1 -1
  21. package/lib/billing-mode.d.ts +45 -0
  22. package/lib/billing-mode.d.ts.map +1 -0
  23. package/lib/billing-mode.js +44 -0
  24. package/lib/billing-mode.js.map +1 -0
  25. package/lib/blocked-repositories-protocol.d.ts +13 -0
  26. package/lib/blocked-repositories-protocol.d.ts.map +1 -0
  27. package/lib/blocked-repositories-protocol.js +8 -0
  28. package/lib/blocked-repositories-protocol.js.map +1 -0
  29. package/lib/context-url.d.ts +1 -2
  30. package/lib/context-url.d.ts.map +1 -1
  31. package/lib/context-url.js +5 -7
  32. package/lib/context-url.js.map +1 -1
  33. package/lib/context-url.spec.d.ts +1 -3
  34. package/lib/context-url.spec.d.ts.map +1 -1
  35. package/lib/context-url.spec.js +13 -26
  36. package/lib/context-url.spec.js.map +1 -1
  37. package/lib/encryption/container-module.d.ts +1 -1
  38. package/lib/encryption/container-module.d.ts.map +1 -1
  39. package/lib/encryption/container-module.js +2 -2
  40. package/lib/encryption/container-module.js.map +1 -1
  41. package/lib/encryption/encryption-engine.d.ts +1 -1
  42. package/lib/encryption/encryption-engine.d.ts.map +1 -1
  43. package/lib/encryption/encryption-engine.js +10 -10
  44. package/lib/encryption/encryption-engine.js.map +1 -1
  45. package/lib/encryption/encryption-engine.spec.d.ts +1 -1
  46. package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
  47. package/lib/encryption/encryption-engine.spec.js +3 -4
  48. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  49. package/lib/encryption/encryption-service.d.ts +1 -1
  50. package/lib/encryption/encryption-service.d.ts.map +1 -1
  51. package/lib/encryption/encryption-service.js +2 -2
  52. package/lib/encryption/encryption-service.js.map +1 -1
  53. package/lib/encryption/key-provider.d.ts +1 -1
  54. package/lib/encryption/key-provider.d.ts.map +1 -1
  55. package/lib/encryption/key-provider.js +8 -10
  56. package/lib/encryption/key-provider.js.map +1 -1
  57. package/lib/env.d.ts +1 -6
  58. package/lib/env.d.ts.map +1 -1
  59. package/lib/env.js +2 -21
  60. package/lib/env.js.map +1 -1
  61. package/lib/experiments/always-default.d.ts +8 -0
  62. package/lib/experiments/always-default.d.ts.map +1 -0
  63. package/lib/experiments/always-default.js +20 -0
  64. package/lib/experiments/always-default.js.map +1 -0
  65. package/lib/experiments/configcat-server.d.ts +10 -0
  66. package/lib/experiments/configcat-server.d.ts.map +1 -0
  67. package/lib/experiments/configcat-server.js +37 -0
  68. package/lib/experiments/configcat-server.js.map +1 -0
  69. package/lib/experiments/configcat.d.ts +21 -0
  70. package/lib/experiments/configcat.d.ts.map +1 -0
  71. package/lib/experiments/configcat.js +51 -0
  72. package/lib/experiments/configcat.js.map +1 -0
  73. package/lib/experiments/types.d.ts +22 -0
  74. package/lib/experiments/types.d.ts.map +1 -0
  75. package/lib/experiments/types.js +10 -0
  76. package/lib/experiments/types.js.map +1 -0
  77. package/lib/frontend-dashboard-service.d.ts +90 -0
  78. package/lib/frontend-dashboard-service.d.ts.map +1 -0
  79. package/lib/frontend-dashboard-service.js +49 -0
  80. package/lib/frontend-dashboard-service.js.map +1 -0
  81. package/lib/gitpod-file-parser.d.ts +1 -1
  82. package/lib/gitpod-file-parser.d.ts.map +1 -1
  83. package/lib/gitpod-file-parser.js +7 -7
  84. package/lib/gitpod-file-parser.js.map +1 -1
  85. package/lib/gitpod-file-parser.spec.d.ts +1 -1
  86. package/lib/gitpod-file-parser.spec.js +43 -40
  87. package/lib/gitpod-file-parser.spec.js.map +1 -1
  88. package/lib/gitpod-service.d.ts +73 -55
  89. package/lib/gitpod-service.d.ts.map +1 -1
  90. package/lib/gitpod-service.js +61 -34
  91. package/lib/gitpod-service.js.map +1 -1
  92. package/lib/headless-workspace-log.d.ts +2 -1
  93. package/lib/headless-workspace-log.d.ts.map +1 -1
  94. package/lib/headless-workspace-log.js +3 -2
  95. package/lib/headless-workspace-log.js.map +1 -1
  96. package/lib/ide-frontend-service.d.ts +2 -2
  97. package/lib/ide-frontend-service.js +1 -1
  98. package/lib/ide-protocol.d.ts +29 -8
  99. package/lib/ide-protocol.d.ts.map +1 -1
  100. package/lib/ide-protocol.js +11 -1
  101. package/lib/ide-protocol.js.map +1 -1
  102. package/lib/index.d.ts +17 -17
  103. package/lib/index.d.ts.map +1 -1
  104. package/lib/index.js +2 -2
  105. package/lib/index.js.map +1 -1
  106. package/lib/installation-admin-protocol.d.ts +4 -1
  107. package/lib/installation-admin-protocol.d.ts.map +1 -1
  108. package/lib/installation-admin-protocol.js +4 -3
  109. package/lib/installation-admin-protocol.js.map +1 -1
  110. package/lib/license-protocol.d.ts +8 -1
  111. package/lib/license-protocol.d.ts.map +1 -1
  112. package/lib/license-protocol.js +1 -1
  113. package/lib/license-protocol.js.map +1 -1
  114. package/lib/messaging/browser/connection.d.ts +1 -1
  115. package/lib/messaging/browser/connection.d.ts.map +1 -1
  116. package/lib/messaging/browser/connection.js +19 -19
  117. package/lib/messaging/browser/connection.js.map +1 -1
  118. package/lib/messaging/browser/window-connection.d.ts +5 -5
  119. package/lib/messaging/browser/window-connection.d.ts.map +1 -1
  120. package/lib/messaging/browser/window-connection.js +10 -7
  121. package/lib/messaging/browser/window-connection.js.map +1 -1
  122. package/lib/messaging/client-call-metrics.d.ts +5 -19
  123. package/lib/messaging/client-call-metrics.d.ts.map +1 -1
  124. package/lib/messaging/client-call-metrics.js +35 -23
  125. package/lib/messaging/client-call-metrics.js.map +1 -1
  126. package/lib/messaging/error.d.ts +10 -2
  127. package/lib/messaging/error.d.ts.map +1 -1
  128. package/lib/messaging/error.js +20 -4
  129. package/lib/messaging/error.js.map +1 -1
  130. package/lib/messaging/handler.d.ts.map +1 -1
  131. package/lib/messaging/handler.js +1 -1
  132. package/lib/messaging/node/connection.js +8 -8
  133. package/lib/messaging/node/connection.js.map +1 -1
  134. package/lib/messaging/proxy-factory.d.ts +1 -1
  135. package/lib/messaging/proxy-factory.d.ts.map +1 -1
  136. package/lib/messaging/proxy-factory.js +7 -9
  137. package/lib/messaging/proxy-factory.js.map +1 -1
  138. package/lib/oss-allowlist.d.ts +1 -1
  139. package/lib/oss-allowlist.js +1 -1
  140. package/lib/payment-protocol.d.ts +1 -1
  141. package/lib/payment-protocol.d.ts.map +1 -1
  142. package/lib/payment-protocol.js +2 -2
  143. package/lib/payment-protocol.js.map +1 -1
  144. package/lib/permission.d.ts +7 -4
  145. package/lib/permission.d.ts.map +1 -1
  146. package/lib/permission.js +16 -24
  147. package/lib/permission.js.map +1 -1
  148. package/lib/plans.d.ts +5 -4
  149. package/lib/plans.d.ts.map +1 -1
  150. package/lib/plans.js +211 -172
  151. package/lib/plans.js.map +1 -1
  152. package/lib/protocol.d.ts +167 -61
  153. package/lib/protocol.d.ts.map +1 -1
  154. package/lib/protocol.js +282 -106
  155. package/lib/protocol.js.map +1 -1
  156. package/lib/protocol.spec.d.ts +7 -0
  157. package/lib/protocol.spec.d.ts.map +1 -0
  158. package/lib/protocol.spec.js +127 -0
  159. package/lib/protocol.spec.js.map +1 -0
  160. package/lib/snapshot-url.d.ts +1 -1
  161. package/lib/snapshot-url.js +1 -1
  162. package/lib/snapshot-url.spec.d.ts +1 -1
  163. package/lib/snapshot-url.spec.js +1 -1
  164. package/lib/snapshot-url.spec.js.map +1 -1
  165. package/lib/team-subscription-protocol.d.ts +23 -4
  166. package/lib/team-subscription-protocol.d.ts.map +1 -1
  167. package/lib/team-subscription-protocol.js +21 -6
  168. package/lib/team-subscription-protocol.js.map +1 -1
  169. package/lib/teams-projects-protocol.d.ts +29 -6
  170. package/lib/teams-projects-protocol.d.ts.map +1 -1
  171. package/lib/teams-projects-protocol.js +10 -3
  172. package/lib/teams-projects-protocol.js.map +1 -1
  173. package/lib/typings/globals.d.ts +3 -3
  174. package/lib/typings/globals.d.ts.map +1 -1
  175. package/lib/typings/globals.js +1 -1
  176. package/lib/usage.d.ts +73 -0
  177. package/lib/usage.d.ts.map +1 -0
  178. package/lib/usage.js +20 -0
  179. package/lib/usage.js.map +1 -0
  180. package/lib/util/analytics.d.ts +1 -1
  181. package/lib/util/analytics.d.ts.map +1 -1
  182. package/lib/util/analytics.js +7 -7
  183. package/lib/util/analytics.js.map +1 -1
  184. package/lib/util/async-iterator.d.ts +1 -1
  185. package/lib/util/async-iterator.d.ts.map +1 -1
  186. package/lib/util/async-iterator.js +4 -4
  187. package/lib/util/async-iterator.js.map +1 -1
  188. package/lib/util/cancelable.d.ts +1 -1
  189. package/lib/util/cancelable.js +1 -1
  190. package/lib/util/cancelable.js.map +1 -1
  191. package/lib/util/date-time.d.ts +1 -1
  192. package/lib/util/date-time.js +7 -7
  193. package/lib/util/date-time.js.map +1 -1
  194. package/lib/util/debug-app.d.ts +25 -0
  195. package/lib/util/debug-app.d.ts.map +1 -0
  196. package/lib/util/debug-app.js +100 -0
  197. package/lib/util/debug-app.js.map +1 -0
  198. package/lib/util/deep-partial.d.ts +1 -1
  199. package/lib/util/deep-partial.js +1 -1
  200. package/lib/util/deferred.d.ts +1 -1
  201. package/lib/util/deferred.js +1 -1
  202. package/lib/util/deferred.js.map +1 -1
  203. package/lib/util/disposable.d.ts.map +1 -1
  204. package/lib/util/disposable.js +2 -2
  205. package/lib/util/disposable.js.map +1 -1
  206. package/lib/util/event.d.ts.map +1 -1
  207. package/lib/util/event.js +5 -3
  208. package/lib/util/event.js.map +1 -1
  209. package/lib/util/garbage-collected-cache.d.ts +1 -1
  210. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  211. package/lib/util/garbage-collected-cache.js +7 -2
  212. package/lib/util/garbage-collected-cache.js.map +1 -1
  213. package/lib/util/generate-workspace-id.d.ts +5 -0
  214. package/lib/util/generate-workspace-id.d.ts.map +1 -1
  215. package/lib/util/generate-workspace-id.js +446 -442
  216. package/lib/util/generate-workspace-id.js.map +1 -1
  217. package/lib/util/generate-workspace-id.spec.d.ts +1 -1
  218. package/lib/util/generate-workspace-id.spec.js +19 -8
  219. package/lib/util/generate-workspace-id.spec.js.map +1 -1
  220. package/lib/util/gitpod-cookie.d.ts +2 -2
  221. package/lib/util/gitpod-cookie.d.ts.map +1 -1
  222. package/lib/util/gitpod-cookie.js +1 -4
  223. package/lib/util/gitpod-cookie.js.map +1 -1
  224. package/lib/util/gitpod-host-url.d.ts +12 -3
  225. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  226. package/lib/util/gitpod-host-url.js +69 -35
  227. package/lib/util/gitpod-host-url.js.map +1 -1
  228. package/lib/util/gitpod-host-url.spec.d.ts +1 -1
  229. package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
  230. package/lib/util/gitpod-host-url.spec.js +16 -6
  231. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  232. package/lib/util/grpc.d.ts +21 -1
  233. package/lib/util/grpc.d.ts.map +1 -1
  234. package/lib/util/grpc.js +74 -2
  235. package/lib/util/grpc.js.map +1 -1
  236. package/lib/util/jaeger-client-types.d.ts +1 -1
  237. package/lib/util/jaeger-client-types.d.ts.map +1 -1
  238. package/lib/util/jaeger-client-types.js +1 -1
  239. package/lib/util/logging.d.ts +2 -2
  240. package/lib/util/logging.d.ts.map +1 -1
  241. package/lib/util/logging.js +32 -26
  242. package/lib/util/logging.js.map +1 -1
  243. package/lib/util/logging.spec.d.ts +7 -0
  244. package/lib/util/logging.spec.d.ts.map +1 -0
  245. package/lib/util/logging.spec.js +52 -0
  246. package/lib/util/logging.spec.js.map +1 -0
  247. package/lib/util/make-link.d.ts +1 -1
  248. package/lib/util/make-link.js +6 -6
  249. package/lib/util/make-link.js.map +1 -1
  250. package/lib/util/nice-grpc.d.ts +9 -0
  251. package/lib/util/nice-grpc.d.ts.map +1 -0
  252. package/lib/util/nice-grpc.js +121 -0
  253. package/lib/util/nice-grpc.js.map +1 -0
  254. package/lib/util/parse-workspace-id.d.ts +1 -1
  255. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  256. package/lib/util/parse-workspace-id.js +2 -3
  257. package/lib/util/parse-workspace-id.js.map +1 -1
  258. package/lib/util/parse-workspace-id.spec.d.ts +1 -1
  259. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  260. package/lib/util/parse-workspace-id.spec.js +1 -1
  261. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  262. package/lib/util/queue.d.ts +1 -1
  263. package/lib/util/queue.js +1 -1
  264. package/lib/util/queue.spec.d.ts +1 -1
  265. package/lib/util/queue.spec.js +10 -7
  266. package/lib/util/queue.spec.js.map +1 -1
  267. package/lib/util/repeat.d.ts +1 -1
  268. package/lib/util/repeat.js +1 -1
  269. package/lib/util/semaphore.d.ts +1 -1
  270. package/lib/util/semaphore.d.ts.map +1 -1
  271. package/lib/util/semaphore.js +1 -1
  272. package/lib/util/semaphore.js.map +1 -1
  273. package/lib/util/skip-if.d.ts +1 -1
  274. package/lib/util/skip-if.d.ts.map +1 -1
  275. package/lib/util/skip-if.js +1 -1
  276. package/lib/util/skip-if.js.map +1 -1
  277. package/lib/util/timeutil.d.ts +3 -1
  278. package/lib/util/timeutil.d.ts.map +1 -1
  279. package/lib/util/timeutil.js +16 -4
  280. package/lib/util/timeutil.js.map +1 -1
  281. package/lib/util/timeutil.spec.d.ts +3 -1
  282. package/lib/util/timeutil.spec.d.ts.map +1 -1
  283. package/lib/util/timeutil.spec.js +35 -1
  284. package/lib/util/timeutil.spec.js.map +1 -1
  285. package/lib/util/tracing.d.ts +7 -7
  286. package/lib/util/tracing.d.ts.map +1 -1
  287. package/lib/util/tracing.js +15 -17
  288. package/lib/util/tracing.js.map +1 -1
  289. package/lib/util/tracing.spec.d.ts +1 -1
  290. package/lib/util/tracing.spec.js +4 -4
  291. package/lib/util/tracing.spec.js.map +1 -1
  292. package/lib/util/workspace-port-authentication.d.ts +8 -8
  293. package/lib/util/workspace-port-authentication.d.ts.map +1 -1
  294. package/lib/util/workspace-port-authentication.js +9 -12
  295. package/lib/util/workspace-port-authentication.js.map +1 -1
  296. package/lib/webhook-event.d.ts +44 -0
  297. package/lib/webhook-event.d.ts.map +1 -0
  298. package/lib/webhook-event.js +8 -0
  299. package/lib/webhook-event.js.map +1 -0
  300. package/lib/workspace-class.d.ts +14 -0
  301. package/lib/workspace-class.d.ts.map +1 -0
  302. package/lib/workspace-class.js +8 -0
  303. package/lib/workspace-class.js.map +1 -0
  304. package/lib/workspace-cluster.d.ts +13 -14
  305. package/lib/workspace-cluster.d.ts.map +1 -1
  306. package/lib/workspace-cluster.js +3 -5
  307. package/lib/workspace-cluster.js.map +1 -1
  308. package/lib/workspace-instance.d.ts +22 -4
  309. package/lib/workspace-instance.d.ts.map +1 -1
  310. package/lib/workspace-instance.js +1 -1
  311. package/lib/wsready.d.ts +8 -2
  312. package/lib/wsready.d.ts.map +1 -1
  313. package/lib/wsready.js +3 -3
  314. package/package.json +14 -6
  315. package/pkg-yarn.lock +10 -5
  316. package/provenance-bundle.jsonl +1 -1
  317. package/src/accounting-protocol.ts +67 -52
  318. package/src/admin-protocol.ts +48 -22
  319. package/src/analytics.ts +22 -22
  320. package/src/attribution.ts +63 -0
  321. package/src/auth.ts +3 -3
  322. package/src/billing-mode.ts +84 -0
  323. package/src/blocked-repositories-protocol.ts +13 -0
  324. package/src/context-url.spec.ts +18 -22
  325. package/src/context-url.ts +79 -79
  326. package/src/encryption/container-module.ts +3 -4
  327. package/src/encryption/encryption-engine.spec.ts +10 -9
  328. package/src/encryption/encryption-engine.ts +21 -17
  329. package/src/encryption/encryption-service.ts +5 -6
  330. package/src/encryption/key-provider.ts +17 -20
  331. package/src/env.ts +2 -25
  332. package/src/experiments/always-default.ts +24 -0
  333. package/src/experiments/configcat-server.ts +42 -0
  334. package/src/experiments/configcat.ts +56 -0
  335. package/src/experiments/types.ts +34 -0
  336. package/src/frontend-dashboard-service.ts +125 -0
  337. package/src/gitpod-file-parser.spec.ts +56 -62
  338. package/src/gitpod-file-parser.ts +17 -18
  339. package/src/gitpod-service.ts +224 -142
  340. package/src/headless-workspace-log.ts +7 -5
  341. package/src/ide-frontend-service.ts +3 -3
  342. package/src/ide-protocol.ts +38 -10
  343. package/src/index.ts +17 -17
  344. package/src/installation-admin-protocol.ts +12 -9
  345. package/src/license-protocol.ts +13 -7
  346. package/src/messaging/browser/connection.ts +45 -47
  347. package/src/messaging/browser/window-connection.ts +40 -30
  348. package/src/messaging/client-call-metrics.ts +79 -82
  349. package/src/messaging/error.ts +30 -8
  350. package/src/messaging/handler.ts +6 -6
  351. package/src/messaging/node/connection.ts +8 -8
  352. package/src/messaging/proxy-factory.ts +23 -30
  353. package/src/oss-allowlist.ts +4 -4
  354. package/src/payment-protocol.ts +3 -3
  355. package/src/permission.ts +25 -32
  356. package/src/plans.ts +241 -190
  357. package/src/protocol.spec.ts +97 -0
  358. package/src/protocol.ts +527 -265
  359. package/src/snapshot-url.spec.ts +10 -8
  360. package/src/snapshot-url.ts +1 -1
  361. package/src/team-subscription-protocol.ts +60 -23
  362. package/src/teams-projects-protocol.ts +42 -12
  363. package/src/typings/globals.ts +6 -5
  364. package/src/usage.ts +85 -0
  365. package/src/util/analytics.ts +47 -43
  366. package/src/util/async-iterator.ts +5 -6
  367. package/src/util/cancelable.ts +4 -4
  368. package/src/util/date-time.ts +9 -9
  369. package/src/util/debug-app.ts +81 -0
  370. package/src/util/deep-partial.ts +1 -1
  371. package/src/util/deferred.ts +7 -7
  372. package/src/util/disposable.ts +3 -6
  373. package/src/util/event.ts +9 -11
  374. package/src/util/garbage-collected-cache.ts +9 -7
  375. package/src/util/generate-workspace-id.spec.ts +27 -17
  376. package/src/util/generate-workspace-id.ts +461 -455
  377. package/src/util/gitpod-cookie.ts +9 -10
  378. package/src/util/gitpod-host-url.spec.ts +41 -14
  379. package/src/util/gitpod-host-url.ts +82 -39
  380. package/src/util/grpc.ts +94 -2
  381. package/src/util/jaeger-client-types.ts +3 -3
  382. package/src/util/logging.spec.ts +23 -0
  383. package/src/util/logging.ts +61 -43
  384. package/src/util/make-link.ts +7 -8
  385. package/src/util/nice-grpc.ts +96 -0
  386. package/src/util/parse-workspace-id.spec.ts +18 -9
  387. package/src/util/parse-workspace-id.ts +6 -7
  388. package/src/util/queue.spec.ts +28 -26
  389. package/src/util/queue.ts +1 -1
  390. package/src/util/repeat.ts +2 -2
  391. package/src/util/semaphore.ts +5 -7
  392. package/src/util/skip-if.ts +10 -7
  393. package/src/util/timeutil.spec.ts +41 -15
  394. package/src/util/timeutil.ts +28 -12
  395. package/src/util/tracing.spec.ts +29 -24
  396. package/src/util/tracing.ts +55 -52
  397. package/src/util/workspace-port-authentication.ts +11 -14
  398. package/src/webhook-event.ts +55 -0
  399. package/src/workspace-class.ts +14 -0
  400. package/src/workspace-cluster.ts +25 -19
  401. package/src/workspace-instance.ts +67 -25
  402. package/src/wsready.ts +11 -4
  403. package/data/builtin-theia-plugins.json +0 -372
  404. package/lib/email-protocol.d.ts +0 -49
  405. package/lib/email-protocol.d.ts.map +0 -1
  406. package/lib/email-protocol.js +0 -28
  407. package/lib/email-protocol.js.map +0 -1
  408. package/lib/theia-plugins.d.ts +0 -11
  409. package/lib/theia-plugins.d.ts.map +0 -1
  410. package/lib/theia-plugins.js +0 -8
  411. package/lib/theia-plugins.js.map +0 -1
  412. package/src/email-protocol.ts +0 -66
  413. package/src/theia-plugins.ts +0 -11
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
4
4
  * Licensed under the GNU Affero General Public License (AGPL).
5
- * See License-AGPL.txt in the project root for license information.
5
+ * See License.AGPL.txt in the project root for license information.
6
6
  */
7
7
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
8
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -18,7 +18,7 @@ exports.EncryptionServiceImpl = exports.EncryptionService = void 0;
18
18
  const inversify_1 = require("inversify");
19
19
  const encryption_engine_1 = require("./encryption-engine");
20
20
  const key_provider_1 = require("./key-provider");
21
- exports.EncryptionService = Symbol('EncryptionService');
21
+ exports.EncryptionService = Symbol("EncryptionService");
22
22
  let EncryptionServiceImpl = class EncryptionServiceImpl {
23
23
  encrypt(data) {
24
24
  const dataStr = this.serialize(data);
@@ -1 +1 @@
1
- {"version":3,"file":"encryption-service.js","sourceRoot":"","sources":["../../src/encryption/encryption-service.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,yCAA+C;AAE/C,2DAAsE;AACtE,iDAA0D;AAO7C,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAO7D,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAI9B,OAAO,CAAI,IAAO;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAE7C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjE,uCACO,aAAa,KAChB,WAAW,EAAE,GAAG,CAAC,QAAQ,IAC3B;IACN,CAAC;IAED,OAAO,CAAI,SAAuB;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAES,SAAS,CAAC,IAAS;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,WAAW,CAAI,IAAY;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IACjC,CAAC;CACJ,CAAA;AA3B6B;IAAzB,IAAA,kBAAM,EAAC,oCAAgB,CAAC;;qDAA6C;AACjD;IAApB,IAAA,kBAAM,EAAC,0BAAW,CAAC;;0DAA6C;AAFxD,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CA4BjC;AA5BY,sDAAqB"}
1
+ {"version":3,"file":"encryption-service.js","sourceRoot":"","sources":["../../src/encryption/encryption-service.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,yCAA+C;AAE/C,2DAAsE;AACtE,iDAA0D;AAM7C,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAO7D,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAI9B,OAAO,CAAI,IAAO;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAE7C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjE,uCACO,aAAa,KAChB,WAAW,EAAE,GAAG,CAAC,QAAQ,IAC3B;IACN,CAAC;IAED,OAAO,CAAI,SAAuB;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAES,SAAS,CAAC,IAAS;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAES,WAAW,CAAI,IAAY;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IACjC,CAAC;CACJ,CAAA;AA3B6B;IAAzB,IAAA,kBAAM,EAAC,oCAAgB,CAAC;;qDAA6C;AACjD;IAApB,IAAA,kBAAM,EAAC,0BAAW,CAAC;;0DAA6C;AAFxD,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CA4BjC;AA5BY,sDAAqB"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
  /// <reference types="node" />
7
7
  export interface KeyMetadata {
@@ -1 +1 @@
1
- {"version":3,"file":"key-provider.d.ts","sourceRoot":"","sources":["../../src/encryption/key-provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAIH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,GAAG;IAChB,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD,MAAM,WAAW,WAAW;IACxB,aAAa,IAAI,GAAG,CAAC;IACrB,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,GAAG,CAAC;CACzC;AAED,oBAAY,SAAS,GAAG,WAAW,GAAG;IAClC,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAC7D,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,SAAS,EAAE,CAAA;CACpB;AAED,qBACa,eAAgB,YAAW,WAAW;IAYR,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAVnF,MAAM,CAAC,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE;gBAUR,MAAM,EAAE,iBAAiB;IAEnF,SAAS,KAAK,IAAI,gBAEjB;IAED,aAAa,IAAI,GAAG;IAQpB,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,GAAG;IAQrC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,GAAG;CAShD"}
1
+ {"version":3,"file":"key-provider.d.ts","sourceRoot":"","sources":["../../src/encryption/key-provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAIH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,GAAG;IAChB,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD,MAAM,WAAW,WAAW;IACxB,aAAa,IAAI,GAAG,CAAC;IACrB,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,GAAG,CAAC;CACzC;AAED,oBAAY,SAAS,GAAG,WAAW,GAAG;IAClC,qBAAqB;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAC7D,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,qBACa,eAAgB,YAAW,WAAW;IASR,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IARnF,MAAM,CAAC,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE;gBAQR,MAAM,EAAE,iBAAiB;IAEnF,SAAS,KAAK,IAAI,gBAEjB;IAED,aAAa,IAAI,GAAG;IAQpB,SAAS,CAAC,QAAQ,EAAE,WAAW,GAAG,GAAG;IAQrC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,GAAG,GAAG;CAShD"}
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
4
4
  * Licensed under the GNU Affero General Public License (AGPL).
5
- * See License-AGPL.txt in the project root for license information.
5
+ * See License.AGPL.txt in the project root for license information.
6
6
  */
7
7
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
8
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -19,18 +19,16 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.KeyProviderImpl = exports.KeyProviderConfig = exports.KeyProvider = void 0;
21
21
  const inversify_1 = require("inversify");
22
- exports.KeyProvider = Symbol('KeyProvider');
23
- exports.KeyProviderConfig = Symbol('KeyProviderConfig');
22
+ exports.KeyProvider = Symbol("KeyProvider");
23
+ exports.KeyProviderConfig = Symbol("KeyProviderConfig");
24
24
  let KeyProviderImpl = class KeyProviderImpl {
25
25
  constructor(config) {
26
26
  this.config = config;
27
27
  }
28
28
  static loadKeyConfigFromJsonString(configStr) {
29
29
  const keys = (JSON.parse(configStr) || []);
30
- if (!Array.isArray(keys)
31
- || keys.length < 0
32
- || 1 !== keys.reduce((p, k) => k.primary ? p + 1 : p, 0)) {
33
- throw new Error('Invalid key config!');
30
+ if (!Array.isArray(keys) || keys.length < 0 || 1 !== keys.reduce((p, k) => (k.primary ? p + 1 : p), 0)) {
31
+ throw new Error("Invalid key config!");
34
32
  }
35
33
  return keys;
36
34
  }
@@ -40,7 +38,7 @@ let KeyProviderImpl = class KeyProviderImpl {
40
38
  getPrimaryKey() {
41
39
  const primaryKey = this.keys.find((key) => !!key.primary);
42
40
  if (!primaryKey) {
43
- throw new Error('No primary encryption key found!');
41
+ throw new Error("No primary encryption key found!");
44
42
  }
45
43
  return this.configToKey(primaryKey);
46
44
  }
@@ -55,9 +53,9 @@ let KeyProviderImpl = class KeyProviderImpl {
55
53
  return {
56
54
  metadata: {
57
55
  name: config.name,
58
- version: config.version
56
+ version: config.version,
59
57
  },
60
- material: new Buffer(config.material, 'base64')
58
+ material: Buffer.from(config.material, "base64"),
61
59
  };
62
60
  }
63
61
  };
@@ -1 +1 @@
1
- {"version":3,"file":"key-provider.js","sourceRoot":"","sources":["../../src/encryption/key-provider.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;AAEH,yCAA+C;AAYlC,QAAA,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAYpC,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAM7D,IAAa,eAAe,GAA5B,MAAa,eAAe;IAYxB,YAA0D,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IAVvF,MAAM,CAAC,2BAA2B,CAAC,SAAiB;QAChD,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAgB,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;eACjB,IAAI,CAAC,MAAM,GAAG,CAAC;eACf,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YAC1D,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAID,IAAc,IAAI;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IAC3B,CAAC;IAED,aAAa;QACT,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACvD;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,SAAS,CAAC,QAAqB;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9F,IAAI,CAAC,GAAG,EAAE;YACN,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;SACrF;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAES,WAAW,CAAC,MAAiB;QACnC,OAAO;YACH,QAAQ,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;aAC1B;YACD,QAAQ,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC;SAClD,CAAC;IACN,CAAC;CACJ,CAAA;AA3CY,eAAe;IAD3B,IAAA,sBAAU,GAAE;IAaI,WAAA,IAAA,kBAAM,EAAC,yBAAiB,CAAC,CAAA;;GAZ7B,eAAe,CA2C3B;AA3CY,0CAAe"}
1
+ {"version":3,"file":"key-provider.js","sourceRoot":"","sources":["../../src/encryption/key-provider.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;AAEH,yCAA+C;AAYlC,QAAA,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAYpC,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAM7D,IAAa,eAAe,GAA5B,MAAa,eAAe;IASxB,YAA0D,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IARvF,MAAM,CAAC,2BAA2B,CAAC,SAAiB;QAChD,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAgB,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YACpG,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAID,IAAc,IAAI;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,aAAa;QACT,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;SACvD;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,SAAS,CAAC,QAAqB;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9F,IAAI,CAAC,GAAG,EAAE;YACN,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;SACrF;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAES,WAAW,CAAC,MAAiB;QACnC,OAAO;YACH,QAAQ,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;aAC1B;YACD,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC;SACnD,CAAC;IACN,CAAC;CACJ,CAAA;AAxCY,eAAe;IAD3B,IAAA,sBAAU,GAAE;IAUI,WAAA,IAAA,kBAAM,EAAC,yBAAiB,CAAC,CAAA;;GAT7B,eAAe,CAwC3B;AAxCY,0CAAe"}
package/lib/env.d.ts CHANGED
@@ -1,15 +1,10 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
- export declare function translateLegacyStagename(kubeStage: string): KubeStage;
7
6
  export declare abstract class AbstractComponentEnv {
8
- readonly kubeStage: KubeStage;
9
- readonly installationLongname: string;
10
- readonly installationShortname: string;
11
7
  }
12
- export declare type KubeStage = 'production' | 'prodcopy' | 'staging' | 'dev';
13
8
  export declare function getEnvVar(name: string, defaultValue?: string): string;
14
9
  export declare function filePathTelepresenceAware(filePath: string): string;
15
10
  export declare function getEnvVarParsed<T>(name: string, parser: (value: string) => T, defaultValue?: string): T;
package/lib/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAOrE;AAED,8BACsB,oBAAoB;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAA2D;IAExF,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAA4C;IACjF,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAA6C;CACtF;AAED,oBAAY,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,CAAC;AAEtE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAMrE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKlE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAEvG"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,8BACsB,oBAAoB;CAAG;AAE7C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAMrE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKlE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAEvG"}
package/lib/env.js CHANGED
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
4
4
  * Licensed under the GNU Affero General Public License (AGPL).
5
- * See License-AGPL.txt in the project root for license information.
5
+ * See License.AGPL.txt in the project root for license information.
6
6
  */
7
7
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
8
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -11,28 +11,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
11
11
  return c > 3 && r && Object.defineProperty(target, key, r), r;
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.getEnvVarParsed = exports.filePathTelepresenceAware = exports.getEnvVar = exports.AbstractComponentEnv = exports.translateLegacyStagename = void 0;
14
+ exports.getEnvVarParsed = exports.filePathTelepresenceAware = exports.getEnvVar = exports.AbstractComponentEnv = void 0;
15
15
  const inversify_1 = require("inversify");
16
- const legacyStagenameTranslation = {
17
- "production": "production",
18
- "staging": "prodcopy",
19
- "devstaging": "dev",
20
- "dev": "dev"
21
- };
22
- function translateLegacyStagename(kubeStage) {
23
- const stage = legacyStagenameTranslation[kubeStage];
24
- if (!stage) {
25
- throw new Error(`Invalid KUBE_STAGE: ${kubeStage}`);
26
- }
27
- return stage;
28
- }
29
- exports.translateLegacyStagename = translateLegacyStagename;
30
16
  let AbstractComponentEnv = class AbstractComponentEnv {
31
- constructor() {
32
- this.kubeStage = getEnvVarParsed('KUBE_STAGE', translateLegacyStagename);
33
- this.installationLongname = getEnvVar("GITPOD_INSTALLATION_LONGNAME");
34
- this.installationShortname = getEnvVar("GITPOD_INSTALLATION_SHORTNAME");
35
- }
36
17
  };
37
18
  AbstractComponentEnv = __decorate([
38
19
  (0, inversify_1.injectable)()
package/lib/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;AAEH,yCAAuC;AAEvC,MAAM,0BAA0B,GAAiC;IAC7D,YAAY,EAAE,YAAY;IAC1B,SAAS,EAAE,UAAU;IACrB,YAAY,EAAE,KAAK;IACnB,KAAK,EAAE,KAAK;CACf,CAAA;AAED,SAAgB,wBAAwB,CAAC,SAAiB;IACtD,MAAM,KAAK,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;KACvD;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAPD,4DAOC;AAGD,IAAsB,oBAAoB,GAA1C,MAAsB,oBAAoB;IAA1C;QACa,cAAS,GAAc,eAAe,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC;QAE/E,yBAAoB,GAAW,SAAS,CAAC,8BAA8B,CAAC,CAAA;QACxE,0BAAqB,GAAW,SAAS,CAAC,+BAA+B,CAAC,CAAA;IACvF,CAAC;CAAA,CAAA;AALqB,oBAAoB;IADzC,IAAA,sBAAU,GAAE;GACS,oBAAoB,CAKzC;AALqB,oDAAoB;AAS1C,SAAgB,SAAS,CAAC,IAAY,EAAE,YAAqB;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;IAChD,IAAI,CAAC,KAAK,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,EAAE,CAAC,CAAC;KACvE;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAND,8BAMC;AAED,SAAgB,yBAAyB,CAAC,QAAgB;IACtD,IAAI,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;QAC3C,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAC;KACvD;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AALD,8DAKC;AAED,SAAgB,eAAe,CAAI,IAAY,EAAE,MAA4B,EAAE,YAAqB;IAChG,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;AACjD,CAAC;AAFD,0CAEC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;AAEH,yCAAuC;AAGvC,IAAsB,oBAAoB,GAA1C,MAAsB,oBAAoB;CAAG,CAAA;AAAvB,oBAAoB;IADzC,IAAA,sBAAU,GAAE;GACS,oBAAoB,CAAG;AAAvB,oDAAoB;AAE1C,SAAgB,SAAS,CAAC,IAAY,EAAE,YAAqB;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;IAChD,IAAI,CAAC,KAAK,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,EAAE,CAAC,CAAC;KACvE;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAND,8BAMC;AAED,SAAgB,yBAAyB,CAAC,QAAgB;IACtD,IAAI,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;QAC3C,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAC;KACvD;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AALD,8DAKC;AAED,SAAgB,eAAe,CAAI,IAAY,EAAE,MAA4B,EAAE,YAAqB;IAChG,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;AACjD,CAAC;AAFD,0CAEC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2022 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
+ import { Client } from "./types";
7
+ export declare function newAlwaysReturningDefaultValueClient(): Client;
8
+ //# sourceMappingURL=always-default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"always-default.d.ts","sourceRoot":"","sources":["../../src/experiments/always-default.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAc,MAAM,EAAE,MAAM,SAAS,CAAC;AAgB7C,wBAAgB,oCAAoC,IAAI,MAAM,CAE7D"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.newAlwaysReturningDefaultValueClient = void 0;
4
+ // AlwaysReturningDefaultValueClient is an implemention of an experiments.Client which performs no lookup/network operation
5
+ // and always returns the default value for a given experimentName.
6
+ // This client is used for non-SaaS version of Gitpod, in particular for self-hosted installations where external
7
+ // network connections are not desirable or even possible.
8
+ class AlwaysReturningDefaultValueClient {
9
+ getValueAsync(experimentName, defaultValue, attributes) {
10
+ return Promise.resolve(defaultValue);
11
+ }
12
+ dispose() {
13
+ // there is nothing to dispose, no-op.
14
+ }
15
+ }
16
+ function newAlwaysReturningDefaultValueClient() {
17
+ return new AlwaysReturningDefaultValueClient();
18
+ }
19
+ exports.newAlwaysReturningDefaultValueClient = newAlwaysReturningDefaultValueClient;
20
+ //# sourceMappingURL=always-default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"always-default.js","sourceRoot":"","sources":["../../src/experiments/always-default.ts"],"names":[],"mappings":";;;AAOA,2HAA2H;AAC3H,mEAAmE;AACnE,iHAAiH;AACjH,0DAA0D;AAC1D,MAAM,iCAAiC;IACnC,aAAa,CAAI,cAAsB,EAAE,YAAe,EAAE,UAAsB;QAC5E,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACzC,CAAC;IAED,OAAO;QACH,sCAAsC;IAC1C,CAAC;CACJ;AAED,SAAgB,oCAAoC;IAChD,OAAO,IAAI,iCAAiC,EAAE,CAAC;AACnD,CAAC;AAFD,oFAEC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) 2022 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
+ import { Client } from "./types";
7
+ export declare type ConfigCatClientFactory = () => Client;
8
+ export declare const ConfigCatClientFactory: unique symbol;
9
+ export declare function getExperimentsClientForBackend(): Client;
10
+ //# sourceMappingURL=configcat-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configcat-server.d.ts","sourceRoot":"","sources":["../../src/experiments/configcat-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAQjC,oBAAY,sBAAsB,GAAG,MAAM,MAAM,CAAC;AAClD,eAAO,MAAM,sBAAsB,eAAmC,CAAC;AAEvE,wBAAgB,8BAA8B,IAAI,MAAM,CAwBvD"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2022 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
+ exports.getExperimentsClientForBackend = exports.ConfigCatClientFactory = void 0;
9
+ const configcat = require("configcat-node");
10
+ const configcat_common_1 = require("configcat-common");
11
+ const configcat_1 = require("./configcat");
12
+ const always_default_1 = require("./always-default");
13
+ let client;
14
+ exports.ConfigCatClientFactory = Symbol("ConfigCatClientFactory");
15
+ function getExperimentsClientForBackend() {
16
+ // We have already instantiated a client, we can just re-use it.
17
+ if (client !== undefined) {
18
+ return client;
19
+ }
20
+ // Retrieve SDK key from ENV Variable
21
+ const sdkKey = process.env.CONFIGCAT_SDK_KEY;
22
+ // Self-hosted installations do not set the ConfigCat SDK key, so always use a client which returns the default value.
23
+ if (sdkKey === undefined || sdkKey === "") {
24
+ client = (0, always_default_1.newAlwaysReturningDefaultValueClient)();
25
+ return client;
26
+ }
27
+ const configCatClient = configcat.createClient(sdkKey, {
28
+ pollIntervalSeconds: 3 * 60,
29
+ requestTimeoutMs: 2000,
30
+ logger: configcat.createConsoleLogger(configcat_common_1.LogLevel.Error),
31
+ maxInitWaitTimeSeconds: 0,
32
+ });
33
+ client = new configcat_1.ConfigCatClient(configCatClient);
34
+ return client;
35
+ }
36
+ exports.getExperimentsClientForBackend = getExperimentsClientForBackend;
37
+ //# sourceMappingURL=configcat-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configcat-server.js","sourceRoot":"","sources":["../../src/experiments/configcat-server.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,4CAA4C;AAC5C,uDAA4C;AAC5C,2CAA8C;AAC9C,qDAAwE;AAExE,IAAI,MAA0B,CAAC;AAGlB,QAAA,sBAAsB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAEvE,SAAgB,8BAA8B;IAC1C,gEAAgE;IAChE,IAAI,MAAM,KAAK,SAAS,EAAE;QACtB,OAAO,MAAM,CAAC;KACjB;IAED,qCAAqC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAE7C,sHAAsH;IACtH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,EAAE;QACvC,MAAM,GAAG,IAAA,qDAAoC,GAAE,CAAC;QAChD,OAAO,MAAM,CAAC;KACjB;IAED,MAAM,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE;QACnD,mBAAmB,EAAE,CAAC,GAAG,EAAE;QAC3B,gBAAgB,EAAE,IAAI;QACtB,MAAM,EAAE,SAAS,CAAC,mBAAmB,CAAC,2BAAQ,CAAC,KAAK,CAAC;QACrD,sBAAsB,EAAE,CAAC;KAC5B,CAAC,CAAC;IAEH,MAAM,GAAG,IAAI,2BAAe,CAAC,eAAe,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC;AAClB,CAAC;AAxBD,wEAwBC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2022 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
+ import { Attributes, Client } from "./types";
7
+ import { User as ConfigCatUser } from "configcat-common/lib/RolloutEvaluator";
8
+ import { IConfigCatClient } from "configcat-common/lib/ConfigCatClient";
9
+ export declare const USER_ID_ATTRIBUTE = "user_id";
10
+ export declare const PROJECT_ID_ATTRIBUTE = "project_id";
11
+ export declare const TEAM_ID_ATTRIBUTE = "team_id";
12
+ export declare const TEAM_NAME_ATTRIBUTE = "team_name";
13
+ export declare const BILLING_TIER_ATTRIBUTE = "billing_tier";
14
+ export declare class ConfigCatClient implements Client {
15
+ private client;
16
+ constructor(cc: IConfigCatClient);
17
+ getValueAsync<T>(experimentName: string, defaultValue: T, attributes: Attributes): Promise<T>;
18
+ dispose(): void;
19
+ }
20
+ export declare function attributesToUser(attributes: Attributes): ConfigCatUser;
21
+ //# sourceMappingURL=configcat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configcat.d.ts","sourceRoot":"","sources":["../../src/experiments/configcat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAGxE,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAC3C,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAC3C,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AAErD,qBAAa,eAAgB,YAAW,MAAM;IAC1C,OAAO,CAAC,MAAM,CAAmB;gBAErB,EAAE,EAAE,gBAAgB;IAIhC,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7F,OAAO,IAAI,IAAI;CAGlB;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,CAsBtE"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2022 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
+ exports.attributesToUser = exports.ConfigCatClient = exports.BILLING_TIER_ATTRIBUTE = exports.TEAM_NAME_ATTRIBUTE = exports.TEAM_ID_ATTRIBUTE = exports.PROJECT_ID_ATTRIBUTE = exports.USER_ID_ATTRIBUTE = void 0;
9
+ const RolloutEvaluator_1 = require("configcat-common/lib/RolloutEvaluator");
10
+ const protocol_1 = require("../protocol");
11
+ exports.USER_ID_ATTRIBUTE = "user_id";
12
+ exports.PROJECT_ID_ATTRIBUTE = "project_id";
13
+ exports.TEAM_ID_ATTRIBUTE = "team_id";
14
+ exports.TEAM_NAME_ATTRIBUTE = "team_name";
15
+ exports.BILLING_TIER_ATTRIBUTE = "billing_tier";
16
+ class ConfigCatClient {
17
+ constructor(cc) {
18
+ this.client = cc;
19
+ }
20
+ getValueAsync(experimentName, defaultValue, attributes) {
21
+ return this.client.getValueAsync(experimentName, defaultValue, attributesToUser(attributes));
22
+ }
23
+ dispose() {
24
+ return this.client.dispose();
25
+ }
26
+ }
27
+ exports.ConfigCatClient = ConfigCatClient;
28
+ function attributesToUser(attributes) {
29
+ var _a, _b;
30
+ const userId = ((_a = attributes.user) === null || _a === void 0 ? void 0 : _a.id) || "";
31
+ const email = protocol_1.User.is(attributes.user) ? protocol_1.User.getPrimaryEmail(attributes.user) : ((_b = attributes.user) === null || _b === void 0 ? void 0 : _b.email) || "";
32
+ const custom = {};
33
+ if (userId) {
34
+ custom[exports.USER_ID_ATTRIBUTE] = userId;
35
+ }
36
+ if (attributes.projectId) {
37
+ custom[exports.PROJECT_ID_ATTRIBUTE] = attributes.projectId;
38
+ }
39
+ if (attributes.teamId) {
40
+ custom[exports.TEAM_ID_ATTRIBUTE] = attributes.teamId;
41
+ }
42
+ if (attributes.teamName) {
43
+ custom[exports.TEAM_NAME_ATTRIBUTE] = attributes.teamName;
44
+ }
45
+ if (attributes.billingTier) {
46
+ custom[exports.BILLING_TIER_ATTRIBUTE] = attributes.billingTier;
47
+ }
48
+ return new RolloutEvaluator_1.User(userId, email, "", custom);
49
+ }
50
+ exports.attributesToUser = attributesToUser;
51
+ //# sourceMappingURL=configcat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configcat.js","sourceRoot":"","sources":["../../src/experiments/configcat.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,4EAA8E;AAE9E,0CAAmC;AAEtB,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAClC,QAAA,sBAAsB,GAAG,cAAc,CAAC;AAErD,MAAa,eAAe;IAGxB,YAAY,EAAoB;QAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,aAAa,CAAI,cAAsB,EAAE,YAAe,EAAE,UAAsB;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,YAAY,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;IACjG,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;CACJ;AAdD,0CAcC;AAED,SAAgB,gBAAgB,CAAC,UAAsB;;IACnD,MAAM,MAAM,GAAG,CAAA,MAAA,UAAU,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,eAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAI,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA,MAAA,UAAU,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAC;IAE9G,MAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,IAAI,MAAM,EAAE;QACR,MAAM,CAAC,yBAAiB,CAAC,GAAG,MAAM,CAAC;KACtC;IACD,IAAI,UAAU,CAAC,SAAS,EAAE;QACtB,MAAM,CAAC,4BAAoB,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC;KACvD;IACD,IAAI,UAAU,CAAC,MAAM,EAAE;QACnB,MAAM,CAAC,yBAAiB,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;KACjD;IACD,IAAI,UAAU,CAAC,QAAQ,EAAE;QACrB,MAAM,CAAC,2BAAmB,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC;KACrD;IACD,IAAI,UAAU,CAAC,WAAW,EAAE;QACxB,MAAM,CAAC,8BAAsB,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC;KAC3D;IAED,OAAO,IAAI,uBAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AAtBD,4CAsBC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright (c) 2022 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
+ import { BillingTier, User } from "../protocol";
7
+ export declare const Client: unique symbol;
8
+ export interface Attributes {
9
+ user?: User | {
10
+ id: string;
11
+ email?: string;
12
+ };
13
+ billingTier?: BillingTier;
14
+ projectId?: string;
15
+ teamId?: string;
16
+ teamName?: string;
17
+ }
18
+ export interface Client {
19
+ getValueAsync<T>(experimentName: string, defaultValue: T, attributes: Attributes): Promise<T>;
20
+ dispose(): void;
21
+ }
22
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/experiments/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,MAAM,eAAmB,CAAC;AAIvC,MAAM,WAAW,UAAU;IAEvB,IAAI,CAAC,EAAE,IAAI,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAG7C,WAAW,CAAC,EAAE,WAAW,CAAC;IAG1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,MAAM;IACnB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAG9F,OAAO,IAAI,IAAI,CAAC;CACnB"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2022 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
+ exports.Client = void 0;
9
+ exports.Client = Symbol("Client");
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/experiments/types.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIU,QAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Copyright (c) 2023 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
+ import { WorkspaceInstancePhase } from "./workspace-instance";
7
+ import { RemoteTrackMessage } from "./analytics";
8
+ /**
9
+ * IDEFrontendDashboardService enables IDE related communications
10
+ * between the workspace to gitpod origins. Use it to communicate
11
+ * between IDE and dashboard iframes, never use
12
+ * `window.postMessage` directly.
13
+ *
14
+ * **Security Note**: never expose information about other workspaces
15
+ * or sensitive information for the current workspace, i.e. owner token.
16
+ */
17
+ export declare namespace IDEFrontendDashboardService {
18
+ /**
19
+ * IClient is the client side which is using in supervisor frontend
20
+ */
21
+ interface IClient {
22
+ trackEvent(msg: RemoteTrackMessage): void;
23
+ activeHeartbeat(): void;
24
+ setState(state: SetStateData): void;
25
+ openDesktopIDE(url: string): void;
26
+ }
27
+ /**
28
+ * IServer is the server side which is using in dashboard loading screen
29
+ */
30
+ interface IServer {
31
+ sendStatusUpdate(status: Status): void;
32
+ relocate(url: string): void;
33
+ openBrowserIDE(): void;
34
+ }
35
+ interface Status {
36
+ workspaceID: string;
37
+ loggedUserId: string;
38
+ instanceId?: string;
39
+ ideUrl?: string;
40
+ statusPhase?: WorkspaceInstancePhase;
41
+ workspaceDescription: string;
42
+ workspaceType: string;
43
+ }
44
+ interface SetStateData {
45
+ ideFrontendFailureCause?: string;
46
+ desktopIDE?: {
47
+ clientID: string;
48
+ link: string;
49
+ label?: string;
50
+ };
51
+ }
52
+ /**
53
+ * interface for post message that send status update from dashboard to supervisor
54
+ */
55
+ interface StatusUpdateEventData {
56
+ version?: number;
57
+ type: "ide-status-update";
58
+ status: Status;
59
+ }
60
+ interface HeartbeatEventData {
61
+ type: "ide-heartbeat";
62
+ }
63
+ interface TrackEventData {
64
+ type: "ide-track-event";
65
+ msg: RemoteTrackMessage;
66
+ }
67
+ interface RelocateEventData {
68
+ type: "ide-relocate";
69
+ url: string;
70
+ }
71
+ interface SetStateEventData {
72
+ type: "ide-set-state";
73
+ state: SetStateData;
74
+ }
75
+ interface OpenBrowserIDE {
76
+ type: "ide-open-browser";
77
+ }
78
+ interface OpenDesktopIDE {
79
+ type: "ide-open-desktop";
80
+ url: string;
81
+ }
82
+ function isStatusUpdateEventData(obj: any): obj is StatusUpdateEventData;
83
+ function isHeartbeatEventData(obj: any): obj is HeartbeatEventData;
84
+ function isTrackEventData(obj: any): obj is TrackEventData;
85
+ function isRelocateEventData(obj: any): obj is RelocateEventData;
86
+ function isSetStateEventData(obj: any): obj is SetStateEventData;
87
+ function isOpenBrowserIDE(obj: any): obj is OpenBrowserIDE;
88
+ function isOpenDesktopIDE(obj: any): obj is OpenDesktopIDE;
89
+ }
90
+ //# sourceMappingURL=frontend-dashboard-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontend-dashboard-service.d.ts","sourceRoot":"","sources":["../src/frontend-dashboard-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;GAQG;AACH,yBAAiB,2BAA2B,CAAC;IACzC;;OAEG;IACH,UAAiB,OAAO;QACpB,UAAU,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;QAC1C,eAAe,IAAI,IAAI,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;QACpC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;KACrC;IAED;;OAEG;IACH,UAAiB,OAAO;QACpB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,cAAc,IAAI,IAAI,CAAC;KAC1B;IAED,UAAiB,MAAM;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QAErB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,sBAAsB,CAAC;QAErC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,aAAa,EAAE,MAAM,CAAC;KACzB;IAED,UAAiB,YAAY;QACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,UAAU,CAAC,EAAE;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACL;IAED;;OAEG;IACH,UAAiB,qBAAqB;QAElC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,mBAAmB,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC;KAClB;IAED,UAAiB,kBAAkB;QAC/B,IAAI,EAAE,eAAe,CAAC;KACzB;IAED,UAAiB,cAAc;QAC3B,IAAI,EAAE,iBAAiB,CAAC;QACxB,GAAG,EAAE,kBAAkB,CAAC;KAC3B;IAED,UAAiB,iBAAiB;QAC9B,IAAI,EAAE,cAAc,CAAC;QACrB,GAAG,EAAE,MAAM,CAAC;KACf;IAED,UAAiB,iBAAiB;QAC9B,IAAI,EAAE,eAAe,CAAC;QACtB,KAAK,EAAE,YAAY,CAAC;KACvB;IAED,UAAiB,cAAc;QAC3B,IAAI,EAAE,kBAAkB,CAAC;KAC5B;IAED,UAAiB,cAAc;QAC3B,IAAI,EAAE,kBAAkB,CAAC;QACzB,GAAG,EAAE,MAAM,CAAC;KACf;IAED,SAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,qBAAqB,CAE9E;IAED,SAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,kBAAkB,CAExE;IAED,SAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE;IAED,SAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,iBAAiB,CAEtE;IAED,SAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,iBAAiB,CAEtE;IAED,SAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE;IAED,SAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE;CACJ"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2023 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
+ exports.IDEFrontendDashboardService = void 0;
9
+ /**
10
+ * IDEFrontendDashboardService enables IDE related communications
11
+ * between the workspace to gitpod origins. Use it to communicate
12
+ * between IDE and dashboard iframes, never use
13
+ * `window.postMessage` directly.
14
+ *
15
+ * **Security Note**: never expose information about other workspaces
16
+ * or sensitive information for the current workspace, i.e. owner token.
17
+ */
18
+ var IDEFrontendDashboardService;
19
+ (function (IDEFrontendDashboardService) {
20
+ function isStatusUpdateEventData(obj) {
21
+ return obj != null && typeof obj === "object" && obj.type === "ide-status-update";
22
+ }
23
+ IDEFrontendDashboardService.isStatusUpdateEventData = isStatusUpdateEventData;
24
+ function isHeartbeatEventData(obj) {
25
+ return obj != null && typeof obj === "object" && obj.type === "ide-heartbeat";
26
+ }
27
+ IDEFrontendDashboardService.isHeartbeatEventData = isHeartbeatEventData;
28
+ function isTrackEventData(obj) {
29
+ return obj != null && typeof obj === "object" && obj.type === "ide-track-event";
30
+ }
31
+ IDEFrontendDashboardService.isTrackEventData = isTrackEventData;
32
+ function isRelocateEventData(obj) {
33
+ return obj != null && typeof obj === "object" && obj.type === "ide-relocate";
34
+ }
35
+ IDEFrontendDashboardService.isRelocateEventData = isRelocateEventData;
36
+ function isSetStateEventData(obj) {
37
+ return obj != null && typeof obj === "object" && obj.type === "ide-set-state";
38
+ }
39
+ IDEFrontendDashboardService.isSetStateEventData = isSetStateEventData;
40
+ function isOpenBrowserIDE(obj) {
41
+ return obj != null && typeof obj === "object" && obj.type === "ide-open-browser";
42
+ }
43
+ IDEFrontendDashboardService.isOpenBrowserIDE = isOpenBrowserIDE;
44
+ function isOpenDesktopIDE(obj) {
45
+ return obj != null && typeof obj === "object" && obj.type === "ide-open-desktop";
46
+ }
47
+ IDEFrontendDashboardService.isOpenDesktopIDE = isOpenDesktopIDE;
48
+ })(IDEFrontendDashboardService = exports.IDEFrontendDashboardService || (exports.IDEFrontendDashboardService = {}));
49
+ //# sourceMappingURL=frontend-dashboard-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontend-dashboard-service.js","sourceRoot":"","sources":["../src/frontend-dashboard-service.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAKH;;;;;;;;GAQG;AACH,IAAiB,2BAA2B,CA0G3C;AA1GD,WAAiB,2BAA2B;IA+ExC,SAAgB,uBAAuB,CAAC,GAAQ;QAC5C,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC;IACtF,CAAC;IAFe,mDAAuB,0BAEtC,CAAA;IAED,SAAgB,oBAAoB,CAAC,GAAQ;QACzC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC;IAClF,CAAC;IAFe,gDAAoB,uBAEnC,CAAA;IAED,SAAgB,gBAAgB,CAAC,GAAQ;QACrC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,iBAAiB,CAAC;IACpF,CAAC;IAFe,4CAAgB,mBAE/B,CAAA;IAED,SAAgB,mBAAmB,CAAC,GAAQ;QACxC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC;IACjF,CAAC;IAFe,+CAAmB,sBAElC,CAAA;IAED,SAAgB,mBAAmB,CAAC,GAAQ;QACxC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC;IAClF,CAAC;IAFe,+CAAmB,sBAElC,CAAA;IAED,SAAgB,gBAAgB,CAAC,GAAQ;QACrC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC;IACrF,CAAC;IAFe,4CAAgB,mBAE/B,CAAA;IAED,SAAgB,gBAAgB,CAAC,GAAQ;QACrC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC;IACrF,CAAC;IAFe,4CAAgB,mBAE/B,CAAA;AACL,CAAC,EA1GgB,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QA0G3C"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
- * See License-AGPL.txt in the project root for license information.
4
+ * See License.AGPL.txt in the project root for license information.
5
5
  */
6
6
  import { WorkspaceConfig } from "./protocol";
7
7
  export declare type MaybeConfig = WorkspaceConfig | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"gitpod-file-parser.d.ts","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,eAAe,EAAmB,MAAM,YAAY,CAAC;AAE9D,oBAAY,WAAW,GAAG,eAAe,GAAG,SAAS,CAAA;AAQrD,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,eAAe,CAAA;IAC9B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC9B;AAED,qBACa,gBAAgB;IAElB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,KAAK,EAAE,aAAa,GAAE,eAAoB,GAAG,WAAW;CAoCrG"}
1
+ {"version":3,"file":"gitpod-file-parser.d.ts","sourceRoot":"","sources":["../src/gitpod-file-parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,eAAe,EAAmB,MAAM,YAAY,CAAC;AAE9D,oBAAY,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;AAQtD,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,qBACa,gBAAgB;IAClB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,KAAK,EAAE,aAAa,GAAE,eAAoB,GAAG,WAAW;CAoCrG"}
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Copyright (c) 2020 Gitpod GmbH. All rights reserved.
4
4
  * Licensed under the GNU Affero General Public License (AGPL).
5
- * See License-AGPL.txt in the project root for license information.
5
+ * See License.AGPL.txt in the project root for license information.
6
6
  */
7
7
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
8
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -17,7 +17,7 @@ const yaml = require("js-yaml");
17
17
  const Ajv = require("ajv");
18
18
  const logging_1 = require("./util/logging");
19
19
  const protocol_1 = require("./protocol");
20
- const schema = require('../data/gitpod-schema.json');
20
+ const schema = require("../data/gitpod-schema.json");
21
21
  const validate = new Ajv().compile(schema);
22
22
  const defaultParseOptions = {
23
23
  acceptPortRanges: false,
@@ -28,12 +28,12 @@ let GitpodFileParser = class GitpodFileParser {
28
28
  try {
29
29
  const parsedConfig = yaml.safeLoad(content);
30
30
  validate(parsedConfig);
31
- const validationErrors = validate.errors ? validate.errors.map(e => e.message || e.keyword) : undefined;
31
+ const validationErrors = validate.errors ? validate.errors.map((e) => e.message || e.keyword) : undefined;
32
32
  if (validationErrors && validationErrors.length > 0) {
33
33
  return {
34
34
  config: defaultConfig,
35
35
  parsedConfig,
36
- validationErrors
36
+ validationErrors,
37
37
  };
38
38
  }
39
39
  const overrides = {};
@@ -42,14 +42,14 @@ let GitpodFileParser = class GitpodFileParser {
42
42
  }
43
43
  return {
44
44
  config: Object.assign(Object.assign(Object.assign({}, defaultConfig), parsedConfig), overrides),
45
- parsedConfig
45
+ parsedConfig,
46
46
  };
47
47
  }
48
48
  catch (err) {
49
- logging_1.log.error('Unparsable Gitpod configuration', err, { content });
49
+ logging_1.log.error("Unparsable Gitpod configuration", err, { content });
50
50
  return {
51
51
  config: defaultConfig,
52
- validationErrors: ['Unparsable Gitpod configuration: ' + err.toString()]
52
+ validationErrors: ["Unparsable Gitpod configuration: " + err.toString()],
53
53
  };
54
54
  }
55
55
  }