import React from "react"; import { connect } from "react-redux"; import { userAddress, userFactor, dialog, menu, } from "../../../../../redux/actions"; //components import Button from "../../../../../components/Button"; import { Link, useNavigate } from "react-router-dom"; import editButton from "../../../../../assets/icons/edit.svg"; import trash from "../../../../../assets/icons/trash.svg"; const ProfileAddress = ({ addresses, update, getList, userId, userAddressId, getFactorInfo, loading, setPhase, isMobile, isDark, }) => { const navigation = useNavigate(); React.useEffect(() => { getFactorInfo({ userId }); getList(); }, []); return (
{addresses.map((address, index) => ( ))}
); }; const Location = ({ address, active, userId, isDark, update, setMenu, setDialog, deleteAddress, }) => { const [locationMenu, setLocationMenu] = React.useState(false); React.useEffect(() => { if (locationMenu) { setMenu(); } }, [locationMenu]); React.useEffect(() => { if (!menu) { setLocationMenu(false); } }, [menu]); const delAddress = (id) => { setMenu(); setDialog({ text: "آدرس رو حذف کنیم؟", type: "confirm", accept: () => deleteAddress({ id }), open: true, }); }; const clickOnMenu = (e) => { setLocationMenu(true); e.stopPropagation(); }; return (
active ? {} : update({ userAddressId: address.id, userId }) } >
{active && (
آدرس انتخابی شما فعال
)}
{"آدرس:" + " " + address.address} {"نام:" + " " + address.firstName + " " + address.lastName} {"کد پستی:" + " " + address.postalCode} {"شماره تماس:" + " " + address.cellphone}
{/* edit / delete button */}
delete-address
edit-address
); }; const mapStateToProps = (state) => ({ userId: state.user.status?.id, userAddressId: state.userFactor.info?.userAddressId, addresses: state.userAddress.list, isMobile: state.publicApi.isMobile, isDark: state.publicApi.isDark, }); const mapDispatchToProps = { getFactorInfo: userFactor.info, update: userFactor.update, getList: userAddress.list, deleteAddress: userAddress.del, setMenu: menu.set, setDialog: dialog.set, }; export default connect(mapStateToProps, mapDispatchToProps)(ProfileAddress);