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/@

19 lines (18 loc) 675 B
const REGEX_S3CONTROL_HOSTNAME = /^(.+\.)?s3-control(-fips)?[.-]([a-z0-9-]+)\./; export const getOutpostEndpoint = (hostname, { isCustomEndpoint, regionOverride, useFipsEndpoint }) => { if (isCustomEndpoint) { return hostname; } const match = hostname.match(REGEX_S3CONTROL_HOSTNAME); if (!match) { return hostname; } const [matched, prefix, fips, region] = hostname.match(REGEX_S3CONTROL_HOSTNAME); return [ `s3-outposts${useFipsEndpoint ? "-fips" : ""}`, regionOverride || region, hostname.replace(new RegExp(`^${matched}`), ""), ] .filter((part) => part !== undefined) .join("."); };