@versori/run 0.2.31 → 0.3.0-beta.10
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/{script/deps/jsr.io/@std/fs/1.0.19 → esm/deps/jsr.io/@std/fs/1.0.20}/exists.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- 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/AsyncWorkflow.js +1 -1
- package/esm/src/context/Context.d.ts +10 -13
- package/esm/src/context/Context.d.ts.map +1 -1
- package/esm/src/context/Context.js +21 -19
- package/esm/src/context/ContextProvider.d.ts +9 -3
- package/esm/src/context/ContextProvider.d.ts.map +1 -1
- package/esm/src/context/ContextProvider.js +31 -10
- package/esm/src/context/WorkflowClient.d.ts +29 -0
- package/esm/src/context/WorkflowClient.d.ts.map +1 -0
- package/esm/src/context/WorkflowClient.js +95 -0
- package/esm/src/dsl/http/default.d.ts.map +1 -1
- package/esm/src/dsl/http/default.js +2 -2
- 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/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 +114 -115
- package/esm/src/dsl/tasks/HttpTask.d.ts +8 -6
- package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/esm/src/dsl/tasks/HttpTask.js +22 -22
- package/esm/src/dsl/triggers/DurableTrigger.d.ts +0 -1
- package/esm/src/dsl/triggers/DurableTrigger.d.ts.map +1 -1
- package/esm/src/internal/InternalAuth.d.ts +14 -0
- package/esm/src/internal/InternalAuth.d.ts.map +1 -0
- package/esm/src/internal/InternalAuth.js +74 -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 +22 -38
- 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/Queue.d.ts +24 -16
- package/esm/src/interpreter/durable/Queue.d.ts.map +1 -1
- package/esm/src/interpreter/durable/Queue.js +3 -4
- package/esm/src/interpreter/durable/compilers/catch.js +2 -2
- package/esm/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/durableworkflow.js +29 -20
- 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 +15 -25
- 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/catch.js +2 -2
- 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/sdk/SDKKeyValue.d.ts.map +1 -1
- package/esm/src/kv/sdk/SDKKeyValue.js +7 -1
- 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 +23 -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 +4 -4
- package/{esm/deps/jsr.io/@std/fs/1.0.19 → script/deps/jsr.io/@std/fs/1.0.20}/exists.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- 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/AsyncWorkflow.js +1 -1
- package/script/src/context/Context.d.ts +10 -13
- package/script/src/context/Context.d.ts.map +1 -1
- package/script/src/context/Context.js +21 -19
- package/script/src/context/ContextProvider.d.ts +9 -3
- package/script/src/context/ContextProvider.d.ts.map +1 -1
- package/script/src/context/ContextProvider.js +31 -10
- package/script/src/context/WorkflowClient.d.ts +29 -0
- package/script/src/context/WorkflowClient.d.ts.map +1 -0
- package/script/src/context/WorkflowClient.js +99 -0
- package/script/src/dsl/http/default.d.ts.map +1 -1
- package/script/src/dsl/http/default.js +2 -2
- 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/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 +114 -115
- package/script/src/dsl/tasks/HttpTask.d.ts +8 -6
- package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/script/src/dsl/tasks/HttpTask.js +22 -22
- package/script/src/dsl/triggers/DurableTrigger.d.ts +0 -1
- package/script/src/dsl/triggers/DurableTrigger.d.ts.map +1 -1
- package/script/src/internal/InternalAuth.d.ts +14 -0
- package/script/src/internal/InternalAuth.d.ts.map +1 -0
- package/script/src/internal/InternalAuth.js +78 -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 +21 -37
- 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/Queue.d.ts +24 -16
- package/script/src/interpreter/durable/Queue.d.ts.map +1 -1
- package/script/src/interpreter/durable/Queue.js +3 -4
- package/script/src/interpreter/durable/compilers/catch.js +2 -2
- package/script/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/durableworkflow.js +29 -20
- 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 +15 -25
- 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/catch.js +2 -2
- 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/sdk/SDKKeyValue.d.ts.map +1 -1
- package/script/src/kv/sdk/SDKKeyValue.js +7 -1
- 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 +26 -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/activation.d.ts +0 -13
- package/esm/src/dsl/http/versori/activation.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/activation.js +0 -64
- 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/platformapi.d.ts +0 -19
- package/esm/src/dsl/http/versori/platformapi.d.ts.map +0 -1
- package/esm/src/dsl/http/versori/platformapi.js +0 -148
- 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/activation.d.ts +0 -13
- package/script/src/dsl/http/versori/activation.d.ts.map +0 -1
- package/script/src/dsl/http/versori/activation.js +0 -68
- 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/platformapi.d.ts +0 -19
- package/script/src/dsl/http/versori/platformapi.d.ts.map +0 -1
- package/script/src/dsl/http/versori/platformapi.js +0 -152
- 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
- /package/esm/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.js +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.d.ts +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.js +0 -0
|
@@ -1,15 +1,47 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
// TODO: this gets called for every request for all endpoints, can we cache this?
|
|
2
|
+
async function getStaticActivation(opts) {
|
|
3
|
+
let activations;
|
|
4
|
+
try {
|
|
5
|
+
const { data } = await opts.platformApi.listActivations({
|
|
6
|
+
path: {
|
|
7
|
+
organisation_id: opts.organisationId,
|
|
8
|
+
environment_id: opts.environmentId,
|
|
9
|
+
},
|
|
10
|
+
query: {
|
|
11
|
+
static: true,
|
|
12
|
+
},
|
|
13
|
+
throwOnError: true,
|
|
14
|
+
});
|
|
15
|
+
activations = data;
|
|
16
|
+
}
|
|
17
|
+
catch (err) {
|
|
18
|
+
opts.log.error('Failed to list activations', { error: err });
|
|
19
|
+
throw new Error('Failed to list activations');
|
|
20
|
+
}
|
|
21
|
+
let activation;
|
|
22
|
+
if (activations && activations.length > 0) {
|
|
23
|
+
if (activations.length > 1) {
|
|
24
|
+
opts.log.warn('Multiple static activations found, using the first one', {
|
|
25
|
+
activationsCount: activations.length,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
activation = activations[0];
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
opts.log.error('No static activation found', { webhookId: opts.id });
|
|
32
|
+
}
|
|
33
|
+
return activation;
|
|
34
|
+
}
|
|
3
35
|
// TODO: Refactor this so we don't have like three different middlewares for static and dynamic webhooks
|
|
4
36
|
export function createStaticWebhookMiddleware(opts) {
|
|
5
37
|
if (opts.connName === undefined) {
|
|
6
38
|
opts.log.warn(`No connection ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
7
39
|
return async (_req, res, next) => {
|
|
8
|
-
|
|
9
|
-
res.locals.activation = activation;
|
|
40
|
+
res.locals.activation = await getStaticActivation(opts);
|
|
10
41
|
next();
|
|
11
42
|
};
|
|
12
43
|
}
|
|
44
|
+
// TODO(@teo): move db access to outside of the middleware??? (genuine question - not instruction)
|
|
13
45
|
return async (req, res, next) => {
|
|
14
46
|
if (!opts.connName) {
|
|
15
47
|
// This is mainly for type safety, but we should never reach this point
|
|
@@ -18,36 +50,32 @@ export function createStaticWebhookMiddleware(opts) {
|
|
|
18
50
|
return;
|
|
19
51
|
}
|
|
20
52
|
const cnxId = opts.cfgReader.getConnectionID(opts.connName);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
opts.log.error(`Connection or activation not found for webhook: /${opts.id}`);
|
|
25
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
const key = await opts.credentials.getRaw(opts.connName);
|
|
29
|
-
const asc = conn.credentials[0].authSchemeConfig;
|
|
30
|
-
if (!asc || !asc.hmac) {
|
|
31
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
32
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
53
|
+
if (!cnxId) {
|
|
54
|
+
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 });
|
|
55
|
+
res.status(500).json({ error: 'Missing connection for webhook' });
|
|
33
56
|
return;
|
|
34
57
|
}
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
catch (error) {
|
|
41
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
42
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
if (digest !== requestDigest) {
|
|
46
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
58
|
+
const activation = await getStaticActivation(opts);
|
|
59
|
+
if (!activation) {
|
|
60
|
+
opts.log.error('No activation found for static webhook', { webhookId: opts.id, connName: opts.connName });
|
|
61
|
+
res.status(500).json({ error: 'No activation found for static webhook' });
|
|
47
62
|
return;
|
|
48
63
|
}
|
|
49
64
|
res.locals.activation = activation;
|
|
50
|
-
|
|
65
|
+
const { data: cnx } = await opts.platformApi.getConnection({
|
|
66
|
+
path: {
|
|
67
|
+
organisation_id: opts.organisationId,
|
|
68
|
+
connection_id: cnxId,
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
if (!cnx) {
|
|
72
|
+
opts.log.error(`No connection found for webhook`, { webhookId: opts.id, connName: opts.connName });
|
|
73
|
+
res.status(500).json({ error: 'No connection found for webhook' });
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const connectedHandler = await opts.cnxFactory.handler(cnx);
|
|
77
|
+
// this will call next on our behalf if there's no error, it handles HMAC, API key and basic auth.
|
|
78
|
+
connectedHandler(req, res, next);
|
|
51
79
|
};
|
|
52
80
|
}
|
|
53
81
|
export function createActIdDynamicWebhookMiddleware(opts) {
|
|
@@ -55,7 +83,14 @@ export function createActIdDynamicWebhookMiddleware(opts) {
|
|
|
55
83
|
opts.log.warn(`No template ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
56
84
|
return async (req, res, next) => {
|
|
57
85
|
const activationId = req.params.activationId;
|
|
58
|
-
const activation = await opts.
|
|
86
|
+
const activation = await opts.platformApi.getActivation({
|
|
87
|
+
path: {
|
|
88
|
+
organisation_id: opts.organisationId,
|
|
89
|
+
environment_id: opts.environmentId,
|
|
90
|
+
activation_id: activationId,
|
|
91
|
+
},
|
|
92
|
+
throwOnError: true,
|
|
93
|
+
});
|
|
59
94
|
res.locals.activation = activation;
|
|
60
95
|
next();
|
|
61
96
|
};
|
|
@@ -69,36 +104,29 @@ export function createActIdDynamicWebhookMiddleware(opts) {
|
|
|
69
104
|
}
|
|
70
105
|
const templateId = opts.cfgReader.getTemplateID(opts.connName);
|
|
71
106
|
const activationId = req.params.activationId;
|
|
72
|
-
const activation = await opts.
|
|
73
|
-
|
|
107
|
+
const activation = await opts.platformApi.getActivation({
|
|
108
|
+
path: {
|
|
109
|
+
organisation_id: opts.organisationId,
|
|
110
|
+
environment_id: opts.environmentId,
|
|
111
|
+
activation_id: activationId,
|
|
112
|
+
},
|
|
113
|
+
throwOnError: true,
|
|
114
|
+
});
|
|
115
|
+
const conn = await opts.platformApi.getActivationConnection({
|
|
116
|
+
path: {
|
|
117
|
+
organisation_id: opts.organisationId,
|
|
118
|
+
env_system_id: templateId,
|
|
119
|
+
activation_id: activationId,
|
|
120
|
+
},
|
|
121
|
+
throwOnError: true,
|
|
122
|
+
});
|
|
74
123
|
if (activation === undefined || conn === undefined) {
|
|
75
124
|
opts.log.error(`Activation or connection not found for webhook: /${opts.id}/activations/${activationId}`);
|
|
76
125
|
res.status(401).json({ error: 'Unauthorised' });
|
|
77
126
|
return;
|
|
78
127
|
}
|
|
79
|
-
const
|
|
80
|
-
|
|
81
|
-
if (!asc || !asc.hmac) {
|
|
82
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
83
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
const digest = createDigest(asc.hmac, req, key);
|
|
87
|
-
let requestDigest;
|
|
88
|
-
try {
|
|
89
|
-
requestDigest = extractDigest(asc.hmac, req);
|
|
90
|
-
}
|
|
91
|
-
catch (error) {
|
|
92
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
93
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
if (digest !== requestDigest) {
|
|
97
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
res.locals.activation = activation;
|
|
101
|
-
next();
|
|
128
|
+
const handler = await opts.cnxFactory.handler(conn.data);
|
|
129
|
+
handler(req, res, next);
|
|
102
130
|
};
|
|
103
131
|
}
|
|
104
132
|
export function createUserIdDynamicWebhookMiddleware(opts) {
|
|
@@ -106,14 +134,23 @@ export function createUserIdDynamicWebhookMiddleware(opts) {
|
|
|
106
134
|
opts.log.warn(`No template ID found for webhook, accepting any requests which is unsecure!`, { webhookId: opts.id });
|
|
107
135
|
return async (req, res, next) => {
|
|
108
136
|
const userId = req.params.userId;
|
|
109
|
-
const activations = await opts.
|
|
137
|
+
const { data: activations } = await opts.platformApi.listUserActivations({
|
|
138
|
+
path: {
|
|
139
|
+
organisation_id: opts.organisationId,
|
|
140
|
+
environment_id: opts.environmentId,
|
|
141
|
+
external_user_id: userId,
|
|
142
|
+
},
|
|
143
|
+
throwOnError: true,
|
|
144
|
+
});
|
|
110
145
|
if (activations.length === 0) {
|
|
111
146
|
opts.log.error(`No activations found for user: ${userId}`);
|
|
112
147
|
res.status(401).json({ error: 'Unauthorised' });
|
|
113
148
|
return;
|
|
114
149
|
}
|
|
115
|
-
|
|
116
|
-
|
|
150
|
+
if (activations.length > 1) {
|
|
151
|
+
opts.log.warn(`Multiple activations found for user: ${userId}, using the first one: ${activations[0].id}`);
|
|
152
|
+
}
|
|
153
|
+
res.locals.activation = activations[0];
|
|
117
154
|
next();
|
|
118
155
|
};
|
|
119
156
|
}
|
|
@@ -126,72 +163,34 @@ export function createUserIdDynamicWebhookMiddleware(opts) {
|
|
|
126
163
|
}
|
|
127
164
|
const templateId = opts.cfgReader.getTemplateID(opts.connName);
|
|
128
165
|
const userId = req.params.userId;
|
|
129
|
-
const activations = await opts.
|
|
166
|
+
const { data: activations } = await opts.platformApi.listUserActivations({
|
|
167
|
+
path: {
|
|
168
|
+
organisation_id: opts.organisationId,
|
|
169
|
+
environment_id: opts.environmentId,
|
|
170
|
+
external_user_id: userId,
|
|
171
|
+
},
|
|
172
|
+
throwOnError: true,
|
|
173
|
+
});
|
|
130
174
|
if (activations.length === 0) {
|
|
175
|
+
opts.log.error(`No activations found for user: ${userId}`);
|
|
131
176
|
res.status(401).json({ error: 'Unauthorised' });
|
|
132
177
|
return;
|
|
133
178
|
}
|
|
134
179
|
const activation = activations[0]; // Right now we only support a user having one activation
|
|
135
|
-
const conn = await opts.
|
|
180
|
+
const conn = await opts.platformApi.getActivationConnection({
|
|
181
|
+
path: {
|
|
182
|
+
organisation_id: opts.organisationId,
|
|
183
|
+
env_system_id: templateId,
|
|
184
|
+
activation_id: activation.id,
|
|
185
|
+
},
|
|
186
|
+
throwOnError: true,
|
|
187
|
+
});
|
|
136
188
|
if (conn === undefined) {
|
|
137
189
|
opts.log.error(`Connection not found for webhook: /${opts.id}/users/${userId}`);
|
|
138
190
|
res.status(401).json({ error: 'Unauthorised' });
|
|
139
191
|
return;
|
|
140
192
|
}
|
|
141
|
-
const
|
|
142
|
-
|
|
143
|
-
if (!asc || !asc.hmac) {
|
|
144
|
-
opts.log.error('HMAC AuthSchemeConfig not found for webhook');
|
|
145
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
const digest = createDigest(asc.hmac, req, key);
|
|
149
|
-
let requestDigest;
|
|
150
|
-
try {
|
|
151
|
-
requestDigest = extractDigest(asc.hmac, req);
|
|
152
|
-
}
|
|
153
|
-
catch (error) {
|
|
154
|
-
opts.log.error('Error extracting HMAC digest from request', { error });
|
|
155
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
156
|
-
return;
|
|
157
|
-
}
|
|
158
|
-
if (digest !== requestDigest) {
|
|
159
|
-
res.status(401).json({ error: 'Unauthorised' });
|
|
160
|
-
return;
|
|
161
|
-
}
|
|
162
|
-
res.locals.activation = activation;
|
|
163
|
-
next();
|
|
193
|
+
const handler = await opts.cnxFactory.handler(conn.data);
|
|
194
|
+
handler(req, res, next);
|
|
164
195
|
};
|
|
165
196
|
}
|
|
166
|
-
// createDigest creates a HMAC digest for the request using the provided key.
|
|
167
|
-
// Note that this assumes the request body is a JSON object, as one would normally
|
|
168
|
-
// expect for our use case.
|
|
169
|
-
// TODO: implement the case where we might want to digest the body + url or url + body
|
|
170
|
-
// or url...
|
|
171
|
-
function createDigest(asc, req, key) {
|
|
172
|
-
const hmac = createHmac(asc.algorithm, Buffer.from(key).toString('utf8'));
|
|
173
|
-
hmac.update(JSON.stringify(req.body));
|
|
174
|
-
return hmac.digest(asc.encoding);
|
|
175
|
-
}
|
|
176
|
-
function extractDigest(asc, req) {
|
|
177
|
-
switch (asc.in) {
|
|
178
|
-
case 'query':
|
|
179
|
-
if (req.query[asc.name]) {
|
|
180
|
-
return req.query[asc.name];
|
|
181
|
-
}
|
|
182
|
-
break;
|
|
183
|
-
case 'header':
|
|
184
|
-
if (req.headers[asc.name.toLowerCase()]) {
|
|
185
|
-
return req.headers[asc.name.toLowerCase()];
|
|
186
|
-
}
|
|
187
|
-
break;
|
|
188
|
-
case 'cookie':
|
|
189
|
-
if (req.cookies[asc.name]) {
|
|
190
|
-
return req.cookies[asc.name];
|
|
191
|
-
}
|
|
192
|
-
break;
|
|
193
|
-
default:
|
|
194
|
-
throw new Error(`Unsupported HMAC digest extraction method: ${asc.in}`);
|
|
195
|
-
}
|
|
196
|
-
throw new Error(`HMAC digest not found in request: ${asc.name}`);
|
|
197
|
-
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type * as express from 'express';
|
|
2
2
|
import { AsyncWorkflow } from '../../context/AsyncWorkflow.js';
|
|
3
3
|
import { Context, ContextImpl, CreateIssue } from '../../context/Context.js';
|
|
4
|
+
import { WorkflowInterface, WorkflowOpts } from '../../context/WorkflowClient.js';
|
|
4
5
|
import { Issue } from '../../issues/Issues.js';
|
|
5
6
|
import { KeyValue, KeyValueScope } from '../../kv/KeyValue.js';
|
|
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,11 +41,13 @@ 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;
|
|
50
53
|
destroy(scope: KeyValueScope): Promise<void>;
|
|
@@ -54,10 +57,9 @@ export declare class HttpContextImpl<D, PageParams> implements HttpContext<D, Pa
|
|
|
54
57
|
deduplicate?: boolean;
|
|
55
58
|
duplicationKey?: string;
|
|
56
59
|
}): Promise<Issue | null>;
|
|
57
|
-
get fetch(): typeof globalThis.fetch;
|
|
58
|
-
get baseUrl(): Promise<string>;
|
|
59
60
|
nextPage(_nextParams: PageParams): Promise<void>;
|
|
60
61
|
request(): express.Request | undefined;
|
|
62
|
+
workflowClient(): WorkflowInterface;
|
|
61
63
|
}
|
|
62
64
|
export declare function http<In = any, Out = any, PageParams = unknown>(taskId: string, opts: HttpOptions<In, Out, PageParams>, fn: HttpContextFunc<In, Out, PageParams>): Task<In, Out>;
|
|
63
65
|
//# sourceMappingURL=HttpTask.d.ts.map
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"HttpTask.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/tasks/HttpTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,9 +9,8 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
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");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _a,
|
|
12
|
+
var _a, _HttpContextImpl_inner;
|
|
13
13
|
import { ensureTask } from '../ensureTask.js';
|
|
14
|
-
import { wrapDynamicFetcher } from '../http/types.js';
|
|
15
14
|
import { TaskType } from '../Task.js';
|
|
16
15
|
import { BackgroundTask } from './BackgroundTask.js';
|
|
17
16
|
import { CatchTask } from './CatchTask.js';
|
|
@@ -68,7 +67,7 @@ export class HttpTaskImpl {
|
|
|
68
67
|
}
|
|
69
68
|
_a = TaskType;
|
|
70
69
|
export class HttpContextImpl {
|
|
71
|
-
constructor(ctx, connectionVars,
|
|
70
|
+
constructor(ctx, connectionVars, fetch, baseUrl, pageParams) {
|
|
72
71
|
Object.defineProperty(this, "connectionVariables", {
|
|
73
72
|
enumerable: true,
|
|
74
73
|
configurable: true,
|
|
@@ -81,17 +80,24 @@ export class HttpContextImpl {
|
|
|
81
80
|
writable: true,
|
|
82
81
|
value: void 0
|
|
83
82
|
});
|
|
84
|
-
// ideally only one of these should be set to a value
|
|
85
|
-
_HttpContextImpl_dynamicFetcher.set(this, void 0);
|
|
86
|
-
_HttpContextImpl_staticFetcher.set(this, void 0);
|
|
87
|
-
_HttpContextImpl_baseUrlFetcher.set(this, void 0);
|
|
88
83
|
_HttpContextImpl_inner.set(this, void 0);
|
|
84
|
+
Object.defineProperty(this, "fetch", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
configurable: true,
|
|
87
|
+
writable: true,
|
|
88
|
+
value: void 0
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(this, "baseUrl", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
configurable: true,
|
|
93
|
+
writable: true,
|
|
94
|
+
value: void 0
|
|
95
|
+
});
|
|
89
96
|
__classPrivateFieldSet(this, _HttpContextImpl_inner, ctx, "f");
|
|
90
97
|
this.pageParams = pageParams;
|
|
91
98
|
this.connectionVariables = connectionVars;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
__classPrivateFieldSet(this, _HttpContextImpl_baseUrlFetcher, baseUrlFetcher, "f");
|
|
99
|
+
this.fetch = fetch;
|
|
100
|
+
this.baseUrl = Promise.resolve(baseUrl);
|
|
95
101
|
// all methods on HttpContextImpl which are exposed via the Context interface need to be
|
|
96
102
|
// bound so that destructuring the context object doesn't break the binding of the methods
|
|
97
103
|
// to the correct instance.
|
|
@@ -130,23 +136,17 @@ export class HttpContextImpl {
|
|
|
130
136
|
createIssue(issue, options) {
|
|
131
137
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").createIssue(issue, options);
|
|
132
138
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
return __classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f") && __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation
|
|
136
|
-
? wrapDynamicFetcher(__classPrivateFieldGet(this, _HttpContextImpl_dynamicFetcher, "f"), __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation)
|
|
137
|
-
: __classPrivateFieldGet(this, _HttpContextImpl_staticFetcher, "f") ?? globalThis.fetch;
|
|
138
|
-
}
|
|
139
|
-
get baseUrl() {
|
|
140
|
-
return __classPrivateFieldGet(this, _HttpContextImpl_baseUrlFetcher, "f").call(this, __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").activation?.id ?? '');
|
|
141
|
-
}
|
|
142
|
-
async nextPage(_nextParams) {
|
|
143
|
-
throw new Error('Method not implemented.');
|
|
139
|
+
nextPage(_nextParams) {
|
|
140
|
+
return Promise.reject(new Error('Method not implemented.'));
|
|
144
141
|
}
|
|
145
142
|
request() {
|
|
146
143
|
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").request();
|
|
147
144
|
}
|
|
145
|
+
workflowClient() {
|
|
146
|
+
return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").workflowClient();
|
|
147
|
+
}
|
|
148
148
|
}
|
|
149
|
-
|
|
149
|
+
_HttpContextImpl_inner = new WeakMap();
|
|
150
150
|
export function http(taskId, opts, fn) {
|
|
151
151
|
return new HttpTaskImpl(taskId, opts, fn);
|
|
152
152
|
}
|
|
@@ -4,7 +4,6 @@ import { Workflow } from '../Workflow.js';
|
|
|
4
4
|
export type DurableWorkflowOptions = {
|
|
5
5
|
ttl?: number;
|
|
6
6
|
limit?: number;
|
|
7
|
-
maxAttempts?: number;
|
|
8
7
|
};
|
|
9
8
|
export type DurableWorkflowData = Record<string, unknown>;
|
|
10
9
|
export declare class DurableWorkflowTrigger implements Trigger<DurableWorkflowData> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DurableTrigger.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/triggers/DurableTrigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAExD,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DurableTrigger.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/triggers/DurableTrigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAExD,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1D,qBAAa,sBAAuB,YAAW,OAAO,CAAC,mBAAmB,CAAC;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,sBAAsB,CAAC;IAEhC,CAAC,WAAW,CAAC,EAAE,MAAM,CAAqB;gBAE9B,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B;IAK5D,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC;CAIlE;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEnG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type internalAuthHeader = {
|
|
2
|
+
[key: string]: string;
|
|
3
|
+
};
|
|
4
|
+
export declare class InternalAuth {
|
|
5
|
+
private clientId;
|
|
6
|
+
private clientSecret;
|
|
7
|
+
private tokenEndpoint;
|
|
8
|
+
private accessToken;
|
|
9
|
+
private expiresAt;
|
|
10
|
+
constructor();
|
|
11
|
+
getAuthHeader(): Promise<internalAuthHeader>;
|
|
12
|
+
}
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=InternalAuth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InternalAuth.d.ts","sourceRoot":"","sources":["../../../src/src/internal/InternalAuth.ts"],"names":[],"mappings":"AAOA,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;IAE9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;;IA2BpB,aAAa,IAAI,OAAO,CAAC,kBAAkB,CAAC;CAsBrD"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { envVarClientId, envVarClientSecret, envVarInternalToken, envVarTokenEndpoint, } from './constants.js';
|
|
2
|
+
export class InternalAuth {
|
|
3
|
+
constructor() {
|
|
4
|
+
Object.defineProperty(this, "clientId", {
|
|
5
|
+
enumerable: true,
|
|
6
|
+
configurable: true,
|
|
7
|
+
writable: true,
|
|
8
|
+
value: void 0
|
|
9
|
+
});
|
|
10
|
+
Object.defineProperty(this, "clientSecret", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
configurable: true,
|
|
13
|
+
writable: true,
|
|
14
|
+
value: void 0
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(this, "tokenEndpoint", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
configurable: true,
|
|
19
|
+
writable: true,
|
|
20
|
+
value: void 0
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(this, "accessToken", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
configurable: true,
|
|
25
|
+
writable: true,
|
|
26
|
+
value: void 0
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(this, "expiresAt", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
configurable: true,
|
|
31
|
+
writable: true,
|
|
32
|
+
value: void 0
|
|
33
|
+
});
|
|
34
|
+
this.clientId = Deno.env.get(envVarClientId) || '';
|
|
35
|
+
this.clientSecret = Deno.env.get(envVarClientSecret) || '';
|
|
36
|
+
this.tokenEndpoint = Deno.env.get(envVarTokenEndpoint) || '';
|
|
37
|
+
this.accessToken = '';
|
|
38
|
+
this.expiresAt = 0;
|
|
39
|
+
if (Deno.env.get(envVarInternalToken)) {
|
|
40
|
+
this.accessToken = Deno.env.get(envVarInternalToken) || '';
|
|
41
|
+
this.expiresAt = Date.now() + 365 * 24 * 60 * 60 * 1000; // expires in 1 year
|
|
42
|
+
console.log(`Using static token provided by ${envVarInternalToken}`);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (!this.clientId || !this.clientSecret || !this.tokenEndpoint) {
|
|
46
|
+
const missingVars = [];
|
|
47
|
+
if (!this.clientId)
|
|
48
|
+
missingVars.push(envVarClientId);
|
|
49
|
+
if (!this.clientSecret)
|
|
50
|
+
missingVars.push(envVarClientSecret);
|
|
51
|
+
if (!this.tokenEndpoint)
|
|
52
|
+
missingVars.push(envVarTokenEndpoint);
|
|
53
|
+
throw new Error(`Missing environment variables: ${missingVars.join(', ')}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async getAuthHeader() {
|
|
57
|
+
if (this.accessToken && this.expiresAt > Date.now()) {
|
|
58
|
+
return { 'X-Versori-Internal-Token': this.accessToken };
|
|
59
|
+
}
|
|
60
|
+
const encoded = btoa(`${this.clientId}:${this.clientSecret}`);
|
|
61
|
+
const response = await fetch(this.tokenEndpoint, {
|
|
62
|
+
method: 'POST',
|
|
63
|
+
headers: {
|
|
64
|
+
'Content-Type': 'application/x-www-form-urlencoded',
|
|
65
|
+
Authorization: `Basic ${encoded}`,
|
|
66
|
+
},
|
|
67
|
+
body: `grant_type=client_credentials`,
|
|
68
|
+
});
|
|
69
|
+
const data = await response.json();
|
|
70
|
+
this.accessToken = data.access_token;
|
|
71
|
+
this.expiresAt = Date.now() + data.expires_in * 1000 - 2 * 60 * 1000; // 2 minutes before expiration
|
|
72
|
+
return { 'X-Versori-Internal-Token': this.accessToken };
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -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,24 @@
|
|
|
1
|
+
// This file contains constants used in the Versori DSL HTTP client.
|
|
2
|
+
export const envVarOrgId = 'RUN_ORGANISATION_ID';
|
|
3
|
+
export const envVarEnvId = 'RUN_ENVIRONMENT_ID';
|
|
4
|
+
export const envVarEnvironmentName = 'RUN_ENVIRONMENT';
|
|
5
|
+
export const envVarProjectId = 'RUN_SERVICE_ID';
|
|
6
|
+
export const envVarOrgSlug = 'RUN_ORGANISATION_SLUG';
|
|
7
|
+
export const envVarPlatformApiBaseURL = 'RUN_PLATFORM_API_INTERNAL_URL';
|
|
8
|
+
export const envVarCronApiBaseURL = 'RUN_CRON_API_INTERNAL_URL';
|
|
9
|
+
export const envVarSDKApiBaseURL = 'RUN_SDK_API_URL';
|
|
10
|
+
export const envVarSelfRefURL = 'RUN_SELF_REF_URL';
|
|
11
|
+
export const envVarCredsBaseURL = 'RUN_CREDENTIALS_SERVICE_INTERNAL_URL';
|
|
12
|
+
export const envVarOtelTracesURL = 'RUN_OTEL_TRACES_URL';
|
|
13
|
+
export const envVarVersion = 'RUN_SERVICE_VERSION';
|
|
14
|
+
// The following environment variables are used for the config file
|
|
15
|
+
export const envVarConfigFile = 'RUN_CONFIG_FILE';
|
|
16
|
+
// The following environment variables are used for internal authentication
|
|
17
|
+
export const envVarClientId = 'RUN_CLIENT_ID';
|
|
18
|
+
export const envVarClientSecret = 'RUN_CLIENT_SECRET';
|
|
19
|
+
export const envVarTokenEndpoint = 'RUN_TOKEN_ENDPOINT';
|
|
20
|
+
export const envVarInternalToken = 'RUN_INTERNAL_TOKEN';
|
|
21
|
+
// The following are for running locally
|
|
22
|
+
export const envVarLocalRun = 'RUN_LOCAL';
|
|
23
|
+
// please no changerino
|
|
24
|
+
export const cronPort = 3001; // The port on which the cron API communicates with the service
|