@gitpod/gitpod-protocol 0.1.5-upgrade-code.5 → 0.1.5-vn-implement-jetbrains-terminals.0

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 (299) hide show
  1. package/data/builtin-theia-plugins.json +9 -9
  2. package/data/gitpod-schema.json +25 -24
  3. package/lib/accounting-protocol.d.ts +155 -0
  4. package/lib/accounting-protocol.d.ts.map +1 -0
  5. package/lib/accounting-protocol.js +109 -0
  6. package/lib/accounting-protocol.js.map +1 -0
  7. package/lib/admin-protocol.d.ts +31 -4
  8. package/lib/admin-protocol.d.ts.map +1 -1
  9. package/lib/admin-protocol.js +15 -0
  10. package/lib/admin-protocol.js.map +1 -1
  11. package/lib/analytics.d.ts +45 -0
  12. package/lib/analytics.d.ts.map +1 -0
  13. package/lib/analytics.js +10 -0
  14. package/lib/analytics.js.map +1 -0
  15. package/lib/auth.d.ts +25 -0
  16. package/lib/auth.d.ts.map +1 -0
  17. package/lib/auth.js +16 -0
  18. package/lib/auth.js.map +1 -0
  19. package/lib/context-url.d.ts +31 -0
  20. package/lib/context-url.d.ts.map +1 -0
  21. package/lib/context-url.js +102 -0
  22. package/lib/context-url.js.map +1 -0
  23. package/lib/context-url.spec.d.ts +14 -0
  24. package/lib/context-url.spec.d.ts.map +1 -0
  25. package/lib/context-url.spec.js +94 -0
  26. package/lib/context-url.spec.js.map +1 -0
  27. package/lib/email-protocol.d.ts +1 -2
  28. package/lib/email-protocol.d.ts.map +1 -1
  29. package/lib/email-protocol.js +4 -4
  30. package/lib/email-protocol.js.map +1 -1
  31. package/lib/encryption/container-module.js +5 -4
  32. package/lib/encryption/container-module.js.map +1 -1
  33. package/lib/encryption/encryption-engine.js +19 -20
  34. package/lib/encryption/encryption-engine.js.map +1 -1
  35. package/lib/encryption/encryption-engine.spec.js +29 -36
  36. package/lib/encryption/encryption-engine.spec.js.map +1 -1
  37. package/lib/encryption/encryption-service.js +29 -43
  38. package/lib/encryption/encryption-service.js.map +1 -1
  39. package/lib/encryption/key-provider.js +25 -30
  40. package/lib/encryption/key-provider.js.map +1 -1
  41. package/lib/env.d.ts +1 -2
  42. package/lib/env.d.ts.map +1 -1
  43. package/lib/env.js +20 -21
  44. package/lib/env.js.map +1 -1
  45. package/lib/gitpod-file-parser.js +25 -41
  46. package/lib/gitpod-file-parser.js.map +1 -1
  47. package/lib/gitpod-file-parser.spec.js +116 -116
  48. package/lib/gitpod-file-parser.spec.js.map +1 -1
  49. package/lib/gitpod-service.d.ts +162 -20
  50. package/lib/gitpod-service.d.ts.map +1 -1
  51. package/lib/gitpod-service.js +170 -256
  52. package/lib/gitpod-service.js.map +1 -1
  53. package/lib/headless-workspace-log.d.ts +8 -11
  54. package/lib/headless-workspace-log.d.ts.map +1 -1
  55. package/lib/headless-workspace-log.js +4 -7
  56. package/lib/headless-workspace-log.js.map +1 -1
  57. package/lib/ide-frontend-service.d.ts +4 -0
  58. package/lib/ide-frontend-service.d.ts.map +1 -1
  59. package/lib/ide-protocol.d.ts +105 -0
  60. package/lib/ide-protocol.d.ts.map +1 -0
  61. package/lib/ide-protocol.js +8 -0
  62. package/lib/ide-protocol.js.map +1 -0
  63. package/lib/index.d.ts +6 -0
  64. package/lib/index.d.ts.map +1 -1
  65. package/lib/index.js +7 -1
  66. package/lib/index.js.map +1 -1
  67. package/lib/installation-admin-protocol.d.ts +21 -0
  68. package/lib/installation-admin-protocol.d.ts.map +1 -0
  69. package/lib/installation-admin-protocol.js +30 -0
  70. package/lib/installation-admin-protocol.js.map +1 -0
  71. package/lib/messaging/browser/connection.d.ts +5 -3
  72. package/lib/messaging/browser/connection.d.ts.map +1 -1
  73. package/lib/messaging/browser/connection.js +183 -33
  74. package/lib/messaging/browser/connection.js.map +1 -1
  75. package/lib/messaging/browser/window-connection.js +35 -55
  76. package/lib/messaging/browser/window-connection.js.map +1 -1
  77. package/lib/messaging/client-call-metrics.d.ts +35 -0
  78. package/lib/messaging/client-call-metrics.d.ts.map +1 -0
  79. package/lib/messaging/client-call-metrics.js +83 -0
  80. package/lib/messaging/client-call-metrics.js.map +1 -0
  81. package/lib/messaging/error.d.ts +5 -1
  82. package/lib/messaging/error.d.ts.map +1 -1
  83. package/lib/messaging/error.js +10 -2
  84. package/lib/messaging/error.js.map +1 -1
  85. package/lib/messaging/handler.d.ts +10 -0
  86. package/lib/messaging/handler.d.ts.map +1 -1
  87. package/lib/messaging/node/connection.d.ts +1 -17
  88. package/lib/messaging/node/connection.d.ts.map +1 -1
  89. package/lib/messaging/node/connection.js +23 -59
  90. package/lib/messaging/node/connection.js.map +1 -1
  91. package/lib/messaging/proxy-factory.d.ts +2 -0
  92. package/lib/messaging/proxy-factory.d.ts.map +1 -1
  93. package/lib/messaging/proxy-factory.js +74 -159
  94. package/lib/messaging/proxy-factory.js.map +1 -1
  95. package/lib/oss-allowlist.d.ts +14 -0
  96. package/lib/oss-allowlist.d.ts.map +1 -0
  97. package/lib/oss-allowlist.js +8 -0
  98. package/lib/oss-allowlist.js.map +1 -0
  99. package/lib/payment-protocol.d.ts +18 -0
  100. package/lib/payment-protocol.d.ts.map +1 -0
  101. package/lib/payment-protocol.js +13 -0
  102. package/lib/payment-protocol.js.map +1 -0
  103. package/lib/permission.d.ts +5 -3
  104. package/lib/permission.d.ts.map +1 -1
  105. package/lib/permission.js +18 -17
  106. package/lib/permission.js.map +1 -1
  107. package/lib/plans.d.ts +210 -0
  108. package/lib/plans.d.ts.map +1 -0
  109. package/lib/plans.js +570 -0
  110. package/lib/plans.js.map +1 -0
  111. package/lib/protocol.d.ts +120 -58
  112. package/lib/protocol.d.ts.map +1 -1
  113. package/lib/protocol.js +116 -130
  114. package/lib/protocol.js.map +1 -1
  115. package/lib/snapshot-url.d.ts +14 -0
  116. package/lib/snapshot-url.d.ts.map +1 -0
  117. package/lib/snapshot-url.js +26 -0
  118. package/lib/snapshot-url.js.map +1 -0
  119. package/{src/util/without.ts → lib/snapshot-url.spec.d.ts} +2 -3
  120. package/lib/snapshot-url.spec.d.ts.map +1 -0
  121. package/lib/snapshot-url.spec.js +41 -0
  122. package/lib/snapshot-url.spec.js.map +1 -0
  123. package/lib/team-subscription-protocol.d.ts +73 -0
  124. package/lib/team-subscription-protocol.d.ts.map +1 -0
  125. package/lib/team-subscription-protocol.js +63 -0
  126. package/lib/team-subscription-protocol.js.map +1 -0
  127. package/lib/teams-projects-protocol.d.ts +113 -0
  128. package/lib/teams-projects-protocol.d.ts.map +1 -0
  129. package/lib/teams-projects-protocol.js +30 -0
  130. package/lib/teams-projects-protocol.js.map +1 -0
  131. package/lib/util/analytics.d.ts +8 -0
  132. package/lib/util/analytics.d.ts.map +1 -0
  133. package/lib/util/analytics.js +79 -0
  134. package/lib/util/analytics.js.map +1 -0
  135. package/lib/util/async-iterator.js +55 -133
  136. package/lib/util/async-iterator.js.map +1 -1
  137. package/lib/util/cancelable.js +17 -59
  138. package/lib/util/cancelable.js.map +1 -1
  139. package/lib/util/date-time.js +8 -8
  140. package/lib/util/date-time.js.map +1 -1
  141. package/lib/util/deferred.js +10 -12
  142. package/lib/util/deferred.js.map +1 -1
  143. package/lib/util/disposable.js +26 -39
  144. package/lib/util/disposable.js.map +1 -1
  145. package/lib/util/event.js +58 -74
  146. package/lib/util/event.js.map +1 -1
  147. package/lib/util/garbage-collected-cache.d.ts +1 -0
  148. package/lib/util/garbage-collected-cache.d.ts.map +1 -1
  149. package/lib/util/garbage-collected-cache.js +26 -46
  150. package/lib/util/garbage-collected-cache.js.map +1 -1
  151. package/lib/util/generate-workspace-id.d.ts +4 -0
  152. package/lib/util/generate-workspace-id.d.ts.map +1 -0
  153. package/lib/util/generate-workspace-id.js +487 -0
  154. package/lib/util/generate-workspace-id.js.map +1 -0
  155. package/lib/util/{without.d.ts → generate-workspace-id.spec.d.ts} +2 -2
  156. package/lib/util/generate-workspace-id.spec.d.ts.map +1 -0
  157. package/lib/util/generate-workspace-id.spec.js +87 -0
  158. package/lib/util/generate-workspace-id.spec.js.map +1 -0
  159. package/lib/util/gitpod-cookie.d.ts +20 -0
  160. package/lib/util/gitpod-cookie.d.ts.map +1 -0
  161. package/lib/util/gitpod-cookie.js +44 -0
  162. package/lib/util/gitpod-cookie.js.map +1 -0
  163. package/lib/util/gitpod-host-url.d.ts +1 -2
  164. package/lib/util/gitpod-host-url.d.ts.map +1 -1
  165. package/lib/util/gitpod-host-url.js +96 -98
  166. package/lib/util/gitpod-host-url.js.map +1 -1
  167. package/lib/util/gitpod-host-url.spec.d.ts +8 -1
  168. package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
  169. package/lib/util/gitpod-host-url.spec.js +104 -22
  170. package/lib/util/gitpod-host-url.spec.js.map +1 -1
  171. package/lib/util/grpc.d.ts +15 -0
  172. package/lib/util/grpc.d.ts.map +1 -0
  173. package/lib/util/grpc.js +18 -0
  174. package/lib/util/grpc.js.map +1 -0
  175. package/lib/util/jaeger-client-types.d.ts +68 -0
  176. package/lib/util/jaeger-client-types.d.ts.map +1 -0
  177. package/lib/util/{without.js → jaeger-client-types.js} +1 -1
  178. package/lib/util/jaeger-client-types.js.map +1 -0
  179. package/lib/util/logging.d.ts +49 -33
  180. package/lib/util/logging.d.ts.map +1 -1
  181. package/lib/util/logging.js +107 -110
  182. package/lib/util/logging.js.map +1 -1
  183. package/lib/util/make-link.js +2 -2
  184. package/lib/util/make-link.js.map +1 -1
  185. package/lib/util/parse-workspace-id.d.ts +13 -3
  186. package/lib/util/parse-workspace-id.d.ts.map +1 -1
  187. package/lib/util/parse-workspace-id.js +38 -8
  188. package/lib/util/parse-workspace-id.js.map +1 -1
  189. package/lib/util/parse-workspace-id.spec.d.ts +8 -0
  190. package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
  191. package/lib/util/parse-workspace-id.spec.js +127 -47
  192. package/lib/util/parse-workspace-id.spec.js.map +1 -1
  193. package/lib/util/queue.js +16 -55
  194. package/lib/util/queue.js.map +1 -1
  195. package/lib/util/queue.spec.js +144 -288
  196. package/lib/util/queue.spec.js.map +1 -1
  197. package/lib/util/repeat.d.ts +15 -0
  198. package/lib/util/repeat.d.ts.map +1 -0
  199. package/lib/util/repeat.js +55 -0
  200. package/lib/util/repeat.js.map +1 -0
  201. package/lib/util/semaphore.js +15 -46
  202. package/lib/util/semaphore.js.map +1 -1
  203. package/lib/util/skip-if.js +6 -6
  204. package/lib/util/skip-if.js.map +1 -1
  205. package/lib/util/timeutil.js +28 -16
  206. package/lib/util/timeutil.js.map +1 -1
  207. package/lib/util/timeutil.spec.js +21 -24
  208. package/lib/util/timeutil.spec.js.map +1 -1
  209. package/lib/util/tracing.d.ts +51 -5
  210. package/lib/util/tracing.d.ts.map +1 -1
  211. package/lib/util/tracing.js +197 -62
  212. package/lib/util/tracing.js.map +1 -1
  213. package/lib/util/tracing.spec.d.ts +7 -0
  214. package/lib/util/tracing.spec.d.ts.map +1 -0
  215. package/lib/util/tracing.spec.js +121 -0
  216. package/lib/util/tracing.spec.js.map +1 -0
  217. package/lib/util/workspace-port-authentication.js +3 -2
  218. package/lib/util/workspace-port-authentication.js.map +1 -1
  219. package/lib/workspace-cluster.d.ts +71 -0
  220. package/lib/workspace-cluster.d.ts.map +1 -0
  221. package/lib/workspace-cluster.js +16 -0
  222. package/lib/workspace-cluster.js.map +1 -0
  223. package/lib/workspace-instance.d.ts +26 -2
  224. package/lib/workspace-instance.d.ts.map +1 -1
  225. package/lib/wsready.d.ts +1 -1
  226. package/lib/wsready.js +2 -2
  227. package/package.json +33 -17
  228. package/pkg-yarn.lock +18 -9
  229. package/provenance-bundle.jsonl +2 -0
  230. package/src/accounting-protocol.ts +229 -0
  231. package/src/admin-protocol.ts +53 -5
  232. package/src/analytics.ts +54 -0
  233. package/src/auth.ts +27 -0
  234. package/src/context-url.spec.ts +53 -0
  235. package/src/context-url.ts +107 -0
  236. package/src/email-protocol.ts +2 -3
  237. package/src/env.ts +10 -10
  238. package/src/gitpod-service.ts +237 -38
  239. package/src/headless-workspace-log.ts +7 -11
  240. package/src/ide-frontend-service.ts +5 -1
  241. package/src/ide-protocol.ts +119 -0
  242. package/src/index.ts +7 -1
  243. package/src/installation-admin-protocol.ts +35 -0
  244. package/src/messaging/browser/connection.ts +195 -14
  245. package/src/messaging/client-call-metrics.ts +97 -0
  246. package/src/messaging/error.ts +14 -2
  247. package/src/messaging/handler.ts +12 -0
  248. package/src/messaging/node/connection.ts +21 -68
  249. package/src/messaging/proxy-factory.ts +14 -6
  250. package/src/oss-allowlist.ts +15 -0
  251. package/src/payment-protocol.ts +20 -0
  252. package/src/permission.ts +7 -6
  253. package/src/plans.ts +632 -0
  254. package/src/protocol.ts +194 -87
  255. package/src/snapshot-url.spec.ts +25 -0
  256. package/src/snapshot-url.ts +27 -0
  257. package/src/team-subscription-protocol.ts +113 -0
  258. package/src/teams-projects-protocol.ts +147 -0
  259. package/src/util/analytics.ts +87 -0
  260. package/src/util/deferred.ts +1 -1
  261. package/src/util/garbage-collected-cache.ts +9 -3
  262. package/src/util/generate-workspace-id.spec.ts +48 -0
  263. package/src/util/generate-workspace-id.ts +475 -0
  264. package/src/util/gitpod-cookie.ts +39 -0
  265. package/src/util/gitpod-host-url.spec.ts +30 -1
  266. package/src/util/gitpod-host-url.ts +23 -13
  267. package/src/util/grpc.ts +15 -0
  268. package/src/util/jaeger-client-types.ts +102 -0
  269. package/src/util/logging.ts +102 -38
  270. package/src/util/parse-workspace-id.spec.ts +45 -4
  271. package/src/util/parse-workspace-id.ts +38 -7
  272. package/src/util/queue.spec.ts +1 -1
  273. package/src/util/repeat.ts +45 -0
  274. package/src/util/semaphore.ts +2 -2
  275. package/src/util/skip-if.ts +1 -1
  276. package/src/util/timeutil.ts +4 -4
  277. package/src/util/tracing.spec.ts +83 -0
  278. package/src/util/tracing.ts +183 -17
  279. package/src/workspace-cluster.ts +91 -0
  280. package/src/workspace-instance.ts +51 -13
  281. package/src/wsready.ts +2 -2
  282. package/lib/messaging/connection-error-handler.d.ts +0 -27
  283. package/lib/messaging/connection-error-handler.d.ts.map +0 -1
  284. package/lib/messaging/connection-error-handler.js +0 -46
  285. package/lib/messaging/connection-error-handler.js.map +0 -1
  286. package/lib/util/repeater.d.ts +0 -22
  287. package/lib/util/repeater.d.ts.map +0 -1
  288. package/lib/util/repeater.js +0 -118
  289. package/lib/util/repeater.js.map +0 -1
  290. package/lib/util/safe-promise.d.ts +0 -11
  291. package/lib/util/safe-promise.d.ts.map +0 -1
  292. package/lib/util/safe-promise.js +0 -34
  293. package/lib/util/safe-promise.js.map +0 -1
  294. package/lib/util/without.d.ts.map +0 -1
  295. package/lib/util/without.js.map +0 -1
  296. package/src/messaging/connection-error-handler.ts +0 -62
  297. package/src/util/jaeger-client.d.ts +0 -105
  298. package/src/util/repeater.ts +0 -49
  299. package/src/util/safe-promise.ts +0 -26
