UNPKG

@shopgate/pwa-common-commerce

Version:

Commerce library for the Shopgate Connect PWA.

22 lines (21 loc) 631 B
import "core-js/modules/es.array.reduce.js"; import { PRODUCT_LIFETIME } from "../../constants"; /** * Builds state entries from a collection of products (Array). * @param {Array} products A products collection. * @return {Object} The product entries for the state. */ const handleProductCollection = products => { if (!Array.isArray(products)) { return {}; } return products.reduce((currentProducts, productData) => ({ ...currentProducts, [productData.id]: { productData, isFetching: false, expires: Date.now() + PRODUCT_LIFETIME } }), {}); }; export default handleProductCollection;