@versori/run 0.2.0-alpha.10 → 0.2.0-alpha.11
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/src/context/Context.d.ts +5 -1
- package/esm/src/context/Context.d.ts.map +1 -1
- package/esm/src/context/Context.js +15 -4
- package/esm/src/context/ContextProvider.d.ts +3 -1
- package/esm/src/context/ContextProvider.d.ts.map +1 -1
- package/esm/src/context/ContextProvider.js +9 -2
- package/esm/src/dsl/http/default.d.ts +2 -0
- package/esm/src/dsl/http/default.d.ts.map +1 -1
- package/esm/src/dsl/http/default.js +10 -0
- package/esm/src/dsl/http/versori/contextcredentials.d.ts +10 -0
- package/esm/src/dsl/http/versori/contextcredentials.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/contextcredentials.js +1 -0
- package/esm/src/dsl/http/versori/credentials/client.d.ts +3 -0
- package/esm/src/dsl/http/versori/credentials/client.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/credentials/client.js +11 -3
- package/esm/src/dsl/http/versori/credentials/credentials.d.ts +38 -0
- package/esm/src/dsl/http/versori/credentials/credentials.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/credentials/credentials.js +7 -8
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts +31 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.js +31 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts +84 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.js +128 -0
- package/esm/src/dsl/http/versori/roundtripper.d.ts +8 -3
- package/esm/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/roundtripper.js +45 -3
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/memory/MemoryInterpreter.js +3 -3
- package/package.json +1 -1
- package/script/src/context/Context.d.ts +5 -1
- package/script/src/context/Context.d.ts.map +1 -1
- package/script/src/context/Context.js +15 -4
- package/script/src/context/ContextProvider.d.ts +3 -1
- package/script/src/context/ContextProvider.d.ts.map +1 -1
- package/script/src/context/ContextProvider.js +9 -2
- package/script/src/dsl/http/default.d.ts +2 -0
- package/script/src/dsl/http/default.d.ts.map +1 -1
- package/script/src/dsl/http/default.js +10 -0
- package/script/src/dsl/http/versori/contextcredentials.d.ts +10 -0
- package/script/src/dsl/http/versori/contextcredentials.d.ts.map +1 -0
- package/script/src/dsl/http/versori/contextcredentials.js +2 -0
- package/script/src/dsl/http/versori/credentials/client.d.ts +3 -0
- package/script/src/dsl/http/versori/credentials/client.d.ts.map +1 -1
- package/script/src/dsl/http/versori/credentials/client.js +10 -0
- package/script/src/dsl/http/versori/credentials/credentials.d.ts +38 -0
- package/script/src/dsl/http/versori/credentials/credentials.d.ts.map +1 -1
- package/script/src/dsl/http/versori/credentials/credentials.js +8 -8
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts +31 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +1 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.js +34 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts +84 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +1 -0
- package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.js +131 -0
- package/script/src/dsl/http/versori/roundtripper.d.ts +8 -3
- package/script/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
- package/script/src/dsl/http/versori/roundtripper.js +47 -5
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/memory/MemoryInterpreter.js +2 -2
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
// @generated by protoc-gen-es v2.2.3
|
|
2
|
+
// @generated from file versori/credential/v1alpha1/credential_service.proto (package versori.credential.v1alpha1, syntax proto3)
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import { fileDesc, messageDesc, serviceDesc } from '@bufbuild/protobuf/codegenv1';
|
|
5
|
+
import { file_google_protobuf_timestamp } from '@bufbuild/protobuf/wkt';
|
|
6
|
+
import { file_versori_credential_v1alpha1_common } from './common_pb.js';
|
|
7
|
+
import { file_versori_credential_v1alpha1_credential } from './credential_pb.js';
|
|
8
|
+
/**
|
|
9
|
+
* Describes the file versori/credential/v1alpha1/credential_service.proto.
|
|
10
|
+
*/
|
|
11
|
+
export const file_versori_credential_v1alpha1_credential_service =
|
|
12
|
+
/*@__PURE__*/
|
|
13
|
+
fileDesc('CjR2ZXJzb3JpL2NyZWRlbnRpYWwvdjFhbHBoYTEvY3JlZGVudGlhbF9zZXJ2aWNlLnByb3RvEht2ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEivgIKF0NyZWF0ZUNyZWRlbnRpYWxSZXF1ZXN0EhcKD29yZ2FuaXNhdGlvbl9pZBgBIAEoCRIMCgRuYW1lGAIgASgJEkwKBGRhdGEYAyADKAsyPi52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlYXRlQ3JlZGVudGlhbFJlcXVlc3QuRGF0YUVudHJ5EjoKBHR5cGUYBCABKA4yLC52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbC5UeXBlEhUKDXJlZGFjdF9maWVsZHMYBSADKAkSLgoKZXhwaXJlc19hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaKwoJRGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEiVwoYQ3JlYXRlQ3JlZGVudGlhbFJlc3BvbnNlEjsKCmNyZWRlbnRpYWwYASABKAsyJy52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbCJSChRHZXRDcmVkZW50aWFsUmVxdWVzdBIKCgJpZBgBIAEoCRIXCg9vcmdhbmlzYXRpb25faWQYAiABKAkSFQoNc2hvd19yZWRhY3RlZBgDIAEoCCJUChVHZXRDcmVkZW50aWFsUmVzcG9uc2USOwoKY3JlZGVudGlhbBgBIAEoCzInLnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5DcmVkZW50aWFsIigKGUdldE1hbnlDcmVkZW50aWFsc1JlcXVlc3QSCwoDaWRzGAEgAygJIloKGkdldE1hbnlDcmVkZW50aWFsc1Jlc3BvbnNlEjwKC2NyZWRlbnRpYWxzGAEgAygLMicudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkNyZWRlbnRpYWwibwoWTGlzdENyZWRlbnRpYWxzUmVxdWVzdBIXCg9vcmdhbmlzYXRpb25faWQYASABKAkSPAoLcGFnZV9wYXJhbXMYAiABKAsyJy52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuUGFnZVBhcmFtcyKLAQoXTGlzdENyZWRlbnRpYWxzUmVzcG9uc2USNgoFaXRlbXMYASADKAsyJy52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbBI4CglwYWdlX2luZm8YAiABKAsyJS52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuUGFnZUluZm8iygIKF1VwZGF0ZUNyZWRlbnRpYWxSZXF1ZXN0EgoKAmlkGAEgASgJEhcKD29yZ2FuaXNhdGlvbl9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEkwKBGRhdGEYBCADKAsyPi52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuVXBkYXRlQ3JlZGVudGlhbFJlcXVlc3QuRGF0YUVudHJ5EjoKBHR5cGUYBSABKA4yLC52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbC5UeXBlEhUKDXJlZGFjdF9maWVsZHMYBiADKAkSLgoKZXhwaXJlc19hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAaKwoJRGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEiVwoYVXBkYXRlQ3JlZGVudGlhbFJlc3BvbnNlEjsKCmNyZWRlbnRpYWwYASABKAsyJy52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbCI+ChdEZWxldGVDcmVkZW50aWFsUmVxdWVzdBIKCgJpZBgBIAEoCRIXCg9vcmdhbmlzYXRpb25faWQYAiABKAkiGgoYRGVsZXRlQ3JlZGVudGlhbFJlc3BvbnNlItQBChlWYWxpZGF0ZUNyZWRlbnRpYWxSZXF1ZXN0EjoKBHR5cGUYASABKA4yLC52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuQ3JlZGVudGlhbC5UeXBlEk4KBGRhdGEYAiADKAsyQC52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuVmFsaWRhdGVDcmVkZW50aWFsUmVxdWVzdC5EYXRhRW50cnkaKwoJRGF0YUVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEipQEKGlZhbGlkYXRlQ3JlZGVudGlhbFJlc3BvbnNlEgoKAm9rGAEgASgIElcKBmVycm9ycxgCIAMoCzJHLnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5WYWxpZGF0ZUNyZWRlbnRpYWxSZXNwb25zZS5WYWxpZGF0aW9uRXJyb3IaIgoPVmFsaWRhdGlvbkVycm9yEg8KB21lc3NhZ2UYASABKAky0gYKEUNyZWRlbnRpYWxTZXJ2aWNlEnUKBkNyZWF0ZRI0LnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5DcmVhdGVDcmVkZW50aWFsUmVxdWVzdBo1LnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5DcmVhdGVDcmVkZW50aWFsUmVzcG9uc2USbAoDR2V0EjEudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkdldENyZWRlbnRpYWxSZXF1ZXN0GjIudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkdldENyZWRlbnRpYWxSZXNwb25zZRJ6CgdHZXRNYW55EjYudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkdldE1hbnlDcmVkZW50aWFsc1JlcXVlc3QaNy52ZXJzb3JpLmNyZWRlbnRpYWwudjFhbHBoYTEuR2V0TWFueUNyZWRlbnRpYWxzUmVzcG9uc2UScQoETGlzdBIzLnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5MaXN0Q3JlZGVudGlhbHNSZXF1ZXN0GjQudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkxpc3RDcmVkZW50aWFsc1Jlc3BvbnNlEnUKBlVwZGF0ZRI0LnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5VcGRhdGVDcmVkZW50aWFsUmVxdWVzdBo1LnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5VcGRhdGVDcmVkZW50aWFsUmVzcG9uc2USdQoGRGVsZXRlEjQudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkRlbGV0ZUNyZWRlbnRpYWxSZXF1ZXN0GjUudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLkRlbGV0ZUNyZWRlbnRpYWxSZXNwb25zZRJ7CghWYWxpZGF0ZRI2LnZlcnNvcmkuY3JlZGVudGlhbC52MWFscGhhMS5WYWxpZGF0ZUNyZWRlbnRpYWxSZXF1ZXN0GjcudmVyc29yaS5jcmVkZW50aWFsLnYxYWxwaGExLlZhbGlkYXRlQ3JlZGVudGlhbFJlc3BvbnNlQiZaJHZlcnNvcmkuZGV2L2NyZWRlbnRpYWxzL2FwaS92MWFscGhhMWIGcHJvdG8z', [
|
|
14
|
+
file_google_protobuf_timestamp,
|
|
15
|
+
file_versori_credential_v1alpha1_common,
|
|
16
|
+
file_versori_credential_v1alpha1_credential,
|
|
17
|
+
]);
|
|
18
|
+
/**
|
|
19
|
+
* Describes the message versori.credential.v1alpha1.CreateCredentialRequest.
|
|
20
|
+
* Use `create(CreateCredentialRequestSchema)` to create a new message.
|
|
21
|
+
*/
|
|
22
|
+
export const CreateCredentialRequestSchema =
|
|
23
|
+
/*@__PURE__*/
|
|
24
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 0);
|
|
25
|
+
/**
|
|
26
|
+
* Describes the message versori.credential.v1alpha1.CreateCredentialResponse.
|
|
27
|
+
* Use `create(CreateCredentialResponseSchema)` to create a new message.
|
|
28
|
+
*/
|
|
29
|
+
export const CreateCredentialResponseSchema =
|
|
30
|
+
/*@__PURE__*/
|
|
31
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 1);
|
|
32
|
+
/**
|
|
33
|
+
* Describes the message versori.credential.v1alpha1.GetCredentialRequest.
|
|
34
|
+
* Use `create(GetCredentialRequestSchema)` to create a new message.
|
|
35
|
+
*/
|
|
36
|
+
export const GetCredentialRequestSchema =
|
|
37
|
+
/*@__PURE__*/
|
|
38
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 2);
|
|
39
|
+
/**
|
|
40
|
+
* Describes the message versori.credential.v1alpha1.GetCredentialResponse.
|
|
41
|
+
* Use `create(GetCredentialResponseSchema)` to create a new message.
|
|
42
|
+
*/
|
|
43
|
+
export const GetCredentialResponseSchema =
|
|
44
|
+
/*@__PURE__*/
|
|
45
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 3);
|
|
46
|
+
/**
|
|
47
|
+
* Describes the message versori.credential.v1alpha1.GetManyCredentialsRequest.
|
|
48
|
+
* Use `create(GetManyCredentialsRequestSchema)` to create a new message.
|
|
49
|
+
*/
|
|
50
|
+
export const GetManyCredentialsRequestSchema =
|
|
51
|
+
/*@__PURE__*/
|
|
52
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 4);
|
|
53
|
+
/**
|
|
54
|
+
* Describes the message versori.credential.v1alpha1.GetManyCredentialsResponse.
|
|
55
|
+
* Use `create(GetManyCredentialsResponseSchema)` to create a new message.
|
|
56
|
+
*/
|
|
57
|
+
export const GetManyCredentialsResponseSchema =
|
|
58
|
+
/*@__PURE__*/
|
|
59
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 5);
|
|
60
|
+
/**
|
|
61
|
+
* Describes the message versori.credential.v1alpha1.ListCredentialsRequest.
|
|
62
|
+
* Use `create(ListCredentialsRequestSchema)` to create a new message.
|
|
63
|
+
*/
|
|
64
|
+
export const ListCredentialsRequestSchema =
|
|
65
|
+
/*@__PURE__*/
|
|
66
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 6);
|
|
67
|
+
/**
|
|
68
|
+
* Describes the message versori.credential.v1alpha1.ListCredentialsResponse.
|
|
69
|
+
* Use `create(ListCredentialsResponseSchema)` to create a new message.
|
|
70
|
+
*/
|
|
71
|
+
export const ListCredentialsResponseSchema =
|
|
72
|
+
/*@__PURE__*/
|
|
73
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 7);
|
|
74
|
+
/**
|
|
75
|
+
* Describes the message versori.credential.v1alpha1.UpdateCredentialRequest.
|
|
76
|
+
* Use `create(UpdateCredentialRequestSchema)` to create a new message.
|
|
77
|
+
*/
|
|
78
|
+
export const UpdateCredentialRequestSchema =
|
|
79
|
+
/*@__PURE__*/
|
|
80
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 8);
|
|
81
|
+
/**
|
|
82
|
+
* Describes the message versori.credential.v1alpha1.UpdateCredentialResponse.
|
|
83
|
+
* Use `create(UpdateCredentialResponseSchema)` to create a new message.
|
|
84
|
+
*/
|
|
85
|
+
export const UpdateCredentialResponseSchema =
|
|
86
|
+
/*@__PURE__*/
|
|
87
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 9);
|
|
88
|
+
/**
|
|
89
|
+
* Describes the message versori.credential.v1alpha1.DeleteCredentialRequest.
|
|
90
|
+
* Use `create(DeleteCredentialRequestSchema)` to create a new message.
|
|
91
|
+
*/
|
|
92
|
+
export const DeleteCredentialRequestSchema =
|
|
93
|
+
/*@__PURE__*/
|
|
94
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 10);
|
|
95
|
+
/**
|
|
96
|
+
* Describes the message versori.credential.v1alpha1.DeleteCredentialResponse.
|
|
97
|
+
* Use `create(DeleteCredentialResponseSchema)` to create a new message.
|
|
98
|
+
*/
|
|
99
|
+
export const DeleteCredentialResponseSchema =
|
|
100
|
+
/*@__PURE__*/
|
|
101
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 11);
|
|
102
|
+
/**
|
|
103
|
+
* Describes the message versori.credential.v1alpha1.ValidateCredentialRequest.
|
|
104
|
+
* Use `create(ValidateCredentialRequestSchema)` to create a new message.
|
|
105
|
+
*/
|
|
106
|
+
export const ValidateCredentialRequestSchema =
|
|
107
|
+
/*@__PURE__*/
|
|
108
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 12);
|
|
109
|
+
/**
|
|
110
|
+
* Describes the message versori.credential.v1alpha1.ValidateCredentialResponse.
|
|
111
|
+
* Use `create(ValidateCredentialResponseSchema)` to create a new message.
|
|
112
|
+
*/
|
|
113
|
+
export const ValidateCredentialResponseSchema =
|
|
114
|
+
/*@__PURE__*/
|
|
115
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 13);
|
|
116
|
+
/**
|
|
117
|
+
* Describes the message versori.credential.v1alpha1.ValidateCredentialResponse.ValidationError.
|
|
118
|
+
* Use `create(ValidateCredentialResponse_ValidationErrorSchema)` to create a new message.
|
|
119
|
+
*/
|
|
120
|
+
export const ValidateCredentialResponse_ValidationErrorSchema =
|
|
121
|
+
/*@__PURE__*/
|
|
122
|
+
messageDesc(file_versori_credential_v1alpha1_credential_service, 13, 0);
|
|
123
|
+
/**
|
|
124
|
+
* @generated from service versori.credential.v1alpha1.CredentialService
|
|
125
|
+
*/
|
|
126
|
+
export const CredentialService =
|
|
127
|
+
/*@__PURE__*/
|
|
128
|
+
serviceDesc(file_versori_credential_v1alpha1_credential_service, 0);
|
|
@@ -2,6 +2,7 @@ import { DynamicFetcher, RoundTripperFactory } from '../types.js';
|
|
|
2
2
|
import { VersoriCredentialClient } from './credentials/mod.js';
|
|
3
3
|
import { PlatformAPIClient } from './platformapi.js';
|
|
4
4
|
import { Logger } from '../../../observability/logging/Logger.js';
|
|
5
|
+
import { Credentials } from './contextcredentials.js';
|
|
5
6
|
/**
|
|
6
7
|
* VersoriRoundTripper is an implementation of the RoundTripperFactory interface for Versori connections.
|
|
7
8
|
* This is the intended implementation for when projects/services are hosted on Versori infrastructure.
|
|
@@ -9,12 +10,12 @@ import { Logger } from '../../../observability/logging/Logger.js';
|
|
|
9
10
|
*
|
|
10
11
|
* @example
|
|
11
12
|
* ```typescript
|
|
12
|
-
* const factory = new
|
|
13
|
+
* const factory = new VersoriCredentialsFactory(connectAPIClient, tokenClient);
|
|
13
14
|
* const customFetch = await factory.create('connectionName');
|
|
14
15
|
* const response = await customFetch('https://api.example.com/data');
|
|
15
16
|
* ```
|
|
16
17
|
*/
|
|
17
|
-
export declare class
|
|
18
|
+
export declare class VersoriCredentialsFactory implements RoundTripperFactory {
|
|
18
19
|
private tokenClient;
|
|
19
20
|
private credsBaseURL;
|
|
20
21
|
private platformAPIClient;
|
|
@@ -22,11 +23,15 @@ export declare class VersoriRoundTripperFactory implements RoundTripperFactory {
|
|
|
22
23
|
private log;
|
|
23
24
|
private readonly defaultDynamic;
|
|
24
25
|
constructor(credsClient: VersoriCredentialClient, credsBaseURL: string, platformAPIClient: PlatformAPIClient, logger: Logger);
|
|
25
|
-
static fromEnv(logger?: Logger):
|
|
26
|
+
static fromEnv(logger?: Logger): VersoriCredentialsFactory;
|
|
26
27
|
private changeRequestInit;
|
|
27
28
|
private changeBaseUrl;
|
|
28
29
|
create(connName: string, fn?: typeof fetch): Promise<typeof fetch | undefined>;
|
|
29
30
|
createDynamic(templateName: string, fn?: typeof fetch): Promise<DynamicFetcher | undefined>;
|
|
31
|
+
credentials(): Credentials;
|
|
32
|
+
private getTokenByName;
|
|
33
|
+
private getRawByName;
|
|
34
|
+
private getCredentialIDFromName;
|
|
30
35
|
private getConnectionID;
|
|
31
36
|
private getTemplateID;
|
|
32
37
|
private apiKeyFetcher;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roundtripper.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/roundtripper.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,cAAc,EACd,mBAAmB,EAEtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"roundtripper.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/roundtripper.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,cAAc,EACd,mBAAmB,EAEtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAWlE,OAAO,EAAE,WAAW,EAAS,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACjE,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,iBAAiB,CAAoB;IAE7C,OAAO,CAAC,UAAU,CAAmB;IAErC,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAK7B;gBAGE,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM;IAWlB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,yBAAyB;IA6B1D,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,aAAa;IAwBrB,MAAM,CACF,QAAQ,EAAE,MAAM,EAChB,EAAE,GAAE,OAAO,KAAwB,GACpC,OAAO,CAAC,OAAO,KAAK,GAAG,SAAS,CAAC;IAqCpC,aAAa,CACT,YAAY,EAAE,MAAM,EACpB,EAAE,GAAE,OAAO,KAAwB,GACpC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IA+CtC,WAAW,IAAI,WAAW;YAOZ,cAAc;YAed,YAAY;YAaZ,uBAAuB;IAkBrC,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,aAAa;IAyDrB,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,kBAAkB;IAmC1B,OAAO,CAAC,aAAa;YAwEP,QAAQ;CAuBzB"}
|
|
@@ -11,12 +11,12 @@ import { ConnectError, Code } from '@connectrpc/connect';
|
|
|
11
11
|
*
|
|
12
12
|
* @example
|
|
13
13
|
* ```typescript
|
|
14
|
-
* const factory = new
|
|
14
|
+
* const factory = new VersoriCredentialsFactory(connectAPIClient, tokenClient);
|
|
15
15
|
* const customFetch = await factory.create('connectionName');
|
|
16
16
|
* const response = await customFetch('https://api.example.com/data');
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
|
-
export class
|
|
19
|
+
export class VersoriCredentialsFactory {
|
|
20
20
|
constructor(credsClient, credsBaseURL, platformAPIClient, logger) {
|
|
21
21
|
Object.defineProperty(this, "tokenClient", {
|
|
22
22
|
enumerable: true,
|
|
@@ -64,6 +64,7 @@ export class VersoriRoundTripperFactory {
|
|
|
64
64
|
this.platformAPIClient = platformAPIClient;
|
|
65
65
|
this.versoriCfg = LoadConfigFromFile();
|
|
66
66
|
this.log = logger;
|
|
67
|
+
this.credentials = this.credentials.bind(this);
|
|
67
68
|
}
|
|
68
69
|
static fromEnv(logger) {
|
|
69
70
|
const credsBaseURL = Deno.env.get(envVarCredsBaseURL);
|
|
@@ -85,7 +86,7 @@ export class VersoriRoundTripperFactory {
|
|
|
85
86
|
const log = logger || new ConsoleLogger('debug');
|
|
86
87
|
const pAPIClient = new PlatformAPIClient(platformApiBaseURL, orgId, envId, log);
|
|
87
88
|
const tokenClient = new VersoriCredentialClient(credsBaseURL);
|
|
88
|
-
return new
|
|
89
|
+
return new VersoriCredentialsFactory(tokenClient, credsBaseURL, pAPIClient, log);
|
|
89
90
|
}
|
|
90
91
|
// takes the info and modifies the url using changeBaseUrl if necessary
|
|
91
92
|
// if a full valid URL is passed as a string, it will be returned as is
|
|
@@ -188,6 +189,47 @@ export class VersoriRoundTripperFactory {
|
|
|
188
189
|
};
|
|
189
190
|
return _fn;
|
|
190
191
|
}
|
|
192
|
+
credentials() {
|
|
193
|
+
return {
|
|
194
|
+
getRaw: this.getRawByName.bind(this),
|
|
195
|
+
getAccessToken: this.getTokenByName.bind(this),
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
async getTokenByName(name) {
|
|
199
|
+
const credId = await this.getCredentialIDFromName(name);
|
|
200
|
+
const token = await this.tokenClient.getToken(credId);
|
|
201
|
+
if (!token?.token) {
|
|
202
|
+
throw new Error(`Token not found for connection ${name} with credential ID ${credId}`);
|
|
203
|
+
}
|
|
204
|
+
return {
|
|
205
|
+
accessToken: token.token.accessToken,
|
|
206
|
+
tokenType: token.token.tokenType,
|
|
207
|
+
expiry: token.token.expiry ? new Date(Number(token.token.expiry.seconds) * 1000) : undefined,
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
async getRawByName(name) {
|
|
211
|
+
const credId = await this.getCredentialIDFromName(name);
|
|
212
|
+
const raw = await this.tokenClient.getRaw(credId);
|
|
213
|
+
if (!raw) {
|
|
214
|
+
throw new Error(`Raw data not found for connection ${name} with credential ID ${credId}`);
|
|
215
|
+
}
|
|
216
|
+
let buffer = raw?.credential?.data['raw'];
|
|
217
|
+
return buffer;
|
|
218
|
+
}
|
|
219
|
+
async getCredentialIDFromName(name) {
|
|
220
|
+
const conId = this.getConnectionID(name);
|
|
221
|
+
if (!conId) {
|
|
222
|
+
throw new Error(`Connection ${name} not found`);
|
|
223
|
+
}
|
|
224
|
+
const conn = await this.platformAPIClient.getStaticConnection(conId);
|
|
225
|
+
if (!conn) {
|
|
226
|
+
throw new Error(`Connection ${name} not found`);
|
|
227
|
+
}
|
|
228
|
+
if (!conn?.credentials[0]?.credential?.id) {
|
|
229
|
+
throw new Error(`Connection ${name}/${conId} has no credentials defined on it`);
|
|
230
|
+
}
|
|
231
|
+
return conn.credentials[0].credential.id;
|
|
232
|
+
}
|
|
191
233
|
getConnectionID(connName) {
|
|
192
234
|
const conn = this.versoriCfg.mappings.find((c) => (c.dynamic === undefined || c.dynamic === false) &&
|
|
193
235
|
c.name.toLowerCase() === connName.toLowerCase());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAA+B,UAAU,EAAW,YAAY,EAAE,MAAM,MAAM,CAAC;AACtF,OAAO,EAAE,eAAe,EAAuB,MAAM,kCAAkC,CAAC;AAExF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAgB,MAAM,uBAAuB,CAAC;AAI/D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAmB,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAA+B,UAAU,EAAW,YAAY,EAAE,MAAM,MAAM,CAAC;AACtF,OAAO,EAAE,eAAe,EAAuB,MAAM,kCAAkC,CAAC;AAExF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAgB,MAAM,uBAAuB,CAAC;AAI/D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAmB,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAMpE,MAAM,MAAM,wBAAwB,GAAG;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,KAAK,YAAY,GAAG;IAChB,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7C,KAAK,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,oBAAoB,EAAE,eAAe,CAAC;IACtC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC/B,CAAA;AAED,qBAAa,iBAAiB;IAOtB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAbjC,OAAO,CAAC,mBAAmB,CAA2B;IACtD,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,cAAc,CAAC,CAAa;IACpC,OAAO,CAAC,cAAc,CAAS;gBAGV,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,kBAAkB,EAC5B,eAAe,EAAE,eAAe,EAChC,mBAAmB,EAAE,mBAAmB,EACxC,MAAM,EAAE,MAAM,EACvB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,YAAY;WASlC,WAAW,CAAC,OAAO,GAAE,wBAA6B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwC5F,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,wBAAwB;IA8C/D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2ItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAK9B"}
|
|
@@ -3,7 +3,7 @@ import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
|
|
|
3
3
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
4
4
|
import { DefaultRoundTripperFactory } from '../../dsl/http/default.js';
|
|
5
5
|
import { PlatformAPIClient } from '../../dsl/http/versori/platformapi.js';
|
|
6
|
-
import {
|
|
6
|
+
import { VersoriCredentialsFactory } from '../../dsl/http/versori/roundtripper.js';
|
|
7
7
|
import { WorkflowImpl } from '../../dsl/Workflow.js';
|
|
8
8
|
import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
|
|
9
9
|
import { NatsKeyValueProvider } from '../../kv/nats/NatsKeyValueProvider.js';
|
|
@@ -95,7 +95,7 @@ export class MemoryInterpreter {
|
|
|
95
95
|
const compiler = options.compiler || new ObservableCompiler();
|
|
96
96
|
const roundTripperFactory = options.skipVersoriCredentials
|
|
97
97
|
? new DefaultRoundTripperFactory()
|
|
98
|
-
:
|
|
98
|
+
: VersoriCredentialsFactory.fromEnv(log);
|
|
99
99
|
if (options.contextProvider) {
|
|
100
100
|
// no need to set up a key-value provider if options.contextProvider is already
|
|
101
101
|
// initialised.
|
|
@@ -104,7 +104,7 @@ export class MemoryInterpreter {
|
|
|
104
104
|
const kvp = await (options.skipVersoriCredentials
|
|
105
105
|
? new MemoryKeyValueProvider()
|
|
106
106
|
: NatsKeyValueProvider.fromEnv());
|
|
107
|
-
return new MemoryInterpreter(log, compiler, new ContextProviderImpl(log, kvp), roundTripperFactory, express.Router(), new Map(), PlatformAPIClient.fromEnv(), CronAPIClient.fromEnv());
|
|
107
|
+
return new MemoryInterpreter(log, compiler, new ContextProviderImpl(log, kvp, roundTripperFactory.credentials()), roundTripperFactory, express.Router(), new Map(), PlatformAPIClient.fromEnv(), CronAPIClient.fromEnv());
|
|
108
108
|
}
|
|
109
109
|
register(workflow, options) {
|
|
110
110
|
const localAbortController = new AbortController();
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Activation } from '../dsl/http/types.js';
|
|
2
2
|
import { KeyValue, KeyValueProvider, KeyValueScope } from '../kv/KeyValue.js';
|
|
3
3
|
import { Logger } from '../observability/logging/Logger.js';
|
|
4
|
+
import { Credentials } from '../dsl/http/versori/contextcredentials.js';
|
|
4
5
|
export type OnSuccessFn = (ctx: Context<any>) => void;
|
|
5
6
|
export type OnErrorFn = (ctx: Context<any>) => void;
|
|
6
7
|
export type ContextOptions = {
|
|
@@ -19,6 +20,7 @@ export interface Context<D> {
|
|
|
19
20
|
* @param scope
|
|
20
21
|
*/
|
|
21
22
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
23
|
+
credentials(): Credentials;
|
|
22
24
|
}
|
|
23
25
|
export interface InternalContext<D, Index = void> extends Context<D> {
|
|
24
26
|
withData<D2>(data: D2): InternalContext<D2, Index>;
|
|
@@ -35,15 +37,17 @@ export declare class ContextImpl<D, Index = void> implements InternalContext<D,
|
|
|
35
37
|
executionId: string;
|
|
36
38
|
startTime: Date;
|
|
37
39
|
data: D;
|
|
40
|
+
private creds;
|
|
38
41
|
idx: Index;
|
|
39
42
|
readonly kvp: KeyValueProvider;
|
|
40
43
|
readonly options: ContextOptions;
|
|
41
|
-
constructor(log: Logger, kvp: KeyValueProvider, executionId: string, startTime: Date, data: D, options?: ContextOptions);
|
|
44
|
+
constructor(log: Logger, kvp: KeyValueProvider, creds: Credentials, executionId: string, startTime: Date, data: D, options?: ContextOptions);
|
|
42
45
|
get activation(): Activation | undefined;
|
|
43
46
|
setIndex(idx: number): InternalContext<D, number>;
|
|
44
47
|
withActivation(activation: Activation): InternalContext<D, Index>;
|
|
45
48
|
withData<D2>(data: D2): InternalContext<D2, Index>;
|
|
46
49
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
50
|
+
credentials(): Credentials;
|
|
47
51
|
destroy(scope: KeyValueScope): Promise<void>;
|
|
48
52
|
[Symbol.toPrimitive](): Record<string, unknown>;
|
|
49
53
|
toJSON(): Record<string, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ContextImpl = void 0;
|
|
4
4
|
class ContextImpl {
|
|
5
|
-
constructor(log, kvp, executionId, startTime, data, options = {}) {
|
|
5
|
+
constructor(log, kvp, creds, executionId, startTime, data, options = {}) {
|
|
6
6
|
Object.defineProperty(this, "log", {
|
|
7
7
|
enumerable: true,
|
|
8
8
|
configurable: true,
|
|
@@ -27,6 +27,12 @@ class ContextImpl {
|
|
|
27
27
|
writable: true,
|
|
28
28
|
value: void 0
|
|
29
29
|
});
|
|
30
|
+
Object.defineProperty(this, "creds", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
configurable: true,
|
|
33
|
+
writable: true,
|
|
34
|
+
value: void 0
|
|
35
|
+
});
|
|
30
36
|
Object.defineProperty(this, "idx", {
|
|
31
37
|
enumerable: true,
|
|
32
38
|
configurable: true,
|
|
@@ -47,6 +53,7 @@ class ContextImpl {
|
|
|
47
53
|
});
|
|
48
54
|
this.log = log;
|
|
49
55
|
this.executionId = executionId;
|
|
56
|
+
this.creds = creds;
|
|
50
57
|
this.startTime = startTime;
|
|
51
58
|
this.data = data;
|
|
52
59
|
this.idx = void 0;
|
|
@@ -56,12 +63,13 @@ class ContextImpl {
|
|
|
56
63
|
// so that destructuring the context object doesn't break the binding of the methods to the
|
|
57
64
|
// correct instance.
|
|
58
65
|
this.openKv = this.openKv.bind(this);
|
|
66
|
+
this.credentials = this.credentials.bind(this);
|
|
59
67
|
}
|
|
60
68
|
get activation() {
|
|
61
69
|
return this.options.activation;
|
|
62
70
|
}
|
|
63
71
|
setIndex(idx) {
|
|
64
|
-
const next = new ContextImpl(this.log, this.kvp, this.executionId, this.startTime, this.data, this.options);
|
|
72
|
+
const next = new ContextImpl(this.log, this.kvp, this.creds, this.executionId, this.startTime, this.data, this.options);
|
|
65
73
|
next.idx = idx;
|
|
66
74
|
return next;
|
|
67
75
|
}
|
|
@@ -70,13 +78,13 @@ class ContextImpl {
|
|
|
70
78
|
if (this.activation) {
|
|
71
79
|
throw new Error('Activation is already set');
|
|
72
80
|
}
|
|
73
|
-
return new ContextImpl(this.log, this.kvp, this.executionId, this.startTime, this.data, {
|
|
81
|
+
return new ContextImpl(this.log, this.kvp, this.creds, this.executionId, this.startTime, this.data, {
|
|
74
82
|
...this.options,
|
|
75
83
|
activation,
|
|
76
84
|
});
|
|
77
85
|
}
|
|
78
86
|
withData(data) {
|
|
79
|
-
return new ContextImpl(this.log, this.kvp, this.executionId, this.startTime, data, this.options);
|
|
87
|
+
return new ContextImpl(this.log, this.kvp, this.creds, this.executionId, this.startTime, data, this.options);
|
|
80
88
|
}
|
|
81
89
|
openKv(scope = ':project:') {
|
|
82
90
|
if (scope === ':execution:') {
|
|
@@ -91,6 +99,9 @@ class ContextImpl {
|
|
|
91
99
|
activationId: this.activation?.id,
|
|
92
100
|
});
|
|
93
101
|
}
|
|
102
|
+
credentials() {
|
|
103
|
+
return this.creds;
|
|
104
|
+
}
|
|
94
105
|
destroy(scope) {
|
|
95
106
|
if (scope === ':execution:') {
|
|
96
107
|
return this.kvp.destroy({
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { KeyValueProvider } from '../kv/KeyValue.js';
|
|
2
2
|
import { Logger } from '../observability/logging/Logger.js';
|
|
3
3
|
import { Context, ContextOptions, InternalContext } from './Context.js';
|
|
4
|
+
import { Credentials } from '../dsl/http/versori/contextcredentials.js';
|
|
4
5
|
export interface ContextProvider {
|
|
5
6
|
create<D>(data: D, options?: ContextOptions): InternalContext<D, void>;
|
|
6
7
|
destroy(ctx: Context<any>): Promise<void>;
|
|
@@ -8,7 +9,8 @@ export interface ContextProvider {
|
|
|
8
9
|
export declare class ContextProviderImpl implements ContextProvider {
|
|
9
10
|
log: Logger;
|
|
10
11
|
kvp: KeyValueProvider;
|
|
11
|
-
|
|
12
|
+
creds: Credentials;
|
|
13
|
+
constructor(log: Logger, kvp: KeyValueProvider, creds: Credentials);
|
|
12
14
|
create<D>(data: D, options?: ContextOptions): InternalContext<D, void>;
|
|
13
15
|
destroy(ctx: Context<any>): Promise<void>;
|
|
14
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextProvider.d.ts","sourceRoot":"","sources":["../../../src/src/context/ContextProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAe,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextProvider.d.ts","sourceRoot":"","sources":["../../../src/src/context/ContextProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAe,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAExE,MAAM,WAAW,eAAe;IAC5B,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,qBAAa,mBAAoB,YAAW,eAAe;IACvD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,WAAW,CAAC;gBAEP,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW;IAMlE,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,GAAE,cAAmB,GAAG,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;IAe1E,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAM5C"}
|
|
@@ -4,7 +4,7 @@ exports.ContextProviderImpl = void 0;
|
|
|
4
4
|
const mod_js_1 = require("../../deps/jsr.io/@std/ulid/1.0.0/mod.js");
|
|
5
5
|
const Context_js_1 = require("./Context.js");
|
|
6
6
|
class ContextProviderImpl {
|
|
7
|
-
constructor(log, kvp) {
|
|
7
|
+
constructor(log, kvp, creds) {
|
|
8
8
|
Object.defineProperty(this, "log", {
|
|
9
9
|
enumerable: true,
|
|
10
10
|
configurable: true,
|
|
@@ -17,8 +17,15 @@ class ContextProviderImpl {
|
|
|
17
17
|
writable: true,
|
|
18
18
|
value: void 0
|
|
19
19
|
});
|
|
20
|
+
Object.defineProperty(this, "creds", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true,
|
|
24
|
+
value: void 0
|
|
25
|
+
});
|
|
20
26
|
this.log = log;
|
|
21
27
|
this.kvp = kvp;
|
|
28
|
+
this.creds = creds;
|
|
22
29
|
}
|
|
23
30
|
create(data, options = {}) {
|
|
24
31
|
const executionId = (0, mod_js_1.ulid)();
|
|
@@ -29,7 +36,7 @@ class ContextProviderImpl {
|
|
|
29
36
|
externalUserId: options.activation.user.externalId,
|
|
30
37
|
});
|
|
31
38
|
}
|
|
32
|
-
return new Context_js_1.ContextImpl(logger, this.kvp, executionId, new Date(), data, options);
|
|
39
|
+
return new Context_js_1.ContextImpl(logger, this.kvp, this.creds, executionId, new Date(), data, options);
|
|
33
40
|
}
|
|
34
41
|
destroy(ctx) {
|
|
35
42
|
return this.kvp.destroy({
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DynamicFetcher, RoundTripperFactory } from './types.js';
|
|
2
|
+
import { Credentials } from './versori/contextcredentials.js';
|
|
2
3
|
/**
|
|
3
4
|
* A factory class for creating a default round tripper.
|
|
4
5
|
* This class is used to provide a default implementation for initializing
|
|
@@ -19,5 +20,6 @@ export declare class DefaultRoundTripperFactory implements RoundTripperFactory {
|
|
|
19
20
|
*/
|
|
20
21
|
create(connName: string, fn?: typeof fetch): Promise<typeof fetch>;
|
|
21
22
|
createDynamic(templateName: string, fn: typeof fetch): Promise<DynamicFetcher>;
|
|
23
|
+
credentials(): Credentials;
|
|
22
24
|
}
|
|
23
25
|
//# sourceMappingURL=default.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/http/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/http/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D;;;;GAIG;AACH,qBAAa,0BAA2B,YAAW,mBAAmB;IAClE;;OAEG;;IAGH;;;;;;;OAOG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC;IAIzE,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC;IAMpF,WAAW,IAAI,WAAW;CAU7B"}
|
|
@@ -27,5 +27,15 @@ class DefaultRoundTripperFactory {
|
|
|
27
27
|
return fetch(input, init);
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
+
credentials() {
|
|
31
|
+
return {
|
|
32
|
+
getRaw: () => Promise.resolve(new ArrayBuffer(0)),
|
|
33
|
+
getAccessToken: () => Promise.resolve({
|
|
34
|
+
accessToken: '',
|
|
35
|
+
tokenType: '',
|
|
36
|
+
expiry: undefined,
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
30
40
|
}
|
|
31
41
|
exports.DefaultRoundTripperFactory = DefaultRoundTripperFactory;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type Token = {
|
|
2
|
+
accessToken: string;
|
|
3
|
+
tokenType: string;
|
|
4
|
+
expiry?: Date;
|
|
5
|
+
};
|
|
6
|
+
export interface Credentials {
|
|
7
|
+
getRaw(name: string): Promise<ArrayBuffer>;
|
|
8
|
+
getAccessToken(name: string): Promise<Token>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=contextcredentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contextcredentials.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/contextcredentials.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,IAAI,CAAC;CACjB,CAAA;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CAChD"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { GetTokenResponse } from './tokens/v1/token_service_pb.js';
|
|
2
|
+
import { GetCredentialResponse } from './v1alpha1/credential_service_pb.js';
|
|
2
3
|
export declare class VersoriCredentialClient {
|
|
3
4
|
private TokenService;
|
|
5
|
+
private credentialsClient;
|
|
4
6
|
constructor(credsBaseUrl: string);
|
|
5
7
|
getToken(credId: string, forceRefresh?: boolean): Promise<GetTokenResponse>;
|
|
8
|
+
getRaw(credId: string): Promise<GetCredentialResponse>;
|
|
6
9
|
}
|
|
7
10
|
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/src/dsl/http/versori/credentials/client.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGnE,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,YAAY,CAAc;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/src/dsl/http/versori/credentials/client.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,iBAAiB,CAAoB;gBAEjC,YAAY,EAAE,MAAM;IAKhC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlF,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAGzD"}
|
|
@@ -10,10 +10,20 @@ class VersoriCredentialClient {
|
|
|
10
10
|
writable: true,
|
|
11
11
|
value: void 0
|
|
12
12
|
});
|
|
13
|
+
Object.defineProperty(this, "credentialsClient", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
configurable: true,
|
|
16
|
+
writable: true,
|
|
17
|
+
value: void 0
|
|
18
|
+
});
|
|
13
19
|
this.TokenService = (0, credentials_js_1.createTokenClient)(credsBaseUrl);
|
|
20
|
+
this.credentialsClient = (0, credentials_js_1.createCredentialsClient)(credsBaseUrl);
|
|
14
21
|
}
|
|
15
22
|
getToken(credId, forceRefresh = false) {
|
|
16
23
|
return this.TokenService.getToken({ credentialId: credId, forceRefresh });
|
|
17
24
|
}
|
|
25
|
+
getRaw(credId) {
|
|
26
|
+
return this.credentialsClient.get({ id: credId, showRedacted: true });
|
|
27
|
+
}
|
|
18
28
|
}
|
|
19
29
|
exports.VersoriCredentialClient = VersoriCredentialClient;
|
|
@@ -39,4 +39,42 @@ export declare function createOAuth2TokenService(baseUrl?: string): import("@con
|
|
|
39
39
|
};
|
|
40
40
|
}>>;
|
|
41
41
|
export type OAuth2TokenClient = ReturnType<typeof createOAuth2TokenService>;
|
|
42
|
+
export declare function createCredentialsClient(baseUrl?: string): import("@connectrpc/connect").Client<import("@bufbuild/protobuf/codegenv1").GenService<{
|
|
43
|
+
create: {
|
|
44
|
+
methodKind: "unary";
|
|
45
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").CreateCredentialRequestSchema;
|
|
46
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").CreateCredentialResponseSchema;
|
|
47
|
+
};
|
|
48
|
+
get: {
|
|
49
|
+
methodKind: "unary";
|
|
50
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").GetCredentialRequestSchema;
|
|
51
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").GetCredentialResponseSchema;
|
|
52
|
+
};
|
|
53
|
+
getMany: {
|
|
54
|
+
methodKind: "unary";
|
|
55
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").GetManyCredentialsRequestSchema;
|
|
56
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").GetManyCredentialsResponseSchema;
|
|
57
|
+
};
|
|
58
|
+
list: {
|
|
59
|
+
methodKind: "unary";
|
|
60
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").ListCredentialsRequestSchema;
|
|
61
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").ListCredentialsResponseSchema;
|
|
62
|
+
};
|
|
63
|
+
update: {
|
|
64
|
+
methodKind: "unary";
|
|
65
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").UpdateCredentialRequestSchema;
|
|
66
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").UpdateCredentialResponseSchema;
|
|
67
|
+
};
|
|
68
|
+
delete: {
|
|
69
|
+
methodKind: "unary";
|
|
70
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").DeleteCredentialRequestSchema;
|
|
71
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").DeleteCredentialResponseSchema;
|
|
72
|
+
};
|
|
73
|
+
validate: {
|
|
74
|
+
methodKind: "unary";
|
|
75
|
+
input: typeof import("./v1alpha1/credential_service_pb.js").ValidateCredentialRequestSchema;
|
|
76
|
+
output: typeof import("./v1alpha1/credential_service_pb.js").ValidateCredentialResponseSchema;
|
|
77
|
+
};
|
|
78
|
+
}>>;
|
|
79
|
+
export type CredentialsClient = ReturnType<typeof createCredentialsClient>;
|
|
42
80
|
//# sourceMappingURL=credentials.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../../../src/src/dsl/http/versori/credentials/credentials.ts"],"names":[],"mappings":"AAeA,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,MAAgC;;;;;;;;;;;IAK1E;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,OAAO,GAAE,MAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;IAKjF;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../../../src/src/dsl/http/versori/credentials/credentials.ts"],"names":[],"mappings":"AAeA,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,MAAgC;;;;;;;;;;;IAK1E;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,OAAO,GAAE,MAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;IAKjF;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,MAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKhF;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|