@automattic/mini-cart
Version:
A simple wp.com shopping-cart interface.
31 lines • 2.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MiniCartLineItems = MiniCartLineItems;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const wpcom_checkout_1 = require("@automattic/wpcom-checkout");
const styled_1 = tslib_1.__importDefault(require("@emotion/styled"));
const MiniCartLineItemsWrapper = styled_1.default.ul `
border-top: 1px solid ${(props) => props.theme.colors.borderColorLight};
box-sizing: border-box;
margin: 20px 0;
padding: 0;
overflow-y: auto;
max-height: 50vh;
scrollbar-color: var( --color-text, #000 ) var( --color-surface, #fff );
`;
const MiniCartLineItemWrapper = styled_1.default.li `
margin: 0;
padding: 0;
display: block;
list-style: none;
`;
function MiniCartLineItems({ removeProductFromCart, addProductsToCart, removeCoupon, createUserAndSiteBeforeTransaction, responseCart, }) {
const creditsLineItem = (0, wpcom_checkout_1.getCreditsLineItemFromCart)(responseCart);
const couponLineItem = (0, wpcom_checkout_1.getCouponLineItemFromCart)(responseCart);
const [restorableProducts, setRestorableProducts] = (0, wpcom_checkout_1.useRestorableProducts)();
return ((0, jsx_runtime_1.jsxs)(MiniCartLineItemsWrapper, { className: "mini-cart-line-items", children: [responseCart.products.map((product) => {
return ((0, jsx_runtime_1.jsx)(MiniCartLineItemWrapper, { children: (0, jsx_runtime_1.jsx)(wpcom_checkout_1.LineItem, { product: product, hasDeleteButton: (0, wpcom_checkout_1.canItemBeRemovedFromCart)(product, responseCart), removeProductFromCart: removeProductFromCart, createUserAndSiteBeforeTransaction: createUserAndSiteBeforeTransaction, responseCart: responseCart, isRestorable: true, restorableProducts: restorableProducts, setRestorableProducts: setRestorableProducts }) }, product.uuid));
}), restorableProducts.map((product) => ((0, jsx_runtime_1.jsx)(wpcom_checkout_1.RemovedFromCartItem, { product: product, addProductsToCart: addProductsToCart }, product.uuid))), couponLineItem && ((0, jsx_runtime_1.jsx)(MiniCartLineItemWrapper, { children: (0, jsx_runtime_1.jsx)(wpcom_checkout_1.NonProductLineItem, { lineItem: couponLineItem, removeProductFromCart: removeCoupon, createUserAndSiteBeforeTransaction: createUserAndSiteBeforeTransaction, hasDeleteButton: couponLineItem.hasDeleteButton }) }, couponLineItem.id)), creditsLineItem && responseCart.sub_total_integer > 0 && ((0, jsx_runtime_1.jsx)(wpcom_checkout_1.NonProductLineItem, { subtotal: true, lineItem: creditsLineItem }))] }));
}
//# sourceMappingURL=mini-cart-line-items.js.map