UNPKG

@shopgate/engage

Version:
6 lines 2.23 kB
import*as React from'react';import PT from'prop-types';import{SurroundPortals}from'@shopgate/engage/components';import{CART_ITEM_IMAGE,CART_ITEM_NAME,CART_ITEM_COUPON_CODE,CART_ITEM_PRICE}from'@shopgate/pwa-common-commerce/cart';import Grid from'@shopgate/pwa-common/components/Grid';import{CartItemCouponIcon}from"./CartItemCouponIcon";import{CartItemCouponPrice}from"./CartItemCouponPrice";import{CartItemCouponFreeShipping}from"./CartItemCouponFreeShipping";import{CartItemCouponTitle}from"./CartItemCouponTitle";import{CartItemCouponCode}from"./CartItemCouponCode";import{CartItemCouponDelete}from"./CartItemCouponDelete";import{item,icon,content,contentLast}from"./CartItemCouponLayout.style";/** * The CouponLayout component. * @param {Object} props The component properties. * @param {Object} context The component context. * @returns {JSX} */export function CartItemCouponLayout(props,context){var coupon=props.coupon,currency=props.currency,handleDelete=props.handleDelete;return React.createElement(Grid,{className:item},React.createElement(Grid.Item,{className:icon},React.createElement(SurroundPortals,{portalName:CART_ITEM_IMAGE,portalProps:context},React.createElement(CartItemCouponIcon,null))),React.createElement(Grid.Item,{className:content,grow:1},React.createElement(SurroundPortals,{portalName:CART_ITEM_NAME,portalProps:context},React.createElement(CartItemCouponTitle,{value:coupon.label})),React.createElement(SurroundPortals,{portalName:CART_ITEM_COUPON_CODE,portalProps:context},React.createElement(CartItemCouponCode,{value:coupon.code}))),React.createElement(Grid.Item,{className:"".concat(content," ").concat(contentLast),grow:1,shrink:0},context.editable&&React.createElement(CartItemCouponDelete,{handleDelete:handleDelete}),React.createElement(CartItemCouponFreeShipping,{freeShipping:!!coupon.freeShipping}),coupon.savedPrice&&coupon.savedPrice.value>0&&React.createElement(SurroundPortals,{portalName:CART_ITEM_PRICE,portalProps:context},React.createElement(CartItemCouponPrice,{currency:currency,savedPrice:coupon.savedPrice}))));}CartItemCouponLayout.defaultProps={handleDelete:function handleDelete(){}};CartItemCouponLayout.contextTypes={cartItemId:PT.string,type:PT.string,editable:PT.bool};