@gitpod/gitpod-protocol 0.1.5-procmount.0 → 0.1.5-protected-secrets.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.
- package/data/gitpod-schema.json +149 -29
- package/lib/accounting-protocol.d.ts +163 -0
- package/lib/accounting-protocol.d.ts.map +1 -0
- package/lib/accounting-protocol.js +111 -0
- package/lib/accounting-protocol.js.map +1 -0
- package/lib/admin-protocol.d.ts +39 -4
- package/lib/admin-protocol.d.ts.map +1 -1
- package/lib/admin-protocol.js +15 -0
- package/lib/admin-protocol.js.map +1 -1
- package/lib/analytics.d.ts +44 -0
- package/lib/analytics.d.ts.map +1 -0
- package/lib/analytics.js +10 -0
- package/lib/analytics.js.map +1 -0
- package/lib/attribution.d.ts +23 -0
- package/lib/attribution.d.ts.map +1 -0
- package/lib/attribution.js +50 -0
- package/lib/attribution.js.map +1 -0
- package/lib/auth.d.ts.map +1 -1
- package/lib/billing-mode.d.ts +43 -0
- package/lib/billing-mode.d.ts.map +1 -0
- package/lib/billing-mode.js +44 -0
- package/lib/billing-mode.js.map +1 -0
- package/lib/blocked-repositories-protocol.d.ts +13 -0
- package/lib/blocked-repositories-protocol.d.ts.map +1 -0
- package/lib/blocked-repositories-protocol.js +8 -0
- package/lib/blocked-repositories-protocol.js.map +1 -0
- package/lib/context-url.d.ts +31 -0
- package/lib/context-url.d.ts.map +1 -0
- package/lib/context-url.js +102 -0
- package/lib/context-url.js.map +1 -0
- package/lib/context-url.spec.d.ts +14 -0
- package/lib/context-url.spec.d.ts.map +1 -0
- package/lib/context-url.spec.js +109 -0
- package/lib/context-url.spec.js.map +1 -0
- package/lib/encryption/container-module.d.ts.map +1 -1
- package/lib/encryption/container-module.js +5 -4
- package/lib/encryption/container-module.js.map +1 -1
- package/lib/encryption/encryption-engine.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.js +25 -26
- package/lib/encryption/encryption-engine.js.map +1 -1
- package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.spec.js +29 -37
- package/lib/encryption/encryption-engine.spec.js.map +1 -1
- package/lib/encryption/encryption-service.d.ts.map +1 -1
- package/lib/encryption/encryption-service.js +30 -44
- package/lib/encryption/encryption-service.js.map +1 -1
- package/lib/encryption/key-provider.d.ts.map +1 -1
- package/lib/encryption/key-provider.js +31 -38
- package/lib/encryption/key-provider.js.map +1 -1
- package/lib/env.d.ts +0 -6
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +7 -27
- package/lib/env.js.map +1 -1
- package/lib/experiments/always-default.d.ts +8 -0
- package/lib/experiments/always-default.d.ts.map +1 -0
- package/lib/experiments/always-default.js +20 -0
- package/lib/experiments/always-default.js.map +1 -0
- package/lib/experiments/configcat-server.d.ts +10 -0
- package/lib/experiments/configcat-server.d.ts.map +1 -0
- package/lib/experiments/configcat-server.js +36 -0
- package/lib/experiments/configcat-server.js.map +1 -0
- package/lib/experiments/configcat.d.ts +21 -0
- package/lib/experiments/configcat.d.ts.map +1 -0
- package/lib/experiments/configcat.js +51 -0
- package/lib/experiments/configcat.js.map +1 -0
- package/lib/experiments/types.d.ts +22 -0
- package/lib/experiments/types.d.ts.map +1 -0
- package/lib/experiments/types.js +10 -0
- package/lib/experiments/types.js.map +1 -0
- package/lib/gitpod-file-parser.d.ts.map +1 -1
- package/lib/gitpod-file-parser.js +26 -42
- package/lib/gitpod-file-parser.js.map +1 -1
- package/lib/gitpod-file-parser.spec.js +145 -142
- package/lib/gitpod-file-parser.spec.js.map +1 -1
- package/lib/gitpod-service.d.ts +195 -39
- package/lib/gitpod-service.d.ts.map +1 -1
- package/lib/gitpod-service.js +204 -271
- package/lib/gitpod-service.js.map +1 -1
- package/lib/headless-workspace-log.d.ts +9 -11
- package/lib/headless-workspace-log.d.ts.map +1 -1
- package/lib/headless-workspace-log.js +6 -8
- package/lib/headless-workspace-log.js.map +1 -1
- package/lib/ide-frontend-service.d.ts +5 -1
- package/lib/ide-frontend-service.d.ts.map +1 -1
- package/lib/ide-protocol.d.ts +113 -0
- package/lib/ide-protocol.d.ts.map +1 -0
- package/lib/{util/without.js → ide-protocol.js} +2 -2
- package/lib/ide-protocol.js.map +1 -0
- package/lib/index.d.ts +16 -10
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -2
- package/lib/index.js.map +1 -1
- package/lib/installation-admin-protocol.d.ts +30 -0
- package/lib/installation-admin-protocol.d.ts.map +1 -0
- package/lib/installation-admin-protocol.js +31 -0
- package/lib/installation-admin-protocol.js.map +1 -0
- package/lib/license-protocol.d.ts +7 -0
- package/lib/license-protocol.d.ts.map +1 -1
- package/lib/license-protocol.js.map +1 -1
- package/lib/messaging/browser/connection.d.ts +5 -3
- package/lib/messaging/browser/connection.d.ts.map +1 -1
- package/lib/messaging/browser/connection.js +184 -34
- package/lib/messaging/browser/connection.js.map +1 -1
- package/lib/messaging/browser/window-connection.d.ts +4 -4
- package/lib/messaging/browser/window-connection.d.ts.map +1 -1
- package/lib/messaging/browser/window-connection.js +42 -59
- package/lib/messaging/browser/window-connection.js.map +1 -1
- package/lib/messaging/client-call-metrics.d.ts +19 -0
- package/lib/messaging/client-call-metrics.d.ts.map +1 -0
- package/lib/messaging/client-call-metrics.js +82 -0
- package/lib/messaging/client-call-metrics.js.map +1 -0
- package/lib/messaging/error.d.ts +11 -2
- package/lib/messaging/error.d.ts.map +1 -1
- package/lib/messaging/error.js +22 -4
- package/lib/messaging/error.js.map +1 -1
- package/lib/messaging/handler.d.ts +10 -0
- package/lib/messaging/handler.d.ts.map +1 -1
- package/lib/messaging/handler.js +1 -1
- package/lib/messaging/node/connection.d.ts +1 -17
- package/lib/messaging/node/connection.d.ts.map +1 -1
- package/lib/messaging/node/connection.js +24 -60
- package/lib/messaging/node/connection.js.map +1 -1
- package/lib/messaging/proxy-factory.d.ts +3 -1
- package/lib/messaging/proxy-factory.d.ts.map +1 -1
- package/lib/messaging/proxy-factory.js +75 -162
- package/lib/messaging/proxy-factory.js.map +1 -1
- package/lib/oss-allowlist.d.ts +14 -0
- package/lib/oss-allowlist.d.ts.map +1 -0
- package/lib/oss-allowlist.js +8 -0
- package/lib/oss-allowlist.js.map +1 -0
- package/lib/payment-protocol.d.ts +18 -0
- package/lib/payment-protocol.d.ts.map +1 -0
- package/lib/payment-protocol.js +13 -0
- package/lib/payment-protocol.js.map +1 -0
- package/lib/permission.d.ts +10 -3
- package/lib/permission.d.ts.map +1 -1
- package/lib/permission.js +41 -31
- package/lib/permission.js.map +1 -1
- package/lib/plans.d.ts +211 -0
- package/lib/plans.d.ts.map +1 -0
- package/lib/plans.js +609 -0
- package/lib/plans.js.map +1 -0
- package/lib/protocol.d.ts +285 -95
- package/lib/protocol.d.ts.map +1 -1
- package/lib/protocol.js +383 -206
- package/lib/protocol.js.map +1 -1
- package/{src/util/without.ts → lib/protocol.spec.d.ts} +2 -3
- package/lib/protocol.spec.d.ts.map +1 -0
- package/lib/protocol.spec.js +127 -0
- package/lib/protocol.spec.js.map +1 -0
- package/lib/snapshot-url.d.ts +14 -0
- package/lib/snapshot-url.d.ts.map +1 -0
- package/lib/snapshot-url.js +26 -0
- package/lib/snapshot-url.js.map +1 -0
- package/{src/theia-plugins.ts → lib/snapshot-url.spec.d.ts} +2 -6
- package/lib/snapshot-url.spec.d.ts.map +1 -0
- package/lib/snapshot-url.spec.js +41 -0
- package/lib/snapshot-url.spec.js.map +1 -0
- package/lib/team-subscription-protocol.d.ts +92 -0
- package/lib/team-subscription-protocol.d.ts.map +1 -0
- package/lib/team-subscription-protocol.js +78 -0
- package/lib/team-subscription-protocol.js.map +1 -0
- package/lib/teams-projects-protocol.d.ts +130 -0
- package/lib/teams-projects-protocol.d.ts.map +1 -0
- package/lib/teams-projects-protocol.js +30 -0
- package/lib/teams-projects-protocol.js.map +1 -0
- package/lib/typings/globals.d.ts +2 -2
- package/lib/typings/globals.d.ts.map +1 -1
- package/lib/usage.d.ts +61 -0
- package/lib/usage.d.ts.map +1 -0
- package/lib/usage.js +14 -0
- package/lib/usage.js.map +1 -0
- package/lib/util/analytics.d.ts +8 -0
- package/lib/util/analytics.d.ts.map +1 -0
- package/lib/util/analytics.js +88 -0
- package/lib/util/analytics.js.map +1 -0
- package/lib/util/async-iterator.d.ts.map +1 -1
- package/lib/util/async-iterator.js +57 -135
- package/lib/util/async-iterator.js.map +1 -1
- package/lib/util/cancelable.js +17 -59
- package/lib/util/cancelable.js.map +1 -1
- package/lib/util/date-time.js +11 -11
- package/lib/util/date-time.js.map +1 -1
- package/lib/util/debug-app.d.ts +25 -0
- package/lib/util/debug-app.d.ts.map +1 -0
- package/lib/util/debug-app.js +100 -0
- package/lib/util/debug-app.js.map +1 -0
- package/lib/util/deferred.js +10 -12
- package/lib/util/deferred.js.map +1 -1
- package/lib/util/disposable.d.ts.map +1 -1
- package/lib/util/disposable.js +27 -40
- package/lib/util/disposable.js.map +1 -1
- package/lib/util/event.d.ts.map +1 -1
- package/lib/util/event.js +63 -77
- package/lib/util/event.js.map +1 -1
- package/lib/util/garbage-collected-cache.d.ts +1 -0
- package/lib/util/garbage-collected-cache.d.ts.map +1 -1
- package/lib/util/garbage-collected-cache.js +32 -47
- package/lib/util/garbage-collected-cache.js.map +1 -1
- package/lib/util/generate-workspace-id.d.ts +6 -1
- package/lib/util/generate-workspace-id.d.ts.map +1 -1
- package/lib/util/generate-workspace-id.js +469 -502
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +68 -78
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-cookie.d.ts +20 -0
- package/lib/util/gitpod-cookie.d.ts.map +1 -0
- package/lib/util/gitpod-cookie.js +41 -0
- package/lib/util/gitpod-cookie.js.map +1 -0
- package/lib/util/gitpod-host-url.d.ts +4 -2
- package/lib/util/gitpod-host-url.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.js +126 -109
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/lib/util/gitpod-host-url.spec.d.ts +7 -1
- package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.spec.js +113 -31
- package/lib/util/gitpod-host-url.spec.js.map +1 -1
- package/lib/util/grpc.d.ts +34 -0
- package/lib/util/grpc.d.ts.map +1 -0
- package/lib/util/grpc.js +90 -0
- package/lib/util/grpc.js.map +1 -0
- package/lib/util/jaeger-client-types.d.ts +68 -0
- package/lib/util/jaeger-client-types.d.ts.map +1 -0
- package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
- package/lib/util/jaeger-client-types.js.map +1 -0
- package/lib/util/logging.d.ts +49 -33
- package/lib/util/logging.d.ts.map +1 -1
- package/lib/util/logging.js +132 -129
- package/lib/util/logging.js.map +1 -1
- package/lib/util/logging.spec.d.ts +7 -0
- package/lib/util/logging.spec.d.ts.map +1 -0
- package/lib/util/logging.spec.js +52 -0
- package/lib/util/logging.spec.js.map +1 -0
- package/lib/util/make-link.js +5 -5
- package/lib/util/make-link.js.map +1 -1
- package/lib/util/nice-grpc.d.ts +9 -0
- package/lib/util/nice-grpc.d.ts.map +1 -0
- package/lib/util/nice-grpc.js +119 -0
- package/lib/util/nice-grpc.js.map +1 -0
- package/lib/util/parse-workspace-id.d.ts +10 -0
- package/lib/util/parse-workspace-id.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.js +31 -7
- package/lib/util/parse-workspace-id.js.map +1 -1
- package/lib/util/parse-workspace-id.spec.d.ts +4 -0
- package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.spec.js +123 -84
- package/lib/util/parse-workspace-id.spec.js.map +1 -1
- package/lib/util/queue.js +16 -55
- package/lib/util/queue.js.map +1 -1
- package/lib/util/queue.spec.js +147 -288
- package/lib/util/queue.spec.js.map +1 -1
- package/lib/util/repeat.d.ts +15 -0
- package/lib/util/repeat.d.ts.map +1 -0
- package/lib/util/repeat.js +55 -0
- package/lib/util/repeat.js.map +1 -0
- package/lib/util/semaphore.d.ts.map +1 -1
- package/lib/util/semaphore.js +15 -46
- package/lib/util/semaphore.js.map +1 -1
- package/lib/util/skip-if.d.ts.map +1 -1
- package/lib/util/skip-if.js +6 -6
- package/lib/util/skip-if.js.map +1 -1
- package/lib/util/timeutil.d.ts +2 -0
- package/lib/util/timeutil.d.ts.map +1 -1
- package/lib/util/timeutil.js +41 -17
- package/lib/util/timeutil.js.map +1 -1
- package/lib/util/timeutil.spec.d.ts +2 -0
- package/lib/util/timeutil.spec.d.ts.map +1 -1
- package/lib/util/timeutil.spec.js +54 -23
- package/lib/util/timeutil.spec.js.map +1 -1
- package/lib/util/tracing.d.ts +52 -6
- package/lib/util/tracing.d.ts.map +1 -1
- package/lib/util/tracing.js +197 -64
- package/lib/util/tracing.js.map +1 -1
- package/lib/util/tracing.spec.d.ts +7 -0
- package/lib/util/tracing.spec.d.ts.map +1 -0
- package/lib/util/tracing.spec.js +121 -0
- package/lib/util/tracing.spec.js.map +1 -0
- package/lib/util/workspace-port-authentication.d.ts +7 -7
- package/lib/util/workspace-port-authentication.d.ts.map +1 -1
- package/lib/util/workspace-port-authentication.js +10 -12
- package/lib/util/workspace-port-authentication.js.map +1 -1
- package/lib/webhook-event.d.ts +44 -0
- package/lib/webhook-event.d.ts.map +1 -0
- package/lib/webhook-event.js +8 -0
- package/lib/webhook-event.js.map +1 -0
- package/lib/workspace-class.d.ts +14 -0
- package/lib/workspace-class.d.ts.map +1 -0
- package/lib/workspace-class.js +8 -0
- package/lib/workspace-class.js.map +1 -0
- package/lib/workspace-cluster.d.ts +75 -0
- package/lib/workspace-cluster.d.ts.map +1 -0
- package/lib/workspace-cluster.js +31 -0
- package/lib/workspace-cluster.js.map +1 -0
- package/lib/workspace-instance.d.ts +46 -5
- package/lib/workspace-instance.d.ts.map +1 -1
- package/lib/wsready.d.ts +1 -1
- package/lib/wsready.d.ts.map +1 -1
- package/lib/wsready.js +2 -2
- package/package.json +40 -18
- package/pkg-yarn.lock +23 -10
- package/provenance-bundle.jsonl +2 -0
- package/src/accounting-protocol.ts +244 -0
- package/src/admin-protocol.ts +80 -19
- package/src/analytics.ts +52 -0
- package/src/attribution.ts +59 -0
- package/src/auth.ts +2 -2
- package/src/billing-mode.ts +81 -0
- package/src/blocked-repositories-protocol.ts +13 -0
- package/src/context-url.spec.ts +67 -0
- package/src/context-url.ts +109 -0
- package/src/encryption/container-module.ts +2 -3
- package/src/encryption/encryption-engine.spec.ts +9 -8
- package/src/encryption/encryption-engine.ts +20 -16
- package/src/encryption/encryption-service.ts +4 -5
- package/src/encryption/key-provider.ts +16 -19
- package/src/env.ts +0 -22
- package/src/experiments/always-default.ts +24 -0
- package/src/experiments/configcat-server.ts +41 -0
- package/src/experiments/configcat.ts +56 -0
- package/src/experiments/types.ts +34 -0
- package/src/gitpod-file-parser.spec.ts +55 -61
- package/src/gitpod-file-parser.ts +16 -17
- package/src/gitpod-service.ts +385 -117
- package/src/headless-workspace-log.ts +12 -14
- package/src/ide-frontend-service.ts +6 -2
- package/src/ide-protocol.ts +129 -0
- package/src/index.ts +16 -10
- package/src/installation-admin-protocol.ts +45 -0
- package/src/license-protocol.ts +12 -6
- package/src/messaging/browser/connection.ts +197 -18
- package/src/messaging/browser/window-connection.ts +39 -29
- package/src/messaging/client-call-metrics.ts +77 -0
- package/src/messaging/error.ts +32 -7
- package/src/messaging/handler.ts +13 -1
- package/src/messaging/node/connection.ts +23 -70
- package/src/messaging/proxy-factory.ts +35 -34
- package/src/oss-allowlist.ts +15 -0
- package/src/payment-protocol.ts +20 -0
- package/src/permission.ts +42 -33
- package/src/plans.ts +683 -0
- package/src/protocol.spec.ts +97 -0
- package/src/protocol.ts +680 -282
- package/src/snapshot-url.spec.ts +27 -0
- package/src/snapshot-url.ts +27 -0
- package/src/team-subscription-protocol.ts +150 -0
- package/src/teams-projects-protocol.ts +166 -0
- package/src/typings/globals.ts +4 -4
- package/src/usage.ts +71 -0
- package/src/util/analytics.ts +109 -0
- package/src/util/async-iterator.ts +4 -5
- package/src/util/cancelable.ts +3 -3
- package/src/util/date-time.ts +8 -8
- package/src/util/debug-app.ts +81 -0
- package/src/util/deferred.ts +6 -6
- package/src/util/disposable.ts +3 -6
- package/src/util/event.ts +9 -11
- package/src/util/garbage-collected-cache.ts +16 -8
- package/src/util/generate-workspace-id.spec.ts +37 -10
- package/src/util/generate-workspace-id.ts +464 -438
- package/src/util/gitpod-cookie.ts +38 -0
- package/src/util/gitpod-host-url.spec.ts +59 -8
- package/src/util/gitpod-host-url.ts +72 -39
- package/src/util/grpc.ts +104 -0
- package/src/util/jaeger-client-types.ts +102 -0
- package/src/util/logging.spec.ts +23 -0
- package/src/util/logging.ts +156 -74
- package/src/util/make-link.ts +6 -7
- package/src/util/nice-grpc.ts +93 -0
- package/src/util/parse-workspace-id.spec.ts +37 -8
- package/src/util/parse-workspace-id.ts +32 -7
- package/src/util/queue.spec.ts +28 -26
- package/src/util/repeat.ts +45 -0
- package/src/util/semaphore.ts +6 -8
- package/src/util/skip-if.ts +10 -7
- package/src/util/timeutil.spec.ts +40 -14
- package/src/util/timeutil.ts +31 -15
- package/src/util/tracing.spec.ts +88 -0
- package/src/util/tracing.ts +200 -31
- package/src/util/workspace-port-authentication.ts +10 -13
- package/src/webhook-event.ts +55 -0
- package/src/workspace-class.ts +14 -0
- package/src/workspace-cluster.ts +109 -0
- package/src/workspace-instance.ts +105 -31
- package/src/wsready.ts +3 -3
- package/data/builtin-theia-plugins.json +0 -372
- package/lib/email-protocol.d.ts +0 -50
- package/lib/email-protocol.d.ts.map +0 -1
- package/lib/email-protocol.js +0 -28
- package/lib/email-protocol.js.map +0 -1
- package/lib/messaging/connection-error-handler.d.ts +0 -27
- package/lib/messaging/connection-error-handler.d.ts.map +0 -1
- package/lib/messaging/connection-error-handler.js +0 -46
- package/lib/messaging/connection-error-handler.js.map +0 -1
- package/lib/theia-plugins.d.ts +0 -11
- package/lib/theia-plugins.d.ts.map +0 -1
- package/lib/theia-plugins.js.map +0 -1
- package/lib/util/context-url.d.ts +0 -13
- package/lib/util/context-url.d.ts.map +0 -1
- package/lib/util/context-url.js +0 -26
- package/lib/util/context-url.js.map +0 -1
- package/lib/util/context-url.spec.d.ts +0 -10
- package/lib/util/context-url.spec.d.ts.map +0 -1
- package/lib/util/context-url.spec.js +0 -52
- package/lib/util/context-url.spec.js.map +0 -1
- package/lib/util/repeater.d.ts +0 -22
- package/lib/util/repeater.d.ts.map +0 -1
- package/lib/util/repeater.js +0 -118
- package/lib/util/repeater.js.map +0 -1
- package/lib/util/safe-promise.d.ts +0 -11
- package/lib/util/safe-promise.d.ts.map +0 -1
- package/lib/util/safe-promise.js +0 -34
- package/lib/util/safe-promise.js.map +0 -1
- package/lib/util/without.d.ts +0 -7
- package/lib/util/without.d.ts.map +0 -1
- package/lib/util/without.js.map +0 -1
- package/src/email-protocol.ts +0 -67
- package/src/messaging/connection-error-handler.ts +0 -62
- package/src/util/context-url.spec.ts +0 -25
- package/src/util/context-url.ts +0 -23
- package/src/util/jaeger-client.d.ts +0 -105
- package/src/util/repeater.ts +0 -49
- package/src/util/safe-promise.ts +0 -26
package/lib/protocol.js
CHANGED
|
@@ -4,203 +4,345 @@
|
|
|
4
4
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
|
-
var __assign = (this && this.__assign) || function () {
|
|
8
|
-
__assign = Object.assign || function(t) {
|
|
9
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
10
|
-
s = arguments[i];
|
|
11
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
12
|
-
t[p] = s[p];
|
|
13
|
-
}
|
|
14
|
-
return t;
|
|
15
|
-
};
|
|
16
|
-
return __assign.apply(this, arguments);
|
|
17
|
-
};
|
|
18
|
-
var __values = (this && this.__values) || function(o) {
|
|
19
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
20
|
-
if (m) return m.call(o);
|
|
21
|
-
if (o && typeof o.length === "number") return {
|
|
22
|
-
next: function () {
|
|
23
|
-
if (o && i >= o.length) o = void 0;
|
|
24
|
-
return { value: o && o[i++], done: !o };
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
28
|
-
};
|
|
29
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
30
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
31
|
-
if (!m) return o;
|
|
32
|
-
var i = m.call(o), r, ar = [], e;
|
|
33
|
-
try {
|
|
34
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
35
|
-
}
|
|
36
|
-
catch (error) { e = { error: error }; }
|
|
37
|
-
finally {
|
|
38
|
-
try {
|
|
39
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
40
|
-
}
|
|
41
|
-
finally { if (e) throw e.error; }
|
|
42
|
-
}
|
|
43
|
-
return ar;
|
|
44
|
-
};
|
|
45
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
-
exports.TheiaPlugin = exports.WorkspaceCreationResult = exports.CreateWorkspaceMode = exports.WorkspaceInstancePortsChangedEvent = exports.Repository = exports.NavigatorContext = exports.IssueContext = exports.PullRequestContext = exports.CommitContext = exports.
|
|
8
|
+
exports.TheiaPlugin = exports.AuthProviderEntry = exports.WorkspaceCreationResult = exports.CreateWorkspaceMode = exports.WorkspaceInfo = exports.WorkspaceInstancePortsChangedEvent = exports.Repository = exports.NavigatorContext = exports.IssueContext = exports.PullRequestContext = exports.CommitContext = exports.OpenPrebuildContext = exports.AdditionalContentContext = exports.RefType = 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.SSHPublicKeyValue = exports.UserEnvVar = exports.NamedWorkspaceFeatureFlag = exports.WorkspaceFeatureFlags = exports.AdditionalUserData = exports.User = void 0;
|
|
9
|
+
const crypto_1 = require("crypto");
|
|
47
10
|
var User;
|
|
48
11
|
(function (User) {
|
|
49
12
|
function is(data) {
|
|
50
|
-
return data
|
|
51
|
-
&& data.hasOwnProperty('id')
|
|
52
|
-
&& data.hasOwnProperty('identities');
|
|
13
|
+
return data && data.hasOwnProperty("id") && data.hasOwnProperty("identities");
|
|
53
14
|
}
|
|
54
15
|
User.is = is;
|
|
55
16
|
function getIdentity(user, authProviderId) {
|
|
56
|
-
return user.identities.find(
|
|
17
|
+
return user.identities.find((id) => id.authProviderId === authProviderId);
|
|
57
18
|
}
|
|
58
19
|
User.getIdentity = getIdentity;
|
|
59
20
|
function censor(user) {
|
|
60
|
-
|
|
61
|
-
delete
|
|
62
|
-
res.identities = res.identities.map(
|
|
63
|
-
delete
|
|
21
|
+
const res = Object.assign({}, user);
|
|
22
|
+
delete res.additionalData;
|
|
23
|
+
res.identities = res.identities.map((i) => {
|
|
24
|
+
delete i.tokens;
|
|
64
25
|
// The user field is not in the Identity shape, but actually exists on DBIdentity.
|
|
65
26
|
// Trying to push this object out via JSON RPC will fail because of the cyclic nature
|
|
66
27
|
// of this field.
|
|
67
|
-
delete
|
|
28
|
+
delete i.user;
|
|
68
29
|
return i;
|
|
69
30
|
});
|
|
70
31
|
return res;
|
|
71
32
|
}
|
|
72
33
|
User.censor = censor;
|
|
34
|
+
/**
|
|
35
|
+
* Returns the stored email or if it doesn't exist returns the primaryEmail of the first identity this user signed up with.
|
|
36
|
+
* @param user
|
|
37
|
+
* @returns A primaryEmail, or undefined if there is none.
|
|
38
|
+
*/
|
|
73
39
|
function getPrimaryEmail(user) {
|
|
74
|
-
var
|
|
40
|
+
var _a, _b, _c, _d;
|
|
41
|
+
if ((_b = (_a = user.additionalData) === null || _a === void 0 ? void 0 : _a.profile) === null || _b === void 0 ? void 0 : _b.emailAddress) {
|
|
42
|
+
return (_d = (_c = user.additionalData) === null || _c === void 0 ? void 0 : _c.profile) === null || _d === void 0 ? void 0 : _d.emailAddress;
|
|
43
|
+
}
|
|
44
|
+
const identities = user.identities.filter((i) => !!i.primaryEmail);
|
|
75
45
|
if (identities.length <= 0) {
|
|
76
|
-
|
|
46
|
+
return undefined;
|
|
77
47
|
}
|
|
78
|
-
return identities[0].primaryEmail;
|
|
48
|
+
return identities[0].primaryEmail || undefined;
|
|
79
49
|
}
|
|
80
50
|
User.getPrimaryEmail = getPrimaryEmail;
|
|
81
51
|
function getName(user) {
|
|
82
|
-
|
|
83
|
-
var name = user.fullName || user.name;
|
|
52
|
+
const name = user.fullName || user.name;
|
|
84
53
|
if (name) {
|
|
85
54
|
return name;
|
|
86
55
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (id.authName !== "") {
|
|
91
|
-
return id.authName;
|
|
92
|
-
}
|
|
56
|
+
for (const id of user.identities) {
|
|
57
|
+
if (id.authName !== "") {
|
|
58
|
+
return id.authName;
|
|
93
59
|
}
|
|
94
60
|
}
|
|
95
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
96
|
-
finally {
|
|
97
|
-
try {
|
|
98
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
99
|
-
}
|
|
100
|
-
finally { if (e_1) throw e_1.error; }
|
|
101
|
-
}
|
|
102
61
|
return undefined;
|
|
103
62
|
}
|
|
104
63
|
User.getName = getName;
|
|
64
|
+
function hasPreferredIde(user) {
|
|
65
|
+
var _a, _b, _c, _d;
|
|
66
|
+
return (typeof ((_b = (_a = user === null || user === void 0 ? void 0 : user.additionalData) === null || _a === void 0 ? void 0 : _a.ideSettings) === null || _b === void 0 ? void 0 : _b.defaultIde) !== "undefined" ||
|
|
67
|
+
typeof ((_d = (_c = user === null || user === void 0 ? void 0 : user.additionalData) === null || _c === void 0 ? void 0 : _c.ideSettings) === null || _d === void 0 ? void 0 : _d.useLatestVersion) !== "undefined");
|
|
68
|
+
}
|
|
69
|
+
User.hasPreferredIde = hasPreferredIde;
|
|
70
|
+
function isOnboardingUser(user) {
|
|
71
|
+
return !hasPreferredIde(user);
|
|
72
|
+
}
|
|
73
|
+
User.isOnboardingUser = isOnboardingUser;
|
|
74
|
+
function migrationIDESettings(user) {
|
|
75
|
+
var _a;
|
|
76
|
+
if (!((_a = user === null || user === void 0 ? void 0 : user.additionalData) === null || _a === void 0 ? void 0 : _a.ideSettings) ||
|
|
77
|
+
Object.keys(user.additionalData.ideSettings).length === 0 ||
|
|
78
|
+
user.additionalData.ideSettings.settingVersion === "2.0") {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
const newIDESettings = {
|
|
82
|
+
settingVersion: "2.0",
|
|
83
|
+
};
|
|
84
|
+
const ideSettings = user.additionalData.ideSettings;
|
|
85
|
+
if (ideSettings.useDesktopIde) {
|
|
86
|
+
if (ideSettings.defaultDesktopIde === "code-desktop") {
|
|
87
|
+
newIDESettings.defaultIde = "code-desktop";
|
|
88
|
+
}
|
|
89
|
+
else if (ideSettings.defaultDesktopIde === "code-desktop-insiders") {
|
|
90
|
+
newIDESettings.defaultIde = "code-desktop";
|
|
91
|
+
newIDESettings.useLatestVersion = true;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
newIDESettings.defaultIde = ideSettings.defaultDesktopIde;
|
|
95
|
+
newIDESettings.useLatestVersion = ideSettings.useLatestVersion;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
const useLatest = ideSettings.defaultIde === "code-latest";
|
|
100
|
+
newIDESettings.defaultIde = "code";
|
|
101
|
+
newIDESettings.useLatestVersion = useLatest;
|
|
102
|
+
}
|
|
103
|
+
user.additionalData.ideSettings = newIDESettings;
|
|
104
|
+
}
|
|
105
|
+
User.migrationIDESettings = migrationIDESettings;
|
|
106
|
+
function getProfile(user) {
|
|
107
|
+
var _a, _b;
|
|
108
|
+
return {
|
|
109
|
+
name: User.getName(user) || "",
|
|
110
|
+
email: User.getPrimaryEmail(user) || "",
|
|
111
|
+
company: (_b = (_a = user === null || user === void 0 ? void 0 : user.additionalData) === null || _a === void 0 ? void 0 : _a.profile) === null || _b === void 0 ? void 0 : _b.companyName,
|
|
112
|
+
avatarURL: user === null || user === void 0 ? void 0 : user.avatarUrl,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
User.getProfile = getProfile;
|
|
116
|
+
function setProfile(user, profile) {
|
|
117
|
+
user.fullName = profile.name;
|
|
118
|
+
user.avatarUrl = profile.avatarURL;
|
|
119
|
+
if (!user.additionalData) {
|
|
120
|
+
user.additionalData = {};
|
|
121
|
+
}
|
|
122
|
+
if (!user.additionalData.profile) {
|
|
123
|
+
user.additionalData.profile = {};
|
|
124
|
+
}
|
|
125
|
+
user.additionalData.profile.emailAddress = profile.email;
|
|
126
|
+
user.additionalData.profile.companyName = profile.company;
|
|
127
|
+
user.additionalData.profile.lastUpdatedDetailsNudge = new Date().toISOString();
|
|
128
|
+
return user;
|
|
129
|
+
}
|
|
130
|
+
User.setProfile = setProfile;
|
|
131
|
+
let Profile;
|
|
132
|
+
(function (Profile) {
|
|
133
|
+
function hasChanges(before, after) {
|
|
134
|
+
return (before.name !== after.name ||
|
|
135
|
+
before.email !== after.email ||
|
|
136
|
+
before.company !== after.company ||
|
|
137
|
+
before.avatarURL !== after.avatarURL);
|
|
138
|
+
}
|
|
139
|
+
Profile.hasChanges = hasChanges;
|
|
140
|
+
})(Profile = User.Profile || (User.Profile = {}));
|
|
105
141
|
})(User = exports.User || (exports.User = {}));
|
|
142
|
+
var AdditionalUserData;
|
|
143
|
+
(function (AdditionalUserData) {
|
|
144
|
+
function set(user, partialData) {
|
|
145
|
+
if (!user.additionalData) {
|
|
146
|
+
user.additionalData = Object.assign({}, partialData);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
user.additionalData = Object.assign(Object.assign({}, user.additionalData), partialData);
|
|
150
|
+
}
|
|
151
|
+
return user;
|
|
152
|
+
}
|
|
153
|
+
AdditionalUserData.set = set;
|
|
154
|
+
})(AdditionalUserData = exports.AdditionalUserData || (exports.AdditionalUserData = {}));
|
|
106
155
|
/**
|
|
107
156
|
* The values of this type MUST MATCH enum values in WorkspaceFeatureFlag from ws-manager/client/core_pb.d.ts
|
|
108
157
|
* If they don't we'll break things during workspace startup.
|
|
109
158
|
*/
|
|
110
|
-
exports.WorkspaceFeatureFlags = {
|
|
159
|
+
exports.WorkspaceFeatureFlags = {
|
|
160
|
+
full_workspace_backup: undefined,
|
|
161
|
+
persistent_volume_claim: undefined,
|
|
162
|
+
workspace_class_limiting: undefined,
|
|
163
|
+
workspace_connection_limiting: undefined,
|
|
164
|
+
workspace_psi: undefined,
|
|
165
|
+
};
|
|
166
|
+
var NamedWorkspaceFeatureFlag;
|
|
167
|
+
(function (NamedWorkspaceFeatureFlag) {
|
|
168
|
+
NamedWorkspaceFeatureFlag.WORKSPACE_PERSISTED_FEATTURE_FLAGS = [
|
|
169
|
+
"full_workspace_backup",
|
|
170
|
+
"persistent_volume_claim",
|
|
171
|
+
];
|
|
172
|
+
function isWorkspacePersisted(ff) {
|
|
173
|
+
return NamedWorkspaceFeatureFlag.WORKSPACE_PERSISTED_FEATTURE_FLAGS.includes(ff);
|
|
174
|
+
}
|
|
175
|
+
NamedWorkspaceFeatureFlag.isWorkspacePersisted = isWorkspacePersisted;
|
|
176
|
+
})(NamedWorkspaceFeatureFlag = exports.NamedWorkspaceFeatureFlag || (exports.NamedWorkspaceFeatureFlag = {}));
|
|
111
177
|
var UserEnvVar;
|
|
112
178
|
(function (UserEnvVar) {
|
|
179
|
+
/**
|
|
180
|
+
* @param variable
|
|
181
|
+
* @returns Either a string containing an error message or undefined.
|
|
182
|
+
*/
|
|
183
|
+
function validate(variable) {
|
|
184
|
+
const name = variable.name;
|
|
185
|
+
const pattern = variable.repositoryPattern;
|
|
186
|
+
if (name.trim() === "") {
|
|
187
|
+
return "Name must not be empty.";
|
|
188
|
+
}
|
|
189
|
+
if (name.length > 255) {
|
|
190
|
+
return "Name too long. Maximum name length is 255 characters.";
|
|
191
|
+
}
|
|
192
|
+
if (!/^[a-zA-Z_]+[a-zA-Z0-9_]*$/.test(name)) {
|
|
193
|
+
return "Name must match /^[a-zA-Z_]+[a-zA-Z0-9_]*$/.";
|
|
194
|
+
}
|
|
195
|
+
if (variable.value.trim() === "") {
|
|
196
|
+
return "Value must not be empty.";
|
|
197
|
+
}
|
|
198
|
+
if (variable.value.length > 32767) {
|
|
199
|
+
return "Value too long. Maximum value length is 32767 characters.";
|
|
200
|
+
}
|
|
201
|
+
if (pattern.trim() === "") {
|
|
202
|
+
return "Scope must not be empty.";
|
|
203
|
+
}
|
|
204
|
+
const split = pattern.split("/");
|
|
205
|
+
if (split.length < 2) {
|
|
206
|
+
return "A scope must use the form 'organization/repo'.";
|
|
207
|
+
}
|
|
208
|
+
for (const name of split) {
|
|
209
|
+
if (name !== "*") {
|
|
210
|
+
if (!/^[a-zA-Z0-9_\-.\*]+$/.test(name)) {
|
|
211
|
+
return "Invalid scope segment. Only ASCII characters, numbers, -, _, . or * are allowed.";
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return undefined;
|
|
216
|
+
}
|
|
217
|
+
UserEnvVar.validate = validate;
|
|
218
|
+
// DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
|
|
113
219
|
function normalizeRepoPattern(pattern) {
|
|
114
220
|
return pattern.toLocaleLowerCase();
|
|
115
221
|
}
|
|
116
222
|
UserEnvVar.normalizeRepoPattern = normalizeRepoPattern;
|
|
223
|
+
// DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
|
|
224
|
+
function score(value) {
|
|
225
|
+
// We use a score to enforce precedence:
|
|
226
|
+
// value/value = 0
|
|
227
|
+
// value/* = 1
|
|
228
|
+
// */value = 2
|
|
229
|
+
// */* = 3
|
|
230
|
+
// #/# = 4 (used for env vars passed through the URL)
|
|
231
|
+
// the lower the score, the higher the precedence.
|
|
232
|
+
const [ownerPattern, repoPattern] = splitRepositoryPattern(value.repositoryPattern);
|
|
233
|
+
let score = 0;
|
|
234
|
+
if (repoPattern == "*") {
|
|
235
|
+
score += 1;
|
|
236
|
+
}
|
|
237
|
+
if (ownerPattern == "*") {
|
|
238
|
+
score += 2;
|
|
239
|
+
}
|
|
240
|
+
if (ownerPattern == "#" || repoPattern == "#") {
|
|
241
|
+
score = 4;
|
|
242
|
+
}
|
|
243
|
+
return score;
|
|
244
|
+
}
|
|
245
|
+
UserEnvVar.score = score;
|
|
246
|
+
// DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
|
|
117
247
|
function filter(vars, owner, repo) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
if (ownerPattern !== '*' && ownerPattern !== '#' && (!!owner && ownerPattern !== owner.toLocaleLowerCase())) {
|
|
248
|
+
let result = vars.filter((e) => {
|
|
249
|
+
const [ownerPattern, repoPattern] = splitRepositoryPattern(e.repositoryPattern);
|
|
250
|
+
if (ownerPattern !== "*" && ownerPattern !== "#" && !!owner && ownerPattern !== owner.toLocaleLowerCase()) {
|
|
122
251
|
return false;
|
|
123
252
|
}
|
|
124
|
-
if (repoPattern !==
|
|
253
|
+
if (repoPattern !== "*" && repoPattern !== "#" && !!repo && repoPattern !== repo.toLocaleLowerCase()) {
|
|
125
254
|
return false;
|
|
126
255
|
}
|
|
127
256
|
return true;
|
|
128
257
|
});
|
|
129
|
-
|
|
130
|
-
result.forEach(
|
|
131
|
-
|
|
258
|
+
const resmap = new Map();
|
|
259
|
+
result.forEach((e) => {
|
|
260
|
+
const l = resmap.get(e.name) || [];
|
|
132
261
|
l.push(e);
|
|
133
262
|
resmap.set(e.name, l);
|
|
134
263
|
});
|
|
135
264
|
result = [];
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
// not sure how this can happen, but so be it
|
|
142
|
-
continue;
|
|
143
|
-
}
|
|
144
|
-
if (candidates.length == 1) {
|
|
145
|
-
result.push(candidates[0]);
|
|
146
|
-
continue;
|
|
147
|
-
}
|
|
148
|
-
var minscore = 10;
|
|
149
|
-
var bestCandidate = void 0;
|
|
150
|
-
try {
|
|
151
|
-
for (var candidates_1 = (e_3 = void 0, __values(candidates)), candidates_1_1 = candidates_1.next(); !candidates_1_1.done; candidates_1_1 = candidates_1.next()) {
|
|
152
|
-
var e = candidates_1_1.value;
|
|
153
|
-
// We use a score to enforce precedence:
|
|
154
|
-
// value/value = 0
|
|
155
|
-
// value/* = 1
|
|
156
|
-
// */value = 2
|
|
157
|
-
// */* = 3
|
|
158
|
-
// #/# = 4 (used for env vars passed through the URL)
|
|
159
|
-
// the lower the score, the higher the precedence.
|
|
160
|
-
var _e = __read(splitRepositoryPattern(e.repositoryPattern), 2), ownerPattern = _e[0], repoPattern = _e[1];
|
|
161
|
-
var score = 0;
|
|
162
|
-
if (repoPattern == "*") {
|
|
163
|
-
score += 1;
|
|
164
|
-
}
|
|
165
|
-
if (ownerPattern == '*') {
|
|
166
|
-
score += 2;
|
|
167
|
-
}
|
|
168
|
-
if (ownerPattern == "#" || repoPattern == "#") {
|
|
169
|
-
score = 4;
|
|
170
|
-
}
|
|
171
|
-
if (!bestCandidate || score < minscore) {
|
|
172
|
-
minscore = score;
|
|
173
|
-
bestCandidate = e;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
178
|
-
finally {
|
|
179
|
-
try {
|
|
180
|
-
if (candidates_1_1 && !candidates_1_1.done && (_b = candidates_1.return)) _b.call(candidates_1);
|
|
181
|
-
}
|
|
182
|
-
finally { if (e_3) throw e_3.error; }
|
|
183
|
-
}
|
|
184
|
-
result.push(bestCandidate);
|
|
265
|
+
for (const name of resmap.keys()) {
|
|
266
|
+
const candidates = resmap.get(name);
|
|
267
|
+
if (!candidates) {
|
|
268
|
+
// not sure how this can happen, but so be it
|
|
269
|
+
continue;
|
|
185
270
|
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
271
|
+
if (candidates.length == 1) {
|
|
272
|
+
result.push(candidates[0]);
|
|
273
|
+
continue;
|
|
274
|
+
}
|
|
275
|
+
let minscore = 10;
|
|
276
|
+
let bestCandidate;
|
|
277
|
+
for (const e of candidates) {
|
|
278
|
+
const score = UserEnvVar.score(e);
|
|
279
|
+
if (!bestCandidate || score < minscore) {
|
|
280
|
+
minscore = score;
|
|
281
|
+
bestCandidate = e;
|
|
282
|
+
}
|
|
191
283
|
}
|
|
192
|
-
|
|
284
|
+
result.push(bestCandidate);
|
|
193
285
|
}
|
|
194
286
|
return result;
|
|
195
287
|
}
|
|
196
288
|
UserEnvVar.filter = filter;
|
|
289
|
+
// DEPRECATED: Use ProjectEnvVar instead of repositoryPattern - https://github.com/gitpod-com/gitpod/issues/5322
|
|
197
290
|
function splitRepositoryPattern(repositoryPattern) {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
291
|
+
const patterns = repositoryPattern.split("/");
|
|
292
|
+
const repoPattern = patterns.slice(1).join("/");
|
|
293
|
+
const ownerPattern = patterns[0];
|
|
201
294
|
return [ownerPattern, repoPattern];
|
|
202
295
|
}
|
|
296
|
+
UserEnvVar.splitRepositoryPattern = splitRepositoryPattern;
|
|
203
297
|
})(UserEnvVar = exports.UserEnvVar || (exports.UserEnvVar = {}));
|
|
298
|
+
var SSHPublicKeyValue;
|
|
299
|
+
(function (SSHPublicKeyValue) {
|
|
300
|
+
function validate(value) {
|
|
301
|
+
if (value.name.length === 0) {
|
|
302
|
+
return "Title must not be empty.";
|
|
303
|
+
}
|
|
304
|
+
if (value.name.length > 255) {
|
|
305
|
+
return "Title too long. Maximum value length is 255 characters.";
|
|
306
|
+
}
|
|
307
|
+
if (value.key.length === 0) {
|
|
308
|
+
return "Key must not be empty.";
|
|
309
|
+
}
|
|
310
|
+
try {
|
|
311
|
+
getData(value);
|
|
312
|
+
}
|
|
313
|
+
catch (e) {
|
|
314
|
+
return "Key is invalid. You must supply a key in OpenSSH public key format.";
|
|
315
|
+
}
|
|
316
|
+
return;
|
|
317
|
+
}
|
|
318
|
+
SSHPublicKeyValue.validate = validate;
|
|
319
|
+
function getData(value) {
|
|
320
|
+
var _a, _b, _c;
|
|
321
|
+
// Begins with 'ssh-rsa', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', 'ecdsa-sha2-nistp521', 'ssh-ed25519', 'sk-ecdsa-sha2-nistp256@openssh.com', or 'sk-ssh-ed25519@openssh.com'.
|
|
322
|
+
const regex = /^(?<type>ssh-rsa|ecdsa-sha2-nistp256|ecdsa-sha2-nistp384|ecdsa-sha2-nistp521|ssh-ed25519|sk-ecdsa-sha2-nistp256@openssh\.com|sk-ssh-ed25519@openssh\.com) (?<key>.*?)( (?<email>.*?))?$/;
|
|
323
|
+
const resultGroup = regex.exec(value.key.trim());
|
|
324
|
+
if (!resultGroup) {
|
|
325
|
+
throw new Error("Key is invalid.");
|
|
326
|
+
}
|
|
327
|
+
return {
|
|
328
|
+
type: (_a = resultGroup.groups) === null || _a === void 0 ? void 0 : _a["type"],
|
|
329
|
+
key: (_b = resultGroup.groups) === null || _b === void 0 ? void 0 : _b["key"],
|
|
330
|
+
email: ((_c = resultGroup.groups) === null || _c === void 0 ? void 0 : _c["email"]) || undefined,
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
SSHPublicKeyValue.getData = getData;
|
|
334
|
+
function getFingerprint(value) {
|
|
335
|
+
const data = getData(value);
|
|
336
|
+
let buf = Buffer.from(data.key, "base64");
|
|
337
|
+
// gitlab style
|
|
338
|
+
// const hash = createHash("md5").update(buf).digest("hex");
|
|
339
|
+
// github style
|
|
340
|
+
const hash = (0, crypto_1.createHash)("sha256").update(buf).digest("base64");
|
|
341
|
+
return hash;
|
|
342
|
+
}
|
|
343
|
+
SSHPublicKeyValue.getFingerprint = getFingerprint;
|
|
344
|
+
SSHPublicKeyValue.MAXIMUM_KEY_LENGTH = 5;
|
|
345
|
+
})(SSHPublicKeyValue = exports.SSHPublicKeyValue || (exports.SSHPublicKeyValue = {}));
|
|
204
346
|
var GitpodTokenType;
|
|
205
347
|
(function (GitpodTokenType) {
|
|
206
348
|
GitpodTokenType[GitpodTokenType["API_AUTH_TOKEN"] = 0] = "API_AUTH_TOKEN";
|
|
@@ -209,14 +351,11 @@ var GitpodTokenType;
|
|
|
209
351
|
var Identity;
|
|
210
352
|
(function (Identity) {
|
|
211
353
|
function is(data) {
|
|
212
|
-
return data.hasOwnProperty(
|
|
213
|
-
&& data.hasOwnProperty('authId')
|
|
214
|
-
&& data.hasOwnProperty('authName');
|
|
354
|
+
return (data.hasOwnProperty("authProviderId") && data.hasOwnProperty("authId") && data.hasOwnProperty("authName"));
|
|
215
355
|
}
|
|
216
356
|
Identity.is = is;
|
|
217
357
|
function equals(id1, id2) {
|
|
218
|
-
return id1.authProviderId === id2.authProviderId
|
|
219
|
-
&& id1.authId === id2.authId;
|
|
358
|
+
return id1.authProviderId === id2.authProviderId && id1.authId === id2.authId;
|
|
220
359
|
}
|
|
221
360
|
Identity.equals = equals;
|
|
222
361
|
})(Identity = exports.Identity || (exports.Identity = {}));
|
|
@@ -224,14 +363,14 @@ var Workspace;
|
|
|
224
363
|
(function (Workspace) {
|
|
225
364
|
function getFullRepositoryName(ws) {
|
|
226
365
|
if (CommitContext.is(ws.context)) {
|
|
227
|
-
return ws.context.repository.owner +
|
|
366
|
+
return ws.context.repository.owner + "/" + ws.context.repository.name;
|
|
228
367
|
}
|
|
229
368
|
return undefined;
|
|
230
369
|
}
|
|
231
370
|
Workspace.getFullRepositoryName = getFullRepositoryName;
|
|
232
371
|
function getFullRepositoryUrl(ws) {
|
|
233
372
|
if (CommitContext.is(ws.context)) {
|
|
234
|
-
return
|
|
373
|
+
return `https://${ws.context.repository.host}/${getFullRepositoryName(ws)}`;
|
|
235
374
|
}
|
|
236
375
|
return undefined;
|
|
237
376
|
}
|
|
@@ -268,30 +407,28 @@ var Workspace;
|
|
|
268
407
|
var GithubAppPrebuildConfig;
|
|
269
408
|
(function (GithubAppPrebuildConfig) {
|
|
270
409
|
function is(obj) {
|
|
271
|
-
return !(typeof obj ===
|
|
410
|
+
return !(typeof obj === "boolean");
|
|
272
411
|
}
|
|
273
412
|
GithubAppPrebuildConfig.is = is;
|
|
274
413
|
})(GithubAppPrebuildConfig = exports.GithubAppPrebuildConfig || (exports.GithubAppPrebuildConfig = {}));
|
|
275
414
|
var WorkspaceImageSourceDocker;
|
|
276
415
|
(function (WorkspaceImageSourceDocker) {
|
|
277
416
|
function is(obj) {
|
|
278
|
-
return
|
|
279
|
-
&& 'dockerFileSource' in obj
|
|
280
|
-
&& 'dockerFilePath' in obj;
|
|
417
|
+
return "dockerFileHash" in obj && "dockerFilePath" in obj;
|
|
281
418
|
}
|
|
282
419
|
WorkspaceImageSourceDocker.is = is;
|
|
283
420
|
})(WorkspaceImageSourceDocker = exports.WorkspaceImageSourceDocker || (exports.WorkspaceImageSourceDocker = {}));
|
|
284
421
|
var WorkspaceImageSourceReference;
|
|
285
422
|
(function (WorkspaceImageSourceReference) {
|
|
286
423
|
function is(obj) {
|
|
287
|
-
return
|
|
424
|
+
return "baseImageResolved" in obj;
|
|
288
425
|
}
|
|
289
426
|
WorkspaceImageSourceReference.is = is;
|
|
290
427
|
})(WorkspaceImageSourceReference = exports.WorkspaceImageSourceReference || (exports.WorkspaceImageSourceReference = {}));
|
|
291
428
|
var PrebuiltWorkspace;
|
|
292
429
|
(function (PrebuiltWorkspace) {
|
|
293
430
|
function isDone(pws) {
|
|
294
|
-
return pws.state === "available" || pws.state === "timeout" || pws.state ===
|
|
431
|
+
return (pws.state === "available" || pws.state === "timeout" || pws.state === "aborted" || pws.state === "failed");
|
|
295
432
|
}
|
|
296
433
|
PrebuiltWorkspace.isDone = isDone;
|
|
297
434
|
function isAvailable(pws) {
|
|
@@ -306,129 +443,123 @@ var PrebuiltWorkspace;
|
|
|
306
443
|
var PortConfig;
|
|
307
444
|
(function (PortConfig) {
|
|
308
445
|
function is(config) {
|
|
309
|
-
return config &&
|
|
446
|
+
return config && "port" in config && typeof config.port === "number";
|
|
310
447
|
}
|
|
311
448
|
PortConfig.is = is;
|
|
312
449
|
})(PortConfig = exports.PortConfig || (exports.PortConfig = {}));
|
|
313
450
|
var PortRangeConfig;
|
|
314
451
|
(function (PortRangeConfig) {
|
|
315
452
|
function is(config) {
|
|
316
|
-
return config &&
|
|
453
|
+
return config && "port" in config && (typeof config.port === "string" || config.port instanceof String);
|
|
317
454
|
}
|
|
318
455
|
PortRangeConfig.is = is;
|
|
319
456
|
})(PortRangeConfig = exports.PortRangeConfig || (exports.PortRangeConfig = {}));
|
|
320
457
|
var TaskConfig;
|
|
321
458
|
(function (TaskConfig) {
|
|
322
459
|
function is(config) {
|
|
323
|
-
return config
|
|
324
|
-
&& ('command' in config || 'init' in config || 'before' in config);
|
|
460
|
+
return config && ("command" in config || "init" in config || "before" in config);
|
|
325
461
|
}
|
|
326
462
|
TaskConfig.is = is;
|
|
327
463
|
})(TaskConfig = exports.TaskConfig || (exports.TaskConfig = {}));
|
|
328
464
|
var WorkspaceImageBuild;
|
|
329
465
|
(function (WorkspaceImageBuild) {
|
|
330
|
-
|
|
466
|
+
let LogLine;
|
|
331
467
|
(function (LogLine) {
|
|
332
|
-
LogLine.DELIMITER =
|
|
468
|
+
LogLine.DELIMITER = "\r\n";
|
|
333
469
|
LogLine.DELIMITER_REGEX = /\r?\n/;
|
|
334
470
|
})(LogLine = WorkspaceImageBuild.LogLine || (WorkspaceImageBuild.LogLine = {}));
|
|
335
471
|
})(WorkspaceImageBuild = exports.WorkspaceImageBuild || (exports.WorkspaceImageBuild = {}));
|
|
336
472
|
var ImageConfigString;
|
|
337
473
|
(function (ImageConfigString) {
|
|
338
474
|
function is(config) {
|
|
339
|
-
return typeof config ===
|
|
475
|
+
return typeof config === "string";
|
|
340
476
|
}
|
|
341
477
|
ImageConfigString.is = is;
|
|
342
478
|
})(ImageConfigString = exports.ImageConfigString || (exports.ImageConfigString = {}));
|
|
343
479
|
var ImageConfigFile;
|
|
344
480
|
(function (ImageConfigFile) {
|
|
345
481
|
function is(config) {
|
|
346
|
-
return typeof config ===
|
|
347
|
-
&& 'file' in config;
|
|
482
|
+
return typeof config === "object" && "file" in config;
|
|
348
483
|
}
|
|
349
484
|
ImageConfigFile.is = is;
|
|
350
485
|
})(ImageConfigFile = exports.ImageConfigFile || (exports.ImageConfigFile = {}));
|
|
351
486
|
var ExternalImageConfigFile;
|
|
352
487
|
(function (ExternalImageConfigFile) {
|
|
353
488
|
function is(config) {
|
|
354
|
-
return typeof config ===
|
|
355
|
-
&& 'file' in config
|
|
356
|
-
&& 'externalSource' in config;
|
|
489
|
+
return typeof config === "object" && "file" in config && "externalSource" in config;
|
|
357
490
|
}
|
|
358
491
|
ExternalImageConfigFile.is = is;
|
|
359
492
|
})(ExternalImageConfigFile = exports.ExternalImageConfigFile || (exports.ExternalImageConfigFile = {}));
|
|
360
493
|
var WorkspaceContext;
|
|
361
494
|
(function (WorkspaceContext) {
|
|
362
495
|
function is(context) {
|
|
363
|
-
return context
|
|
364
|
-
&& 'title' in context;
|
|
496
|
+
return context && "title" in context;
|
|
365
497
|
}
|
|
366
498
|
WorkspaceContext.is = is;
|
|
367
499
|
})(WorkspaceContext = exports.WorkspaceContext || (exports.WorkspaceContext = {}));
|
|
368
500
|
var WithSnapshot;
|
|
369
501
|
(function (WithSnapshot) {
|
|
370
502
|
function is(context) {
|
|
371
|
-
return context
|
|
372
|
-
&& 'snapshotBucketId' in context;
|
|
503
|
+
return context && "snapshotBucketId" in context;
|
|
373
504
|
}
|
|
374
505
|
WithSnapshot.is = is;
|
|
375
506
|
})(WithSnapshot = exports.WithSnapshot || (exports.WithSnapshot = {}));
|
|
376
507
|
var WithPrebuild;
|
|
377
508
|
(function (WithPrebuild) {
|
|
378
509
|
function is(context) {
|
|
379
|
-
return context
|
|
380
|
-
&& 'snapshotBucketId' in context
|
|
381
|
-
&& 'prebuildWorkspaceId' in context
|
|
382
|
-
&& 'wasPrebuilt' in context;
|
|
510
|
+
return context && WithSnapshot.is(context) && "prebuildWorkspaceId" in context && "wasPrebuilt" in context;
|
|
383
511
|
}
|
|
384
512
|
WithPrebuild.is = is;
|
|
385
513
|
})(WithPrebuild = exports.WithPrebuild || (exports.WithPrebuild = {}));
|
|
514
|
+
var WithDefaultConfig;
|
|
515
|
+
(function (WithDefaultConfig) {
|
|
516
|
+
function is(context) {
|
|
517
|
+
return context && "withDefaultConfig" in context && context.withDefaultConfig;
|
|
518
|
+
}
|
|
519
|
+
WithDefaultConfig.is = is;
|
|
520
|
+
function mark(ctx) {
|
|
521
|
+
return Object.assign(Object.assign({}, ctx), { withDefaultConfig: true });
|
|
522
|
+
}
|
|
523
|
+
WithDefaultConfig.mark = mark;
|
|
524
|
+
})(WithDefaultConfig = exports.WithDefaultConfig || (exports.WithDefaultConfig = {}));
|
|
386
525
|
var SnapshotContext;
|
|
387
526
|
(function (SnapshotContext) {
|
|
388
527
|
function is(context) {
|
|
389
|
-
return context
|
|
390
|
-
&& WithSnapshot.is(context)
|
|
391
|
-
&& 'snapshotId' in context;
|
|
528
|
+
return context && WithSnapshot.is(context) && "snapshotId" in context;
|
|
392
529
|
}
|
|
393
530
|
SnapshotContext.is = is;
|
|
394
531
|
})(SnapshotContext = exports.SnapshotContext || (exports.SnapshotContext = {}));
|
|
395
532
|
var StartPrebuildContext;
|
|
396
533
|
(function (StartPrebuildContext) {
|
|
397
534
|
function is(context) {
|
|
398
|
-
return context
|
|
399
|
-
&& 'actual' in context;
|
|
535
|
+
return context && "actual" in context;
|
|
400
536
|
}
|
|
401
537
|
StartPrebuildContext.is = is;
|
|
402
538
|
})(StartPrebuildContext = exports.StartPrebuildContext || (exports.StartPrebuildContext = {}));
|
|
403
539
|
var PrebuiltWorkspaceContext;
|
|
404
540
|
(function (PrebuiltWorkspaceContext) {
|
|
405
541
|
function is(context) {
|
|
406
|
-
return context
|
|
407
|
-
&& 'originalContext' in context
|
|
408
|
-
&& 'prebuiltWorkspace' in context;
|
|
542
|
+
return context && "originalContext" in context && "prebuiltWorkspace" in context;
|
|
409
543
|
}
|
|
410
544
|
PrebuiltWorkspaceContext.is = is;
|
|
411
545
|
})(PrebuiltWorkspaceContext = exports.PrebuiltWorkspaceContext || (exports.PrebuiltWorkspaceContext = {}));
|
|
546
|
+
var WithReferrerContext;
|
|
547
|
+
(function (WithReferrerContext) {
|
|
548
|
+
function is(context) {
|
|
549
|
+
return context && "referrer" in context;
|
|
550
|
+
}
|
|
551
|
+
WithReferrerContext.is = is;
|
|
552
|
+
})(WithReferrerContext = exports.WithReferrerContext || (exports.WithReferrerContext = {}));
|
|
412
553
|
var WithEnvvarsContext;
|
|
413
554
|
(function (WithEnvvarsContext) {
|
|
414
555
|
function is(context) {
|
|
415
|
-
return context
|
|
416
|
-
&& 'envvars' in context;
|
|
556
|
+
return context && "envvars" in context;
|
|
417
557
|
}
|
|
418
558
|
WithEnvvarsContext.is = is;
|
|
419
559
|
})(WithEnvvarsContext = exports.WithEnvvarsContext || (exports.WithEnvvarsContext = {}));
|
|
420
|
-
var WorkspaceProbeContext;
|
|
421
|
-
(function (WorkspaceProbeContext) {
|
|
422
|
-
function is(context) {
|
|
423
|
-
return context
|
|
424
|
-
&& 'responseURL' in context
|
|
425
|
-
&& 'responseToken' in context;
|
|
426
|
-
}
|
|
427
|
-
WorkspaceProbeContext.is = is;
|
|
428
|
-
})(WorkspaceProbeContext = exports.WorkspaceProbeContext || (exports.WorkspaceProbeContext = {}));
|
|
429
560
|
var RefType;
|
|
430
561
|
(function (RefType) {
|
|
431
|
-
RefType.getRefType =
|
|
562
|
+
RefType.getRefType = (commit) => {
|
|
432
563
|
if (!commit.ref) {
|
|
433
564
|
return "revision";
|
|
434
565
|
}
|
|
@@ -436,48 +567,78 @@ var RefType;
|
|
|
436
567
|
return commit.refType || "branch";
|
|
437
568
|
};
|
|
438
569
|
})(RefType = exports.RefType || (exports.RefType = {}));
|
|
570
|
+
var AdditionalContentContext;
|
|
571
|
+
(function (AdditionalContentContext) {
|
|
572
|
+
function is(ctx) {
|
|
573
|
+
return "additionalFiles" in ctx;
|
|
574
|
+
}
|
|
575
|
+
AdditionalContentContext.is = is;
|
|
576
|
+
function hasDockerConfig(ctx, config) {
|
|
577
|
+
return is(ctx) && ImageConfigFile.is(config.image) && !!ctx.additionalFiles[config.image.file];
|
|
578
|
+
}
|
|
579
|
+
AdditionalContentContext.hasDockerConfig = hasDockerConfig;
|
|
580
|
+
})(AdditionalContentContext = exports.AdditionalContentContext || (exports.AdditionalContentContext = {}));
|
|
581
|
+
var OpenPrebuildContext;
|
|
582
|
+
(function (OpenPrebuildContext) {
|
|
583
|
+
function is(ctx) {
|
|
584
|
+
return "openPrebuildID" in ctx;
|
|
585
|
+
}
|
|
586
|
+
OpenPrebuildContext.is = is;
|
|
587
|
+
})(OpenPrebuildContext = exports.OpenPrebuildContext || (exports.OpenPrebuildContext = {}));
|
|
439
588
|
var CommitContext;
|
|
589
|
+
(function (CommitContext) {
|
|
590
|
+
/**
|
|
591
|
+
* Creates a hash for all the commits of the CommitContext and all sub-repo commit infos.
|
|
592
|
+
* The hash is max 255 chars long.
|
|
593
|
+
* @param commitContext
|
|
594
|
+
* @returns hash for commitcontext
|
|
595
|
+
*/
|
|
596
|
+
function computeHash(commitContext) {
|
|
597
|
+
// for single commits we use the revision to be backward compatible.
|
|
598
|
+
if (!commitContext.additionalRepositoryCheckoutInfo ||
|
|
599
|
+
commitContext.additionalRepositoryCheckoutInfo.length === 0) {
|
|
600
|
+
return commitContext.revision;
|
|
601
|
+
}
|
|
602
|
+
const hasher = (0, crypto_1.createHash)("sha256");
|
|
603
|
+
hasher.update(commitContext.revision);
|
|
604
|
+
for (const info of commitContext.additionalRepositoryCheckoutInfo) {
|
|
605
|
+
hasher.update(info.revision);
|
|
606
|
+
}
|
|
607
|
+
return hasher.digest("hex");
|
|
608
|
+
}
|
|
609
|
+
CommitContext.computeHash = computeHash;
|
|
610
|
+
})(CommitContext = exports.CommitContext || (exports.CommitContext = {}));
|
|
440
611
|
(function (CommitContext) {
|
|
441
612
|
function is(commit) {
|
|
442
|
-
return WorkspaceContext.is(commit)
|
|
443
|
-
&& 'repository' in commit
|
|
444
|
-
&& 'revision' in commit;
|
|
613
|
+
return WorkspaceContext.is(commit) && "repository" in commit && "revision" in commit;
|
|
445
614
|
}
|
|
446
615
|
CommitContext.is = is;
|
|
447
616
|
})(CommitContext = exports.CommitContext || (exports.CommitContext = {}));
|
|
448
617
|
var PullRequestContext;
|
|
449
618
|
(function (PullRequestContext) {
|
|
450
619
|
function is(ctx) {
|
|
451
|
-
return CommitContext.is(ctx)
|
|
452
|
-
&& 'nr' in ctx
|
|
453
|
-
&& 'ref' in ctx
|
|
454
|
-
&& 'base' in ctx;
|
|
620
|
+
return CommitContext.is(ctx) && "nr" in ctx && "ref" in ctx && "base" in ctx;
|
|
455
621
|
}
|
|
456
622
|
PullRequestContext.is = is;
|
|
457
623
|
})(PullRequestContext = exports.PullRequestContext || (exports.PullRequestContext = {}));
|
|
458
624
|
var IssueContext;
|
|
459
625
|
(function (IssueContext) {
|
|
460
626
|
function is(ctx) {
|
|
461
|
-
return CommitContext.is(ctx)
|
|
462
|
-
&& 'nr' in ctx
|
|
463
|
-
&& 'ref' in ctx
|
|
464
|
-
&& 'localBranch' in ctx;
|
|
627
|
+
return CommitContext.is(ctx) && "nr" in ctx && "ref" in ctx && "localBranch" in ctx;
|
|
465
628
|
}
|
|
466
629
|
IssueContext.is = is;
|
|
467
630
|
})(IssueContext = exports.IssueContext || (exports.IssueContext = {}));
|
|
468
631
|
var NavigatorContext;
|
|
469
632
|
(function (NavigatorContext) {
|
|
470
633
|
function is(ctx) {
|
|
471
|
-
return CommitContext.is(ctx)
|
|
472
|
-
&& 'path' in ctx
|
|
473
|
-
&& 'isFile' in ctx;
|
|
634
|
+
return CommitContext.is(ctx) && "path" in ctx && "isFile" in ctx;
|
|
474
635
|
}
|
|
475
636
|
NavigatorContext.is = is;
|
|
476
637
|
})(NavigatorContext = exports.NavigatorContext || (exports.NavigatorContext = {}));
|
|
477
638
|
var Repository;
|
|
478
639
|
(function (Repository) {
|
|
479
640
|
function fullRepoName(repo) {
|
|
480
|
-
return repo.host
|
|
641
|
+
return `${repo.host}/${repo.owner}/${repo.name}`;
|
|
481
642
|
}
|
|
482
643
|
Repository.fullRepoName = fullRepoName;
|
|
483
644
|
})(Repository = exports.Repository || (exports.Repository = {}));
|
|
@@ -488,6 +649,14 @@ var WorkspaceInstancePortsChangedEvent;
|
|
|
488
649
|
}
|
|
489
650
|
WorkspaceInstancePortsChangedEvent.is = is;
|
|
490
651
|
})(WorkspaceInstancePortsChangedEvent = exports.WorkspaceInstancePortsChangedEvent || (exports.WorkspaceInstancePortsChangedEvent = {}));
|
|
652
|
+
var WorkspaceInfo;
|
|
653
|
+
(function (WorkspaceInfo) {
|
|
654
|
+
function lastActiveISODate(info) {
|
|
655
|
+
var _a;
|
|
656
|
+
return ((_a = info.latestInstance) === null || _a === void 0 ? void 0 : _a.creationTime) || info.workspace.creationTime;
|
|
657
|
+
}
|
|
658
|
+
WorkspaceInfo.lastActiveISODate = lastActiveISODate;
|
|
659
|
+
})(WorkspaceInfo = exports.WorkspaceInfo || (exports.WorkspaceInfo = {}));
|
|
491
660
|
var CreateWorkspaceMode;
|
|
492
661
|
(function (CreateWorkspaceMode) {
|
|
493
662
|
// Default returns a running prebuild if there is any, otherwise creates a new workspace (using a prebuild if one is available)
|
|
@@ -502,16 +671,24 @@ var CreateWorkspaceMode;
|
|
|
502
671
|
var WorkspaceCreationResult;
|
|
503
672
|
(function (WorkspaceCreationResult) {
|
|
504
673
|
function is(data) {
|
|
505
|
-
return data &&
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
674
|
+
return (data &&
|
|
675
|
+
("createdWorkspaceId" in data ||
|
|
676
|
+
"existingWorkspaces" in data ||
|
|
677
|
+
"runningWorkspacePrebuild" in data ||
|
|
678
|
+
"runningPrebuildWorkspaceID" in data));
|
|
509
679
|
}
|
|
510
680
|
WorkspaceCreationResult.is = is;
|
|
511
681
|
})(WorkspaceCreationResult = exports.WorkspaceCreationResult || (exports.WorkspaceCreationResult = {}));
|
|
682
|
+
var AuthProviderEntry;
|
|
683
|
+
(function (AuthProviderEntry) {
|
|
684
|
+
function redact(entry) {
|
|
685
|
+
return Object.assign(Object.assign({}, entry), { oauth: Object.assign(Object.assign({}, entry.oauth), { clientSecret: "redacted" }) });
|
|
686
|
+
}
|
|
687
|
+
AuthProviderEntry.redact = redact;
|
|
688
|
+
})(AuthProviderEntry = exports.AuthProviderEntry || (exports.AuthProviderEntry = {}));
|
|
512
689
|
var TheiaPlugin;
|
|
513
690
|
(function (TheiaPlugin) {
|
|
514
|
-
|
|
691
|
+
let State;
|
|
515
692
|
(function (State) {
|
|
516
693
|
State["Uploading"] = "uploading";
|
|
517
694
|
State["Uploaded"] = "uploaded";
|