UNPKG

@aws-sdk/middleware-sdk-s3

Version:

[![NPM version](https://img.shields.io/npm/v/@aws-sdk/middleware-sdk-s3/latest.svg)](https://www.npmjs.com/package/@aws-sdk/middleware-sdk-s3) [![NPM downloads](https://img.shields.io/npm/dm/@aws-sdk/middleware-sdk-s3.svg)](https://www.npmjs.com/package/@

25 lines (24 loc) 999 B
export function locationConstraintMiddleware(options) { return (next) => async (args) => { const { CreateBucketConfiguration } = args.input; const region = await options.region(); if (!CreateBucketConfiguration?.LocationConstraint && !CreateBucketConfiguration?.Location) { if (region !== "us-east-1") { args.input.CreateBucketConfiguration = args.input.CreateBucketConfiguration ?? {}; args.input.CreateBucketConfiguration.LocationConstraint = region; } } return next(args); }; } export const locationConstraintMiddlewareOptions = { step: "initialize", tags: ["LOCATION_CONSTRAINT", "CREATE_BUCKET_CONFIGURATION"], name: "locationConstraintMiddleware", override: true, }; export const getLocationConstraintPlugin = (config) => ({ applyToStack: (clientStack) => { clientStack.add(locationConstraintMiddleware(config), locationConstraintMiddlewareOptions); }, });