1
- import { Credentials , Provider , RequestSigner , HashConstructor , RetryDecider , DelayDecider , UrlParser , Protocol , HttpOptions } from "@aws-sdk/types" ;
2
- import { SignatureV4 } from '@aws-sdk/signature-v4' ;
3
- import { HttpEndpoint , HttpHandler , HttpRequest , HttpResponse } from '@aws-sdk/protocol-http' ;
1
+ import {
2
+ Credentials ,
3
+ Provider ,
4
+ RequestSigner ,
5
+ HashConstructor ,
6
+ RetryDecider ,
7
+ DelayDecider ,
8
+ UrlParser ,
9
+ Protocol ,
10
+ HttpOptions
11
+ } from "@aws-sdk/types" ;
12
+ import { SignatureV4 } from "@aws-sdk/signature-v4" ;
13
+ import {
14
+ HttpEndpoint ,
15
+ HttpHandler ,
16
+ HttpRequest ,
17
+ HttpResponse
18
+ } from "@aws-sdk/protocol-http" ;
4
19
5
20
export function normalizeProvider < T > ( input : T | Provider < T > ) : Provider < T > {
6
21
if ( typeof input === "object" ) {
@@ -21,7 +36,7 @@ export function normalizeEndpoint(
21
36
const promisified = Promise . resolve ( endpoint ) ;
22
37
return ( ) => promisified ;
23
38
}
24
- return endpoint !
39
+ return endpoint ! ;
25
40
}
26
41
27
42
export namespace AwsAuthConfiguration {
@@ -31,7 +46,7 @@ export namespace AwsAuthConfiguration {
31
46
signingEscapePath ?: boolean ;
32
47
}
33
48
interface PreviouslyResolved {
34
- credentialDefaultProvider : ( input : any ) => Provider < Credentials >
49
+ credentialDefaultProvider : ( input : any ) => Provider < Credentials > ;
35
50
region : string | Provider < string > ;
36
51
signingName : string ;
37
52
sha256 : HashConstructor ;
@@ -41,8 +56,11 @@ export namespace AwsAuthConfiguration {
41
56
signer : RequestSigner ;
42
57
signingEscapePath : boolean ;
43
58
} ;
44
- export function resolve < T > ( input : T & Input & PreviouslyResolved ) : T & Resolved {
45
- let credentials = input . credentials || input . credentialDefaultProvider ( input as any ) ;
59
+ export function resolve < T > (
60
+ input : T & Input & PreviouslyResolved
61
+ ) : T & Resolved {
62
+ let credentials =
63
+ input . credentials || input . credentialDefaultProvider ( input as any ) ;
46
64
const normalizedCreds = normalizeProvider ( credentials ) ;
47
65
const signingEscapePath = input . signingEscapePath || false ;
48
66
return {
@@ -56,95 +74,104 @@ export namespace AwsAuthConfiguration {
56
74
sha256 : input . sha256 ,
57
75
uriEscapePath : signingEscapePath
58
76
} )
59
- }
77
+ } ;
60
78
}
61
79
}
62
80
63
81
export namespace RegionConfiguration {
64
82
export interface Input {
65
- region ?: string | Provider < string >
83
+ region ?: string | Provider < string > ;
66
84
}
67
85
interface PreviouslyResolved {
68
- regionDefaultProvider : ( input : any ) => Provider < string >
86
+ regionDefaultProvider : ( input : any ) => Provider < string > ;
69
87
}
70
88
export interface Resolved {
71
- region : Provider < string >
89
+ region : Provider < string > ;
72
90
}
73
- export function resolve < T > ( input : T & Input & PreviouslyResolved ) : T & Resolved {
91
+ export function resolve < T > (
92
+ input : T & Input & PreviouslyResolved
93
+ ) : T & Resolved {
74
94
let region = input . region || input . regionDefaultProvider ( input as any ) ;
75
95
return {
76
96
...input ,
77
97
region : normalizeProvider ( region )
78
- }
98
+ } ;
79
99
}
80
100
}
81
101
82
102
export namespace RetryConfig {
83
103
export interface Input {
84
- maxRetries ?: number ,
85
- retryDecider ?: RetryDecider ,
86
- delayDecider ?: DelayDecider ,
104
+ maxRetries ?: number ;
105
+ retryDecider ?: RetryDecider ;
106
+ delayDecider ?: DelayDecider ;
87
107
}
88
108
export interface Resolved {
89
- maxRetries : number ,
90
- retryDecider ?: RetryDecider ,
91
- delayDecider ?: DelayDecider ,
109
+ maxRetries : number ;
110
+ retryDecider ?: RetryDecider ;
111
+ delayDecider ?: DelayDecider ;
92
112
}
93
113
export function resolve < T > ( input : T & Input ) : T & Resolved {
94
114
return {
95
115
...input ,
96
116
maxRetries : input . maxRetries === undefined ? 3 : input . maxRetries
97
- }
117
+ } ;
98
118
}
99
119
}
100
120
101
121
export namespace EndpointsConfig {
102
122
export interface Input {
103
- endpoint ?: string | HttpEndpoint | Provider < HttpEndpoint > ,
104
- endpointProvider ?: any ,
105
- tls ?: boolean ,
123
+ endpoint ?: string | HttpEndpoint | Provider < HttpEndpoint > ;
124
+ endpointProvider ?: any ;
125
+ tls ?: boolean ;
106
126
}
107
127
interface PreviouslyResolved {
108
- urlParser : UrlParser ,
109
- region : Provider < string > ,
110
- service : string
128
+ urlParser : UrlParser ;
129
+ region : Provider < string > ;
130
+ service : string ;
111
131
}
112
132
export interface Resolved extends Required < Input > {
113
133
endpoint : Provider < HttpEndpoint > ;
114
134
}
115
- export function resolve < T > ( input : T & Input & PreviouslyResolved ) : T & Resolved {
135
+ export function resolve < T > (
136
+ input : T & Input & PreviouslyResolved
137
+ ) : T & Resolved {
116
138
const tls = input . tls || true ;
117
139
const defaultProvider = ( tls : boolean , region : string ) => ( {
118
140
protocol : tls ? "https:" : "http:" ,
119
141
path : "/" ,
120
142
hostname : `${ input . service } .${ region } .amazonaws.com`
121
143
} ) ;
122
- const endpointProvider = input . endpointProvider || defaultProvider
123
- let endpoint : Provider < HttpEndpoint > = input . endpoint ?
124
- normalizeEndpoint ( input . endpoint ) :
125
- ( ) => input . region ( ) . then ( region => endpointProvider ( tls , region ) ) ;
144
+ const endpointProvider = input . endpointProvider || defaultProvider ;
145
+ let endpoint : Provider < HttpEndpoint > = input . endpoint
146
+ ? normalizeEndpoint ( input . endpoint , input . urlParser )
147
+ : ( ) => input . region ( ) . then ( region => endpointProvider ( tls , region ) ) ;
126
148
return {
127
149
...input ,
128
150
endpointProvider,
129
151
endpoint,
130
152
tls
131
- }
153
+ } ;
132
154
}
133
155
}
134
156
135
157
export namespace ProtocolConfig {
136
158
export interface Input {
137
- protocol ?: Protocol < any , any >
159
+ protocol ?: Protocol < any , any > ;
138
160
}
139
- export interface PreviouslyResolved {
140
- httpHandler : HttpHandler ,
141
- protocolDefaultProvider : ( handler : HttpHandler ) => Protocol < HttpRequest , HttpResponse , HttpOptions >
142
- }
143
- export type Resolved = Required < Input >
144
- export function resolve < T > ( input : T & Input & PreviouslyResolved ) : T & Resolved {
161
+ interface PreviouslyResolved {
162
+ httpHandler : HttpHandler ;
163
+ protocolDefaultProvider : (
164
+ handler : HttpHandler
165
+ ) => Protocol < HttpRequest , HttpResponse , HttpOptions > ;
166
+ }
167
+ export type Resolved = Required < Input > ;
168
+ export function resolve < T > (
169
+ input : T & Input & PreviouslyResolved
170
+ ) : T & Resolved {
145
171
return {
146
172
...input ,
147
- protocol : input . protocol || input . protocolDefaultProvider ( input . httpHandler )
148
- }
173
+ protocol :
174
+ input . protocol || input . protocolDefaultProvider ( input . httpHandler )
175
+ } ;
149
176
}
150
- }
177
+ }
0 commit comments