@gitpod/gitpod-protocol 0.1.5-server-vscode-oauth2.11 → 0.1.5-server-vscode-oauth2.25

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 (319) hide show
  1. package/data/gitpod-schema.json +49 -4
  2. package/lib/accounting-protocol.d.ts +10 -11
  3. package/lib/accounting-protocol.d.ts.map +1 -1
  4. package/lib/accounting-protocol.js +26 -36
  5. package/lib/accounting-protocol.js.map +1 -1
  6. package/lib/admin-protocol.d.ts +12 -0
  7. package/lib/admin-protocol.d.ts.map +1 -1
  8. package/lib/admin-protocol.js.map +1 -1
  9. package/lib/analytics.d.ts +4 -4
  10. package/lib/analytics.d.ts.map +1 -1
  11. package/lib/analytics.js.map +1 -1
  12. package/lib/auth.d.ts.map +1 -1
  13. package/lib/context-url.d.ts +18 -5
  14. package/lib/context-url.d.ts.map +1 -1
  15. package/lib/context-url.js +59 -6
  16. package/lib/context-url.js.map +1 -1
  17. package/lib/context-url.spec.d.ts +2 -0
  18. package/lib/context-url.spec.d.ts.map +1 -1
  19. package/lib/context-url.spec.js +40 -4
  20. package/lib/context-url.spec.js.map +1 -1
  21. package/lib/email-protocol.d.ts +1 -1
  22. package/lib/email-protocol.d.ts.map +1 -1
  23. package/lib/email-protocol.js +2 -2
  24. package/lib/email-protocol.js.map +1 -1
  25. package/lib/encryption/container-module.d.ts.map +1 -1
  26. package/lib/encryption/container-module.js +1 -1
  27. package/lib/encryption/container-module.js.map +1 -1
  28. package/lib/encryption/encryption-engine.d.ts.map +1 -1
  29. package/lib/encryption/encryption-engine.js +8 -8
  30. package/lib/encryption/encryption-engine.js.map +1 -1
  31. package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
  32. package/lib/encryption/encryption-engine.spec.js +2 -3
  33. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  34. package/lib/encryption/encryption-service.d.ts.map +1 -1
  35. package/lib/encryption/encryption-service.js +4 -4
  36. package/lib/encryption/encryption-service.js.map +1 -1
  37. package/lib/encryption/key-provider.d.ts.map +1 -1
  38. package/lib/encryption/key-provider.js +9 -11
  39. package/lib/encryption/key-provider.js.map +1 -1
  40. package/lib/env.d.ts +1 -1
  41. package/lib/env.d.ts.map +1 -1
  42. package/lib/env.js +6 -6
  43. package/lib/env.js.map +1 -1
  44. package/lib/gitpod-file-parser.d.ts.map +1 -1
  45. package/lib/gitpod-file-parser.js +7 -7
  46. package/lib/gitpod-file-parser.js.map +1 -1
  47. package/lib/gitpod-file-parser.spec.js +42 -39
  48. package/lib/gitpod-file-parser.spec.js.map +1 -1
  49. package/lib/gitpod-service.d.ts +57 -31
  50. package/lib/gitpod-service.d.ts.map +1 -1
  51. package/lib/gitpod-service.js +26 -27
  52. package/lib/gitpod-service.js.map +1 -1
  53. package/lib/headless-workspace-log.d.ts +1 -0
  54. package/lib/headless-workspace-log.d.ts.map +1 -1
  55. package/lib/headless-workspace-log.js +2 -1
  56. package/lib/headless-workspace-log.js.map +1 -1
  57. package/lib/ide-frontend-service.d.ts +1 -1
  58. package/lib/ide-protocol.d.ts +105 -0
  59. package/lib/ide-protocol.d.ts.map +1 -0
  60. package/lib/ide-protocol.js +8 -0
  61. package/lib/ide-protocol.js.map +1 -0
  62. package/lib/index.d.ts +16 -13
  63. package/lib/index.d.ts.map +1 -1
  64. package/lib/index.js +3 -0
  65. package/lib/index.js.map +1 -1
  66. package/lib/installation-admin-protocol.d.ts +27 -0
  67. package/lib/installation-admin-protocol.d.ts.map +1 -0
  68. package/lib/installation-admin-protocol.js +30 -0
  69. package/lib/installation-admin-protocol.js.map +1 -0
  70. package/lib/license-protocol.d.ts.map +1 -1
  71. package/lib/license-protocol.js.map +1 -1
  72. package/lib/messaging/browser/connection.d.ts +1 -1
  73. package/lib/messaging/browser/connection.d.ts.map +1 -1
  74. package/lib/messaging/browser/connection.js +21 -21
  75. package/lib/messaging/browser/connection.js.map +1 -1
  76. package/lib/messaging/browser/window-connection.d.ts +4 -4
  77. package/lib/messaging/browser/window-connection.d.ts.map +1 -1
  78. package/lib/messaging/browser/window-connection.js +10 -7
  79. package/lib/messaging/browser/window-connection.js.map +1 -1
  80. package/lib/messaging/client-call-metrics.d.ts +2 -2
  81. package/lib/messaging/client-call-metrics.d.ts.map +1 -1
  82. package/lib/messaging/client-call-metrics.js +21 -21
  83. package/lib/messaging/client-call-metrics.js.map +1 -1
  84. package/lib/messaging/error.d.ts +2 -1
  85. package/lib/messaging/error.d.ts.map +1 -1
  86. package/lib/messaging/error.js +4 -2
  87. package/lib/messaging/error.js.map +1 -1
  88. package/lib/messaging/handler.d.ts.map +1 -1
  89. package/lib/messaging/handler.js +1 -1
  90. package/lib/messaging/node/connection.d.ts +1 -17
  91. package/lib/messaging/node/connection.d.ts.map +1 -1
  92. package/lib/messaging/node/connection.js +23 -59
  93. package/lib/messaging/node/connection.js.map +1 -1
  94. package/lib/messaging/proxy-factory.d.ts +1 -1
  95. package/lib/messaging/proxy-factory.d.ts.map +1 -1
  96. package/lib/messaging/proxy-factory.js +7 -9
  97. package/lib/messaging/proxy-factory.js.map +1 -1
  98. package/lib/oss-allowlist.d.ts +14 -0
  99. package/lib/oss-allowlist.d.ts.map +1 -0
  100. package/lib/oss-allowlist.js +8 -0
  101. package/lib/oss-allowlist.js.map +1 -0
  102. package/lib/payment-protocol.d.ts.map +1 -1
  103. package/lib/payment-protocol.js +1 -1
  104. package/lib/payment-protocol.js.map +1 -1
  105. package/lib/permission.d.ts +9 -3
  106. package/lib/permission.d.ts.map +1 -1
  107. package/lib/permission.js +34 -25
  108. package/lib/permission.js.map +1 -1
  109. package/lib/plans.d.ts +4 -4
  110. package/lib/plans.d.ts.map +1 -1
  111. package/lib/plans.js +206 -171
  112. package/lib/plans.js.map +1 -1
  113. package/lib/protocol.d.ts +83 -78
  114. package/lib/protocol.d.ts.map +1 -1
  115. package/lib/protocol.js +96 -85
  116. package/lib/protocol.js.map +1 -1
  117. package/lib/snapshot-url.d.ts +14 -0
  118. package/lib/snapshot-url.d.ts.map +1 -0
  119. package/lib/snapshot-url.js +26 -0
  120. package/lib/snapshot-url.js.map +1 -0
  121. package/{src/theia-plugins.ts → lib/snapshot-url.spec.d.ts} +2 -6
  122. package/lib/snapshot-url.spec.d.ts.map +1 -0
  123. package/lib/snapshot-url.spec.js +41 -0
  124. package/lib/snapshot-url.spec.js.map +1 -0
  125. package/lib/team-subscription-protocol.d.ts +5 -3
  126. package/lib/team-subscription-protocol.d.ts.map +1 -1
  127. package/lib/team-subscription-protocol.js +7 -7
  128. package/lib/team-subscription-protocol.js.map +1 -1
  129. package/lib/teams-projects-protocol.d.ts +13 -2
  130. package/lib/teams-projects-protocol.d.ts.map +1 -1
  131. package/lib/teams-projects-protocol.js +10 -3
  132. package/lib/teams-projects-protocol.js.map +1 -1
  133. package/lib/typings/globals.d.ts +2 -2
  134. package/lib/typings/globals.d.ts.map +1 -1
  135. package/lib/util/analytics.d.ts.map +1 -1
  136. package/lib/util/analytics.js +12 -3
  137. package/lib/util/analytics.js.map +1 -1
  138. package/lib/util/async-iterator.d.ts.map +1 -1
  139. package/lib/util/async-iterator.js +3 -3
  140. package/lib/util/async-iterator.js.map +1 -1
  141. package/lib/util/cancelable.js.map +1 -1
  142. package/lib/util/date-time.js +6 -6
  143. package/lib/util/date-time.js.map +1 -1
  144. package/lib/util/deferred.js.map +1 -1
  145. package/lib/util/disposable.d.ts.map +1 -1
  146. package/lib/util/disposable.js +2 -2
  147. package/lib/util/disposable.js.map +1 -1
  148. package/lib/util/event.d.ts.map +1 -1
  149. package/lib/util/event.js +5 -3
  150. package/lib/util/event.js.map +1 -1
  151. package/lib/util/garbage-collected-cache.d.ts +1 -0
  152. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  153. package/lib/util/garbage-collected-cache.js +6 -2
  154. package/lib/util/garbage-collected-cache.js.map +1 -1
  155. package/lib/util/generate-workspace-id.d.ts +1 -1
  156. package/lib/util/generate-workspace-id.d.ts.map +1 -1
  157. package/lib/util/generate-workspace-id.js +452 -435
  158. package/lib/util/generate-workspace-id.js.map +1 -1
  159. package/lib/util/generate-workspace-id.spec.js +29 -1
  160. package/lib/util/generate-workspace-id.spec.js.map +1 -1
  161. package/lib/util/gitpod-cookie.d.ts +1 -1
  162. package/lib/util/gitpod-cookie.d.ts.map +1 -1
  163. package/lib/util/gitpod-cookie.js +1 -4
  164. package/lib/util/gitpod-cookie.js.map +1 -1
  165. package/lib/util/gitpod-host-url.d.ts +1 -1
  166. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  167. package/lib/util/gitpod-host-url.js +35 -33
  168. package/lib/util/gitpod-host-url.js.map +1 -1
  169. package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
  170. package/lib/util/gitpod-host-url.spec.js +15 -5
  171. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  172. package/lib/util/grpc.d.ts.map +1 -1
  173. package/lib/util/grpc.js.map +1 -1
  174. package/lib/util/jaeger-client-types.d.ts +68 -0
  175. package/lib/util/jaeger-client-types.d.ts.map +1 -0
  176. package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
  177. package/lib/util/jaeger-client-types.js.map +1 -0
  178. package/lib/util/logging.d.ts +33 -33
  179. package/lib/util/logging.d.ts.map +1 -1
  180. package/lib/util/logging.js +22 -23
  181. package/lib/util/logging.js.map +1 -1
  182. package/lib/util/make-link.js +5 -5
  183. package/lib/util/make-link.js.map +1 -1
  184. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  185. package/lib/util/parse-workspace-id.js +2 -3
  186. package/lib/util/parse-workspace-id.js.map +1 -1
  187. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  188. package/lib/util/parse-workspace-id.spec.js +12 -12
  189. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  190. package/lib/util/queue.spec.js +13 -10
  191. package/lib/util/queue.spec.js.map +1 -1
  192. package/lib/util/repeat.d.ts +15 -0
  193. package/lib/util/repeat.d.ts.map +1 -0
  194. package/lib/util/repeat.js +55 -0
  195. package/lib/util/repeat.js.map +1 -0
  196. package/lib/util/semaphore.d.ts.map +1 -1
  197. package/lib/util/semaphore.js.map +1 -1
  198. package/lib/util/skip-if.d.ts.map +1 -1
  199. package/lib/util/skip-if.js.map +1 -1
  200. package/lib/util/timeutil.d.ts.map +1 -1
  201. package/lib/util/timeutil.js +8 -8
  202. package/lib/util/timeutil.js.map +1 -1
  203. package/lib/util/timeutil.spec.d.ts.map +1 -1
  204. package/lib/util/timeutil.spec.js +2 -2
  205. package/lib/util/timeutil.spec.js.map +1 -1
  206. package/lib/util/tracing.d.ts +52 -6
  207. package/lib/util/tracing.d.ts.map +1 -1
  208. package/lib/util/tracing.js +161 -22
  209. package/lib/util/tracing.js.map +1 -1
  210. package/lib/util/tracing.spec.d.ts +7 -0
  211. package/lib/util/tracing.spec.d.ts.map +1 -0
  212. package/lib/util/tracing.spec.js +121 -0
  213. package/lib/util/tracing.spec.js.map +1 -0
  214. package/lib/util/workspace-port-authentication.d.ts +7 -7
  215. package/lib/util/workspace-port-authentication.d.ts.map +1 -1
  216. package/lib/util/workspace-port-authentication.js +8 -11
  217. package/lib/util/workspace-port-authentication.js.map +1 -1
  218. package/lib/workspace-cluster.d.ts +10 -8
  219. package/lib/workspace-cluster.d.ts.map +1 -1
  220. package/lib/workspace-cluster.js +17 -2
  221. package/lib/workspace-cluster.js.map +1 -1
  222. package/lib/workspace-instance.d.ts +23 -4
  223. package/lib/workspace-instance.d.ts.map +1 -1
  224. package/lib/wsready.d.ts +1 -1
  225. package/lib/wsready.d.ts.map +1 -1
  226. package/lib/wsready.js +2 -2
  227. package/package.json +21 -14
  228. package/pkg-yarn.lock +12 -8
  229. package/provenance-bundle.jsonl +2 -0
  230. package/src/accounting-protocol.ts +53 -53
  231. package/src/admin-protocol.ts +35 -18
  232. package/src/analytics.ts +27 -27
  233. package/src/auth.ts +2 -2
  234. package/src/context-url.spec.ts +37 -9
  235. package/src/context-url.ts +94 -36
  236. package/src/email-protocol.ts +5 -6
  237. package/src/encryption/container-module.ts +2 -3
  238. package/src/encryption/encryption-engine.spec.ts +9 -8
  239. package/src/encryption/encryption-engine.ts +14 -14
  240. package/src/encryption/encryption-service.ts +4 -5
  241. package/src/encryption/key-provider.ts +16 -19
  242. package/src/env.ts +9 -9
  243. package/src/gitpod-file-parser.spec.ts +55 -61
  244. package/src/gitpod-file-parser.ts +16 -17
  245. package/src/gitpod-service.ts +167 -113
  246. package/src/headless-workspace-log.ts +6 -4
  247. package/src/ide-frontend-service.ts +2 -2
  248. package/src/ide-protocol.ts +119 -0
  249. package/src/index.ts +16 -13
  250. package/src/installation-admin-protocol.ts +42 -0
  251. package/src/license-protocol.ts +5 -6
  252. package/src/messaging/browser/connection.ts +45 -47
  253. package/src/messaging/browser/window-connection.ts +39 -29
  254. package/src/messaging/client-call-metrics.ts +70 -71
  255. package/src/messaging/error.ts +6 -5
  256. package/src/messaging/handler.ts +6 -6
  257. package/src/messaging/node/connection.ts +23 -70
  258. package/src/messaging/proxy-factory.ts +23 -30
  259. package/src/oss-allowlist.ts +15 -0
  260. package/src/payment-protocol.ts +2 -2
  261. package/src/permission.ts +40 -32
  262. package/src/plans.ts +236 -189
  263. package/src/protocol.ts +280 -277
  264. package/src/snapshot-url.spec.ts +27 -0
  265. package/src/snapshot-url.ts +27 -0
  266. package/src/team-subscription-protocol.ts +33 -23
  267. package/src/teams-projects-protocol.ts +24 -8
  268. package/src/typings/globals.ts +4 -4
  269. package/src/util/analytics.ts +46 -24
  270. package/src/util/async-iterator.ts +4 -5
  271. package/src/util/cancelable.ts +3 -3
  272. package/src/util/date-time.ts +8 -8
  273. package/src/util/deferred.ts +6 -6
  274. package/src/util/disposable.ts +3 -6
  275. package/src/util/event.ts +9 -11
  276. package/src/util/garbage-collected-cache.ts +9 -6
  277. package/src/util/generate-workspace-id.spec.ts +26 -6
  278. package/src/util/generate-workspace-id.ts +458 -440
  279. package/src/util/gitpod-cookie.ts +8 -9
  280. package/src/util/gitpod-host-url.spec.ts +40 -13
  281. package/src/util/gitpod-host-url.ts +41 -38
  282. package/src/util/grpc.ts +1 -1
  283. package/src/util/jaeger-client-types.ts +102 -0
  284. package/src/util/logging.ts +81 -71
  285. package/src/util/make-link.ts +6 -7
  286. package/src/util/parse-workspace-id.spec.ts +17 -8
  287. package/src/util/parse-workspace-id.ts +6 -7
  288. package/src/util/queue.spec.ts +27 -25
  289. package/src/util/repeat.ts +45 -0
  290. package/src/util/semaphore.ts +4 -6
  291. package/src/util/skip-if.ts +9 -6
  292. package/src/util/timeutil.spec.ts +14 -15
  293. package/src/util/timeutil.ts +15 -11
  294. package/src/util/tracing.spec.ts +88 -0
  295. package/src/util/tracing.ts +202 -31
  296. package/src/util/workspace-port-authentication.ts +10 -13
  297. package/src/workspace-cluster.ts +26 -15
  298. package/src/workspace-instance.ts +48 -24
  299. package/src/wsready.ts +3 -3
  300. package/data/builtin-theia-plugins.json +0 -372
  301. package/lib/messaging/connection-error-handler.d.ts +0 -27
  302. package/lib/messaging/connection-error-handler.d.ts.map +0 -1
  303. package/lib/messaging/connection-error-handler.js +0 -34
  304. package/lib/messaging/connection-error-handler.js.map +0 -1
  305. package/lib/theia-plugins.d.ts +0 -11
  306. package/lib/theia-plugins.d.ts.map +0 -1
  307. package/lib/theia-plugins.js.map +0 -1
  308. package/lib/util/repeater.d.ts +0 -22
  309. package/lib/util/repeater.d.ts.map +0 -1
  310. package/lib/util/repeater.js +0 -65
  311. package/lib/util/repeater.js.map +0 -1
  312. package/lib/util/safe-promise.d.ts +0 -11
  313. package/lib/util/safe-promise.d.ts.map +0 -1
  314. package/lib/util/safe-promise.js +0 -31
  315. package/lib/util/safe-promise.js.map +0 -1
  316. package/src/messaging/connection-error-handler.ts +0 -62
  317. package/src/util/jaeger-client.d.ts +0 -105
  318. package/src/util/repeater.ts +0 -49
  319. package/src/util/safe-promise.ts +0 -26
