@versori/run 0.2.28 → 0.3.0-veta.1
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/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts +12 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.js +69 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts +112 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.js +151 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts +111 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.js +82 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/mod.d.ts +24 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/mod.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/mod.js +25 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts +129 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.js +162 -0
- package/esm/src/connection/DirectConnectionFactory.d.ts +29 -0
- package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -0
- package/esm/src/connection/DirectConnectionFactory.js +82 -0
- package/esm/src/connection/DynamicFetchFactory.d.ts +30 -0
- package/esm/src/connection/DynamicFetchFactory.d.ts.map +1 -0
- package/esm/src/connection/DynamicFetchFactory.js +113 -0
- package/esm/src/connection/StaticFetchFactory.d.ts +11 -0
- package/esm/src/connection/StaticFetchFactory.d.ts.map +1 -0
- package/esm/src/connection/StaticFetchFactory.js +35 -0
- package/esm/src/connection/internal/CredentialHolder.d.ts +11 -0
- package/esm/src/connection/internal/CredentialHolder.d.ts.map +1 -0
- package/esm/src/connection/internal/CredentialHolder.js +66 -0
- package/esm/src/connection/internal/FetchBuilder.d.ts +15 -0
- package/esm/src/connection/internal/FetchBuilder.d.ts.map +1 -0
- package/esm/src/connection/internal/FetchBuilder.js +89 -0
- package/esm/src/connection/internal/HttpClientFactory.d.ts +14 -0
- package/esm/src/connection/internal/HttpClientFactory.d.ts.map +1 -0
- package/esm/src/connection/internal/HttpClientFactory.js +42 -0
- package/esm/src/connection/internal/InboundConnectionFactory.d.ts +19 -0
- package/esm/src/connection/internal/InboundConnectionFactory.d.ts.map +1 -0
- package/esm/src/connection/internal/InboundConnectionFactory.js +390 -0
- package/esm/src/connection/internal/OutboundConnectionFactory.d.ts +31 -0
- package/esm/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -0
- package/esm/src/connection/internal/OutboundConnectionFactory.js +447 -0
- package/esm/src/connection/types.d.ts +32 -0
- package/esm/src/connection/types.d.ts.map +1 -0
- package/esm/src/connection/types.js +1 -0
- package/esm/src/context/ActivationImpl.d.ts +18 -0
- package/esm/src/context/ActivationImpl.d.ts.map +1 -0
- package/esm/src/context/ActivationImpl.js +82 -0
- package/esm/src/context/Context.d.ts +5 -6
- package/esm/src/context/Context.d.ts.map +1 -1
- package/esm/src/context/Context.js +9 -16
- package/esm/src/context/ContextProvider.d.ts +7 -3
- package/esm/src/context/ContextProvider.d.ts.map +1 -1
- package/esm/src/context/ContextProvider.js +28 -10
- package/esm/src/dsl/http/default.d.ts.map +1 -1
- package/esm/src/dsl/http/default.js +3 -1
- package/esm/src/dsl/http/types.d.ts +9 -4
- package/esm/src/dsl/http/types.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/configloader.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/configloader.js +3 -1
- package/esm/src/dsl/http/versori/constants.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/constants.js +1 -0
- package/esm/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/platformapi.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/proxyroundtripper.d.ts +5 -3
- package/esm/src/dsl/http/versori/proxyroundtripper.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/proxyroundtripper.js +31 -8
- package/esm/src/dsl/http/versori/webhookmiddleware.d.ts +8 -5
- package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/webhookmiddleware.js +106 -115
- package/esm/src/dsl/tasks/HttpTask.d.ts +7 -5
- package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/esm/src/dsl/tasks/HttpTask.js +22 -22
- package/esm/src/internal/InternalAuth.d.ts +15 -0
- package/esm/src/internal/InternalAuth.d.ts.map +1 -0
- package/esm/src/internal/InternalAuth.js +90 -0
- package/esm/src/internal/cli.d.ts +2 -0
- package/esm/src/internal/cli.d.ts.map +1 -0
- package/esm/src/internal/cli.js +20 -0
- package/esm/src/internal/constants.d.ts +20 -0
- package/esm/src/internal/constants.d.ts.map +1 -0
- package/esm/src/internal/constants.js +24 -0
- package/esm/src/interpreter/durable/DurableInterpreter.d.ts +14 -5
- package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/durable/DurableInterpreter.js +20 -18
- package/esm/src/interpreter/durable/ObservableCompiler.d.ts +6 -3
- package/esm/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/durableworkflow.js +10 -1
- package/esm/src/interpreter/durable/compilers/http.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/http.js +26 -9
- package/esm/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/schedule.js +41 -18
- package/esm/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/webhook.js +30 -33
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts +4 -4
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/memory/MemoryInterpreter.js +14 -23
- package/esm/src/interpreter/memory/ObservableCompiler.d.ts +6 -3
- package/esm/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/http.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/http.js +26 -9
- package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/schedule.js +34 -18
- package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
- package/esm/src/interpreter/memory/compilers/webhook.js +31 -34
- package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/esm/src/kv/nats/NatsKeyValueProvider.js +16 -0
- package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
- package/esm/src/kv/sdk/SDKKeyValueProvider.js +14 -0
- package/esm/src/services/credentials/credential-v1alpha1.d.ts +4 -0
- package/esm/src/services/credentials/credential-v1alpha1.d.ts.map +1 -0
- package/esm/src/services/credentials/credential-v1alpha1.js +3 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +119 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.js +67 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts +245 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.js +44 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts +38 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_pb.js +1 -1
- package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts +471 -0
- package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_service_pb.js +1 -1
- package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts +38 -0
- package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_pb.js +1 -1
- package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts +128 -0
- package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_service_pb.js +1 -1
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts +90 -0
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/common_pb.js +16 -6
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts +1468 -0
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.js +534 -0
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts +390 -0
- package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/credential_service_pb.js +1 -1
- package/esm/src/services/credentials/isTokenValid.d.ts +3 -0
- package/esm/src/services/credentials/isTokenValid.d.ts.map +1 -0
- package/esm/src/services/credentials/isTokenValid.js +8 -0
- package/esm/src/services/credentials/mod.d.ts +5 -0
- package/esm/src/services/credentials/mod.d.ts.map +1 -0
- package/esm/src/services/credentials/mod.js +4 -0
- package/esm/src/services/credentials/oauth1-v1.d.ts +3 -0
- package/esm/src/services/credentials/oauth1-v1.d.ts.map +1 -0
- package/esm/src/services/credentials/oauth1-v1.js +2 -0
- package/esm/src/services/credentials/oauth2-v1.d.ts +3 -0
- package/esm/src/services/credentials/oauth2-v1.d.ts.map +1 -0
- package/esm/src/services/credentials/oauth2-v1.js +2 -0
- package/esm/src/services/credentials/tokens-v1.d.ts +3 -0
- package/esm/src/services/credentials/tokens-v1.d.ts.map +1 -0
- package/esm/src/services/credentials/tokens-v1.js +2 -0
- package/esm/src/services/platform/PlatformApi.d.ts +7 -0
- package/esm/src/services/platform/PlatformApi.d.ts.map +1 -0
- package/esm/src/services/platform/PlatformApi.js +25 -0
- package/esm/src/services/platform/generated/client/client.gen.d.ts +3 -0
- package/esm/src/services/platform/generated/client/client.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/client/client.gen.js +176 -0
- package/esm/src/services/platform/generated/client/index.d.ts +8 -0
- package/esm/src/services/platform/generated/client/index.d.ts.map +1 -0
- package/esm/src/services/platform/generated/client/index.js +5 -0
- package/esm/src/services/platform/generated/client/types.gen.d.ts +125 -0
- package/esm/src/services/platform/generated/client/types.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/client/types.gen.js +2 -0
- package/esm/src/services/platform/generated/client/utils.gen.d.ts +39 -0
- package/esm/src/services/platform/generated/client/utils.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/client/utils.gen.js +234 -0
- package/esm/src/services/platform/generated/client.gen.d.ts +13 -0
- package/esm/src/services/platform/generated/client.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/client.gen.js +5 -0
- package/esm/src/services/platform/generated/core/auth.gen.d.ts +19 -0
- package/esm/src/services/platform/generated/core/auth.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/auth.gen.js +14 -0
- package/esm/src/services/platform/generated/core/bodySerializer.gen.d.ts +18 -0
- package/esm/src/services/platform/generated/core/bodySerializer.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/bodySerializer.gen.js +57 -0
- package/esm/src/services/platform/generated/core/params.gen.d.ts +34 -0
- package/esm/src/services/platform/generated/core/params.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/params.gen.js +88 -0
- package/esm/src/services/platform/generated/core/pathSerializer.gen.d.ts +34 -0
- package/esm/src/services/platform/generated/core/pathSerializer.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/pathSerializer.gen.js +114 -0
- package/esm/src/services/platform/generated/core/serverSentEvents.gen.d.ts +60 -0
- package/esm/src/services/platform/generated/core/serverSentEvents.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/serverSentEvents.gen.js +121 -0
- package/esm/src/services/platform/generated/core/types.gen.d.ts +79 -0
- package/esm/src/services/platform/generated/core/types.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/types.gen.js +2 -0
- package/esm/src/services/platform/generated/core/utils.gen.d.ts +15 -0
- package/esm/src/services/platform/generated/core/utils.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/core/utils.gen.js +69 -0
- package/esm/src/services/platform/generated/index.d.ts +3 -0
- package/esm/src/services/platform/generated/index.d.ts.map +1 -0
- package/esm/src/services/platform/generated/index.js +3 -0
- package/esm/src/services/platform/generated/sdk.gen.d.ts +494 -0
- package/esm/src/services/platform/generated/sdk.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/sdk.gen.js +1908 -0
- package/esm/src/services/platform/generated/types.gen.d.ts +3798 -0
- package/esm/src/services/platform/generated/types.gen.d.ts.map +1 -0
- package/esm/src/services/platform/generated/types.gen.js +2 -0
- package/esm/src/services/platform/mod.d.ts +5 -0
- package/esm/src/services/platform/mod.d.ts.map +1 -0
- package/esm/src/services/platform/mod.js +2 -0
- package/package.json +3 -4
- package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts +12 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.js +72 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts +112 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.js +155 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts +111 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/memoize.js +85 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/mod.d.ts +24 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/mod.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/mod.js +41 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts +129 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.js +166 -0
- package/script/src/connection/DirectConnectionFactory.d.ts +29 -0
- package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -0
- package/script/src/connection/DirectConnectionFactory.js +86 -0
- package/script/src/connection/DynamicFetchFactory.d.ts +30 -0
- package/script/src/connection/DynamicFetchFactory.d.ts.map +1 -0
- package/script/src/connection/DynamicFetchFactory.js +117 -0
- package/script/src/connection/StaticFetchFactory.d.ts +11 -0
- package/script/src/connection/StaticFetchFactory.d.ts.map +1 -0
- package/script/src/connection/StaticFetchFactory.js +39 -0
- package/script/src/connection/internal/CredentialHolder.d.ts +11 -0
- package/script/src/connection/internal/CredentialHolder.d.ts.map +1 -0
- package/script/src/connection/internal/CredentialHolder.js +71 -0
- package/script/src/connection/internal/FetchBuilder.d.ts +15 -0
- package/script/src/connection/internal/FetchBuilder.d.ts.map +1 -0
- package/script/src/connection/internal/FetchBuilder.js +93 -0
- package/script/src/connection/internal/HttpClientFactory.d.ts +14 -0
- package/script/src/connection/internal/HttpClientFactory.d.ts.map +1 -0
- package/script/src/connection/internal/HttpClientFactory.js +46 -0
- package/script/src/connection/internal/InboundConnectionFactory.d.ts +19 -0
- package/script/src/connection/internal/InboundConnectionFactory.d.ts.map +1 -0
- package/script/src/connection/internal/InboundConnectionFactory.js +394 -0
- package/script/src/connection/internal/OutboundConnectionFactory.d.ts +31 -0
- package/script/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -0
- package/script/src/connection/internal/OutboundConnectionFactory.js +454 -0
- package/script/src/connection/types.d.ts +32 -0
- package/script/src/connection/types.d.ts.map +1 -0
- package/script/src/connection/types.js +2 -0
- package/script/src/context/ActivationImpl.d.ts +18 -0
- package/script/src/context/ActivationImpl.d.ts.map +1 -0
- package/script/src/context/ActivationImpl.js +86 -0
- package/script/src/context/Context.d.ts +5 -6
- package/script/src/context/Context.d.ts.map +1 -1
- package/script/src/context/Context.js +9 -16
- package/script/src/context/ContextProvider.d.ts +7 -3
- package/script/src/context/ContextProvider.d.ts.map +1 -1
- package/script/src/context/ContextProvider.js +28 -10
- package/script/src/dsl/http/default.d.ts.map +1 -1
- package/script/src/dsl/http/default.js +3 -1
- package/script/src/dsl/http/types.d.ts +9 -4
- package/script/src/dsl/http/types.d.ts.map +1 -1
- package/script/src/dsl/http/versori/configloader.d.ts.map +1 -1
- package/script/src/dsl/http/versori/configloader.js +3 -1
- package/script/src/dsl/http/versori/constants.d.ts.map +1 -1
- package/script/src/dsl/http/versori/constants.js +1 -0
- package/script/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
- package/script/src/dsl/http/versori/platformapi.d.ts.map +1 -1
- package/script/src/dsl/http/versori/proxyroundtripper.d.ts +5 -3
- package/script/src/dsl/http/versori/proxyroundtripper.d.ts.map +1 -1
- package/script/src/dsl/http/versori/proxyroundtripper.js +31 -8
- package/script/src/dsl/http/versori/webhookmiddleware.d.ts +8 -5
- package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/script/src/dsl/http/versori/webhookmiddleware.js +106 -115
- package/script/src/dsl/tasks/HttpTask.d.ts +7 -5
- package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/script/src/dsl/tasks/HttpTask.js +22 -22
- package/script/src/internal/InternalAuth.d.ts +15 -0
- package/script/src/internal/InternalAuth.d.ts.map +1 -0
- package/script/src/internal/InternalAuth.js +94 -0
- package/script/src/internal/cli.d.ts +2 -0
- package/script/src/internal/cli.d.ts.map +1 -0
- package/script/src/internal/cli.js +23 -0
- package/script/src/internal/constants.d.ts +20 -0
- package/script/src/internal/constants.d.ts.map +1 -0
- package/script/src/internal/constants.js +27 -0
- package/script/src/interpreter/durable/DurableInterpreter.d.ts +14 -5
- package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/durable/DurableInterpreter.js +20 -18
- package/script/src/interpreter/durable/ObservableCompiler.d.ts +6 -3
- package/script/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/durableworkflow.js +10 -1
- package/script/src/interpreter/durable/compilers/http.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/http.js +26 -9
- package/script/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/schedule.js +41 -18
- package/script/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/webhook.js +30 -33
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts +4 -4
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/memory/MemoryInterpreter.js +14 -23
- package/script/src/interpreter/memory/ObservableCompiler.d.ts +6 -3
- package/script/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/http.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/http.js +26 -9
- package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/schedule.js +34 -18
- package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
- package/script/src/interpreter/memory/compilers/webhook.js +31 -34
- package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
- package/script/src/kv/nats/NatsKeyValueProvider.js +16 -0
- package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
- package/script/src/kv/sdk/SDKKeyValueProvider.js +14 -0
- package/script/src/services/credentials/credential-v1alpha1.d.ts +4 -0
- package/script/src/services/credentials/credential-v1alpha1.d.ts.map +1 -0
- package/script/src/services/credentials/credential-v1alpha1.js +19 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +119 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.js +70 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts +245 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
- package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.js +47 -0
- package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts +38 -0
- package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_pb.js +1 -1
- package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts +471 -0
- package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_service_pb.js +1 -1
- package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts +38 -0
- package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_pb.js +1 -1
- package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts +128 -0
- package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_service_pb.js +1 -1
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts +90 -0
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/common_pb.js +16 -6
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts +1468 -0
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.js +538 -0
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts +390 -0
- package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/script/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/credential_service_pb.js +1 -1
- package/script/src/services/credentials/isTokenValid.d.ts +3 -0
- package/script/src/services/credentials/isTokenValid.d.ts.map +1 -0
- package/script/src/services/credentials/isTokenValid.js +11 -0
- package/script/src/services/credentials/mod.d.ts +5 -0
- package/script/src/services/credentials/mod.d.ts.map +1 -0
- package/script/src/services/credentials/mod.js +30 -0
- package/script/src/services/credentials/oauth1-v1.d.ts +3 -0
- package/script/src/services/credentials/oauth1-v1.d.ts.map +1 -0
- package/script/src/services/credentials/oauth1-v1.js +18 -0
- package/script/src/services/credentials/oauth2-v1.d.ts +3 -0
- package/script/src/services/credentials/oauth2-v1.d.ts.map +1 -0
- package/script/src/services/credentials/oauth2-v1.js +18 -0
- package/script/src/services/credentials/tokens-v1.d.ts +3 -0
- package/script/src/services/credentials/tokens-v1.d.ts.map +1 -0
- package/script/src/services/credentials/tokens-v1.js +18 -0
- package/script/src/services/platform/PlatformApi.d.ts +7 -0
- package/script/src/services/platform/PlatformApi.d.ts.map +1 -0
- package/script/src/services/platform/PlatformApi.js +52 -0
- package/script/src/services/platform/generated/client/client.gen.d.ts +3 -0
- package/script/src/services/platform/generated/client/client.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/client/client.gen.js +180 -0
- package/script/src/services/platform/generated/client/index.d.ts +8 -0
- package/script/src/services/platform/generated/client/index.d.ts.map +1 -0
- package/script/src/services/platform/generated/client/index.js +15 -0
- package/script/src/services/platform/generated/client/types.gen.d.ts +125 -0
- package/script/src/services/platform/generated/client/types.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/client/types.gen.js +3 -0
- package/script/src/services/platform/generated/client/utils.gen.d.ts +39 -0
- package/script/src/services/platform/generated/client/utils.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/client/utils.gen.js +245 -0
- package/script/src/services/platform/generated/client.gen.d.ts +13 -0
- package/script/src/services/platform/generated/client.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/client.gen.js +8 -0
- package/script/src/services/platform/generated/core/auth.gen.d.ts +19 -0
- package/script/src/services/platform/generated/core/auth.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/auth.gen.js +18 -0
- package/script/src/services/platform/generated/core/bodySerializer.gen.d.ts +18 -0
- package/script/src/services/platform/generated/core/bodySerializer.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/bodySerializer.gen.js +60 -0
- package/script/src/services/platform/generated/core/params.gen.d.ts +34 -0
- package/script/src/services/platform/generated/core/params.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/params.gen.js +92 -0
- package/script/src/services/platform/generated/core/pathSerializer.gen.d.ts +34 -0
- package/script/src/services/platform/generated/core/pathSerializer.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/pathSerializer.gen.js +123 -0
- package/script/src/services/platform/generated/core/serverSentEvents.gen.d.ts +60 -0
- package/script/src/services/platform/generated/core/serverSentEvents.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/serverSentEvents.gen.js +125 -0
- package/script/src/services/platform/generated/core/types.gen.d.ts +79 -0
- package/script/src/services/platform/generated/core/types.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/types.gen.js +3 -0
- package/script/src/services/platform/generated/core/utils.gen.d.ts +15 -0
- package/script/src/services/platform/generated/core/utils.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/core/utils.gen.js +74 -0
- package/script/src/services/platform/generated/index.d.ts +3 -0
- package/script/src/services/platform/generated/index.d.ts.map +1 -0
- package/script/src/services/platform/generated/index.js +19 -0
- package/script/src/services/platform/generated/sdk.gen.d.ts +494 -0
- package/script/src/services/platform/generated/sdk.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/sdk.gen.js +1992 -0
- package/script/src/services/platform/generated/types.gen.d.ts +3798 -0
- package/script/src/services/platform/generated/types.gen.d.ts.map +1 -0
- package/script/src/services/platform/generated/types.gen.js +3 -0
- package/script/src/services/platform/mod.d.ts +5 -0
- package/script/src/services/platform/mod.d.ts.map +1 -0
- package/script/src/services/platform/mod.js +18 -0
- package/esm/src/dsl/http/versori/credential/client.d.ts +0 -13
- package/esm/src/dsl/http/versori/credential/client.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/client.js +0 -35
- package/esm/src/dsl/http/versori/credential/credentials.d.ts +0 -98
- package/esm/src/dsl/http/versori/credential/credentials.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/credentials.js +0 -40
- package/esm/src/dsl/http/versori/credential/mod.d.ts +0 -2
- package/esm/src/dsl/http/versori/credential/mod.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/mod.js +0 -1
- package/esm/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts +0 -13
- package/esm/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts +0 -102
- package/esm/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts +0 -13
- package/esm/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts +0 -46
- package/esm/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts +0 -40
- package/esm/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts +0 -129
- package/esm/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/roundtripper.d.ts +0 -61
- package/esm/src/dsl/http/versori/roundtripper.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/roundtripper.js +0 -967
- package/script/src/dsl/http/versori/credential/client.d.ts +0 -13
- package/script/src/dsl/http/versori/credential/client.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/client.js +0 -39
- package/script/src/dsl/http/versori/credential/credentials.d.ts +0 -98
- package/script/src/dsl/http/versori/credential/credentials.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/credentials.js +0 -46
- package/script/src/dsl/http/versori/credential/mod.d.ts +0 -2
- package/script/src/dsl/http/versori/credential/mod.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/mod.js +0 -5
- package/script/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts +0 -13
- package/script/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts +0 -102
- package/script/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts +0 -13
- package/script/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts +0 -46
- package/script/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts +0 -40
- package/script/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts +0 -129
- package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +0 -1
- package/script/src/dsl/http/versori/roundtripper.d.ts +0 -61
- package/script/src/dsl/http/versori/roundtripper.d.ts.map +0 -1
- package/script/src/dsl/http/versori/roundtripper.js +0 -974
|
@@ -3,18 +3,42 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createStaticWebhookMiddleware = createStaticWebhookMiddleware;
|
|
4
4
|
exports.createActIdDynamicWebhookMiddleware = createActIdDynamicWebhookMiddleware;
|
|
5
5
|
exports.createUserIdDynamicWebhookMiddleware = createUserIdDynamicWebhookMiddleware;
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
// TODO: this gets called for every request for all endpoints, can we cache this?
|
|
7
|
+
async function getStaticActivation(opts) {
|
|
8
|
+
const { data: activations } = await opts.platformApi.listActivations({
|
|
9
|
+
path: {
|
|
10
|
+
organisation_id: opts.organisationId,
|
|
11
|
+
environment_id: opts.environmentId,
|
|
12
|
+
},
|
|
13
|
+
query: {
|
|
14
|
+
static: true,
|
|
15
|
+
},
|
|
16
|
+
throwOnError: true,
|
|
17
|
+
});
|
|
18
|
+
let activation;
|
|
19
|
+
if (activations && activations.length > 0) {
|
|
20
|
+
if (activations.length > 1) {
|
|
21
|
+
opts.log.warn('Multiple static activations found, using the first one', {
|
|
22
|
+
activationsCount: activations.length,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
activation = activations[0];
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
opts.log.error('No static activation found', { webhookId: opts.id });
|
|
29
|
+
}
|
|
30
|
+
return activation;
|
|
31
|
+
}
|
|
8
32
|
// TODO: Refactor this so we don't have like three different middlewares for static and dynamic webhooks
|
|
9
33
|
function createStaticWebhookMiddleware(opts) {
|
|
10
34
|
if (opts.connName === undefined) {
|
|
11
35
|
opts.log.warn(`No connection ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
12
36
|
return async (_req, res, next) => {
|
|
13
|
-
|
|
14
|
-
res.locals.activation = activation;
|
|
37
|
+
res.locals.activation = await getStaticActivation(opts);
|
|
15
38
|
next();
|
|
16
39
|
};
|
|
17
40
|
}
|
|
41
|
+
// TODO(@teo): move db access to outside of the middleware??? (genuine question - not instruction)
|
|
18
42
|
return async (req, res, next) => {
|
|
19
43
|
if (!opts.connName) {
|
|
20
44
|
// This is mainly for type safety, but we should never reach this point
|
|
@@ -23,36 +47,32 @@ function createStaticWebhookMiddleware(opts) {
|
|
|
23
47
|
return;
|
|
24
48
|
}
|
|
25
49
|
const cnxId = opts.cfgReader.getConnectionID(opts.connName);
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
opts.log.error(`Connection or activation not found for webhook: /${opts.id}`);
|
|
30
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
const key = await opts.credentials.getRaw(opts.connName);
|
|
34
|
-
const asc = conn.credentials[0].authSchemeConfig;
|
|
35
|
-
if (!asc || !asc.hmac) {
|
|
36
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
37
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
const digest = createDigest(asc.hmac, req, key);
|
|
41
|
-
let requestDigest;
|
|
42
|
-
try {
|
|
43
|
-
requestDigest = extractDigest(asc.hmac, req);
|
|
44
|
-
}
|
|
45
|
-
catch (error) {
|
|
46
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
47
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
50
|
+
if (!cnxId) {
|
|
51
|
+
opts.log.error('Missing connection ID for webhook, either omit the connection option from your webhook or configure your connection', { webhookId: opts.id, connName: opts.connName });
|
|
52
|
+
res.status(500).json({ error: 'Missing connection for webhook' });
|
|
48
53
|
return;
|
|
49
54
|
}
|
|
50
|
-
|
|
51
|
-
|
|
55
|
+
const activation = await getStaticActivation(opts);
|
|
56
|
+
if (!activation) {
|
|
57
|
+
opts.log.error('No activation found for static webhook', { webhookId: opts.id, connName: opts.connName });
|
|
58
|
+
res.status(500).json({ error: 'No activation found for static webhook' });
|
|
52
59
|
return;
|
|
53
60
|
}
|
|
54
61
|
res.locals.activation = activation;
|
|
55
|
-
|
|
62
|
+
const { data: cnx } = await opts.platformApi.getConnection({
|
|
63
|
+
path: {
|
|
64
|
+
organisation_id: opts.organisationId,
|
|
65
|
+
connection_id: cnxId,
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
if (!cnx) {
|
|
69
|
+
opts.log.error(`No connection found for webhook`, { webhookId: opts.id, connName: opts.connName });
|
|
70
|
+
res.status(500).json({ error: 'No connection found for webhook' });
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const connectedHandler = await opts.cnxFactory.handler(cnx);
|
|
74
|
+
// this will call next on our behalf if there's no error, it handles HMAC, API key and basic auth.
|
|
75
|
+
connectedHandler(req, res, next);
|
|
56
76
|
};
|
|
57
77
|
}
|
|
58
78
|
function createActIdDynamicWebhookMiddleware(opts) {
|
|
@@ -60,7 +80,14 @@ function createActIdDynamicWebhookMiddleware(opts) {
|
|
|
60
80
|
opts.log.warn(`No template ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
61
81
|
return async (req, res, next) => {
|
|
62
82
|
const activationId = req.params.activationId;
|
|
63
|
-
const activation = await opts.
|
|
83
|
+
const activation = await opts.platformApi.getActivation({
|
|
84
|
+
path: {
|
|
85
|
+
organisation_id: opts.organisationId,
|
|
86
|
+
environment_id: opts.environmentId,
|
|
87
|
+
activation_id: activationId,
|
|
88
|
+
},
|
|
89
|
+
throwOnError: true,
|
|
90
|
+
});
|
|
64
91
|
res.locals.activation = activation;
|
|
65
92
|
next();
|
|
66
93
|
};
|
|
@@ -74,36 +101,29 @@ function createActIdDynamicWebhookMiddleware(opts) {
|
|
|
74
101
|
}
|
|
75
102
|
const templateId = opts.cfgReader.getTemplateID(opts.connName);
|
|
76
103
|
const activationId = req.params.activationId;
|
|
77
|
-
const activation = await opts.
|
|
78
|
-
|
|
104
|
+
const activation = await opts.platformApi.getActivation({
|
|
105
|
+
path: {
|
|
106
|
+
organisation_id: opts.organisationId,
|
|
107
|
+
environment_id: opts.environmentId,
|
|
108
|
+
activation_id: activationId,
|
|
109
|
+
},
|
|
110
|
+
throwOnError: true,
|
|
111
|
+
});
|
|
112
|
+
const conn = await opts.platformApi.getActivationConnection({
|
|
113
|
+
path: {
|
|
114
|
+
organisation_id: opts.organisationId,
|
|
115
|
+
env_system_id: templateId,
|
|
116
|
+
activation_id: activationId,
|
|
117
|
+
},
|
|
118
|
+
throwOnError: true,
|
|
119
|
+
});
|
|
79
120
|
if (activation === undefined || conn === undefined) {
|
|
80
121
|
opts.log.error(`Activation or connection not found for webhook: /${opts.id}/activations/${activationId}`);
|
|
81
122
|
res.status(401).json({ error: 'Unauthorised' });
|
|
82
123
|
return;
|
|
83
124
|
}
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
if (!asc || !asc.hmac) {
|
|
87
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
88
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
const digest = createDigest(asc.hmac, req, key);
|
|
92
|
-
let requestDigest;
|
|
93
|
-
try {
|
|
94
|
-
requestDigest = extractDigest(asc.hmac, req);
|
|
95
|
-
}
|
|
96
|
-
catch (error) {
|
|
97
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
98
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
99
|
-
return;
|
|
100
|
-
}
|
|
101
|
-
if (digest !== requestDigest) {
|
|
102
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
res.locals.activation = activation;
|
|
106
|
-
next();
|
|
125
|
+
const handler = await opts.cnxFactory.handler(conn.data);
|
|
126
|
+
handler(req, res, next);
|
|
107
127
|
};
|
|
108
128
|
}
|
|
109
129
|
function createUserIdDynamicWebhookMiddleware(opts) {
|
|
@@ -111,14 +131,23 @@ function createUserIdDynamicWebhookMiddleware(opts) {
|
|
|
111
131
|
opts.log.warn(`No template ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
112
132
|
return async (req, res, next) => {
|
|
113
133
|
const userId = req.params.userId;
|
|
114
|
-
const activations = await opts.
|
|
134
|
+
const { data: activations } = await opts.platformApi.listUserActivations({
|
|
135
|
+
path: {
|
|
136
|
+
organisation_id: opts.organisationId,
|
|
137
|
+
environment_id: opts.environmentId,
|
|
138
|
+
external_user_id: userId,
|
|
139
|
+
},
|
|
140
|
+
throwOnError: true,
|
|
141
|
+
});
|
|
115
142
|
if (activations.length === 0) {
|
|
116
143
|
opts.log.error(`No activations found for user: ${userId}`);
|
|
117
144
|
res.status(401).json({ error: 'Unauthorised' });
|
|
118
145
|
return;
|
|
119
146
|
}
|
|
120
|
-
|
|
121
|
-
|
|
147
|
+
if (activations.length > 1) {
|
|
148
|
+
opts.log.warn(`Multiple activations found for user: ${userId}, using the first one: ${activations[0].id}`);
|
|
149
|
+
}
|
|
150
|
+
res.locals.activation = activations[0];
|
|
122
151
|
next();
|
|
123
152
|
};
|
|
124
153
|
}
|
|
@@ -131,72 +160,34 @@ function createUserIdDynamicWebhookMiddleware(opts) {
|
|
|
131
160
|
}
|
|
132
161
|
const templateId = opts.cfgReader.getTemplateID(opts.connName);
|
|
133
162
|
const userId = req.params.userId;
|
|
134
|
-
const activations = await opts.
|
|
163
|
+
const { data: activations } = await opts.platformApi.listUserActivations({
|
|
164
|
+
path: {
|
|
165
|
+
organisation_id: opts.organisationId,
|
|
166
|
+
environment_id: opts.environmentId,
|
|
167
|
+
external_user_id: userId,
|
|
168
|
+
},
|
|
169
|
+
throwOnError: true,
|
|
170
|
+
});
|
|
135
171
|
if (activations.length === 0) {
|
|
172
|
+
opts.log.error(`No activations found for user: ${userId}`);
|
|
136
173
|
res.status(401).json({ error: 'Unauthorised' });
|
|
137
174
|
return;
|
|
138
175
|
}
|
|
139
176
|
const activation = activations[0]; // Right now we only support a user having one activation
|
|
140
|
-
const conn = await opts.
|
|
177
|
+
const conn = await opts.platformApi.getActivationConnection({
|
|
178
|
+
path: {
|
|
179
|
+
organisation_id: opts.organisationId,
|
|
180
|
+
env_system_id: templateId,
|
|
181
|
+
activation_id: activation.id,
|
|
182
|
+
},
|
|
183
|
+
throwOnError: true,
|
|
184
|
+
});
|
|
141
185
|
if (conn === undefined) {
|
|
142
186
|
opts.log.error(`Connection not found for webhook: /${opts.id}/users/${userId}`);
|
|
143
187
|
res.status(401).json({ error: 'Unauthorised' });
|
|
144
188
|
return;
|
|
145
189
|
}
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
if (!asc || !asc.hmac) {
|
|
149
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
150
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
151
|
-
return;
|
|
152
|
-
}
|
|
153
|
-
const digest = createDigest(asc.hmac, req, key);
|
|
154
|
-
let requestDigest;
|
|
155
|
-
try {
|
|
156
|
-
requestDigest = extractDigest(asc.hmac, req);
|
|
157
|
-
}
|
|
158
|
-
catch (error) {
|
|
159
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
160
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
if (digest !== requestDigest) {
|
|
164
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
res.locals.activation = activation;
|
|
168
|
-
next();
|
|
190
|
+
const handler = await opts.cnxFactory.handler(conn.data);
|
|
191
|
+
handler(req, res, next);
|
|
169
192
|
};
|
|
170
193
|
}
|
|
171
|
-
// createDigest creates a HMAC digest for the request using the provided key.
|
|
172
|
-
// Note that this assumes the request body is a JSON object, as one would normally
|
|
173
|
-
// expect for our use case.
|
|
174
|
-
// TODO: implement the case where we might want to digest the body + url or url + body
|
|
175
|
-
// or url...
|
|
176
|
-
function createDigest(asc, req, key) {
|
|
177
|
-
const hmac = (0, node_crypto_1.createHmac)(asc.algorithm, node_buffer_1.Buffer.from(key).toString('utf8'));
|
|
178
|
-
hmac.update(JSON.stringify(req.body));
|
|
179
|
-
return hmac.digest(asc.encoding);
|
|
180
|
-
}
|
|
181
|
-
function extractDigest(asc, req) {
|
|
182
|
-
switch (asc.in) {
|
|
183
|
-
case 'query':
|
|
184
|
-
if (req.query[asc.name]) {
|
|
185
|
-
return req.query[asc.name];
|
|
186
|
-
}
|
|
187
|
-
break;
|
|
188
|
-
case 'header':
|
|
189
|
-
if (req.headers[asc.name.toLowerCase()]) {
|
|
190
|
-
return req.headers[asc.name.toLowerCase()];
|
|
191
|
-
}
|
|
192
|
-
break;
|
|
193
|
-
case 'cookie':
|
|
194
|
-
if (req.cookies[asc.name]) {
|
|
195
|
-
return req.cookies[asc.name];
|
|
196
|
-
}
|
|
197
|
-
break;
|
|
198
|
-
default:
|
|
199
|
-
throw new Error(`Unsupported HMAC digest extraction method: ${asc.in}`);
|
|
200
|
-
}
|
|
201
|
-
throw new Error(`HMAC digest not found in request: ${asc.name}`);
|
|
202
|
-
}
|
|
@@ -5,9 +5,10 @@ import { Issue } from '../../issues/Issues.js';
|
|
|
5
5
|
import { KeyValue, KeyValueScope } from '../../kv/KeyValue.js';
|
|
6
6
|
import { WorkflowOpts } from '../../mod.js';
|
|
7
7
|
import { Logger } from '../../observability/logging/Logger.js';
|
|
8
|
-
import { Activation, BaseUrlFetcher, DynamicFetcher } from '../http/types.js';
|
|
9
8
|
import { CredentialsProvider } from '../http/versori/contextcredentials.js';
|
|
10
9
|
import { ArrayTask, Task, Taskable, TaskType } from '../Task.js';
|
|
10
|
+
import { ActivationImpl } from '../../context/ActivationImpl.js';
|
|
11
|
+
import { FetchLike } from '../../connection/types.js';
|
|
11
12
|
export interface HttpContext<Data, PageParams = undefined> extends Context<Data> {
|
|
12
13
|
fetch: typeof fetch;
|
|
13
14
|
connectionVariables: Record<string, any>;
|
|
@@ -40,21 +41,22 @@ export declare class HttpContextImpl<D, PageParams> implements HttpContext<D, Pa
|
|
|
40
41
|
#private;
|
|
41
42
|
connectionVariables: Record<string, any>;
|
|
42
43
|
pageParams?: PageParams;
|
|
43
|
-
|
|
44
|
+
readonly fetch: FetchLike;
|
|
45
|
+
readonly baseUrl: Promise<string>;
|
|
46
|
+
constructor(ctx: ContextImpl<D, any>, connectionVars: Record<string, any>, fetch: FetchLike, baseUrl: string, pageParams?: PageParams);
|
|
44
47
|
get log(): Logger;
|
|
45
48
|
get executionId(): string;
|
|
46
49
|
get startTime(): Date;
|
|
47
|
-
get activation():
|
|
50
|
+
get activation(): ActivationImpl;
|
|
48
51
|
get data(): D;
|
|
49
52
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
53
|
+
destroy(scope: KeyValueScope): Promise<void>;
|
|
50
54
|
credentials(): CredentialsProvider;
|
|
51
55
|
start(workflowId: string, workflowOpts: WorkflowOpts): Promise<AsyncWorkflow>;
|
|
52
56
|
createIssue(issue: CreateIssue, options?: {
|
|
53
57
|
deduplicate?: boolean;
|
|
54
58
|
duplicationKey?: string;
|
|
55
59
|
}): Promise<Issue | null>;
|
|
56
|
-
get fetch(): typeof globalThis.fetch;
|
|
57
|
-
get baseUrl(): Promise<string>;
|
|
58
60
|
nextPage(_nextParams: PageParams): Promise<void>;
|
|
59
61
|
request(): express.Request | undefined;
|
|
60
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpTask.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/tasks/HttpTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"HttpTask.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/tasks/HttpTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,12 +10,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var _a,
|
|
13
|
+
var _a, _HttpContextImpl_inner;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.HttpContextImpl = exports.HttpTaskImpl = void 0;
|
|
16
16
|
exports.http = http;
|
|
17
17
|
const ensureTask_js_1 = require("../ensureTask.js");
|
|
18
|
-
const types_js_1 = require("../http/types.js");
|
|
19
18
|
const Task_js_1 = require("../Task.js");
|
|
20
19
|
const BackgroundTask_js_1 = require("./BackgroundTask.js");
|
|
21
20
|
const CatchTask_js_1 = require("./CatchTask.js");
|
|
@@ -73,7 +72,7 @@ class HttpTaskImpl {
|
|
|
73
72
|
exports.HttpTaskImpl = HttpTaskImpl;
|
|
74
73
|
_a = Task_js_1.TaskType;
|
|
75
74
|
class HttpContextImpl {
|
|
76
|
-
constructor(ctx, connectionVars,
|
|
75
|
+
constructor(ctx, connectionVars, fetch, baseUrl, pageParams) {
|
|
77
76
|
Object.defineProperty(this, "connectionVariables", {
|
|
78
77
|
enumerable: true,
|
|
79
78
|
configurable: true,
|
|
@@ -86,17 +85,24 @@ class HttpContextImpl {
|
|
|
86
85
|
writable: true,
|
|
87
86
|
value: void 0
|
|
88
87
|
});
|
|
89
|
-
// ideally only one of these should be set to a value
|
|
90
|
-
_HttpContextImpl_dynamicFetcher.set(this, void 0);
|
|
91
|
-
_HttpContextImpl_staticFetcher.set(this, void 0);
|
|
92
|
-
_HttpContextImpl_baseUrlFetcher.set(this, void 0);
|
|
93
88
|
_HttpContextImpl_inner.set(this, void 0);
|
|
89
|
+
Object.defineProperty(this, "fetch", {
|
|
90
|
+
enumerable: true,
|
|
91
|
+
configurable: true,
|
|
92
|
+
writable: true,
|
|
93
|
+
value: void 0
|
|
94
|
+
});
|
|
95
|
+
Object.defineProperty(this, "baseUrl", {
|
|
96
|
+
enumerable: true,
|
|
97
|
+
configurable: true,
|
|
98
|
+
writable: true,
|
|
99
|
+
value: void 0
|
|
100
|
+
});
|
|
94
101
|
__classPrivateFieldSet(this, _HttpContextImpl_inner, ctx, "f");
|
|
95
102
|
this.pageParams = pageParams;
|
|
96
103
|
this.connectionVariables = connectionVars;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
__classPrivateFieldSet(this, _HttpContextImpl_baseUrlFetcher, baseUrlFetcher, "f");
|
|
104
|
+
this.fetch = fetch;
|
|
105
|
+
this.baseUrl = Promise.resolve(baseUrl);
|
|
100
106
|
// all methods on HttpContextImpl which are exposed via the Context interface need to be
|
|
101
107
|
// bound so that destructuring the context object doesn't break the binding of the methods
|
|
102
108
|
// to the correct instance.
|
|
@@ -123,6 +129,9 @@ class HttpContextImpl {
|
|
|
123
129
|
openKv(scope) {
|
|
124
130
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").openKv(scope);
|
|
125
131
|
}
|
|
132
|
+
destroy(scope) {
|
|
133
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").destroy(scope);
|
|
134
|
+
}
|
|
126
135
|
credentials() {
|
|
127
136
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").credentials();
|
|
128
137
|
}
|
|
@@ -132,24 +141,15 @@ class HttpContextImpl {
|
|
|
132
141
|
createIssue(issue, options) {
|
|
133
142
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").createIssue(issue, options);
|
|
134
143
|
}
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
return __classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f") && __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation
|
|
138
|
-
? (0, types_js_1.wrapDynamicFetcher)(__classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f"), __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation)
|
|
139
|
-
: __classPrivateFieldGet(this, _HttpContextImpl_staticFetcher, "f") ?? globalThis.fetch;
|
|
140
|
-
}
|
|
141
|
-
get baseUrl() {
|
|
142
|
-
return __classPrivateFieldGet(this, _HttpContextImpl_baseUrlFetcher, "f").call(this, __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation?.id ?? '');
|
|
143
|
-
}
|
|
144
|
-
async nextPage(_nextParams) {
|
|
145
|
-
throw new Error('Method not implemented.');
|
|
144
|
+
nextPage(_nextParams) {
|
|
145
|
+
return Promise.reject(new Error('Method not implemented.'));
|
|
146
146
|
}
|
|
147
147
|
request() {
|
|
148
148
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").request();
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
151
|
exports.HttpContextImpl = HttpContextImpl;
|
|
152
|
-
|
|
152
|
+
_HttpContextImpl_inner = new WeakMap();
|
|
153
153
|
function http(taskId, opts, fn) {
|
|
154
154
|
return new HttpTaskImpl(taskId, opts, fn);
|
|
155
155
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type internalAuthHeader = {
|
|
2
|
+
[key: string]: string;
|
|
3
|
+
};
|
|
4
|
+
export declare class InternalAuth {
|
|
5
|
+
private clientId;
|
|
6
|
+
private clientSecret;
|
|
7
|
+
private tokenEndpoint;
|
|
8
|
+
private runLocal;
|
|
9
|
+
private accessToken;
|
|
10
|
+
private expiresAt;
|
|
11
|
+
constructor();
|
|
12
|
+
getAuthHeader(): Promise<internalAuthHeader>;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=InternalAuth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InternalAuth.d.ts","sourceRoot":"","sources":["../../../src/src/internal/InternalAuth.ts"],"names":[],"mappings":"AASA,KAAK,kBAAkB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEpD,qBAAa,YAAY;IACrB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAU;IAE1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;;IAkCpB,aAAa,IAAI,OAAO,CAAC,kBAAkB,CAAC;CA0BrD"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InternalAuth = void 0;
|
|
4
|
+
const cli_js_1 = require("./cli.js");
|
|
5
|
+
const constants_js_1 = require("./constants.js");
|
|
6
|
+
class InternalAuth {
|
|
7
|
+
constructor() {
|
|
8
|
+
Object.defineProperty(this, "clientId", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
configurable: true,
|
|
11
|
+
writable: true,
|
|
12
|
+
value: void 0
|
|
13
|
+
});
|
|
14
|
+
Object.defineProperty(this, "clientSecret", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
configurable: true,
|
|
17
|
+
writable: true,
|
|
18
|
+
value: void 0
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(this, "tokenEndpoint", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true,
|
|
24
|
+
value: void 0
|
|
25
|
+
});
|
|
26
|
+
Object.defineProperty(this, "runLocal", {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
configurable: true,
|
|
29
|
+
writable: true,
|
|
30
|
+
value: void 0
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(this, "accessToken", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
configurable: true,
|
|
35
|
+
writable: true,
|
|
36
|
+
value: void 0
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(this, "expiresAt", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
configurable: true,
|
|
41
|
+
writable: true,
|
|
42
|
+
value: void 0
|
|
43
|
+
});
|
|
44
|
+
this.clientId = Deno.env.get(constants_js_1.envVarClientId) || '';
|
|
45
|
+
this.clientSecret = Deno.env.get(constants_js_1.envVarClientSecret) || '';
|
|
46
|
+
this.tokenEndpoint = Deno.env.get(constants_js_1.envVarTokenEndpoint) || '';
|
|
47
|
+
this.accessToken = '';
|
|
48
|
+
this.expiresAt = 0;
|
|
49
|
+
this.runLocal = Deno.env.get(constants_js_1.envVarLocalRun) === 'true';
|
|
50
|
+
if (Deno.env.get(constants_js_1.envVarInternalToken)) {
|
|
51
|
+
this.accessToken = Deno.env.get(constants_js_1.envVarInternalToken) || '';
|
|
52
|
+
this.expiresAt = Date.now() + 365 * 24 * 60 * 60 * 1000; // expires in 1 year
|
|
53
|
+
console.log(`Using static token provided by ${constants_js_1.envVarInternalToken}`);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (this.runLocal) {
|
|
57
|
+
console.info('Running in local mode using cookie for authentication');
|
|
58
|
+
this.accessToken = (0, cli_js_1.getVersoriCookie)();
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (!this.clientId || !this.clientSecret || !this.tokenEndpoint) {
|
|
62
|
+
const missingVars = [];
|
|
63
|
+
if (!this.clientId)
|
|
64
|
+
missingVars.push(constants_js_1.envVarClientId);
|
|
65
|
+
if (!this.clientSecret)
|
|
66
|
+
missingVars.push(constants_js_1.envVarClientSecret);
|
|
67
|
+
if (!this.tokenEndpoint)
|
|
68
|
+
missingVars.push(constants_js_1.envVarTokenEndpoint);
|
|
69
|
+
throw new Error(`Missing environment variables: ${missingVars.join(', ')}`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
async getAuthHeader() {
|
|
73
|
+
if (this.runLocal) {
|
|
74
|
+
return { 'Cookie': this.accessToken };
|
|
75
|
+
}
|
|
76
|
+
if (this.accessToken && this.expiresAt > Date.now()) {
|
|
77
|
+
return { 'X-Versori-Internal-Token': this.accessToken };
|
|
78
|
+
}
|
|
79
|
+
const encoded = btoa(`${this.clientId}:${this.clientSecret}`);
|
|
80
|
+
const response = await fetch(this.tokenEndpoint, {
|
|
81
|
+
method: 'POST',
|
|
82
|
+
headers: {
|
|
83
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
84
|
+
Authorization: `Basic ${encoded}`,
|
|
85
|
+
},
|
|
86
|
+
body: `grant_type=client_credentials`,
|
|
87
|
+
});
|
|
88
|
+
const data = await response.json();
|
|
89
|
+
this.accessToken = data.access_token;
|
|
90
|
+
this.expiresAt = Date.now() + data.expires_in * 1000 - 2 * 60 * 1000; // 2 minutes before expiration
|
|
91
|
+
return { 'X-Versori-Internal-Token': this.accessToken };
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.InternalAuth = InternalAuth;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/src/internal/cli.ts"],"names":[],"mappings":"AAiBA,wBAAgB,gBAAgB,IAAI,MAAM,CAoBzC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// This file contains functions that can read stuff generated by the Versori CLI. This is used when running locally.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.getVersoriCookie = getVersoriCookie;
|
|
5
|
+
const node_os_1 = require("node:os");
|
|
6
|
+
const cookiesFileName = 'cookies.json';
|
|
7
|
+
const versoriCookieName = 'versori_sess';
|
|
8
|
+
function getVersoriCookie() {
|
|
9
|
+
const cookiesFilePath = `${(0, node_os_1.homedir)()}/.config/versori/${cookiesFileName}`;
|
|
10
|
+
let cookiesFile;
|
|
11
|
+
try {
|
|
12
|
+
cookiesFile = JSON.parse(Deno.readTextFileSync(cookiesFilePath));
|
|
13
|
+
}
|
|
14
|
+
catch (e) {
|
|
15
|
+
console.error('Error reading file, have you run the Versori CLI to log in?');
|
|
16
|
+
throw new Error(`Failed to read or parse cookies file at ${cookiesFilePath}: ${e}`);
|
|
17
|
+
}
|
|
18
|
+
const versoriCookie = cookiesFile.cookies.find(cookie => cookie.Name === versoriCookieName);
|
|
19
|
+
if (!versoriCookie) {
|
|
20
|
+
throw new Error(`Cookie 'versori_sess' not found in ${cookiesFilePath}`);
|
|
21
|
+
}
|
|
22
|
+
return `${versoriCookieName}=${versoriCookie.Value}`;
|
|
23
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const envVarOrgId = "RUN_ORGANISATION_ID";
|
|
2
|
+
export declare const envVarEnvId = "RUN_ENVIRONMENT_ID";
|
|
3
|
+
export declare const envVarEnvironmentName = "RUN_ENVIRONMENT";
|
|
4
|
+
export declare const envVarProjectId = "RUN_SERVICE_ID";
|
|
5
|
+
export declare const envVarOrgSlug = "RUN_ORGANISATION_SLUG";
|
|
6
|
+
export declare const envVarPlatformApiBaseURL = "RUN_PLATFORM_API_INTERNAL_URL";
|
|
7
|
+
export declare const envVarCronApiBaseURL = "RUN_CRON_API_INTERNAL_URL";
|
|
8
|
+
export declare const envVarSDKApiBaseURL = "RUN_SDK_API_URL";
|
|
9
|
+
export declare const envVarSelfRefURL = "RUN_SELF_REF_URL";
|
|
10
|
+
export declare const envVarCredsBaseURL = "RUN_CREDENTIALS_SERVICE_INTERNAL_URL";
|
|
11
|
+
export declare const envVarOtelTracesURL = "RUN_OTEL_TRACES_URL";
|
|
12
|
+
export declare const envVarVersion = "RUN_SERVICE_VERSION";
|
|
13
|
+
export declare const envVarConfigFile = "RUN_CONFIG_FILE";
|
|
14
|
+
export declare const envVarClientId = "RUN_CLIENT_ID";
|
|
15
|
+
export declare const envVarClientSecret = "RUN_CLIENT_SECRET";
|
|
16
|
+
export declare const envVarTokenEndpoint = "RUN_TOKEN_ENDPOINT";
|
|
17
|
+
export declare const envVarInternalToken = "RUN_INTERNAL_TOKEN";
|
|
18
|
+
export declare const envVarLocalRun = "RUN_LOCAL";
|
|
19
|
+
export declare const cronPort = 3001;
|
|
20
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/src/internal/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAChD,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,wBAAwB,kCAAkC,CAAC;AACxE,eAAO,MAAM,oBAAoB,8BAA8B,CAAC;AAChE,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,kBAAkB,yCAAyC,CAAC;AACzE,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,aAAa,wBAAwB,CAAC;AAEnD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAGlD,eAAO,MAAM,cAAc,kBAAkB,CAAC;AAC9C,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AACtD,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AACxD,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AAGxD,eAAO,MAAM,cAAc,cAAc,CAAC;AAG1C,eAAO,MAAM,QAAQ,OAAO,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cronPort = exports.envVarLocalRun = exports.envVarInternalToken = exports.envVarTokenEndpoint = exports.envVarClientSecret = exports.envVarClientId = exports.envVarConfigFile = exports.envVarVersion = exports.envVarOtelTracesURL = exports.envVarCredsBaseURL = exports.envVarSelfRefURL = exports.envVarSDKApiBaseURL = exports.envVarCronApiBaseURL = exports.envVarPlatformApiBaseURL = exports.envVarOrgSlug = exports.envVarProjectId = exports.envVarEnvironmentName = exports.envVarEnvId = exports.envVarOrgId = void 0;
|
|
4
|
+
// This file contains constants used in the Versori DSL HTTP client.
|
|
5
|
+
exports.envVarOrgId = 'RUN_ORGANISATION_ID';
|
|
6
|
+
exports.envVarEnvId = 'RUN_ENVIRONMENT_ID';
|
|
7
|
+
exports.envVarEnvironmentName = 'RUN_ENVIRONMENT';
|
|
8
|
+
exports.envVarProjectId = 'RUN_SERVICE_ID';
|
|
9
|
+
exports.envVarOrgSlug = 'RUN_ORGANISATION_SLUG';
|
|
10
|
+
exports.envVarPlatformApiBaseURL = 'RUN_PLATFORM_API_INTERNAL_URL';
|
|
11
|
+
exports.envVarCronApiBaseURL = 'RUN_CRON_API_INTERNAL_URL';
|
|
12
|
+
exports.envVarSDKApiBaseURL = 'RUN_SDK_API_URL';
|
|
13
|
+
exports.envVarSelfRefURL = 'RUN_SELF_REF_URL';
|
|
14
|
+
exports.envVarCredsBaseURL = 'RUN_CREDENTIALS_SERVICE_INTERNAL_URL';
|
|
15
|
+
exports.envVarOtelTracesURL = 'RUN_OTEL_TRACES_URL';
|
|
16
|
+
exports.envVarVersion = 'RUN_SERVICE_VERSION';
|
|
17
|
+
// The following environment variables are used for the config file
|
|
18
|
+
exports.envVarConfigFile = 'RUN_CONFIG_FILE';
|
|
19
|
+
// The following environment variables are used for internal authentication
|
|
20
|
+
exports.envVarClientId = 'RUN_CLIENT_ID';
|
|
21
|
+
exports.envVarClientSecret = 'RUN_CLIENT_SECRET';
|
|
22
|
+
exports.envVarTokenEndpoint = 'RUN_TOKEN_ENDPOINT';
|
|
23
|
+
exports.envVarInternalToken = 'RUN_INTERNAL_TOKEN';
|
|
24
|
+
// The following are for running locally
|
|
25
|
+
exports.envVarLocalRun = 'RUN_LOCAL';
|
|
26
|
+
// please no changerino
|
|
27
|
+
exports.cronPort = 3001; // The port on which the cron API communicates with the service
|