import { redirect } from "@shopify/remix-oxygen";
const ATTRIBUTION = [
"utm_source",
"utm_medium",
"utm_campaign",
"utm_content",
"utm_term",
] as const;
export async function action({ context, request }: ActionFunctionArgs) {
const cart = await context.cart.get(); // ваш спосіб отримати cart
const cartToken = cart?.id; // або token — те, що резолвить Storefront API
const slug = context.env.PUBLIC_STORE_DOMAIN.replace(/\.myshopify\.com$/, "");
if (!cartToken) {
return redirect("/cart");
}
const incoming = new URL(request.url);
const extra: Record<string, string> = {};
for (const key of ATTRIBUTION) {
const value = incoming.searchParams.get(key);
if (value) {
extra[key] = value;
}
}
return redirect(plataCheckoutUrl(slug, cartToken, extra));
}