package/lib/protocol.js CHANGED
@@ -5,35 +5,34 @@
5
5
  * See License-AGPL.txt in the project root for license information.
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.TheiaPlugin = exports.AuthProviderEntry = exports.WorkspaceCreationResult = exports.CreateWorkspaceMode = exports.WorkspaceInfo = exports.WorkspaceInstancePortsChangedEvent = exports.Repository = exports.NavigatorContext = exports.IssueContext = exports.PullRequestContext = exports.CommitContext = exports.AdditionalContentContext = exports.RefType = exports.WorkspaceProbeContext = exports.WithEnvvarsContext = exports.PrebuiltWorkspaceContext = exports.StartPrebuildContext = exports.SnapshotContext = exports.WithDefaultConfig = exports.WithPrebuild = exports.WithSnapshot = exports.WorkspaceContext = exports.ExternalImageConfigFile = exports.ImageConfigFile = exports.ImageConfigString = exports.WorkspaceImageBuild = exports.TaskConfig = exports.PortRangeConfig = exports.PortConfig = exports.PrebuiltWorkspace = exports.WorkspaceImageSourceReference = exports.WorkspaceImageSourceDocker = exports.GithubAppPrebuildConfig = exports.Workspace = exports.Identity = exports.GitpodTokenType = exports.UserEnvVar = exports.WorkspaceFeatureFlags = exports.User = void 0;
8
+ exports.TheiaPlugin = exports.AuthProviderEntry = exports.AuthProviderInfo = exports.WorkspaceCreationResult = exports.CreateWorkspaceMode = exports.WorkspaceInfo = exports.WorkspaceInstancePortsChangedEvent = exports.Repository = exports.NavigatorContext = exports.IssueContext = exports.PullRequestContext = exports.CommitContext = exports.AdditionalContentContext = exports.RefType = exports.WorkspaceProbeContext = exports.WithEnvvarsContext = exports.WithReferrerContext = exports.PrebuiltWorkspaceContext = exports.StartPrebuildContext = exports.SnapshotContext = exports.WithDefaultConfig = exports.WithPrebuild = exports.WithSnapshot = exports.WorkspaceContext = exports.ExternalImageConfigFile = exports.ImageConfigFile = exports.ImageConfigString = exports.WorkspaceImageBuild = exports.TaskConfig = exports.PortRangeConfig = exports.PortConfig = exports.PrebuiltWorkspace = exports.WorkspaceImageSourceReference = exports.WorkspaceImageSourceDocker = exports.GithubAppPrebuildConfig = exports.Workspace = exports.Identity = exports.GitpodTokenType = exports.UserEnvVar = exports.WorkspaceFeatureFlags = exports.User = void 0;
9
+ const crypto_1 = require("crypto");
9
10
  var User;
