@shopgate/engage
Version:
Shopgate's ENGAGE library.
3 lines • 4.97 kB
JavaScript
function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import React from'react';import{css}from'glamor';import PropTypes from'prop-types';import classNames from'classnames';import{i18n}from'@shopgate/engage/core';import{responsiveMediaQuery}from'@shopgate/engage/styles';import{useAddressBook,ADDRESS_TYPE_BILLING,ADDRESS_TYPE_SHIPPING}from'@shopgate/engage/checkout';import{RippleButton,Card,ContextMenu}from'@shopgate/engage/components';import iso3166 from"../../../components/Form/Builder/helpers/iso-3166-2";var styles={root:css(_defineProperty({padding:16,display:'flex',flexDirection:'column',width:'calc(50% - 16px)'},responsiveMediaQuery('<md',{webOnly:false}),{width:'100%'})).toString(),contextMenu:css({marginRight:-8,marginBottom:4}).toString(),header:css({display:'flex',flexDirection:'row'}).toString(),body:css(_defineProperty({display:'flex',flexDirection:'row',justifyContent:'space-between',height:'100%'},responsiveMediaQuery('<md',{webOnly:false}),{flexDirection:'column'})).toString(),column:css({display:'flex',flexDirection:'column'}).toString(),selectButtonColumn:css(_defineProperty({justifyContent:'flex-end',paddingLeft:8},responsiveMediaQuery('<md',{webOnly:false}),{paddingLeft:0})).toString(),name:css({color:'var(--color-text-high-emphasis)',flex:1,fontSize:16,fontWeight:'600'}).toString(),others:css({color:'var(--color-text-medium-emphasis)',fontSize:16}),defaultLabel:css({color:'var(--color-text-low-emphasis)',fontSize:15}).toString(),selectedLabel:css({color:'var(--color-text-high-emphasis)',fontSize:15,fontWeight:500,paddingTop:8}).toString(),button:css({'&&:disabled':{padding:'8px 0'},'&&':{marginTop:8,borderRadius:5,fontSize:14,padding:0,textTransform:'none'}}).toString(),ripple:css({padding:'8px 16px'}).toString()};/**
* @returns {JSX}
*/var ProfileAddressCard=function ProfileAddressCard(_ref){var _iso3166$contact$coun,_iso3166$contact$coun2;var contact=_ref.contact,deleteContact=_ref.deleteContact,editContact=_ref.editContact,selectContact=_ref.selectContact,selected=_ref.selected;var _useAddressBook=useAddressBook(),isCheckout=_useAddressBook.isCheckout,type=_useAddressBook.type;return React.createElement(Card,{className:styles.root},React.createElement("div",{className:styles.header},React.createElement("span",{className:styles.name},contact.middleName?"".concat(contact.firstName," ").concat(contact.middleName," ").concat(contact.lastName):"".concat(contact.firstName," ").concat(contact.lastName)),React.createElement(ContextMenu,{classes:{container:styles.contextMenu}},React.createElement(ContextMenu.Item,{onClick:editContact},i18n.text('account.profile.address_book.context.edit')),React.createElement(ContextMenu.Item,{onClick:deleteContact},i18n.text('account.profile.address_book.context.remove')))),React.createElement("div",{className:styles.body},React.createElement("div",{className:styles.column},!isCheckout&&contact.emailAddress?React.createElement("span",{className:styles.others},contact.emailAddress):null,contact.postalCode||contact.region||contact.city||contact.country?React.createElement("span",{className:styles.others},i18n.text('checkout.billing.address',{postalCode:contact.postalCode||'',region:(iso3166===null||iso3166===void 0?void 0:(_iso3166$contact$coun=iso3166[contact.country])===null||_iso3166$contact$coun===void 0?void 0:(_iso3166$contact$coun2=_iso3166$contact$coun.divisions)===null||_iso3166$contact$coun2===void 0?void 0:_iso3166$contact$coun2[contact.region])||contact.region||'',city:contact.city||'',country:contact.country||''})):null,contact.address1?React.createElement("span",{className:styles.others},contact.address1):null,contact.address2?React.createElement("span",{className:styles.others},contact.address2):null,contact.address3?React.createElement("span",{className:styles.others},contact.address3):null,contact.address4?React.createElement("span",{className:styles.others},contact.address4):null,!isCheckout&&contact.mobile?React.createElement("span",{className:styles.others},contact.mobile):null,(!isCheckout||type===ADDRESS_TYPE_BILLING)&&contact.isDefaultBilling?React.createElement("span",{className:styles.defaultLabel},i18n.text('account.profile.address_book.default_billing')):null,(!isCheckout||type===ADDRESS_TYPE_SHIPPING)&&contact.isDefaultShipping?React.createElement("span",{className:styles.defaultLabel},i18n.text('account.profile.address_book.default_shipping')):null),React.createElement("div",{className:classNames(styles.column,styles.selectButtonColumn)},isCheckout?React.createElement(RippleButton,{className:styles.button,rippleClassName:styles.ripple,type:"secondary",disabled:selected,onClick:selectContact},i18n.text("account.profile.address_book.".concat(selected?'selected':'select'))):null)));};ProfileAddressCard.defaultProps={selectContact:null,selected:false};export default ProfileAddressCard;