@aws-sdk/middleware-sdk-s3-control 3.895.0 → 3.910.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-cjs/index.js +199 -251
- package/package.json +8 -8
package/dist-cjs/index.js
CHANGED
|
@@ -1,270 +1,218 @@
|
|
|
1
|
-
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
-
};
|
|
11
|
-
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
-
for (let key of __getOwnPropNames(from))
|
|
14
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
1
|
+
'use strict';
|
|
20
2
|
|
|
21
|
-
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
getHostPrefixDeduplicationPlugin: () => getHostPrefixDeduplicationPlugin,
|
|
26
|
-
getProcessArnablesPlugin: () => getProcessArnablesPlugin,
|
|
27
|
-
getRedirectFromPostIdPlugin: () => getRedirectFromPostIdPlugin,
|
|
28
|
-
hostPrefixDeduplicationMiddleware: () => hostPrefixDeduplicationMiddleware,
|
|
29
|
-
hostPrefixDeduplicationMiddlewareOptions: () => hostPrefixDeduplicationMiddlewareOptions,
|
|
30
|
-
parseOutpostArnablesMiddleaware: () => parseOutpostArnablesMiddleaware,
|
|
31
|
-
parseOutpostArnablesMiddleawareOptions: () => parseOutpostArnablesMiddleawareOptions,
|
|
32
|
-
redirectFromPostIdMiddleware: () => redirectFromPostIdMiddleware,
|
|
33
|
-
redirectFromPostIdMiddlewareOptions: () => redirectFromPostIdMiddlewareOptions,
|
|
34
|
-
resolveS3ControlConfig: () => resolveS3ControlConfig,
|
|
35
|
-
updateArnablesRequestMiddleware: () => updateArnablesRequestMiddleware,
|
|
36
|
-
updateArnablesRequestMiddlewareOptions: () => updateArnablesRequestMiddlewareOptions
|
|
37
|
-
});
|
|
38
|
-
module.exports = __toCommonJS(index_exports);
|
|
3
|
+
var middlewareBucketEndpoint = require('@aws-sdk/middleware-bucket-endpoint');
|
|
4
|
+
var utilArnParser = require('@aws-sdk/util-arn-parser');
|
|
5
|
+
var utilEndpoints = require('@aws-sdk/util-endpoints');
|
|
6
|
+
var protocolHttp = require('@smithy/protocol-http');
|
|
39
7
|
|
|
40
|
-
// src/configurations.ts
|
|
41
|
-
var import_middleware_bucket_endpoint = require("@aws-sdk/middleware-bucket-endpoint");
|
|
42
8
|
function resolveS3ControlConfig(input) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
9
|
+
const { useArnRegion } = input;
|
|
10
|
+
return Object.assign(input, {
|
|
11
|
+
useArnRegion: typeof useArnRegion === "function" ? useArnRegion : () => Promise.resolve(useArnRegion),
|
|
12
|
+
});
|
|
47
13
|
}
|
|
48
|
-
__name(resolveS3ControlConfig, "resolveS3ControlConfig");
|
|
49
|
-
|
|
50
|
-
// src/process-arnables-plugin/parse-outpost-arnables.ts
|
|
51
14
|
|
|
52
|
-
|
|
53
|
-
|
|
15
|
+
const CONTEXT_OUTPOST_ID = "outpost_id";
|
|
16
|
+
const CONTEXT_ACCOUNT_ID = "account_id";
|
|
17
|
+
const CONTEXT_ARN_REGION = "outpost_arn_region";
|
|
18
|
+
const CONTEXT_SIGNING_SERVICE = "signing_service";
|
|
19
|
+
const CONTEXT_SIGNING_REGION = "signing_region";
|
|
54
20
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
let clientPartition;
|
|
73
|
-
let signingRegion;
|
|
74
|
-
if (options.regionInfoProvider) {
|
|
75
|
-
({ partition: clientPartition, signingRegion = baseRegion } = await options.regionInfoProvider(baseRegion, {
|
|
76
|
-
useFipsEndpoint,
|
|
77
|
-
useDualstackEndpoint
|
|
78
|
-
}));
|
|
79
|
-
} else {
|
|
80
|
-
signingRegion = context.endpointV2?.properties?.authSchemes?.[0]?.signingRegion || baseRegion;
|
|
81
|
-
clientPartition = (0, import_util_endpoints.partition)(signingRegion).name;
|
|
82
|
-
}
|
|
83
|
-
const validatorOptions = {
|
|
84
|
-
useFipsEndpoint,
|
|
85
|
-
useDualstackEndpoint,
|
|
86
|
-
clientRegion,
|
|
87
|
-
clientPartition,
|
|
88
|
-
signingRegion,
|
|
89
|
-
useArnRegion
|
|
90
|
-
};
|
|
91
|
-
let arn;
|
|
92
|
-
if (parameter === "Name") {
|
|
93
|
-
arn = (0, import_util_arn_parser.parse)(input.Name);
|
|
94
|
-
validateOutpostsArn(arn, validatorOptions);
|
|
95
|
-
const { outpostId, accesspointName } = parseOutpostsAccessPointArnResource(arn.resource);
|
|
96
|
-
input.Name = accesspointName;
|
|
97
|
-
context[CONTEXT_OUTPOST_ID] = outpostId;
|
|
98
|
-
} else {
|
|
99
|
-
arn = (0, import_util_arn_parser.parse)(input.Bucket);
|
|
100
|
-
validateOutpostsArn(arn, validatorOptions);
|
|
101
|
-
const { outpostId, bucketName } = parseOutpostBucketArnResource(arn.resource);
|
|
102
|
-
input.Bucket = bucketName;
|
|
103
|
-
context[CONTEXT_OUTPOST_ID] = outpostId;
|
|
104
|
-
}
|
|
105
|
-
context[CONTEXT_SIGNING_SERVICE] = arn.service;
|
|
106
|
-
context[CONTEXT_SIGNING_REGION] = useArnRegion ? arn.region : signingRegion;
|
|
107
|
-
if (!input.AccountId) {
|
|
108
|
-
input.AccountId = arn.accountId;
|
|
109
|
-
}
|
|
110
|
-
if (useArnRegion) context[CONTEXT_ARN_REGION] = arn.region;
|
|
111
|
-
return next(args);
|
|
112
|
-
}, "parseOutpostArnablesMiddleaware");
|
|
113
|
-
var parseOutpostArnablesMiddleawareOptions = {
|
|
114
|
-
toMiddleware: "serializerMiddleware",
|
|
115
|
-
relation: "before",
|
|
116
|
-
tags: ["CONVERT_ARN", "OUTPOST_BUCKET_ARN", "OUTPOST_ACCESS_POINT_ARN", "OUTPOST"],
|
|
117
|
-
name: "parseOutpostArnablesMiddleaware"
|
|
118
|
-
};
|
|
119
|
-
var validateOutpostsArn = /* @__PURE__ */ __name((arn, { clientPartition }) => {
|
|
120
|
-
const { service, partition: partition2, accountId, region } = arn;
|
|
121
|
-
(0, import_middleware_bucket_endpoint.validateOutpostService)(service);
|
|
122
|
-
(0, import_middleware_bucket_endpoint.validatePartition)(partition2, { clientPartition });
|
|
123
|
-
(0, import_middleware_bucket_endpoint.validateAccountId)(accountId);
|
|
124
|
-
}, "validateOutpostsArn");
|
|
125
|
-
var parseOutpostsAccessPointArnResource = /* @__PURE__ */ __name((resource) => {
|
|
126
|
-
const { outpostId, accesspointName } = (0, import_middleware_bucket_endpoint.getArnResources)(resource);
|
|
127
|
-
if (!outpostId) {
|
|
128
|
-
throw new Error("ARN resource should begin with 'outpost'");
|
|
129
|
-
}
|
|
130
|
-
return {
|
|
131
|
-
outpostId,
|
|
132
|
-
accesspointName
|
|
133
|
-
};
|
|
134
|
-
}, "parseOutpostsAccessPointArnResource");
|
|
135
|
-
var parseOutpostBucketArnResource = /* @__PURE__ */ __name((resource) => {
|
|
136
|
-
const delimiter = resource.includes(":") ? ":" : "/";
|
|
137
|
-
const [resourceType, ...rest] = resource.split(delimiter);
|
|
138
|
-
if (resourceType === "outpost") {
|
|
139
|
-
if (!rest[0] || rest[1] !== "bucket" || !rest[2] || rest.length !== 3) {
|
|
140
|
-
throw new Error(
|
|
141
|
-
`Outpost Bucket ARN should have resource outpost${delimiter}{outpostId}${delimiter}bucket${delimiter}{bucketName}`
|
|
142
|
-
);
|
|
21
|
+
const parseOutpostArnablesMiddleaware = (options) => (next, context) => async (args) => {
|
|
22
|
+
const { input } = args;
|
|
23
|
+
const parameter = input.Name && utilArnParser.validate(input.Name) ? "Name" : input.Bucket && utilArnParser.validate(input.Bucket) ? "Bucket" : undefined;
|
|
24
|
+
if (!parameter)
|
|
25
|
+
return next(args);
|
|
26
|
+
const clientRegion = await options.region();
|
|
27
|
+
const useArnRegion = await options.useArnRegion();
|
|
28
|
+
const useFipsEndpoint = await options.useFipsEndpoint();
|
|
29
|
+
const useDualstackEndpoint = await options.useDualstackEndpoint();
|
|
30
|
+
const baseRegion = clientRegion;
|
|
31
|
+
let clientPartition;
|
|
32
|
+
let signingRegion;
|
|
33
|
+
if (options.regionInfoProvider) {
|
|
34
|
+
({ partition: clientPartition, signingRegion = baseRegion } = (await options.regionInfoProvider(baseRegion, {
|
|
35
|
+
useFipsEndpoint,
|
|
36
|
+
useDualstackEndpoint,
|
|
37
|
+
})));
|
|
143
38
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
// src/process-arnables-plugin/update-arnables-request.ts
|
|
173
|
-
var ACCOUNT_ID_HEADER = "x-amz-account-id";
|
|
174
|
-
var OUTPOST_ID_HEADER = "x-amz-outpost-id";
|
|
175
|
-
var updateArnablesRequestMiddleware = /* @__PURE__ */ __name((config) => (next, context) => async (args) => {
|
|
176
|
-
const { request } = args;
|
|
177
|
-
if (!import_protocol_http.HttpRequest.isInstance(request)) {
|
|
39
|
+
else {
|
|
40
|
+
signingRegion = context.endpointV2?.properties?.authSchemes?.[0]?.signingRegion || baseRegion;
|
|
41
|
+
clientPartition = utilEndpoints.partition(signingRegion).name;
|
|
42
|
+
}
|
|
43
|
+
const validatorOptions = {
|
|
44
|
+
clientPartition};
|
|
45
|
+
let arn;
|
|
46
|
+
if (parameter === "Name") {
|
|
47
|
+
arn = utilArnParser.parse(input.Name);
|
|
48
|
+
validateOutpostsArn(arn, validatorOptions);
|
|
49
|
+
const { outpostId, accesspointName } = parseOutpostsAccessPointArnResource(arn.resource);
|
|
50
|
+
input.Name = accesspointName;
|
|
51
|
+
context[CONTEXT_OUTPOST_ID] = outpostId;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
arn = utilArnParser.parse(input.Bucket);
|
|
55
|
+
validateOutpostsArn(arn, validatorOptions);
|
|
56
|
+
const { outpostId, bucketName } = parseOutpostBucketArnResource(arn.resource);
|
|
57
|
+
input.Bucket = bucketName;
|
|
58
|
+
context[CONTEXT_OUTPOST_ID] = outpostId;
|
|
59
|
+
}
|
|
60
|
+
context[CONTEXT_SIGNING_SERVICE] = arn.service;
|
|
61
|
+
context[CONTEXT_SIGNING_REGION] = useArnRegion ? arn.region : signingRegion;
|
|
62
|
+
if (!input.AccountId) {
|
|
63
|
+
input.AccountId = arn.accountId;
|
|
64
|
+
}
|
|
65
|
+
if (useArnRegion)
|
|
66
|
+
context[CONTEXT_ARN_REGION] = arn.region;
|
|
178
67
|
return next(args);
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
68
|
+
};
|
|
69
|
+
const parseOutpostArnablesMiddleawareOptions = {
|
|
70
|
+
toMiddleware: "serializerMiddleware",
|
|
71
|
+
relation: "before",
|
|
72
|
+
tags: ["CONVERT_ARN", "OUTPOST_BUCKET_ARN", "OUTPOST_ACCESS_POINT_ARN", "OUTPOST"],
|
|
73
|
+
name: "parseOutpostArnablesMiddleaware",
|
|
74
|
+
};
|
|
75
|
+
const validateOutpostsArn = (arn, { clientPartition }) => {
|
|
76
|
+
const { service, partition, accountId, region } = arn;
|
|
77
|
+
middlewareBucketEndpoint.validateOutpostService(service);
|
|
78
|
+
middlewareBucketEndpoint.validatePartition(partition, { clientPartition });
|
|
79
|
+
middlewareBucketEndpoint.validateAccountId(accountId);
|
|
80
|
+
};
|
|
81
|
+
const parseOutpostsAccessPointArnResource = (resource) => {
|
|
82
|
+
const { outpostId, accesspointName } = middlewareBucketEndpoint.getArnResources(resource);
|
|
83
|
+
if (!outpostId) {
|
|
84
|
+
throw new Error("ARN resource should begin with 'outpost'");
|
|
85
|
+
}
|
|
86
|
+
return {
|
|
87
|
+
outpostId,
|
|
88
|
+
accesspointName,
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
const parseOutpostBucketArnResource = (resource) => {
|
|
92
|
+
const delimiter = resource.includes(":") ? ":" : "/";
|
|
93
|
+
const [resourceType, ...rest] = resource.split(delimiter);
|
|
94
|
+
if (resourceType === "outpost") {
|
|
95
|
+
if (!rest[0] || rest[1] !== "bucket" || !rest[2] || rest.length !== 3) {
|
|
96
|
+
throw new Error(`Outpost Bucket ARN should have resource outpost${delimiter}{outpostId}${delimiter}bucket${delimiter}{bucketName}`);
|
|
97
|
+
}
|
|
98
|
+
const [outpostId, _, bucketName] = rest;
|
|
99
|
+
return { outpostId, bucketName };
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
throw new Error(`ARN resource should begin with 'outpost${delimiter}'`);
|
|
103
|
+
}
|
|
200
104
|
};
|
|
201
105
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
106
|
+
const REGEX_S3CONTROL_HOSTNAME = /^(.+\.)?s3-control(-fips)?[.-]([a-z0-9-]+)\./;
|
|
107
|
+
const getOutpostEndpoint = (hostname, { isCustomEndpoint, regionOverride, useFipsEndpoint }) => {
|
|
108
|
+
if (isCustomEndpoint) {
|
|
109
|
+
return hostname;
|
|
110
|
+
}
|
|
111
|
+
const match = hostname.match(REGEX_S3CONTROL_HOSTNAME);
|
|
112
|
+
if (!match) {
|
|
113
|
+
return hostname;
|
|
114
|
+
}
|
|
115
|
+
const [matched, prefix, fips, region] = hostname.match(REGEX_S3CONTROL_HOSTNAME);
|
|
116
|
+
return [
|
|
117
|
+
`s3-outposts${useFipsEndpoint ? "-fips" : ""}`,
|
|
118
|
+
regionOverride || region,
|
|
119
|
+
hostname.replace(new RegExp(`^${matched}`), ""),
|
|
120
|
+
]
|
|
121
|
+
.filter((part) => part !== undefined)
|
|
122
|
+
.join(".");
|
|
123
|
+
};
|
|
209
124
|
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
125
|
+
const ACCOUNT_ID_HEADER = "x-amz-account-id";
|
|
126
|
+
const OUTPOST_ID_HEADER = "x-amz-outpost-id";
|
|
127
|
+
const updateArnablesRequestMiddleware = (config) => (next, context) => async (args) => {
|
|
128
|
+
const { request } = args;
|
|
129
|
+
if (!protocolHttp.HttpRequest.isInstance(request)) {
|
|
130
|
+
return next(args);
|
|
131
|
+
}
|
|
132
|
+
if (context[CONTEXT_ACCOUNT_ID]) {
|
|
133
|
+
request.headers[ACCOUNT_ID_HEADER] = context[CONTEXT_ACCOUNT_ID];
|
|
134
|
+
}
|
|
135
|
+
if (context[CONTEXT_OUTPOST_ID]) {
|
|
136
|
+
const { isCustomEndpoint } = config;
|
|
137
|
+
const useFipsEndpoint = await config.useFipsEndpoint();
|
|
138
|
+
request.headers[OUTPOST_ID_HEADER] = context[CONTEXT_OUTPOST_ID];
|
|
139
|
+
request.hostname = getOutpostEndpoint(request.hostname, {
|
|
140
|
+
isCustomEndpoint,
|
|
141
|
+
regionOverride: context[CONTEXT_ARN_REGION],
|
|
142
|
+
useFipsEndpoint,
|
|
143
|
+
});
|
|
144
|
+
}
|
|
213
145
|
return next(args);
|
|
214
|
-
};
|
|
215
|
-
}, "hostPrefixDeduplicationMiddleware");
|
|
216
|
-
var hostPrefixDeduplicationMiddlewareOptions = {
|
|
217
|
-
tags: ["HOST_PREFIX_DEDUPLICATION", "ENDPOINT_V2", "ENDPOINT"],
|
|
218
|
-
toMiddleware: "serializerMiddleware",
|
|
219
|
-
relation: "after",
|
|
220
|
-
name: "hostPrefixDeduplicationMiddleware",
|
|
221
|
-
override: true
|
|
222
146
|
};
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
147
|
+
const updateArnablesRequestMiddlewareOptions = {
|
|
148
|
+
toMiddleware: "serializerMiddleware",
|
|
149
|
+
relation: "after",
|
|
150
|
+
name: "updateArnablesRequestMiddleware",
|
|
151
|
+
tags: ["ACCOUNT_ID", "OUTPOST_ID", "OUTPOST"],
|
|
152
|
+
};
|
|
228
153
|
|
|
229
|
-
|
|
154
|
+
const getProcessArnablesPlugin = (options) => ({
|
|
155
|
+
applyToStack: (clientStack) => {
|
|
156
|
+
clientStack.addRelativeTo(parseOutpostArnablesMiddleaware(options), parseOutpostArnablesMiddleawareOptions);
|
|
157
|
+
clientStack.addRelativeTo(updateArnablesRequestMiddleware(options), updateArnablesRequestMiddlewareOptions);
|
|
158
|
+
},
|
|
159
|
+
});
|
|
230
160
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
var redirectFromPostIdMiddlewareOptions = {
|
|
243
|
-
step: "build",
|
|
244
|
-
name: "redirectFromPostIdMiddleware",
|
|
245
|
-
tags: ["OUTPOST"],
|
|
246
|
-
override: true
|
|
161
|
+
const hostPrefixDeduplicationMiddleware = () => {
|
|
162
|
+
return (next, context) => (args) => {
|
|
163
|
+
return next(args);
|
|
164
|
+
};
|
|
165
|
+
};
|
|
166
|
+
const hostPrefixDeduplicationMiddlewareOptions = {
|
|
167
|
+
tags: ["HOST_PREFIX_DEDUPLICATION", "ENDPOINT_V2", "ENDPOINT"],
|
|
168
|
+
toMiddleware: "serializerMiddleware",
|
|
169
|
+
relation: "after",
|
|
170
|
+
name: "hostPrefixDeduplicationMiddleware",
|
|
171
|
+
override: true,
|
|
247
172
|
};
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
})
|
|
253
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
173
|
+
const getHostPrefixDeduplicationPlugin = (config) => ({
|
|
174
|
+
applyToStack: (clientStack) => {
|
|
175
|
+
clientStack.addRelativeTo(hostPrefixDeduplicationMiddleware(), hostPrefixDeduplicationMiddlewareOptions);
|
|
176
|
+
},
|
|
177
|
+
});
|
|
254
178
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
179
|
+
const redirectFromPostIdMiddleware = (config) => (next, context) => async (args) => {
|
|
180
|
+
const { input, request } = args;
|
|
181
|
+
if (!protocolHttp.HttpRequest.isInstance(request))
|
|
182
|
+
return next(args);
|
|
183
|
+
if (input.OutpostId) {
|
|
184
|
+
const { isCustomEndpoint } = config;
|
|
185
|
+
const useFipsEndpoint = await config.useFipsEndpoint();
|
|
186
|
+
request.hostname = getOutpostEndpoint(request.hostname, { isCustomEndpoint, useFipsEndpoint });
|
|
187
|
+
context[CONTEXT_SIGNING_SERVICE] = "s3-outposts";
|
|
188
|
+
}
|
|
189
|
+
return next(args);
|
|
190
|
+
};
|
|
191
|
+
const redirectFromPostIdMiddlewareOptions = {
|
|
192
|
+
step: "build",
|
|
193
|
+
name: "redirectFromPostIdMiddleware",
|
|
194
|
+
tags: ["OUTPOST"],
|
|
195
|
+
override: true,
|
|
196
|
+
};
|
|
197
|
+
const getRedirectFromPostIdPlugin = (options) => ({
|
|
198
|
+
applyToStack: (clientStack) => {
|
|
199
|
+
clientStack.add(redirectFromPostIdMiddleware(options), redirectFromPostIdMiddlewareOptions);
|
|
200
|
+
},
|
|
269
201
|
});
|
|
270
202
|
|
|
203
|
+
Object.defineProperty(exports, "NODE_USE_ARN_REGION_CONFIG_OPTIONS", {
|
|
204
|
+
enumerable: true,
|
|
205
|
+
get: function () { return middlewareBucketEndpoint.NODE_USE_ARN_REGION_CONFIG_OPTIONS; }
|
|
206
|
+
});
|
|
207
|
+
exports.getHostPrefixDeduplicationPlugin = getHostPrefixDeduplicationPlugin;
|
|
208
|
+
exports.getProcessArnablesPlugin = getProcessArnablesPlugin;
|
|
209
|
+
exports.getRedirectFromPostIdPlugin = getRedirectFromPostIdPlugin;
|
|
210
|
+
exports.hostPrefixDeduplicationMiddleware = hostPrefixDeduplicationMiddleware;
|
|
211
|
+
exports.hostPrefixDeduplicationMiddlewareOptions = hostPrefixDeduplicationMiddlewareOptions;
|
|
212
|
+
exports.parseOutpostArnablesMiddleaware = parseOutpostArnablesMiddleaware;
|
|
213
|
+
exports.parseOutpostArnablesMiddleawareOptions = parseOutpostArnablesMiddleawareOptions;
|
|
214
|
+
exports.redirectFromPostIdMiddleware = redirectFromPostIdMiddleware;
|
|
215
|
+
exports.redirectFromPostIdMiddlewareOptions = redirectFromPostIdMiddlewareOptions;
|
|
216
|
+
exports.resolveS3ControlConfig = resolveS3ControlConfig;
|
|
217
|
+
exports.updateArnablesRequestMiddleware = updateArnablesRequestMiddleware;
|
|
218
|
+
exports.updateArnablesRequestMiddlewareOptions = updateArnablesRequestMiddlewareOptions;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/middleware-sdk-s3-control",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.910.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
|
|
6
6
|
"build:cjs": "node ../../scripts/compilation/inline middleware-sdk-s3-control",
|
|
@@ -25,17 +25,17 @@
|
|
|
25
25
|
},
|
|
26
26
|
"license": "Apache-2.0",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@aws-sdk/middleware-bucket-endpoint": "3.
|
|
29
|
-
"@aws-sdk/types": "3.
|
|
28
|
+
"@aws-sdk/middleware-bucket-endpoint": "3.910.0",
|
|
29
|
+
"@aws-sdk/types": "3.910.0",
|
|
30
30
|
"@aws-sdk/util-arn-parser": "3.893.0",
|
|
31
|
-
"@aws-sdk/util-endpoints": "3.
|
|
32
|
-
"@smithy/protocol-http": "^5.2
|
|
33
|
-
"@smithy/types": "^4.
|
|
34
|
-
"@smithy/util-endpoints": "^3.
|
|
31
|
+
"@aws-sdk/util-endpoints": "3.910.0",
|
|
32
|
+
"@smithy/protocol-http": "^5.3.2",
|
|
33
|
+
"@smithy/types": "^4.7.1",
|
|
34
|
+
"@smithy/util-endpoints": "^3.2.2",
|
|
35
35
|
"tslib": "^2.6.2"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@smithy/middleware-stack": "^4.
|
|
38
|
+
"@smithy/middleware-stack": "^4.2.2",
|
|
39
39
|
"@tsconfig/recommended": "1.0.1",
|
|
40
40
|
"concurrently": "7.0.0",
|
|
41
41
|
"downlevel-dts": "0.10.1",
|