@@ -14,71 +14,23 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
14
14
  step((generator = generator.apply(thisArg, _arguments || [])).next());
15
15
  });
16
16
  };
17
- var __generator = (this && this.__generator) || function (thisArg, body) {
18
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
19
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
20
- function verb(n) { return function (v) { return step([n, v]); }; }
21
- function step(op) {
22
- if (f) throw new TypeError("Generator is already executing.");
23
- while (_) try {
24
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
25
- if (y = 0, t) op = [op[0] & 2, t.value];
26
- switch (op[0]) {
27
- case 0: case 1: t = op; break;
28
- case 4: _.label++; return { value: op[1], done: false };
29
- case 5: _.label++; y = op[1]; op = [0]; continue;
30
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
31
- default:
32
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
33
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
34
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
35
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
36
- if (t[2]) _.ops.pop();
37
- _.trys.pop(); continue;
38
- }
39
- op = body.call(thisArg, _);
40
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
41
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
42
- }
43
- };
44
- var __read = (this && this.__read) || function (o, n) {
45
- var m = typeof Symbol === "function" && o[Symbol.iterator];
46
- if (!m) return o;
47
- var i = m.call(o), r, ar = [], e;
48
- try {
49
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
50
- }
51
- catch (error) { e = { error: error }; }
52
- finally {
53
- try {
54
- if (r && !r.done && (m = i["return"])) m.call(i);
55
- }
56
- finally { if (e) throw e.error; }
57
- }
58
- return ar;
59
- };
60
- var __spread = (this && this.__spread) || function () {
61
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
62
- return ar;
63
- };
64
17
  Object.defineProperty(exports, "__esModule", { value: true });
65
18
  exports.JsonRpcProxyFactory = exports.JsonRpcConnectionHandler = void 0;
66
- var vscode_jsonrpc_1 = require("vscode-jsonrpc");
67
- var event_1 = require("../util/event");
68
- var logging_1 = require("../util/logging");
69
- var JsonRpcConnectionHandler = /** @class */ (function () {
70
- function JsonRpcConnectionHandler(path, targetFactory) {
19
+ const vscode_jsonrpc_1 = require("vscode-jsonrpc");
20
+ const event_1 = require("../util/event");
21
+ const logging_1 = require("../util/logging");
22
+ class JsonRpcConnectionHandler {
23
+ constructor(path, targetFactory) {
71
24
  this.path = path;
72
25
  this.targetFactory = targetFactory;
73
26
  }
74
- JsonRpcConnectionHandler.prototype.onConnection = function (connection, request) {
75
- var factory = new JsonRpcProxyFactory();
76
- var proxy = factory.createProxy();
27
+ onConnection(connection, request) {
28
+ const factory = new JsonRpcProxyFactory();
29
+ const proxy = factory.createProxy();
77
30
  factory.target = this.targetFactory(proxy, request);
78
31
  factory.listen(connection);
79
- };
80
- return JsonRpcConnectionHandler;
81
- }());
32
+ }
33
+ }
82
34
  exports.JsonRpcConnectionHandler = JsonRpcConnectionHandler;
83
35
  /**
84
36
  * Factory for JSON-RPC proxy objects.
@@ -122,57 +74,45 @@ exports.JsonRpcConnectionHandler = JsonRpcConnectionHandler;
122
74
  *
123
75
  * @param <T> - The type of the object to expose to JSON-RPC.
124
76
  */
125
- var JsonRpcProxyFactory = /** @class */ (function () {
77
+ class JsonRpcProxyFactory {
126
78
  /**
127
79
  * Build a new JsonRpcProxyFactory.
128
80
  *
129
81
  * @param target - The object to expose to JSON-RPC methods calls. If this
130
82
  * is omitted, the proxy won't be able to handle requests, only send them.
131
83
  */
132
- function JsonRpcProxyFactory(target) {
84
+ constructor(target) {
133
85
  this.target = target;
134
86
  this.onDidOpenConnectionEmitter = new event_1.Emitter();
135
87
  this.onDidCloseConnectionEmitter = new event_1.Emitter();
136
88
  this.waitForConnection();
137
89
  }
138
- JsonRpcProxyFactory.prototype.waitForConnection = function () {
139
- var _this = this;
140
- this.connectionPromise = new Promise(function (resolve) {
141
- return _this.connectionPromiseResolve = resolve;
142
- });
143
- this.connectionPromise.then(function (connection) {
144
- connection.onClose(function () {
145
- return _this.onDidCloseConnectionEmitter.fire(undefined);
146
- });
147
- _this.onDidOpenConnectionEmitter.fire(undefined);
90
+ waitForConnection() {
91
+ this.connectionPromise = new Promise(resolve => this.connectionPromiseResolve = resolve);
92
+ this.connectionPromise.then(connection => {
93
+ connection.onClose(() => this.fireConnectionClosed());
94
+ this.fireConnectionOpened();
148
95
  });
149
- };
96
+ }
97
+ fireConnectionClosed() {
98
+ this.onDidCloseConnectionEmitter.fire(undefined);
99
+ }
100
+ fireConnectionOpened() {
101
+ this.onDidOpenConnectionEmitter.fire(undefined);
102
+ }
150
103
  /**
151
104
  * Connect a MessageConnection to the factory.
152
105
  *
153
106
  * This connection will be used to send/receive JSON-RPC requests and
154
107
  * response.
155
108
  */
156
- JsonRpcProxyFactory.prototype.listen = function (connection) {
157
- var _this = this;
158
- connection.onRequest(function (method) {
159
- var params = [];
160
- for (var _i = 1; _i < arguments.length; _i++) {
161
- params[_i - 1] = arguments[_i];
162
- }
163
- return _this.onRequest.apply(_this, __spread([method], params));
164
- });
165
- connection.onNotification(function (method) {
166
- var params = [];
167
- for (var _i = 1; _i < arguments.length; _i++) {
168
- params[_i - 1] = arguments[_i];
169
- }
170
- return _this.onNotification.apply(_this, __spread([method], params));
171
- });
172
- connection.onDispose(function () { return _this.waitForConnection(); });
109
+ listen(connection) {
110
+ connection.onRequest((method, ...params) => this.onRequest(method, ...params));
111
+ connection.onNotification((method, ...params) => this.onNotification(method, ...params));
112
+ connection.onDispose(() => this.waitForConnection());
173
113
  connection.listen();
174
114
  this.connectionPromiseResolve(connection);
175
- };
115
+ }
176
116
  /**
177
117
  * Process an incoming JSON-RPC method call.
178
118
  *
@@ -185,48 +125,33 @@ var JsonRpcProxyFactory = /** @class */ (function () {
185
125
  *
186
126
  * @returns A promise of the method call completion.
187
127
  */
188
- JsonRpcProxyFactory.prototype.onRequest = function (method) {
189
- var args = [];
190
- for (var _i = 1; _i < arguments.length; _i++) {
191
- args[_i - 1] = arguments[_i];
192
- }
193
- return __awaiter(this, void 0, void 0, function () {
194
- var e_1;
195
- var _a;
196
- return __generator(this, function (_b) {
197
- switch (_b.label) {
198
- case 0:
199
- _b.trys.push([0, 2, , 3]);
200
- return [4 /*yield*/, (_a = this.target)[method].apply(_a, __spread(args))];
201
- case 1: return [2 /*return*/, _b.sent()];
202
- case 2:
203
- e_1 = _b.sent();
204
- if (e_1 instanceof vscode_jsonrpc_1.ResponseError) {
205
- logging_1.log.info("Request " + method + " unsuccessful: " + e_1.code + "/\"" + e_1.message + "\"", { method: method, args: args });
206
- }
207
- else {
208
- logging_1.log.error("Request " + method + " failed with internal server error", e_1, { method: method, args: args });
209
- }
210
- throw e_1;
211
- case 3: return [2 /*return*/];
128
+ onRequest(method, ...args) {
129
+ return __awaiter(this, void 0, void 0, function* () {
130
+ try {
131
+ return yield this.target[method](...args);
132
+ }
133
+ catch (e) {
134
+ if (e instanceof vscode_jsonrpc_1.ResponseError) {
135
+ logging_1.log.info(`Request ${method} unsuccessful: ${e.code}/"${e.message}"`, { method, args });
136
+ }
137
+ else {
138
+ logging_1.log.error(`Request ${method} failed with internal server error`, e, { method, args });
212
139
  }
213
- });
140
+ throw e;
141
+ }
214
142
  });
215
- };
143
+ }
216
144
  /**
217
145
  * Process an incoming JSON-RPC notification.
218
146
  *
219
147
  * Same as [[onRequest]], but called on incoming notifications rather than
220
148
  * methods calls.
221
149
  */
222
- JsonRpcProxyFactory.prototype.onNotification = function (method) {
223
- var _a;
224
- var args = [];
225
- for (var _i = 1; _i < arguments.length; _i++) {
226
- args[_i - 1] = arguments[_i];
150
+ onNotification(method, ...args) {
151
+ if (this.target[method]) {
152
+ this.target[method](...args);
227
153
  }
228
- (_a = this.target)[method].apply(_a, __spread(args));
229
- };
154
+ }
230
155
  /**
231
156
  * Create a Proxy exposing the interface of an object of type T. This Proxy
232
157
  * can be used to do JSON-RPC method calls on the remote target object as
@@ -234,10 +159,10 @@ var JsonRpcProxyFactory = /** @class */ (function () {
234
159
  *
235
160
  * If `T` implements `JsonRpcServer` then a client is used as a target object for a remote target object.
236
161
  */
237
- JsonRpcProxyFactory.prototype.createProxy = function () {
238
- var result = new Proxy(this, this);
162
+ createProxy() {
163
+ const result = new Proxy(this, this);
239
164
  return result;
240
- };
165
+ }
241
166
  /**
242
167
  * Get a callable object that executes a JSON-RPC method call.
243
168
  *
@@ -260,11 +185,10 @@ var JsonRpcProxyFactory = /** @class */ (function () {
260
185
  * @param receiver - unused.
261
186
  * @returns A callable that executes the JSON-RPC call.
262
187
  */
263
- JsonRpcProxyFactory.prototype.get = function (target, p, receiver) {
264
- var _this = this;
188
+ get(target, p, receiver) {
265
189
  if (p === 'setClient') {
266
- return function (client) {
267
- _this.target = client;
190
+ return (client) => {
191
+ this.target = client;
268
192
  };
269
193
  }
270
194
  if (p === 'onDidOpenConnection') {
@@ -273,33 +197,25 @@ var JsonRpcProxyFactory = /** @class */ (function () {
273
197
  if (p === 'onDidCloseConnection') {
274
198
  return this.onDidCloseConnectionEmitter.event;
275
199
  }
276
- var isNotify = this.isNotification(p);
277
- return function () {
278
- var args = [];
279
- for (var _i = 0; _i < arguments.length; _i++) {
280
- args[_i] = arguments[_i];
200
+ const isNotify = this.isNotification(p);
201
+ return (...args) => this.connectionPromise.then(connection => new Promise((resolve, reject) => {
202
+ try {
203
+ if (isNotify) {
204
+ connection.sendNotification(p.toString(), ...args);
205
+ resolve(undefined);
206
+ }
207
+ else {
208
+ const resultPromise = connection.sendRequest(p.toString(), ...args);
209
+ resultPromise
210
+ .catch((err) => reject(err))
211
+ .then((result) => resolve(result));
212
+ }
281
213
  }
282
- return _this.connectionPromise.then(function (connection) {
283
- return new Promise(function (resolve, reject) {
284
- try {
285
- if (isNotify) {
286
- connection.sendNotification.apply(connection, __spread([p.toString()], args));
287
- resolve();
288
- }
289
- else {
290
- var resultPromise = connection.sendRequest.apply(connection, __spread([p.toString()], args));
291
- resultPromise
292
- .catch(function (err) { return reject(err); })
293
- .then(function (result) { return resolve(result); });
294
- }
295
- }
296
- catch (err) {
297
- reject(err);
298
- }
299
- });
300
- });
301
- };
302
- };
214
+ catch (err) {
215
+ reject(err);
216
+ }
217
+ }));
218
+ }
303
219
  /**
304
220
  * Return whether the given property represents a notification.
305
221
  *
@@ -309,10 +225,9 @@ var JsonRpcProxyFactory = /** @class */ (function () {
309
225
  * @param p - The property being called on the proxy.
310
226
  * @return Whether `p` represents a notification.
311
227
  */
312
- JsonRpcProxyFactory.prototype.isNotification = function (p) {
228
+ isNotification(p) {
313
229
  return p.toString().startsWith("notify") || p.toString().startsWith("on");
314
- };
315
- return JsonRpcProxyFactory;
316
- }());
230
+ }
231
+ }
317
232
  exports.JsonRpcProxyFactory = JsonRpcProxyFactory;
318
233
  //# sourceMappingURL=proxy-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-factory.js","sourceRoot":"","sources":["../../src/messaging/proxy-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy-factory.js","sourceRoot":"","sources":["../../src/messaging/proxy-factory.ts"],"names":[],"mappings":"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"}
@@ -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 OssAllowList {
7
+ /**
8
+ * A string that identifies a GitHub/GitLab/Bitbucket identity of the form "<host>/<profilename>"
9
+ * E.g., "github.com/geropl"
10
+ */
11
+ identity: string;
12
+ deleted?: boolean;
13
+ }
14
+ //# sourceMappingURL=oss-allowlist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oss-allowlist.d.ts","sourceRoot":"","sources":["../src/oss-allowlist.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,YAAY;IACzB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) 2021 Gitpod GmbH. All rights reserved.
4
+ * Licensed under the GNU Affero General Public License (AGPL).
5
+ * See License-AGPL.txt in the project root for license information.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=oss-allowlist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oss-allowlist.js","sourceRoot":"","sources":["../src/oss-allowlist.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,18 @@
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 declare namespace PaymentProtocol {
7
+ const UPDATE_GITPOD_SUBSCRIPTION_PATH = "/payment/chargebee";
8
+ }
9
+ export interface PlanCoupon {
10
+ chargebeePlanID: string;
11
+ newPrice: number;
12
+ description: string;
13
+ }
14
+ export interface GithubUpgradeURL {
15
+ url: string;
16
+ planID: number;
17
+ }
18
+ //# sourceMappingURL=payment-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-protocol.d.ts","sourceRoot":"","sources":["../src/payment-protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEF,yBAAiB,eAAe,CAAC;IACvB,MAAM,+BAA+B,uBAAuB,CAAA;CACtE;AAED,MAAM,WAAW,UAAU;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,13 @@
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.PaymentProtocol = void 0;
9
+ var PaymentProtocol;
10
+ (function (PaymentProtocol) {
11
+ PaymentProtocol.UPDATE_GITPOD_SUBSCRIPTION_PATH = '/payment/chargebee';
12
+ })(PaymentProtocol = exports.PaymentProtocol || (exports.PaymentProtocol = {}));
13
+ //# sourceMappingURL=payment-protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment-protocol.js","sourceRoot":"","sources":["../src/payment-protocol.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEF,IAAiB,eAAe,CAEhC;AAFA,WAAiB,eAAe;IAChB,+CAA+B,GAAG,oBAAoB,CAAA;AACvE,CAAC,EAFiB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAEhC"}
@@ -10,8 +10,10 @@ export declare const Permissions: {
10
10
  "registry-access": undefined;
11
11
  "admin-users": undefined;
12
12
  "admin-workspaces": undefined;
13
+ "admin-projects": undefined;
13
14
  "admin-api": undefined;
14
15
  "ide-settings": undefined;
16
+ "new-workspace-cluster": undefined;
15
17
  };
16
18
  export declare type PermissionName = keyof (typeof Permissions);
17
19
  export declare const Roles: {
@@ -33,19 +35,19 @@ export declare namespace Permission {
33
35
  const MONITOR: PermissionName;
34
36
  /** The permission for actions like block user, stop workspace, etc. */
35
37
  const ENFORCEMENT: PermissionName;
36
- /** The permission to start privileged workspaces */
37
- const PRIVILEGED_WORKSPACE: PermissionName;
38
38
  /** The permission for registry access (start workspaces referencing gitpod-internal Docker images) */
39
39
  const REGISTRY_ACCESS: PermissionName;
40
40
  /** The permission for accessing all user data */
41
41
  const ADMIN_USERS: PermissionName;
42
42
  /** The permission for accessing all workspace data */
43
43
  const ADMIN_WORKSPACES: PermissionName;
44
+ /** The permission for accessing all projects data */
45
+ const ADMIN_PROJECTS: PermissionName;
44
46
  /** The permission to access the admin API */
45
47
  const ADMIN_API: PermissionName;
46
48
  /** The permission to access the IDE settings */
47
49
  const IDE_SETTINGS: PermissionName;
48
- const is: (o: any) => o is "monitor" | "enforcement" | "privileged-ws" | "registry-access" | "admin-users" | "admin-workspaces" | "admin-api" | "ide-settings";
50
+ const is: (o: any) => o is "monitor" | "enforcement" | "privileged-ws" | "registry-access" | "admin-users" | "admin-workspaces" | "admin-projects" | "admin-api" | "ide-settings" | "new-workspace-cluster";
49
51
  const all: () => PermissionName[];
50
52
  }
51
53
  export declare namespace Role {
@@ -1 +1 @@
1
- {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../src/permission.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,WAAW;;;;;;;;;CASvB,CAAC;AACF,oBAAY,cAAc,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AACxD,eAAO,MAAM,KAAK;;;;CAAkE,CAAC;AACrF,oBAAY,QAAQ,GAAG,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC;AAC5C,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,cAAc,CAAC;AAEzD,yBAAiB,QAAQ,CAAC;IACf,MAAM,EAAE,MAAO,GAAG,uCAGxB,CAAA;CACJ;AAED,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,cAAc,EAAE,CAAC;CACjC;AAED,yBAAiB,UAAU,CAAC;IACxB,0EAA0E;IACnE,MAAM,OAAO,EAAE,cAA0B,CAAC;IAEjD,uEAAuE;IAChE,MAAM,WAAW,EAAE,cAA8B,CAAC;IAEzD,oDAAoD;IAC7C,MAAM,oBAAoB,EAAE,cAAgC,CAAC;IAEpE,sGAAsG;IAC/F,MAAM,eAAe,EAAE,cAAkC,CAAC;IAEjE,iDAAiD;IAC1C,MAAM,WAAW,EAAE,cAA8B,CAAC;IAEzD,sDAAsD;IAC/C,MAAM,gBAAgB,EAAE,cAAmC,CAAC;IAEnE,6CAA6C;IACtC,MAAM,SAAS,EAAE,cAA4B,CAAC;IAErD,gDAAgD;IACzC,MAAM,YAAY,EAAE,cAA+B,CAAC;IAEpD,MAAM,EAAE,MAAO,GAAG,6IAGxB,CAAA;IAEM,MAAM,GAAG,QAAO,cAAc,EAIpC,CAAC;CACL;AAED,yBAAiB,IAAI,CAAC;IAClB,iDAAiD;IAC1C,MAAM,MAAM,EAAE,IASpB,CAAC;IAEF,kEAAkE;IAC3D,MAAM,MAAM,EAAE,IAOpB,CAAC;IAEK,MAAM,KAAK,EAAE,IAQnB,CAAA;IAEM,MAAM,SAAS,SAAU,QAAQ,KAAG,IAM1C,CAAC;IAEK,MAAM,GAAG,QAAO,IAAI,EAI1B,CAAC;CACL"}
1
+ {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../src/permission.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,WAAW;;;;;;;;;;;CAWvB,CAAC;AACF,oBAAY,cAAc,GAAG,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AACxD,eAAO,MAAM,KAAK;;;;CAAkE,CAAC;AACrF,oBAAY,QAAQ,GAAG,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC;AAC5C,oBAAY,gBAAgB,GAAG,QAAQ,GAAG,cAAc,CAAC;AAEzD,yBAAiB,QAAQ,CAAC;IACf,MAAM,EAAE,MAAO,GAAG,uCAGxB,CAAA;CACJ;AAED,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,cAAc,EAAE,CAAC;CACjC;AAED,yBAAiB,UAAU,CAAC;IACxB,0EAA0E;IACnE,MAAM,OAAO,EAAE,cAA0B,CAAC;IAEjD,uEAAuE;IAChE,MAAM,WAAW,EAAE,cAA8B,CAAC;IAEzD,sGAAsG;IAC/F,MAAM,eAAe,EAAE,cAAkC,CAAC;IAEjE,iDAAiD;IAC1C,MAAM,WAAW,EAAE,cAA8B,CAAC;IAEzD,sDAAsD;IAC/C,MAAM,gBAAgB,EAAE,cAAmC,CAAC;IAEnE,qDAAqD;IAC9C,MAAM,cAAc,EAAE,cAAiC,CAAC;IAE/D,6CAA6C;IACtC,MAAM,SAAS,EAAE,cAA4B,CAAC;IAErD,gDAAgD;IACzC,MAAM,YAAY,EAAE,cAA+B,CAAC;IAEpD,MAAM,EAAE,MAAO,GAAG,0LAGxB,CAAA;IAEM,MAAM,GAAG,QAAO,cAAc,EAIpC,CAAC;CACL;AAED,yBAAiB,IAAI,CAAC;IAClB,iDAAiD;IAC1C,MAAM,MAAM,EAAE,IAQpB,CAAC;IAEF,kEAAkE;IAC3D,MAAM,MAAM,EAAE,IAMpB,CAAC;IAEK,MAAM,KAAK,EAAE,IASnB,CAAA;IAEM,MAAM,SAAS,SAAU,QAAQ,KAAG,IAM1C,CAAC;IAEK,MAAM,GAAG,QAAO,IAAI,EAI1B,CAAC;CACL"}
package/lib/permission.js CHANGED
@@ -14,15 +14,17 @@ exports.Permissions = {
14
14
  "registry-access": undefined,
15
15
  "admin-users": undefined,
16
16
  "admin-workspaces": undefined,
17
+ "admin-projects": undefined,
17
18
  "admin-api": undefined,
18
- "ide-settings": undefined
19
+ "ide-settings": undefined,
20
+ "new-workspace-cluster": undefined,
19
21
  };
20
22
  exports.Roles = { "devops": undefined, "viewer": undefined, "admin": undefined };
21
23
  var RoleName;
22
24
  (function (RoleName) {
23
- RoleName.is = function (o) {
25
+ RoleName.is = (o) => {
24
26
  return typeof (o) === 'string'
25
- && Role.all().some(function (r) { return r.name === o; });
27
+ && Role.all().some(r => r.name === o);
26
28
  };
27
29
  })(RoleName = exports.RoleName || (exports.RoleName = {}));
28
30
  var Permission;
@@ -31,26 +33,26 @@ var Permission;
31
33
  Permission.MONITOR = "monitor";
32
34
  /** The permission for actions like block user, stop workspace, etc. */
33
35
  Permission.ENFORCEMENT = "enforcement";
34
- /** The permission to start privileged workspaces */
35
- Permission.PRIVILEGED_WORKSPACE = "privileged-ws";
36
36
  /** The permission for registry access (start workspaces referencing gitpod-internal Docker images) */
37
37
  Permission.REGISTRY_ACCESS = "registry-access";
38
38
  /** The permission for accessing all user data */
39
39
  Permission.ADMIN_USERS = "admin-users";
40
40
  /** The permission for accessing all workspace data */
41
41
  Permission.ADMIN_WORKSPACES = "admin-workspaces";
42
+ /** The permission for accessing all projects data */
43
+ Permission.ADMIN_PROJECTS = "admin-projects";
42
44
  /** The permission to access the admin API */
43
45
  Permission.ADMIN_API = "admin-api";
44
46
  /** The permission to access the IDE settings */
45
47
  Permission.IDE_SETTINGS = "ide-settings";
46
- Permission.is = function (o) {
48
+ Permission.is = (o) => {
47
49
  return typeof (o) === 'string'
48
- && Permission.all().some(function (p) { return p === o; });
50
+ && Permission.all().some(p => p === o);
49
51
  };
50
- Permission.all = function () {
52
+ Permission.all = () => {
51
53
  return Object.keys(Permission)
52
- .map(function (k) { return Permission[k]; })
53
- .filter(function (k) { return typeof (k) === 'string'; });
54
+ .map(k => Permission[k])
55
+ .filter(k => typeof (k) === 'string');
54
56
  };
55
57
  })(Permission = exports.Permission || (exports.Permission = {}));
56
58
  var Role;
@@ -61,7 +63,6 @@ var Role;
61
63
  permissions: [
62
64
  Permission.MONITOR,
63
65
  Permission.ENFORCEMENT,
64
- Permission.PRIVILEGED_WORKSPACE,
65
66
  Permission.REGISTRY_ACCESS,
66
67
  Permission.IDE_SETTINGS
67
68
  ]
@@ -72,7 +73,6 @@ var Role;
72
73
  permissions: [
73
74
  Permission.MONITOR,
74
75
  Permission.REGISTRY_ACCESS,
75
- Permission.PRIVILEGED_WORKSPACE,
76
76
  ]
77
77
  };
78
78
  Role.ADMIN = {
@@ -80,21 +80,22 @@ var Role;
80
80
  permissions: [
81
81
  Permission.ADMIN_USERS,
82
82
  Permission.ADMIN_WORKSPACES,
83
+ Permission.ADMIN_PROJECTS,
83
84
  Permission.ADMIN_API,
84
85
  Permission.ENFORCEMENT,
85
86
  ]
86
87
  };
87
- Role.getByName = function (name) {
88
- var result = Role.all().find(function (r) { return r.name === name; });
88
+ Role.getByName = (name) => {
89
+ const result = Role.all().find(r => r.name === name);
89
90
  if (!result) {
90
91
  throw Error("Unknown RoleName: " + name);
91
92
  }
92
93
  return result;
93
94
  };
94
- Role.all = function () {
95
+ Role.all = () => {
95
96
  return Object.keys(Role)
96
- .map(function (k) { return Role[k]; })
97
- .filter(function (k) { return typeof (k) === 'object'; });
97
+ .map(k => Role[k])
98
+ .filter(k => typeof (k) === 'object');
98
99
  };
99
100
  })(Role = exports.Role || (exports.Role = {}));
100
101
  //# sourceMappingURL=permission.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permission.js","sourceRoot":"","sources":["../src/permission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permission.js","sourceRoot":"","sources":["../src/permission.ts"],"names":[],"mappings":"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"}