Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
24 lines
999 B
Text
24 lines
999 B
Text
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);
|
|
},
|
|
});
|