in process_api/cartridges/app_storefront_custom/cartridge/scripts/helpers/productHelpers.js [173:196]
function getVariationModel(product, productVariables) {
var variationModel = product.variationModel;
if (!variationModel.master && !variationModel.selectedVariant) {
variationModel = null;
} else if (productVariables) {
var variationAttrs = variationModel.productVariationAttributes;
Object.keys(productVariables).forEach(function (attr) {
if (attr && productVariables[attr].value) {
var dwAttr = collections.find(variationAttrs,
function (item) {
return item.ID === attr;
});
var dwAttrValue = collections.find(variationModel.getAllValues(dwAttr),
function (item) {
return item.value === productVariables[attr].value;
});
if (dwAttr && dwAttrValue) {
variationModel.setSelectedAttributeValue(dwAttr.ID, dwAttrValue.ID);
}
}
});
}
return variationModel;
}