10
11
  (function (User) {
11
12
  function is(data) {
12
- return data
13
- && data.hasOwnProperty('id')
14
- && data.hasOwnProperty('identities');
13
+ return data && data.hasOwnProperty("id") && data.hasOwnProperty("identities");
15
14
  }
16
15
  User.is = is;
17
16
  function getIdentity(user, authProviderId) {
18
- return user.identities.find(id => id.authProviderId === authProviderId);
17
+ return user.identities.find((id) => id.authProviderId === authProviderId);
19
18
  }
20
19
  User.getIdentity = getIdentity;
21
20
  function censor(user) {
22
21
  const res = Object.assign({}, user);
23
- delete (res.additionalData);
24
- res.identities = res.identities.map(i => {
25
- delete (i.tokens);
22
+ delete res.additionalData;
23
+ res.identities = res.identities.map((i) => {
24
+ delete i.tokens;
26
25
  // The user field is not in the Identity shape, but actually exists on DBIdentity.
27
26
  // Trying to push this object out via JSON RPC will fail because of the cyclic nature
28
27
  // of this field.
29
- delete (i.user);
28
+ delete i.user;
30
29
  return i;
31
30
  });
32
31
  return res;
33
32
  }
34
33
  User.censor = censor;
35
34
  function getPrimaryEmail(user) {
36
- const identities = user.identities.filter(i => !!i.primaryEmail);
35
+ const identities = user.identities.filter((i) => !!i.primaryEmail);
37
36
  if (identities.length <= 0) {
38
37
  throw new Error(`No identity with primary email for user: ${user.id}!`);
39
38
  }
@@ -58,13 +57,19 @@ var User;
58
57
  * The values of this type MUST MATCH enum values in WorkspaceFeatureFlag from ws-manager/client/core_pb.d.ts
59
58
  * If they don't we'll break things during workspace startup.
60
59
  */
61
- exports.WorkspaceFeatureFlags = { "full_workspace_backup": undefined, "fixed_resources": undefined };
60
+ exports.WorkspaceFeatureFlags = {
61
+ full_workspace_backup: undefined,
62
+ fixed_resources: undefined,
63
+ persistent_volume_claim: undefined,
64
+ };
62
65
  var UserEnvVar;
63
66
  (function (UserEnvVar) {
67
+ // DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
64
68
  function normalizeRepoPattern(pattern) {
65
69
  return pattern.toLocaleLowerCase();
66
70
  }
67
71
  UserEnvVar.normalizeRepoPattern = normalizeRepoPattern;
72
+ // DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
68
73
  function score(value) {
69
74
  // We use a score to enforce precedence:
70
75
  // value/value = 0
@@ -78,7 +83,7 @@ var UserEnvVar;
78
83
  if (repoPattern == "*") {
79
84
  score += 1;
80
85
  }
81
- if (ownerPattern == '*') {
86
+ if (ownerPattern == "*") {
82
87
  score += 2;
83
88
  }
84
89
  if (ownerPattern == "#" || repoPattern == "#") {
@@ -87,20 +92,21 @@ var UserEnvVar;
87
92
  return score;
88
93
  }
89
94
  UserEnvVar.score = score;
95
+ // DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
90
96
  function filter(vars, owner, repo) {
91
- let result = vars.filter(e => {
97
+ let result = vars.filter((e) => {
92
98
  const [ownerPattern, repoPattern] = splitRepositoryPattern(e.repositoryPattern);
93
- if (ownerPattern !== '*' && ownerPattern !== '#' && (!!owner && ownerPattern !== owner.toLocaleLowerCase())) {
99
+ if (ownerPattern !== "*" && ownerPattern !== "#" && !!owner && ownerPattern !== owner.toLocaleLowerCase()) {
94
100
  return false;
95
101
  }
96
- if (repoPattern !== '*' && repoPattern !== '#' && (!!repo && repoPattern !== repo.toLocaleLowerCase())) {
102
+ if (repoPattern !== "*" && repoPattern !== "#" && !!repo && repoPattern !== repo.toLocaleLowerCase()) {
97
103
  return false;
98
104
  }
99
105
  return true;
100
106
  });
101
107
  const resmap = new Map();
102
- result.forEach(e => {
103
- const l = (resmap.get(e.name) || []);
108
+ result.forEach((e) => {
109
+ const l = resmap.get(e.name) || [];
104
110
  l.push(e);
105
111
  resmap.set(e.name, l);
106
112
  });
@@ -129,10 +135,11 @@ var UserEnvVar;
129
135
  return result;
130
136
  }
131
137
  UserEnvVar.filter = filter;
138
+ // DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
132
139
  function splitRepositoryPattern(repositoryPattern) {
133
- const patterns = repositoryPattern.split('/');
134
- const repoPattern = patterns.pop() || "";
135
- const ownerPattern = patterns.join('/');
140
+ const patterns = repositoryPattern.split("/");
141
+ const repoPattern = patterns.slice(1).join("/");
142
+ const ownerPattern = patterns[0];
136
143
  return [ownerPattern, repoPattern];
137
144
  }
138
145
  UserEnvVar.splitRepositoryPattern = splitRepositoryPattern;
@@ -145,14 +152,11 @@ var GitpodTokenType;
145
152
  var Identity;
146
153
  (function (Identity) {
147
154
  function is(data) {
148
- return data.hasOwnProperty('authProviderId')
149
- && data.hasOwnProperty('authId')
150
- && data.hasOwnProperty('authName');
155
+ return (data.hasOwnProperty("authProviderId") && data.hasOwnProperty("authId") && data.hasOwnProperty("authName"));
151
156
  }
152
157
  Identity.is = is;
153
158
  function equals(id1, id2) {
154
- return id1.authProviderId === id2.authProviderId
155
- && id1.authId === id2.authId;
159
+ return id1.authProviderId === id2.authProviderId && id1.authId === id2.authId;
156
160
  }
157
161
  Identity.equals = equals;
158
162
  })(Identity = exports.Identity || (exports.Identity = {}));
@@ -160,7 +164,7 @@ var Workspace;
160
164
  (function (Workspace) {
161
165
  function getFullRepositoryName(ws) {
162
166
  if (CommitContext.is(ws.context)) {
163
- return ws.context.repository.owner + '/' + ws.context.repository.name;
167
+ return ws.context.repository.owner + "/" + ws.context.repository.name;
164
168
  }
165
169
  return undefined;
166
170
  }
@@ -204,29 +208,28 @@ var Workspace;
204
208
  var GithubAppPrebuildConfig;
205
209
  (function (GithubAppPrebuildConfig) {
206
210
  function is(obj) {
207
- return !(typeof obj === 'boolean');
211
+ return !(typeof obj === "boolean");
208
212
  }
209
213
  GithubAppPrebuildConfig.is = is;
210
214
  })(GithubAppPrebuildConfig = exports.GithubAppPrebuildConfig || (exports.GithubAppPrebuildConfig = {}));
211
215
  var WorkspaceImageSourceDocker;
212
216
  (function (WorkspaceImageSourceDocker) {
213
217
  function is(obj) {
214
- return 'dockerFileHash' in obj
215
- && 'dockerFilePath' in obj;
218
+ return "dockerFileHash" in obj && "dockerFilePath" in obj;
216
219
  }
217
220
  WorkspaceImageSourceDocker.is = is;
218
221
  })(WorkspaceImageSourceDocker = exports.WorkspaceImageSourceDocker || (exports.WorkspaceImageSourceDocker = {}));
219
222
  var WorkspaceImageSourceReference;
220
223
  (function (WorkspaceImageSourceReference) {
221
224
  function is(obj) {
222
- return 'baseImageResolved' in obj;
225
+ return "baseImageResolved" in obj;
223
226
  }
224
227
  WorkspaceImageSourceReference.is = is;
225
228
  })(WorkspaceImageSourceReference = exports.WorkspaceImageSourceReference || (exports.WorkspaceImageSourceReference = {}));
226
229
  var PrebuiltWorkspace;
227
230
  (function (PrebuiltWorkspace) {
228
231
  function isDone(pws) {
229
- return pws.state === "available" || pws.state === "timeout" || pws.state === 'aborted';
232
+ return pws.state === "available" || pws.state === "timeout" || pws.state === "aborted";
230
233
  }
231
234
  PrebuiltWorkspace.isDone = isDone;
232
235
  function isAvailable(pws) {
@@ -241,22 +244,21 @@ var PrebuiltWorkspace;
241
244
  var PortConfig;
242
245
  (function (PortConfig) {
243
246
  function is(config) {
244
- return config && ('port' in config) && (typeof config.port === 'number');
247
+ return config && "port" in config && typeof config.port === "number";
245
248
  }
246
249
  PortConfig.is = is;
247
250
  })(PortConfig = exports.PortConfig || (exports.PortConfig = {}));
248
251
  var PortRangeConfig;
249
252
  (function (PortRangeConfig) {
250
253
  function is(config) {
251
- return config && ('port' in config) && (typeof config.port === 'string' || config.port instanceof String);
254
+ return config && "port" in config && (typeof config.port === "string" || config.port instanceof String);
252
255
  }
253
256
  PortRangeConfig.is = is;
254
257
  })(PortRangeConfig = exports.PortRangeConfig || (exports.PortRangeConfig = {}));
255
258
  var TaskConfig;
256
259
  (function (TaskConfig) {
257
260
  function is(config) {
258
- return config
259
- && ('command' in config || 'init' in config || 'before' in config);
261
+ return config && ("command" in config || "init" in config || "before" in config);
260
262
  }
261
263
  TaskConfig.is = is;
262
264
  })(TaskConfig = exports.TaskConfig || (exports.TaskConfig = {}));
@@ -264,66 +266,56 @@ var WorkspaceImageBuild;
264
266
  (function (WorkspaceImageBuild) {
265
267
  let LogLine;
266
268
  (function (LogLine) {
267
- LogLine.DELIMITER = '\r\n';
269
+ LogLine.DELIMITER = "\r\n";
268
270
  LogLine.DELIMITER_REGEX = /\r?\n/;
269
271
  })(LogLine = WorkspaceImageBuild.LogLine || (WorkspaceImageBuild.LogLine = {}));
270
272
  })(WorkspaceImageBuild = exports.WorkspaceImageBuild || (exports.WorkspaceImageBuild = {}));
271
273
  var ImageConfigString;
272
274
  (function (ImageConfigString) {
273
275
  function is(config) {
274
- return typeof config === 'string';
276
+ return typeof config === "string";
275
277
  }
276
278
  ImageConfigString.is = is;
277
279
  })(ImageConfigString = exports.ImageConfigString || (exports.ImageConfigString = {}));
278
280
  var ImageConfigFile;
279
281
  (function (ImageConfigFile) {
280
282
  function is(config) {
281
- return typeof config === 'object'
282
- && 'file' in config;
283
+ return typeof config === "object" && "file" in config;
283
284
  }
284
285
  ImageConfigFile.is = is;
285
286
  })(ImageConfigFile = exports.ImageConfigFile || (exports.ImageConfigFile = {}));
286
287
  var ExternalImageConfigFile;
287
288
  (function (ExternalImageConfigFile) {
288
289
  function is(config) {
289
- return typeof config === 'object'
290
- && 'file' in config
291
- && 'externalSource' in config;
290
+ return typeof config === "object" && "file" in config && "externalSource" in config;
292
291
  }
293
292
  ExternalImageConfigFile.is = is;
294
293
  })(ExternalImageConfigFile = exports.ExternalImageConfigFile || (exports.ExternalImageConfigFile = {}));
295
294
  var WorkspaceContext;
296
295
  (function (WorkspaceContext) {
297
296
  function is(context) {
298
- return context
299
- && 'title' in context;
297
+ return context && "title" in context;
300
298
  }
301
299
  WorkspaceContext.is = is;
302
300
  })(WorkspaceContext = exports.WorkspaceContext || (exports.WorkspaceContext = {}));
303
301
  var WithSnapshot;
304
302
  (function (WithSnapshot) {
305
303
  function is(context) {
306
- return context
307
- && 'snapshotBucketId' in context;
304
+ return context && "snapshotBucketId" in context;
308
305
  }
309
306
  WithSnapshot.is = is;
310
307
  })(WithSnapshot = exports.WithSnapshot || (exports.WithSnapshot = {}));
311
308
  var WithPrebuild;
312
309
  (function (WithPrebuild) {
313
310
  function is(context) {
314
- return context
315
- && 'snapshotBucketId' in context
316
- && 'prebuildWorkspaceId' in context
317
- && 'wasPrebuilt' in context;
311
+ return context && WithSnapshot.is(context) && "prebuildWorkspaceId" in context && "wasPrebuilt" in context;
318
312
  }
319
313
  WithPrebuild.is = is;
320
314
  })(WithPrebuild = exports.WithPrebuild || (exports.WithPrebuild = {}));
321
315
  var WithDefaultConfig;
322
316
  (function (WithDefaultConfig) {
323
317
  function is(context) {
324
- return context
325
- && 'withDefaultConfig' in context
326
- && context.withDefaultConfig;
318
+ return context && "withDefaultConfig" in context && context.withDefaultConfig;
327
319
  }
328
320
  WithDefaultConfig.is = is;
329
321
  function mark(ctx) {
@@ -334,43 +326,42 @@ var WithDefaultConfig;
334
326
  var SnapshotContext;
335
327
  (function (SnapshotContext) {
336
328
  function is(context) {
337
- return context
338
- && WithSnapshot.is(context)
339
- && 'snapshotId' in context;
329
+ return context && WithSnapshot.is(context) && "snapshotId" in context;
340
330
  }
341
331
  SnapshotContext.is = is;
342
332
  })(SnapshotContext = exports.SnapshotContext || (exports.SnapshotContext = {}));
343
333
  var StartPrebuildContext;
344
334
  (function (StartPrebuildContext) {
345
335
  function is(context) {
346
- return context
347
- && 'actual' in context;
336
+ return context && "actual" in context;
348
337
  }
349
338
  StartPrebuildContext.is = is;
350
339
  })(StartPrebuildContext = exports.StartPrebuildContext || (exports.StartPrebuildContext = {}));
351
340
  var PrebuiltWorkspaceContext;
352
341
  (function (PrebuiltWorkspaceContext) {
353
342
  function is(context) {
354
- return context
355
- && 'originalContext' in context
356
- && 'prebuiltWorkspace' in context;
343
+ return context && "originalContext" in context && "prebuiltWorkspace" in context;
357
344
  }
358
345
  PrebuiltWorkspaceContext.is = is;
359
346
  })(PrebuiltWorkspaceContext = exports.PrebuiltWorkspaceContext || (exports.PrebuiltWorkspaceContext = {}));
347
+ var WithReferrerContext;
348
+ (function (WithReferrerContext) {
349
+ function is(context) {
350
+ return context && "referrer" in context;
351
+ }
352
+ WithReferrerContext.is = is;
353
+ })(WithReferrerContext = exports.WithReferrerContext || (exports.WithReferrerContext = {}));
360
354
  var WithEnvvarsContext;
361
355
  (function (WithEnvvarsContext) {
362
356
  function is(context) {
363
- return context
364
- && 'envvars' in context;
357
+ return context && "envvars" in context;
365
358
  }
366
359
  WithEnvvarsContext.is = is;
367
360
  })(WithEnvvarsContext = exports.WithEnvvarsContext || (exports.WithEnvvarsContext = {}));
368
361
  var WorkspaceProbeContext;
369
362
  (function (WorkspaceProbeContext) {
370
363
  function is(context) {
371
- return context
372
- && 'responseURL' in context
373
- && 'responseToken' in context;
364
+ return context && "responseURL" in context && "responseToken" in context;
374
365
  }
375
366
  WorkspaceProbeContext.is = is;
376
367
  })(WorkspaceProbeContext = exports.WorkspaceProbeContext || (exports.WorkspaceProbeContext = {}));
@@ -387,7 +378,7 @@ var RefType;
387
378
  var AdditionalContentContext;
388
379
  (function (AdditionalContentContext) {
389
380
  function is(ctx) {
390
- return 'additionalFiles' in ctx;
381
+ return "additionalFiles" in ctx;
391
382
  }
392
383
  AdditionalContentContext.is = is;
393
384
  function hasDockerConfig(ctx, config) {
@@ -396,40 +387,52 @@ var AdditionalContentContext;
396
387
  AdditionalContentContext.hasDockerConfig = hasDockerConfig;
397
388
  })(AdditionalContentContext = exports.AdditionalContentContext || (exports.AdditionalContentContext = {}));
398
389
  var CommitContext;
390
+ (function (CommitContext) {
391
+ /**
392
+ * Creates a hash for all the commits of the CommitContext and all sub-repo commit infos.
393
+ * The hash is max 255 chars long.
394
+ * @param commitContext
395
+ * @returns hash for commitcontext
396
+ */
397
+ function computeHash(commitContext) {
398
+ // for single commits we use the revision to be backward compatible.
399
+ if (!commitContext.additionalRepositoryCheckoutInfo ||
400
+ commitContext.additionalRepositoryCheckoutInfo.length === 0) {
401
+ return commitContext.revision;
402
+ }
403
+ const hasher = (0, crypto_1.createHash)("sha256");
404
+ hasher.update(commitContext.revision);
405
+ for (const info of commitContext.additionalRepositoryCheckoutInfo) {
406
+ hasher.update(info.revision);
407
+ }
408
+ return hasher.digest("hex");
409
+ }
410
+ CommitContext.computeHash = computeHash;
411
+ })(CommitContext = exports.CommitContext || (exports.CommitContext = {}));
399
412
  (function (CommitContext) {
400
413
  function is(commit) {
401
- return WorkspaceContext.is(commit)
402
- && 'repository' in commit
403
- && 'revision' in commit;
414
+ return WorkspaceContext.is(commit) && "repository" in commit && "revision" in commit;
404
415
  }
405
416
  CommitContext.is = is;
406
417
  })(CommitContext = exports.CommitContext || (exports.CommitContext = {}));
407
418
  var PullRequestContext;
408
419
  (function (PullRequestContext) {
409
420
  function is(ctx) {
410
- return CommitContext.is(ctx)
411
- && 'nr' in ctx
412
- && 'ref' in ctx
413
- && 'base' in ctx;
421
+ return CommitContext.is(ctx) && "nr" in ctx && "ref" in ctx && "base" in ctx;
414
422
  }
415
423
  PullRequestContext.is = is;
416
424
  })(PullRequestContext = exports.PullRequestContext || (exports.PullRequestContext = {}));
417
425
  var IssueContext;
418
426
  (function (IssueContext) {
419
427
  function is(ctx) {
420
- return CommitContext.is(ctx)
421
- && 'nr' in ctx
422
- && 'ref' in ctx
423
- && 'localBranch' in ctx;
428
+ return CommitContext.is(ctx) && "nr" in ctx && "ref" in ctx && "localBranch" in ctx;
424
429
  }
425
430
  IssueContext.is = is;
426
431
  })(IssueContext = exports.IssueContext || (exports.IssueContext = {}));
427
432
  var NavigatorContext;
428
433
  (function (NavigatorContext) {
429
434
  function is(ctx) {
430
- return CommitContext.is(ctx)
431
- && 'path' in ctx
432
- && 'isFile' in ctx;
435
+ return CommitContext.is(ctx) && "path" in ctx && "isFile" in ctx;
433
436
  }
434
437
  NavigatorContext.is = is;
435
438
  })(NavigatorContext = exports.NavigatorContext || (exports.NavigatorContext = {}));
@@ -469,13 +472,21 @@ var CreateWorkspaceMode;
469
472
  var WorkspaceCreationResult;
470
473
  (function (WorkspaceCreationResult) {
471
474
  function is(data) {
472
- return data && ('createdWorkspaceId' in data
473
- || 'existingWorkspaces' in data
474
- || 'runningWorkspacePrebuild' in data
475
- || 'runningPrebuildWorkspaceID' in data);
475
+ return (data &&
476
+ ("createdWorkspaceId" in data ||
477
+ "existingWorkspaces" in data ||
478
+ "runningWorkspacePrebuild" in data ||
479
+ "runningPrebuildWorkspaceID" in data));
476
480
  }
477
481
  WorkspaceCreationResult.is = is;
478
482
  })(WorkspaceCreationResult = exports.WorkspaceCreationResult || (exports.WorkspaceCreationResult = {}));
483
+ var AuthProviderInfo;
484
+ (function (AuthProviderInfo) {
485
+ function isGitHubEnterprise(info) {
486
+ return !!info && info.authProviderType === "GitHub" && info.host !== "github.com";
487
+ }
488
+ AuthProviderInfo.isGitHubEnterprise = isGitHubEnterprise;
489
+ })(AuthProviderInfo = exports.AuthProviderInfo || (exports.AuthProviderInfo = {}));
479
490
  var AuthProviderEntry;
480
491
  (function (AuthProviderEntry) {
481
492
  function redact(entry) {
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAKH,mCAAoC;AAwCpC,IAAiB,IAAI,CA0CpB;AA1CD,WAAiB,IAAI;IACjB,SAAgB,EAAE,CAAC,IAAS;QACxB,OAAO,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;IAFe,OAAE,KAEjB,CAAA;IACD,SAAgB,WAAW,CAAC,IAAU,EAAE,cAAsB;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,cAAc,KAAK,cAAc,CAAC,CAAC;IAC9E,CAAC;IAFe,gBAAW,cAE1B,CAAA;IACD,SAAgB,MAAM,CAAC,IAAU;QAC7B,MAAM,GAAG,qBAAQ,IAAI,CAAE,CAAC;QACxB,OAAO,GAAG,CAAC,cAAc,CAAC;QAC1B,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,OAAO,CAAC,CAAC,MAAM,CAAC;YAEhB,kFAAkF;YAClF,qFAAqF;YACrF,iBAAiB;YACjB,OAAQ,CAAS,CAAC,IAAI,CAAC;YACvB,OAAO,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC;IAbe,WAAM,SAarB,CAAA;IACD,SAAgB,eAAe,CAAC,IAAU;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACnE,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;SAC3E;QAED,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,YAAa,CAAC;IACvC,CAAC;IAPe,oBAAe,kBAO9B,CAAA;IACD,SAAgB,OAAO,CAAC,IAAU;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC;QACxC,IAAI,IAAI,EAAE;YACN,OAAO,IAAI,CAAC;SACf;QAED,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;YAC9B,IAAI,EAAE,CAAC,QAAQ,KAAK,EAAE,EAAE;gBACpB,OAAO,EAAE,CAAC,QAAQ,CAAC;aACtB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAZe,YAAO,UAYtB,CAAA;AACL,CAAC,EA1CgB,IAAI,GAAJ,YAAI,KAAJ,YAAI,QA0CpB;AA0DD;;;GAGG;AACU,QAAA,qBAAqB,GAAG;IACjC,qBAAqB,EAAE,SAAS;IAChC,eAAe,EAAE,SAAS;IAC1B,uBAAuB,EAAE,SAAS;CACrC,CAAC;AA0BF,IAAiB,UAAU,CAoF1B;AApFD,WAAiB,UAAU;IACvB,gHAAgH;IAChH,SAAgB,oBAAoB,CAAC,OAAe;QAChD,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC;IACvC,CAAC;IAFe,+BAAoB,uBAEnC,CAAA;IAED,gHAAgH;IAChH,SAAgB,KAAK,CAAC,KAAsB;QACxC,wCAAwC;QACxC,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB;QACvB,kEAAkE;QAClE,kDAAkD;QAClD,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,sBAAsB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpF,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,WAAW,IAAI,GAAG,EAAE;YACpB,KAAK,IAAI,CAAC,CAAC;SACd;QACD,IAAI,YAAY,IAAI,GAAG,EAAE;YACrB,KAAK,IAAI,CAAC,CAAC;SACd;QACD,IAAI,YAAY,IAAI,GAAG,IAAI,WAAW,IAAI,GAAG,EAAE;YAC3C,KAAK,GAAG,CAAC,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IApBe,gBAAK,QAoBpB,CAAA;IAED,gHAAgH;IAChH,SAAgB,MAAM,CAA4B,IAAS,EAAE,KAAa,EAAE,IAAY;QACpF,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3B,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAChF,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,YAAY,KAAK,KAAK,CAAC,iBAAiB,EAAE,EAAE;gBACvG,OAAO,KAAK,CAAC;aAChB;YACD,IAAI,WAAW,KAAK,GAAG,IAAI,WAAW,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,WAAW,KAAK,IAAI,CAAC,iBAAiB,EAAE,EAAE;gBAClG,OAAO,KAAK,CAAC;aAChB;YACD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,GAAG,EAAe,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,UAAU,EAAE;gBACb,6CAA6C;gBAC7C,SAAS;aACZ;YAED,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3B,SAAS;aACZ;YAED,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,IAAI,aAA4B,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;gBACxB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,aAAa,IAAI,KAAK,GAAG,QAAQ,EAAE;oBACpC,QAAQ,GAAG,KAAK,CAAC;oBACjB,aAAa,GAAG,CAAC,CAAC;iBACrB;aACJ;YACD,MAAM,CAAC,IAAI,CAAC,aAAc,CAAC,CAAC;SAC/B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IA7Ce,iBAAM,SA6CrB,CAAA;IAED,gHAAgH;IAChH,SAAgB,sBAAsB,CAAC,iBAAyB;QAC5D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACvC,CAAC;IALe,iCAAsB,yBAKrC,CAAA;AACL,CAAC,EApFgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAoF1B;AAyBD,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,yEAAkB,CAAA;IAClB,iFAAsB,CAAA;AAC1B,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AAmCD,IAAiB,QAAQ,CASxB;AATD,WAAiB,QAAQ;IACrB,SAAgB,EAAE,CAAC,IAAS;QACxB,OAAO,CACH,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAC5G,CAAC;IACN,CAAC;IAJe,WAAE,KAIjB,CAAA;IACD,SAAgB,MAAM,CAAC,GAAmB,EAAE,GAAmB;QAC3D,OAAO,GAAG,CAAC,cAAc,KAAK,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC;IAClF,CAAC;IAFe,eAAM,SAErB,CAAA;AACL,CAAC,EATgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QASxB;AAqID,IAAiB,SAAS,CA0CzB;AA1CD,WAAiB,SAAS;IACtB,SAAgB,qBAAqB,CAAC,EAAa;QAC/C,IAAI,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;SACzE;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,+BAAqB,wBAKpC,CAAA;IAED,SAAgB,oBAAoB,CAAC,EAAa;QAC9C,IAAI,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC;SAC/E;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,8BAAoB,uBAKnC,CAAA;IAED,SAAgB,oBAAoB,CAAC,EAAa;QAC9C,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YACnC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;SACxB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,8BAAoB,uBAKnC,CAAA;IAED,SAAgB,cAAc,CAAC,EAAa;QACxC,IAAI,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YAC7B,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;SACxB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,wBAAc,iBAK7B,CAAA;IAED,SAAgB,aAAa,CAAC,EAAa;QACvC,IAAI,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;SACzB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,uBAAa,gBAK5B,CAAA;IAED,SAAgB,SAAS,CAAC,EAAa;QACnC,IAAI,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAClE;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IALe,mBAAS,YAKxB,CAAA;AACL,CAAC,EA1CgB,SAAS,GAAT,iBAAS,KAAT,iBAAS,QA0CzB;AA4ED,IAAiB,uBAAuB,CAIvC;AAJD,WAAiB,uBAAuB;IACpC,SAAgB,EAAE,CAAC,GAAsC;QACrD,OAAO,CAAC,CAAC,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC;IACvC,CAAC;IAFe,0BAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAIvC;AAQD,IAAiB,0BAA0B,CAI1C;AAJD,WAAiB,0BAA0B;IACvC,SAAgB,EAAE,CAAC,GAAW;QAC1B,OAAO,gBAAgB,IAAI,GAAG,IAAI,gBAAgB,IAAI,GAAG,CAAC;IAC9D,CAAC;IAFe,6BAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAI1C;AAKD,IAAiB,6BAA6B,CAI7C;AAJD,WAAiB,6BAA6B;IAC1C,SAAgB,EAAE,CAAC,GAAW;QAC1B,OAAO,mBAAmB,IAAI,GAAG,CAAC;IACtC,CAAC;IAFe,gCAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,6BAA6B,GAA7B,qCAA6B,KAA7B,qCAA6B,QAI7C;AA8BD,IAAiB,iBAAiB,CAYjC;AAZD,WAAiB,iBAAiB;IAC9B,SAAgB,MAAM,CAAC,GAAsB;QACzC,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC;IAC3F,CAAC;IAFe,wBAAM,SAErB,CAAA;IAED,SAAgB,WAAW,CAAC,GAAsB;QAC9C,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IACvD,CAAC;IAFe,6BAAW,cAE1B,CAAA;IAED,SAAgB,eAAe,CAAC,GAAsB;QAClD,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IACnD,CAAC;IAFe,iCAAe,kBAE9B,CAAA;AACL,CAAC,EAZgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAYjC;AAiCD,IAAiB,UAAU,CAI1B;AAJD,WAAiB,UAAU;IACvB,SAAgB,EAAE,CAAC,MAAW;QAC1B,OAAO,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;IACzE,CAAC;IAFe,aAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAI1B;AAMD,IAAiB,eAAe,CAI/B;AAJD,WAAiB,eAAe;IAC5B,SAAgB,EAAE,CAAC,MAAW;QAC1B,OAAO,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,YAAY,MAAM,CAAC,CAAC;IAC5G,CAAC;IAFe,kBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI/B;AAaD,IAAiB,UAAU,CAI1B;AAJD,WAAiB,UAAU;IACvB,SAAgB,EAAE,CAAC,MAAW;QAC1B,OAAO,MAAM,IAAI,CAAC,SAAS,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,QAAQ,IAAI,MAAM,CAAC,CAAC;IACrF,CAAC;IAFe,aAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAI1B;AAED,IAAiB,mBAAmB,CAiBnC;AAjBD,WAAiB,mBAAmB;IAahC,IAAiB,OAAO,CAGvB;IAHD,WAAiB,OAAO;QACP,iBAAS,GAAG,MAAM,CAAC;QACnB,uBAAe,GAAG,OAAO,CAAC;IAC3C,CAAC,EAHgB,OAAO,GAAP,2BAAO,KAAP,2BAAO,QAGvB;AACL,CAAC,EAjBgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAiBnC;AAID,IAAiB,iBAAiB,CAIjC;AAJD,WAAiB,iBAAiB;IAC9B,SAAgB,EAAE,CAAC,MAA+B;QAC9C,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC;IACtC,CAAC;IAFe,oBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAIjC;AAOD,IAAiB,eAAe,CAI/B;AAJD,WAAiB,eAAe;IAC5B,SAAgB,EAAE,CAAC,MAA+B;QAC9C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC;IAC1D,CAAC;IAFe,kBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI/B;AAID,IAAiB,uBAAuB,CAIvC;AAJD,WAAiB,uBAAuB;IACpC,SAAgB,EAAE,CAAC,MAAuB;QACtC,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,MAAM,IAAI,gBAAgB,IAAI,MAAM,CAAC;IACxF,CAAC;IAFe,0BAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAIvC;AAUD,IAAiB,gBAAgB,CAIhC;AAJD,WAAiB,gBAAgB;IAC7B,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC;IACzC,CAAC;IAFe,mBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAIhC;AAKD,IAAiB,YAAY,CAI5B;AAJD,WAAiB,YAAY;IACzB,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,kBAAkB,IAAI,OAAO,CAAC;IACpD,CAAC;IAFe,eAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAI5B;AAMD,IAAiB,YAAY,CAI5B;AAJD,WAAiB,YAAY;IACzB,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,qBAAqB,IAAI,OAAO,IAAI,aAAa,IAAI,OAAO,CAAC;IAC/G,CAAC;IAFe,eAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAI5B;AAUD,IAAiB,iBAAiB,CAWjC;AAXD,WAAiB,iBAAiB;IAC9B,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,mBAAmB,IAAI,OAAO,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAClF,CAAC;IAFe,oBAAE,KAEjB,CAAA;IAED,SAAgB,IAAI,CAAC,GAAqB;QACtC,uCACO,GAAG,KACN,iBAAiB,EAAE,IAAI,IACzB;IACN,CAAC;IALe,sBAAI,OAKnB,CAAA;AACL,CAAC,EAXgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAWjC;AAMD,IAAiB,eAAe,CAI/B;AAJD,WAAiB,eAAe;IAC5B,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,YAAY,IAAI,OAAO,CAAC;IAC1E,CAAC;IAFe,kBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI/B;AAaD,IAAiB,oBAAoB,CAIpC;AAJD,WAAiB,oBAAoB;IACjC,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,QAAQ,IAAI,OAAO,CAAC;IAC1C,CAAC;IAFe,uBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAIpC;AAQD,IAAiB,wBAAwB,CAIxC;AAJD,WAAiB,wBAAwB;IACrC,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,iBAAiB,IAAI,OAAO,IAAI,mBAAmB,IAAI,OAAO,CAAC;IACrF,CAAC;IAFe,2BAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAIxC;AAOD,IAAiB,mBAAmB,CAInC;AAJD,WAAiB,mBAAmB;IAChC,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,UAAU,IAAI,OAAO,CAAC;IAC5C,CAAC;IAFe,sBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAInC;AAMD,IAAiB,kBAAkB,CAIlC;AAJD,WAAiB,kBAAkB;IAC/B,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC;IAC3C,CAAC;IAFe,qBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAIlC;AAOD,IAAiB,qBAAqB,CAIrC;AAJD,WAAiB,qBAAqB;IAClC,SAAgB,EAAE,CAAC,OAAY;QAC3B,OAAO,OAAO,IAAI,aAAa,IAAI,OAAO,IAAI,eAAe,IAAI,OAAO,CAAC;IAC7E,CAAC;IAFe,wBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAIrC;AAGD,IAAiB,OAAO,CAQvB;AARD,WAAiB,OAAO;IACP,kBAAU,GAAG,CAAC,MAAc,EAAW,EAAE;QAClD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACb,OAAO,UAAU,CAAC;SACrB;QACD,gHAAgH;QAChH,OAAO,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC;IACtC,CAAC,CAAC;AACN,CAAC,EARgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAQvB;AAoBD,IAAiB,wBAAwB,CAQxC;AARD,WAAiB,wBAAwB;IACrC,SAAgB,EAAE,CAAC,GAAQ;QACvB,OAAO,iBAAiB,IAAI,GAAG,CAAC;IACpC,CAAC;IAFe,2BAAE,KAEjB,CAAA;IAED,SAAgB,eAAe,CAAC,GAAQ,EAAE,MAAuB;QAC7D,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnG,CAAC;IAFe,wCAAe,kBAE9B,CAAA;AACL,CAAC,EARgB,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAQxC;AAYD,IAAiB,aAAa,CAsB7B;AAtBD,WAAiB,aAAa;IAC1B;;;;;OAKG;IACH,SAAgB,WAAW,CAAC,aAA4B;QACpD,oEAAoE;QACpE,IACI,CAAC,aAAa,CAAC,gCAAgC;YAC/C,aAAa,CAAC,gCAAgC,CAAC,MAAM,KAAK,CAAC,EAC7D;YACE,OAAO,aAAa,CAAC,QAAQ,CAAC;SACjC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,gCAAgC,EAAE;YAC/D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAde,yBAAW,cAc1B,CAAA;AACL,CAAC,EAtBgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAsB7B;AAQD,WAAiB,aAAa;IAC1B,SAAgB,EAAE,CAAC,MAAW;QAC1B,OAAO,gBAAgB,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,YAAY,IAAI,MAAM,IAAI,UAAU,IAAI,MAAM,CAAC;IACzF,CAAC;IAFe,gBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAI7B;AAWD,IAAiB,kBAAkB,CAIlC;AAJD,WAAiB,kBAAkB;IAC/B,SAAgB,EAAE,CAAC,GAAQ;QACvB,OAAO,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC;IACjF,CAAC;IAFe,qBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAIlC;AAQD,IAAiB,YAAY,CAI5B;AAJD,WAAiB,YAAY;IACzB,SAAgB,EAAE,CAAC,GAAQ;QACvB,OAAO,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,aAAa,IAAI,GAAG,CAAC;IACxF,CAAC;IAFe,eAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAI5B;AAOD,IAAiB,gBAAgB,CAIhC;AAJD,WAAiB,gBAAgB;IAC7B,SAAgB,EAAE,CAAC,GAAQ;QACvB,OAAO,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,QAAQ,IAAI,GAAG,CAAC;IACrE,CAAC;IAFe,mBAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAIhC;AAkCD,IAAiB,UAAU,CAI1B;AAJD,WAAiB,UAAU;IACvB,SAAgB,YAAY,CAAC,IAAgB;QACzC,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACrD,CAAC;IAFe,uBAAY,eAE3B,CAAA;AACL,CAAC,EAJgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAI1B;AASD,IAAiB,kCAAkC,CAIlD;AAJD,WAAiB,kCAAkC;IAC/C,SAAgB,EAAE,CAAC,IAAS;QACxB,OAAO,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC;IAC/C,CAAC;IAFe,qCAAE,KAEjB,CAAA;AACL,CAAC,EAJgB,kCAAkC,GAAlC,0CAAkC,KAAlC,0CAAkC,QAIlD;AAOD,IAAiB,aAAa,CAI7B;AAJD,WAAiB,aAAa;IAC1B,SAAgB,iBAAiB,CAAC,IAAmB;;QACjD,OAAO,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,YAAY,KAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;IAC5E,CAAC;IAFe,+BAAiB,oBAEhC,CAAA;AACL,CAAC,EAJgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAI7B;AAmBD,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC3B,+HAA+H;IAC/H,0CAAmB,CAAA;IACnB,8MAA8M;IAC9M,6CAAsB,CAAA;IACtB,6IAA6I;IAC7I,mDAA4B,CAAA;IAC5B,4IAA4I;IAC5I,4DAAqC,CAAA;AACzC,CAAC,EATW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAS9B;AAED,IAAiB,uBAAuB,CAUvC;AAVD,WAAiB,uBAAuB;IACpC,SAAgB,EAAE,CAAC,IAAS;QACxB,OAAO,CACH,IAAI;YACJ,CAAC,oBAAoB,IAAI,IAAI;gBACzB,oBAAoB,IAAI,IAAI;gBAC5B,0BAA0B,IAAI,IAAI;gBAClC,4BAA4B,IAAI,IAAI,CAAC,CAC5C,CAAC;IACN,CAAC;IARe,0BAAE,KAQjB,CAAA;AACL,CAAC,EAVgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAUvC;AAmCD,IAAiB,gBAAgB,CAIhC;AAJD,WAAiB,gBAAgB;IAC7B,SAAgB,kBAAkB,CAAC,IAAuB;QACtD,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;IACtF,CAAC;IAFe,mCAAkB,qBAEjC,CAAA;AACL,CAAC,EAJgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAIhC;AA6BD,IAAiB,iBAAiB,CAkBjC;AAlBD,WAAiB,iBAAiB;IAS9B,SAAgB,MAAM,CAAC,KAAwB;QAC3C,uCACO,KAAK,KACR,KAAK,kCACE,KAAK,CAAC,KAAK,KACd,YAAY,EAAE,UAAU,OAE9B;IACN,CAAC;IARe,wBAAM,SAQrB,CAAA;AACL,CAAC,EAlBgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAkBjC;AAoBD,IAAiB,WAAW,CAM3B;AAND,WAAiB,WAAW;IACxB,IAAY,KAIX;IAJD,WAAY,KAAK;QACb,gCAAuB,CAAA;QACvB,8BAAqB,CAAA;QACrB,yCAAgC,CAAA;IACpC,CAAC,EAJW,KAAK,GAAL,iBAAK,KAAL,iBAAK,QAIhB;AACL,CAAC,EANgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAM3B"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
3
+ * Licensed under the GNU Affero General Public License (AGPL).
4
+ * See License-AGPL.txt in the project root for license information.
5
+ */
6
+ export interface SnapshotUrl {
7
+ bucketId: string;
8
+ fullPath: string;
9
+ filename: string;
10
+ }
11
+ export declare namespace SnapshotUrl {
12
+ function parse(url: string): SnapshotUrl;
13
+ }
14
+ //# sourceMappingURL=snapshot-url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-url.d.ts","sourceRoot":"","sources":["../src/snapshot-url.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB;AACD,yBAAiB,WAAW,CAAC;IACzB,SAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAa9C;CACJ"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
4
+ * Licensed under the GNU Affero General Public License (AGPL).
5
+ * See License-AGPL.txt in the project root for license information.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.SnapshotUrl = void 0;
9
+ var SnapshotUrl;
10
+ (function (SnapshotUrl) {
11
+ function parse(url) {
12
+ const parts = url.split("@");
13
+ if (parts.length !== 2) {
14
+ throw new Error(`cannot parse snapshot URL: ${url}`);
15
+ }
16
+ const [fullPath, bucketId] = parts;
17
+ const pathParts = fullPath.split("/");
18
+ if (pathParts.length < 1) {
19
+ throw new Error(`cannot parse snapshot URL: ${url}`);
20
+ }
21
+ const filename = pathParts[pathParts.length - 1];
22
+ return { bucketId, fullPath, filename };
23
+ }
24
+ SnapshotUrl.parse = parse;
25
+ })(SnapshotUrl = exports.SnapshotUrl || (exports.SnapshotUrl = {}));
26
+ //# sourceMappingURL=snapshot-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-url.js","sourceRoot":"","sources":["../src/snapshot-url.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAOH,IAAiB,WAAW,CAe3B;AAfD,WAAiB,WAAW;IACxB,SAAgB,KAAK,CAAC,GAAW;QAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;SACxD;QACD,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;QAEnC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;SACxD;QACD,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAbe,iBAAK,QAapB,CAAA;AACL,CAAC,EAfgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAe3B"}
@@ -3,9 +3,5 @@
3
3
  * Licensed under the GNU Affero General Public License (AGPL).
4
4
  * See License-AGPL.txt in the project root for license information.
5
5
  */
6
-
7
- export interface PluginIndexEntry {
8
- loc: string
9
- name: string
10
- url: string
11
- }
6
+ export {};
7
+ //# sourceMappingURL=snapshot-url.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-url.spec.d.ts","sourceRoot":"","sources":["../src/snapshot-url.spec.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2020 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
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
8
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
9
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
11
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
12
+ };
13
+ var __metadata = (this && this.__metadata) || function (k, v) {
14
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ const mocha_typescript_1 = require("mocha-typescript");
18
+ const chai = require("chai");
19
+ const _1 = require(".");
20
+ const expect = chai.expect;
21
+ let TestSnapshotUrlParser = class TestSnapshotUrlParser {
22
+ testPositive() {
23
+ const actual = _1.SnapshotUrl.parse("workspaces/c362d434-6faa-4ce0-9ad4-91b4a87c4abe/3f0556f7-4afa-11e9-98d5-52f8983b9279.tar@gitpod-prodcopy-user-e1e28f18-0354-4a5d-b6b4-8879a2ff73fd");
24
+ expect(actual).to.deep.equal({
25
+ bucketId: "gitpod-prodcopy-user-e1e28f18-0354-4a5d-b6b4-8879a2ff73fd",
26
+ filename: "3f0556f7-4afa-11e9-98d5-52f8983b9279.tar",
27
+ fullPath: "workspaces/c362d434-6faa-4ce0-9ad4-91b4a87c4abe/3f0556f7-4afa-11e9-98d5-52f8983b9279.tar",
28
+ });
29
+ }
30
+ };
31
+ __decorate([
32
+ mocha_typescript_1.test,
33
+ __metadata("design:type", Function),
34
+ __metadata("design:paramtypes", []),
35
+ __metadata("design:returntype", void 0)
36
+ ], TestSnapshotUrlParser.prototype, "testPositive", null);
37
+ TestSnapshotUrlParser = __decorate([
38
+ mocha_typescript_1.suite
39
+ ], TestSnapshotUrlParser);
40
+ module.exports = new TestSnapshotUrlParser(); // Only to circumvent no usage warning :-/
41
+ //# sourceMappingURL=snapshot-url.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot-url.spec.js","sourceRoot":"","sources":["../src/snapshot-url.spec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;AAEH,uDAA+C;AAC/C,6BAA6B;AAC7B,wBAAgC;AAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAG3B,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACV,YAAY;QACrB,MAAM,MAAM,GAAG,cAAW,CAAC,KAAK,CAC5B,oJAAoJ,CACvJ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAc;YACtC,QAAQ,EAAE,2DAA2D;YACrE,QAAQ,EAAE,0CAA0C;YACpD,QAAQ,EAAE,0FAA0F;SACvG,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AAXS;IAAL,uBAAI;;;;yDAUJ;AAXC,qBAAqB;IAD1B,wBAAK;GACA,qBAAqB,CAY1B;AACD,MAAM,CAAC,OAAO,GAAG,IAAI,qBAAqB,EAAE,CAAC,CAAC,0CAA0C"}
@@ -15,9 +15,11 @@ export interface TeamSubscription {
15
15
  paymentReference: string;
16
16
  cancellationDate?: string;
17
17
  deleted?: boolean;
18
+ /** If this flag is set slots are not eligibile for clusters with "more-resources" - even if their plan might be */
19
+ excludeFromMoreResources: boolean;
18
20
  }
19
21
  export declare namespace TeamSubscription {
20
- const create: (ts: Omit<TeamSubscription, 'id'>) => TeamSubscription;
22
+ const create: (ts: Omit<TeamSubscription, "id">) => TeamSubscription;
21
23
  const isActive: (ts: TeamSubscription, date: string) => boolean;
22
24
  }
23
25
  /**
@@ -38,9 +40,9 @@ export declare type TeamSubscriptionSlotDeactivated = TeamSubscriptionSlot & {
38
40
  export declare type TeamSubscriptionSlotAssigned = TeamSubscriptionSlot & TeamSubscriptionSlotDeactivated & {
39
41
  subscriptionId: string;
40
42
  };
41
- export declare type TeamSubscriptionSlotState = 'unassigned' | 'assigned' | 'deactivated' | 'cancelled';
43
+ export declare type TeamSubscriptionSlotState = "unassigned" | "assigned" | "deactivated" | "cancelled";
42
44
  export declare namespace TeamSubscriptionSlot {
43
- const create: (ts: Omit<TeamSubscriptionSlot, 'id'>) => TeamSubscriptionSlot;
45
+ const create: (ts: Omit<TeamSubscriptionSlot, "id">) => TeamSubscriptionSlot;
44
46
  const assign: (slot: TeamSubscriptionSlot, assigneeId: string, subscriptionId: string, assigneeIdentifier: AssigneeIdentifier) => void;
45
47
  const deactivate: (slot: TeamSubscriptionSlot, cancellationDate: string) => void;
46
48
  const reactivate: (slot: TeamSubscriptionSlot, subscriptionId?: string | undefined) => void;