Home > widget-integration > CombinedProductListingsController > resolvePreOrderVariantOnChange
CombinedProductListingsController.resolvePreOrderVariantOnChange() method
Signature:
resolvePreOrderVariantOnChange(params: {
previousVariantId: string | number | undefined;
getVariantIdFromUrl: () => string;
getSelectedVariant: () => PreOrderVariant | null;
getFirstAvailableVariant: () => PreOrderVariant | null;
getProductIdFromPage: () => string | number | null;
getProductData: () => Record<string, unknown> | null;
fetchProductData: (productId: string | number) => Promise<unknown>;
getVariantById: (variantId: string | number) => PreOrderVariant | null;
maxAttempts?: number;
delayMs?: number;
}): Promise<{
variant: PreOrderVariant;
currentVariantId: string;
resolvedVariantSource: string;
} | null>;
Parameters
|
Parameter |
Type |
Description |
|---|---|---|
|
params |
{ previousVariantId: string | number | undefined; getVariantIdFromUrl: () => string; getSelectedVariant: () => PreOrderVariant | null; getFirstAvailableVariant: () => PreOrderVariant | null; getProductIdFromPage: () => string | number | null; getProductData: () => Record<string, unknown> | null; fetchProductData: (productId: string | number) => Promise<unknown>; getVariantById: (variantId: string | number) => PreOrderVariant | null; maxAttempts?: number; delayMs?: number; } |
Returns:
Promise<{ variant: PreOrderVariant; currentVariantId: string; resolvedVariantSource: string; } | null>