{"version":3,"sources":["context/State.js","config/config.js","components/Footer.js","Getdata.js","components/subHeader/RightNav.js","components/subHeader/Burger.js","components/SiteHeader.js","Spinner.js","components/subHome/Row0.js","components/subHome/Row1.js","components/subHome/Row5.js","firebase.js","Getcat.js","components/subHome/MenuNav.js","components/subHome/Menu.js","components/subHome/Banner_menu.js","components/subHome/Slide.js","components/subHome/Row3.js","components/subHome/Row4.js","components/subHome/Client.js","components/subHome/Mission.js","components/Home.js","components/productComponents/ItemCard.js","components/productComponents/Filter.js","components/productComponents/MenClothing.js","components/productComponents/WomenClothing.js","components/productComponents/MobileCovers.js","Getpro.js","components/productComponents/Products.js","components/productComponents/SearchProducts.js","components/productComponents/Events.js","context/Reducer.js","components/checkouts/Product.js","Getgen.js","components/checkouts/Checkout.js","components/subHeader/Login.js","components/subHeader/Signup.js","components/checkouts/Wishlist.js","components/subHeader/Verification.js","components/subHeader/ForgetPassword.js","admin/Profile.js","admin/Setting.js","admin/OrderHistory.js","admin/Logout.js","admin/CartMenu.js","admin/WishList.js","admin/Shopping.js","admin/Admin.js","components/productComponents/ProductDetails.js","components/checkouts/Invoice.js","components/About.js","components/Story.js","components/checkouts/Cancel.js","components/checkouts/Fail.js","components/Contact.js","components/TermsCondition.js","components/PrivacyPolicy.js","components/ReturnPolicy.js","components/BottomNav.js","App.js","reportWebVitals.js","index.js"],"names":["StateContext","createContext","State","reducer","initialState","children","Provider","value","useReducer","useStateValue","useContext","config","API","Footer","useState","email","setEmail","Container","fluid","style","padding","paddingTop","FOOTER","Row","Col","sm","md","Heading","ListGroup","Ul","href","paddingBottom","Form","inline","InputGroup","Emailinput","name","onChange","e","target","placeholder","Prepend","BUTTON","type","onClick","preventDefault","myHeaders","Headers","append","urlencoded","URLSearchParams","requestOptions","method","headers","body","redirect","fetch","then","response","json","result","JSON","parse","msg","alert","catch","error","className","Image","height","width","src","DevInfo","styled","div","ul","h5","input","button","GetData","collection","basics","setBasic","loading","setLoading","useEffect","data","StyledBadge","withStyles","theme","badge","right","top","fontWeight","fontSize","minWidth","background","Badge","useStyles","makeStyles","root","display","marginTop","RightNav","open","classes","history","useHistory","bag","user","wishlist","anchorRef","React","useRef","pop","setPop","search","setSearch","currentPath","window","location","pathname","handleClose","event","current","contains","handleListKeyDown","key","prevOpen","focus","handleLogout","localStorage","removeItem","reload","Div","DIV","id","to","checked","getItem","onlabel","offlabel","onstyle","offstyle","setItem","push","LanguageChange","flex","paddingRight","flexWrap","FormControl","aria-describedby","onKeyDown","_handleKeyDown","Button","borderStyle","borderRadius","viewBox","xmlns","fill","fillRule","d","IconGroup","Icon","ref","prevPop","CustomerName","Popper","anchorEl","role","undefined","transition","disablePortal","TransitionProps","placement","Grow","transformOrigin","Paper","ClickAwayListener","onClickAway","MenuList","autoFocusItem","exact","MenuItem","Android","marginRight","Divider","AccountCircle","History","Notifications","variant","ExitToApp","title","SPAN","displayName","Fab","size","aria-label","badgeContent","length","color","Favorite","ShoppingCart","span","StyledBurger","Burger","setOpen","SiteHeader","Styles","Navbar","expand","alignItems","marginBottom","justifyContent","Brand","objectFit","alt","MyLoader","speed","x","y","rx","ry","ImageGrid","backgroundColor","foregroundColor","Catalog","Row0","Row2","props","Row5","getData","category","firebase","initializeApp","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","firestore","auth","GetCat","setCategory","categories","MenuNav","getCat","map","tagg","Slug","CategoryName","Menu","Banner_menu","Slide","Carousel","Item","filter","s","BasicTypeId","basic","url","ImageURL","Caption","textAlign","Title","Content","slice","float","toLowerCase","replace","WhiteSpace","Row3","cat","thumbnail","Row4","xs","Client","swipeable","draggable","showDots","responsive","desktop","breakpoint","max","min","items","paritialVisibilityGutter","tablet","mobile","ssr","infinite","autoPlay","autoPlaySpeed","keyBoardControl","customTransition","transitionDuration","containerClass","removeArrowOnDeviceType","deviceType","dotListClass","itemClass","_","i","Mission","about","find","Home","dispatch","timing","setTimeout","clearTimeout","Desktop","useMediaQuery","big","Row1","textTransform","SmallSpace","ItemCard","pName","image","rating","price","originalPrice","slug","Msg","LocalMall","Card","Img","Body","OriginalPrice","RoundDiv","item","quantity","status","toast","parseInt","Star","Filter","SPACE","Category","listStyle","AvgReview","Rating","defaultValue","readOnly","Price","Size","Color","Box","bgcolor","component","p","MenClothing","docs","console","log","Breadcrumbs","FilterStyle","CardStyle","doc","image1","offer_price","regular_price","WomenClothing","MobileCovers","GetPro","product","setProduct","products","flexDirection","margin","spacing","Products","getPro","useParams","cat_id","CategoryId","Breadcrumb","active","pro","ProductId","ProductName","ImageList","Address","ReviewList","reduce","a","v","PriceUSD","DiscountUSD","PriceBDT","DiscountBDT","includes","toFixed","Events","TotalRating","cart","wlist","StorageWishlist","stringify","getBagTotal","Storage","amount","state","action","findIndex","indexWish","wishlistItem","newwishlist","splice","warn","index","bagItem","newbag","Product","ischeck","SetIscheck","PRODUCT","check","decrease","cursor","increase","Delete","Dialog","onClose","aria-labelledby","DialogTitle","Line","DialogContent","DialogContentText","DialogActions","GetGen","tag","setTag","countries","setCountry","districts","setDistrict","tags","Checkout","address1","postalcode1","CountryName1","city1","alterphone1","bagLength","getGen","isBangladesh","setIsBnangladesh","ischeck1","SetIscheck1","payment","SetPayment","ShippingCost","setShippingCost","isPayment","trim","ShippingAddress","PostalCode","Country","City","PhoneNumber","address","setAddress","postalcode","setPostalcode","CountryName","setCountryName","city","setCity","alterphone","setAlterphobe","Emptybag","for","class","handleSelect","country","selected","Name","Id","districtSelect","district","Number","displayType","thousandSeparator","prefix","renderText","Header","Text","parseFloat","Payment_Mode","Payment_Status","forEach","OrderId","Login","phone","setPhone","password","setPassword","terms","show","setShow","Person","position","bottom","left","required","Lock","Modal","onHide","closeButton","overflow","Signup","firstName","setFirstName","code","setCode","confirmPassword","setConfirmPassword","handleShow","Input","LocationCity","c","options","selectedIndex","text","PhoneCode","Phone","Email","rt","CARD","Wishlist","wishlistLength","Verification","otp","setOtp","ForgetPassword","confirm","Profile","setCustomerName","BillingAddress","setBillingAddress","setShippingAddress","Pimage","setImage","subTitle","browserTitle","closable","collapsable","selectedFile","files","onFileChange","formData","FormData","CustomerId","usr","Setting","lastName","OrderHistory","order","setOrder","scope","format","Created","Discount","TotalCost","Status","Logout","CartMenu","WishList","Shopping","Sidebar","Dashboard","Component","Admin","sidebar","icon","homeTo","titleShort","this","path","ProductDetails","setQuantity","imgsrc","setImgsrc","showimage","rate","setRate","comments","setComments","Gallery","ProductDescription","Metarial","Sku","SizeList","SizeName","ColorList","ColorName","Weight","step","IsGlobal","IsStock","Quantity","rv","Array","el","ReviewString","SubCategoryId","maxHeight","overflowY","raw","Invoice","invoice","createRef","paddingLeft","Customer","AlterPhone","OrderDetails","ProductID","colspan","CouponDiscount","targetRef","filename","orientation","unit","scale","toPdf","About","Story","images","BasicDetails","original","showNav","Cancel","Fail","Contact","allowfullscreen","TermsCondition","PrivacyPolicy","ReturnPolicy","BottomNav","home","bottomNavItems","activeIcon","defaultSelected","App","authUser","Mobile","maxWidth","ComingSoon","Toast","autoClose","minHeight","SearchProducts","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode","document","getElementById"],"mappings":"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","file":"static/js/main.64bd4b2a.chunk.js","sourcesContent":["import React, { useReducer, useContext, createContext } from \"react\";\n\nexport const StateContext = createContext();\n\nexport const State = ({ reducer, initialState, children }) => (\n \n {children}\n \n);\n\nexport const useStateValue = () => useContext(StateContext);\n","const config = {\r\n API: function() {\r\n // return \"http://localhost:55955/\";\r\n return \"https://admin.sallyannbd.com/\";\r\n }\r\n\r\n}\r\n\r\nexport default config;","import React,{useState} from \"react\";\nimport styled from \"styled-components\";\n\nimport config from '../config/config';\nimport {\n Col,\n Container,\n Row,\n ListGroup,\n Form,\n InputGroup,\n Image,\n} from \"react-bootstrap\";\nimport { Height } from \"@material-ui/icons\";\n\n\nconst RightNav = ({ open }) => {\n\n }\nfunction Footer() {\n const [email, setEmail] = useState(\"\");\n \n const subscribes = (e) => {\n e.preventDefault();\n // alert(email);\n if (email!=\"\") {\n \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/x-www-form-urlencoded\");\n var urlencoded = new URLSearchParams(); \n urlencoded.append(\"Email\", email); \n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: urlencoded,\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Subscribe\", requestOptions)\n .then(response => response.json())\n .then(result =>{\n\n let rt=JSON.parse(result); \n if(rt.msg==\"Submit Successful\"){\n \n alert('Successfully Subscribe');\n \n }\n })\n .catch(error => alert(\"User Already Exist!\"));\n } else {\n alert(\"Email must be Input\");\n }\n };\n\n return (\n \n \n \n
\n
\n © All Rights Reserved by Sally Ann Bangladesh Ltd.\n \n
\n
\n
\n
\n );\n}\n\nexport default Footer;\n\n\n\nconst DevInfo = styled.div`\n background:#9e9696;\n padding: 1rem;\n div {\n max-width: 1280px;\n margin: 0px auto;\n width: 90%;\n text-align: center;\n }\n h5 {\n color: #1b1b1b;\n font-size: 16px;\n font-weight: 600;\n margin: 0;\n }\n .neon {\n color: #fb4264;\n font-size: 16px;\n text-shadow: 0 0 3px #f40a35;\n animation: neon 1s ease infinite;\n -moz-animation: neon 1s ease infinite;\n -webkit-animation: neon 1s ease infinite;\n @keyframes neon {\n 0%,\n 100% {\n text-shadow: 0 0 2px #fa1c16, 0 0 3px #fa1c16, 0 0 10px #fa1c16,\n 0 0 10px #fa1c16, 0 0 1px #fed128, 1px 1.2px 1px #806914;\n color: #fed128;\n }\n 50% {\n text-shadow: 0 0 3px #800e0b, 0 0 1.5px #800e0b, 0 0 5px #800e0b,\n 0 0 5px #800e0b, 0 0 0.2px #800e0b, 0.4px 1px 1px #40340a;\n color: #806914;\n }\n }\n }\n a {\n &:hover {\n text-decoration: underline;\n }\n }\n`;\n\n// Footer Section\nconst FOOTER = styled.div`\n padding: 2% 12% 2% 11%;\n background-color: #181818;\n color: #ffff;\n a {\n margin: 0;\n padding: 0;\n font-size: 12px;\n font-weight: 500;\n vertical-align: baseline;\n background: transparent;\n color: #ffff;\n outline: none;\n &:hover {\n color: #ffff;\n text-decoration: none;\n }\n }\n .col-md-3,\n .col-sm-6 {\n padding: 8px 10px;\n }\n .list-group {\n background-color: transparent;\n color: #ffff;\n border: none;\n }\n`;\n\nconst Ul = styled.ul`\n list-style-type: none;\n margin-bottom: 0px;\n margin-block-start: 0px;\n margin-block-end: 0px;\n padding-inline-start: 0px;\n`;\n\nconst Heading = styled.h5`\n color: #fdb827;\n text-transform: uppercase;\n letter-spacing: 1px;\n font-size: 14px;\n display: block;\n`;\n\nconst Emailinput = styled.input`\n background: transparent;\n border: 1px solid;\n border-bottom-style: solid;\n color: #ffff;\n // width: 55%;\n border-color: #fdb827;\n border-bottom-width: 1px;\n &:focus {\n outline: 0;\n }\n`;\n\nconst BUTTON = styled.button`\n border: none;\n background-color: #fdb827;\n padding: 0.3rem 0.8rem;\n border-radius: 2px;\n font-size: 14px;\n font-weight: 500;\n`;\n","import { useState, useEffect } from \"react\";\nimport config from './config/config';\n\n\nfunction GetData(collection) {\n // const [docs, setDocs] = useState([]);\n // const [product, setProduct] = useState([]);\n // const [category, setCategory] = useState([]);\n // const [tag, setTag] = useState([]);\n // const [countries, setCountry] = useState([]);\n // const [districts, setDistrict] = useState([]);\n const [basics, setBasic] = useState([]);\n\n const [loading, setLoading] = useState(true);\n\n\n useEffect(() => {\n setLoading(true);\n fetch(config.API()+\"api/Apibanner\")\n .then((response) =>response.json()) \n .then((data) => { \n setBasic(data.basics); \n setLoading(false); \n \n \n })\n\n }, [collection]);\n\n return { basics,loading};\n}\n\nexport default GetData;\n\n","import React,{useState} from \"react\";\nimport styled from \"styled-components\";\n\n\nimport {\n AccountCircle,\n Favorite,\n ShoppingCart,\n ExitToApp,\n History,\n Notifications,\n Android,\n} from \"@material-ui/icons\";\nimport {\n Badge,\n Fab,\n ClickAwayListener,\n Grow,\n Paper,\n Popper,\n MenuItem,\n MenuList,\n Divider,\n} from \"@material-ui/core\";\nimport { withStyles, makeStyles } from \"@material-ui/core/styles\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Form, InputGroup, FormControl, Button } from \"react-bootstrap\";\nimport { useStateValue } from \"../../context/State\";\n\nimport '../../index.css';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport 'bootstrap/dist/js/bootstrap.min.js';\nimport BootstrapSwitchButton from 'bootstrap-switch-button-react'\nimport userEvent from \"@testing-library/user-event\";\n\n\n\n\n\n\nconst StyledBadge = withStyles((theme) => ({\n badge: {\n right: 2,\n top: 2,\n padding: \"0 4px\",\n fontWeight: \"bolder\",\n fontSize: \"12.5px\",\n minWidth: \"18px\",\n height: \"18px\",\n background: \"rgba(253, 58, 103, 0.836)\",\n },\n}))(Badge);\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n marginTop: \"1rem\",\n },\n}));\n\nconst RightNav = ({ open }) => {\n const classes = useStyles();\n const history = useHistory();\n const [{ bag, user,wishlist }] = useStateValue();\n const anchorRef = React.useRef(null);\n const [pop, setPop] = React.useState(false);\n const [search, setSearch] = useState(\"\");\n\n const btnsearch = (e) => {\n e.preventDefault(); \n history.push('/searchproduct/'+search); \n };\n\n const _handleKeyDown = (e) => {\n //e.preventDefault(); \n if (e.key === 'Enter') {\n history.push('/searchproduct/'+search); \n }\n }\n\n let currentPath = window.location.pathname;\n const LanguageChange=(e)=> { \n localStorage.setItem(\"lang\",e); \n history.push(currentPath);\n };\n\n const handleToggle = () => {\n setPop((prevPop) => !prevPop);\n };\n\n const handleClose = (event) => {\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\n return;\n }\n setPop(false);\n };\n\n function handleListKeyDown(event) {\n if (event.key === \"Tab\") {\n event.preventDefault();\n setPop(false);\n }\n }\n\n\n\n const prevOpen = React.useRef(pop);\n React.useEffect(() => {\n if (prevOpen.current === true && pop === false) {\n anchorRef.current.focus();\n }\n\n prevOpen.current = pop;\n\n }, [pop]);\n\n const handleLogout = () => {\n if (user) {\n // auth.signOut();\n // console.log(user); \n localStorage.removeItem(\"uid\");\n // history.push(\"/\");\n window.location.reload();\n \n }\n };\n return (\n
\n \n
\n\n\n \n
\n\n
    \n \n \n
  • \n \n HOME\n \n
  • \n
  • \n \n \n OTHERS INTERNATIONAL\n \n
  • \n {/*
  • \n \n \n Login\n \n
  • */}\n
  • \n LanguageChange(e)}\n />\n
  • \n \n
\n
\n
\n \n
\n \n setSearch(e.target.value)}\n placeholder=\"Search by product is !disabled for now \"\n aria-describedby=\"basic-addon1\"\n onKeyDown={(e)=>_handleKeyDown(e)}\n />\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n {user!=null ? (\n <>\n \n {JSON.parse(localStorage.getItem(\"uid\")).CustomerName}\n \n \n \n \n \n \n {({ TransitionProps, placement }) => (\n \n \n
\n Hello, {JSON.parse(localStorage.getItem(\"uid\")).CustomerName}\n
\n\n \n \n \n \n \n Dashboard\n \n \n \n \n \n \n My Profile\n \n \n \n \n \n \n Order History\n \n \n \n\n \n \n \n Notification\n \n \n \n\n \n \n\n
\n \n \n Logout\n \n
\n \n
\n \n \n )}\n \n \n ) : (\n \n {/* \n \n */}\n Sign In\n \n )}\n
\n {user!=null ? (\n <>\n \n {user.displayName}\n \n \n MY ORDERs\n \n \n ) : (\n \n {!user ? (\n \n LOGIN/SIGNUP\n \n ) : (\n <>\n )}\n \n )}\n \n \n \n \n \n \n \n \n \n WISHLIST\n \n \n \n \n \n \n \n \n \n BAG\n \n {user ? (\n \n ) : (\n <>\n )}\n
\n \n
\n );\n};\n\nexport default RightNav;\n\nconst Div = styled.div`\n display: flex;\n flex-flow: row nowrap;\n flex: .9;\n padding-left: 3%;\n .switch.btn{\n min-width:5rem !important;\n margin-top: 7px;\n }\n .btn{\n padding:4px 10px;\n }\n .switch-on.btn {\n padding-left: 0px;\n }\n .loginlogout {\n display: none;\n @media (max-width: 990px) {\n display: flex;\n }\n }\n .menu {\n list-style: none;\n display: flex;\n flex-flow: row nowrap;\n\n color: #000;\n font-size: 70%;\n font-weight: bold;\n\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n @media (max-width: 990px) {\n padding: 1rem 0;\n }\n }\n li {\n /* padding: 0 10px; */\n color: #000;\n }\n @media (max-width: 990px) {\n flex-flow: column nowrap;\n background-color: #ffff;\n position: fixed;\n transform: ${({ open }) => (open ? \"translateX(0)\" : \"translateX(100%)\")};\n top: 0;\n right: 0;\n height: 100vh;\n width: 300px;\n padding-top: 4rem;\n padding-left: 0.5rem;\n transition: transform 0.3s ease-in-out;\n\n form {\n position: absolute;\n }\n }\n`;\nconst IconGroup = styled.div`\n padding-left: 0.9rem;\n display: flex;\n align-items: center;\n flex-basis: 120px;\n justify-content: space-between;\n border-left: 3px solid #444444;\n @media (max-width: 990px) {\n border: none;\n display: grid;\n padding-left: 0;\n margin-top: 7rem;\n flex-basis: 270px;\n }\n li {\n font-size: 1.2rem;\n font-weight: bolder;\n }\n a,\n button {\n &:hover {\n text-decoration: none;\n color: #000;\n }\n &:focus {\n outline: none;\n }\n }\n`;\nconst Icon = styled.span`\n .fab {\n margin-left: 0.4rem;\n background: rgba(255, 255, 255, 0.1);\n background-clip: padding-box;\n backdrop-filter: blur(40px);\n -webkit-backdrop-filter: blur(40px);\n\n &:hover {\n background: rgba(255, 255, 255, 0.5);\n }\n &:active {\n background: rgba(255, 255, 255, 0.5);\n transform: translateY(3px);\n }\n }\n\n @media (max-width: 990px) {\n display: none;\n }\n`;\nconst SPAN = styled.div`\n display: none;\n text-transform: uppercase;\n margin-bottom: 1rem;\n @media (max-width: 990px) {\n display: grid;\n color: #000;\n font-size: 1rem;\n font-weight: bold;\n border-bottom: 3px solid #9e4446;\n width: max-content;\n }\n`;\n\nconst DIV = styled.div`\n display: flex;\n align-items: center;\n flex: 1;\n @media (max-width: 990px) {\n display: grid;\n position: relative;\n top: 4rem;\n flex: 0.1;\n padding-left: 0;\n }\n\n a,\n span {\n text-decoration: none;\n &:hover {\n /* text-decoration: none; */\n color: #fd3a69;\n }\n }\n`;\nconst Space = styled.div`\n width: 14%;\n /* height: 100%; */\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n width: 0;\n height: 0;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n width: 0;\n height: 0;\n }\n \n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport RightNav from \"./RightNav\";\n\nconst StyledBurger = styled.div`\n width: 2rem;\n height: 2rem;\n position: fixed;\n top: 15px;\n right: 20px;\n z-index: 20;\n display: none;\n @media (max-width: 990px) {\n display: flex;\n justify-content: space-around;\n flex-flow: column nowrap;\n }\n div {\n width: 2rem;\n height: 0.25rem;\n background-color: ${({ open }) => (open ? \"#ccc\" : \"#181818\")};\n border-radius: 10px;\n transform-origin: 1px;\n transition: all 0.3s linear;\n &:nth-child(1) {\n transform: ${({ open }) => (open ? \"rotate(45deg)\" : \"rotate(0)\")};\n }\n &:nth-child(2) {\n transform: ${({ open }) => (open ? \"translateX(100%)\" : \"translateX(0)\")};\n opacity: ${({ open }) => (open ? 0 : 1)};\n }\n &:nth-child(3) {\n transform: ${({ open }) => (open ? \"rotate(-45deg)\" : \"rotate(0)\")};\n }\n }\n`;\n\nconst Burger = () => {\n const [open, setOpen] = useState(false);\n\n return (\n <>\n setOpen(!open)}>\n
\n
\n
\n \n\n \n \n );\n};\nexport default Burger;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport { Navbar } from \"react-bootstrap\";\nimport Burger from \"./subHeader/Burger\";\n\n\n\n\nfunction SiteHeader() {\n return (\n \n \n {/* */}\n \n \n \n \n \n\n {/* */}\n \n \n \n );\n}\n\nexport default SiteHeader;\n\n// STYLED COMPONENTS\n\nconst Styles = styled.div`\n top: 0;\n z-index: 1;\n position: fixed;\n width: -webkit-fill-available;\n width: -moz-available;\n box-shadow: 0 4px 6px #18181844;\n\n .navbar-light .navbar-nav .nav-link {\n color: #000;\n font-size: 12px;\n font-weight: bold;\n }\n\n .form-inline {\n @media (max-device-width: 990px) {\n padding-left: 0;\n }\n }\n\n .form-control {\n ::placeholder {\n font-size: 10px;\n line-height: 12;\n overflow: visible;\n }\n }\n`;\nconst Space = styled.div`\n width: 12%;\n height: 100%;\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n width: 0;\n height: 0;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n width: 0;\n height: 0;\n }\n`;\n","import React from \"react\";\nimport ContentLoader from \"react-content-loader\";\n\nexport const MyLoader = () => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport const ImageGrid = () => (\n \n \n \n \n {/* \n \n */}\n\n \n);\nexport const Catalog = () => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport { Link } from \"react-router-dom\";\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\nimport config from '../../config/config';\nimport * as Icon from 'react-bootstrap-icons';\n\nfunction Row0() {\n const { banner } = getData(\"banners\");\n return (\n \n
\n \n \n \n \n
\n \n DIGNITY
INDEPENDENCE
HOPE \n

\n Others is a Salvation Army initiative using fair trade principles
\n to achieve job creation, empowerment and poverty alleviation.
\n Our products are hand made by producers affiliated with
\n The Salvation Army’s community work in Bangladesh and Kenya.\n

\n\n \n Learn More \n \n
\n \n
\n \n \n \n
\n
\n );\n}\n\nexport default Row0;\n\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n @media (min-width: 1200px){\n .row{\n margin-right:auto;\n margin-left:auto;\n }\n }\n\n .fixed-bg {\n background-attachment: fixed !important;\n background-repeat: no-repeat !important;\n background-size: cover !important;\n background-position: center center !important;\n height: 30vw !important; \n width: 100% !important;\n color: white;\n text-align: center !important;\n display: table;\n }\n .headertxt {\n font-size: 4em;\n line-height: 1em;\n padding-top: 5%;\n font-family: fjalla one;\n color: #fff;\n text-align: left;\n}\n.para{\n font-size:12px;\n line-height: 1.5;\n}\n`\n","import React from \"react\";\nimport { Container,Row, Image } from \"react-bootstrap\";\n//import { AlignCenter } from \"react-bootstrap-icons\";\nimport styled from \"styled-components\";\n\nfunction Row2(props) {\n return (\n \n \n \n

\n FEATURED PRODUCTS\n

\n \n {/*

\n Behind every product from Sally Ann is a unique story of dignity, independence and hope.\n Others is The Salvation Army's global social enterprise linking local markets with global opportunities.\n Others partners with artisans in Kenya and Bangladesh.\n

*/}\n
\n
\n
\n );\n\n}\n\nexport default Row2;\n\nconst Styles = styled.div`\n background:#8FA2AF;\n margin-bottom:8px;\n .ftext{\n margin-top:5px;padding-top:5px;\n width:100%;\n // font-size: 1.5rem;\n text-align: center;\n padding: 10px 30px 10px 350px;\n \n }\n .pr{\n text-align:center;\n padding: 0px 30px 20px 30px;\n \n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport { Link } from \"react-router-dom\";\n\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\nimport config from '../../config/config';\n//import { Height } from \"@material-ui/icons\";\n\nfunction Row5() {\n const { category } = getData(\"categories\");\n return (\n \n {/* */}\n \n \n {/* \n \n \n \n \n */}\n \n {/* \n \n \n \n\n \n\n \n */}\n \n {/* */}\n {/* */}\n \n );\n}\n\nexport default Row5;\n\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n`;\n","import firebase from \"firebase/app\";\nimport \"firebase/firestore\";\nimport \"firebase/auth\";\n\nconst firebaseConfig = {\n apiKey: \"AIzaSyAU5ng3IyaCSXG-3nMQxIcA2Ouu0NjwErA\",\n authDomain: \"ecommerce-24a88.firebaseapp.com\",\n projectId: \"ecommerce-24a88\",\n storageBucket: \"ecommerce-24a88.appspot.com\",\n messagingSenderId: \"138112138389\",\n appId: \"1:138112138389:web:a4cc39321b82866c542f9c\",\n measurementId: \"G-YR4QCKN8ZH\",\n};\n\nconst firebaseAPP = firebase.initializeApp(firebaseConfig);\n\nconst database = firebaseAPP.firestore();\n\nconst auth = firebase.auth();\n\nexport { database, auth };\n","import { useState, useEffect } from \"react\";\nimport config from './config/config';\n\n\n\n\nfunction GetCat(collection) {\n // const [docs, setDocs] = useState([]);\n \n const [category, setCategory] = useState([]);\n \n const [loading, setLoading] = useState(false);\n \n \n useEffect(() => {\n setLoading(true);\n fetch(config.API()+\"api/Apicategory\")\n .then((response) =>response.json()) \n .then((data) => { \n \n \n setCategory(data.categories); \n setLoading(false);\n \n \n \n })\n \n }, [collection]);\n \n return { category,loading};\n }\n \n export default GetCat;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport {\n AccountCircle,\n Favorite,\n LocalMall,\n ExitToApp,\n History,\n Notifications,\n Android,\n} from \"@material-ui/icons\";\nimport {\n Badge,\n Fab,\n ClickAwayListener,\n Grow,\n Paper,\n Popper,\n MenuItem,\n MenuList,\n Divider,\n} from \"@material-ui/core\";\nimport { withStyles, makeStyles } from \"@material-ui/core/styles\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Form, InputGroup, FormControl, Button } from \"react-bootstrap\";\nimport { useStateValue } from \"../../context/State\";\nimport { auth } from \"../../firebase\";\nimport '../../index.css';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport 'bootstrap/dist/js/bootstrap.min.js';\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\nimport getCat from \"../../Getcat\";\n\n\nconst StyledBadge = withStyles((theme) => ({\n badge: {\n right: 2,\n top: 2,\n padding: \"0 4px\",\n fontWeight: \"bolder\",\n fontSize: \"12.5px\",\n minWidth: \"18px\",\n height: \"18px\",\n background: \"rgba(253, 58, 103, 0.836)\",\n },\n}))(Badge);\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n marginTop: \"1rem\",\n },\n}));\n\nconst MenuNav = ({ open }) => {\n const classes = useStyles();\n const history = useHistory();\n const [{ bag, user }] = useStateValue();\n const anchorRef = React.useRef(null);\n const [pop, setPop] = React.useState(false);\n\n const { category } = getCat(\"category\");\n\n const handleToggle = () => {\n setPop((prevPop) => !prevPop);\n };\n\n const handleClose = (event) => {\n if (anchorRef.current && anchorRef.current.contains(event.target)) {\n return;\n }\n\n setPop(false);\n };\n\n function handleListKeyDown(event) {\n if (event.key === \"Tab\") {\n event.preventDefault();\n setPop(false);\n }\n }\n\n const prevOpen = React.useRef(pop);\n React.useEffect(() => {\n if (prevOpen.current === true && pop === false) {\n anchorRef.current.focus();\n }\n\n prevOpen.current = pop;\n }, [pop]);\n\n const handleLogout = () => {\n if (user) {\n auth.signOut();\n history.push(\"/\");\n }\n };\n return (\n \n
\n \n {/* \n MEN\n \n \n WOMEN\n \n \n MOBILE COVERS\n */} \n
\n {/* MegaMenu\n */}\n\n \n
\n\n
    \n \n {category &&\n category.map((tagg) => (\n
  • \n \n {tagg.CategoryName }\n \n
  • \n ))}\n\n\n \n {/*
  • \n \n \n |\n \n
  • */}\n\n {/*
  • \n \n \n Login\n \n
  • */}\n\n {/*
  • \n \n \n NEW CUSTOMER\n \n
  • \n */}\n\n {/*
  • \n \n \n \n \n
  • */}\n\n \n {/*
  • \n \n \n \n \n
  • */}\n
\n
\n
\n \n \n \n
\n );\n};\n\nexport default MenuNav;\n\nconst Div = styled.div`\n display: flex;\n flex-flow: row nowrap;\n flex: 1;\n padding-left: 3%;\n\n .loginlogout {\n display: none;\n @media (max-width: 990px) {\n display: flex;\n }\n }\n .hv a:hover{\n\n }\n \n .menu {\n list-style: none;\n display: flex;\n flex-flow: row nowrap;\n\n color: #000;\n font-size: 70%;\n font-weight: bold;\n\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n @media (max-width: 990px) {\n padding: 1rem 0;\n }\n }\n li {\n /* padding: 0 10px; */\n color: #000;\n }\n @media (max-width: 990px) {\n flex-flow: column nowrap;\n background-color: #ffff;\n position: fixed;\n transform: ${({ open }) => (open ? \"translateX(0)\" : \"translateX(100%)\")};\n top: 0;\n right: 0;\n height: 100vh;\n width: 300px;\n padding-top: 4rem;\n padding-left: 0.5rem;\n transition: transform 0.3s ease-in-out;\n\n form {\n position: absolute;\n }\n }\n`;\nconst IconGroup = styled.div`\n padding-left: 0.9rem;\n display: flex;\n align-items: center;\n flex-basis: 120px;\n justify-content: space-between;\n border-left: 3px solid #444444;\n @media (max-width: 990px) {\n border: none;\n display: grid;\n padding-left: 0;\n margin-top: 7rem;\n flex-basis: 270px;\n }\n li {\n font-size: 1.2rem;\n font-weight: bolder;\n }\n a,\n button {\n &:hover {\n text-decoration: none;\n color: #000;\n }\n &:focus {\n outline: none;\n }\n }\n`;\nconst Icon = styled.span`\n .fab {\n margin-left: 0.4rem;\n background: rgba(255, 255, 255, 0.1);\n background-clip: padding-box;\n backdrop-filter: blur(40px);\n -webkit-backdrop-filter: blur(40px);\n\n &:hover {\n background: rgba(255, 255, 255, 0.5);\n }\n &:active {\n background: rgba(255, 255, 255, 0.5);\n transform: translateY(3px);\n }\n }\n\n @media (max-width: 990px) {\n display: none;\n }\n`;\nconst SPAN = styled.div`\n display: none;\n text-transform: uppercase;\n margin-bottom: 1rem;\n @media (max-width: 990px) {\n display: grid;\n color: #000;\n font-size: 1rem;\n font-weight: bold;\n border-bottom: 3px solid #9e4446;\n width: max-content;\n }\n`;\n\nconst DIV = styled.div`\n display: flex;\n align-items: center;\n flex: 1;\n @media (max-width: 990px) {\n display: grid;\n position: relative;\n top: 4rem;\n flex: 0.1;\n padding-left: 0;\n }\n\n a,\n span {\n text-decoration: none;\n &:hover {\n /* text-decoration: none; */\n color: #fd3a69;\n }\n }\n`;\nconst Space = styled.div`\n width: 14%;\n /* height: 100%; */\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n width: 0;\n height: 0;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n width: 0;\n height: 0;\n }\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport MenuNav from \"./MenuNav\";\n\nconst StyledBurger = styled.div`\n width: 2rem;\n height: 2rem;\n position: fixed;\n top: 15px;\n right: 20px;\n z-index: 20;\n display: none;\n @media (max-width: 990px) {\n display: flex;\n justify-content: space-around;\n flex-flow: column nowrap;\n }\n div {\n width: 2rem;\n height: 0.25rem;\n background-color: ${({ open }) => (open ? \"#ccc\" : \"#181818\")};\n border-radius: 10px;\n transform-origin: 1px;\n transition: all 0.3s linear;\n &:nth-child(1) {\n transform: ${({ open }) => (open ? \"rotate(45deg)\" : \"rotate(0)\")};\n }\n &:nth-child(2) {\n transform: ${({ open }) => (open ? \"translateX(100%)\" : \"translateX(0)\")};\n opacity: ${({ open }) => (open ? 0 : 1)};\n }\n &:nth-child(3) {\n transform: ${({ open }) => (open ? \"rotate(-45deg)\" : \"rotate(0)\")};\n }\n }\n`;\n\nconst Menu = () => {\n const [open, setOpen] = useState(false);\n\n return (\n <>\n \n\n \n \n );\n};\nexport default Menu;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport { Navbar } from \"react-bootstrap\";\nimport Menu from \"./Menu\";\n\n\n\n\nfunction Banner_menu() {\n return (\n \n \n {/* */}\n \n\n {/* */}\n \n \n \n );\n}\n\nexport default Banner_menu;\n\n// STYLED COMPONENTS\n\nconst Styles = styled.div`\n top: 0;\n z-index: 1;\n // position: fixed;\n width: -webkit-fill-available;\n width: -moz-available;\n box-shadow: 0 4px 6px #18181844;\n \n .navbar-light .navbar-nav .nav-link {\n color: #000;\n font-size: 12px;\n font-weight: bold;\n }\n #navbarContent{\n display:block !important ;\n }\n .nav-link{\n padding-top:22px;\n padding-bottom:22px;\n padding-right: 15px !important;\n padding-left: 15px !important;\n position: relative;\n }\n \n .nav-item a:hover{\n border: 1px solid #000;\n padding-top: 21px;\n padding-left: 14px !important;\n padding-right: 14px !important;\n }\n .form-inline {\n @media (max-device-width: 990px) {\n padding-left: 0;\n }\n }\n // @media (min-width: 1200px){\n \n // margin-right:-150px;\n // margin-left:-150px;\n \n // }\n .form-control {\n ::placeholder {\n font-size: 10px;\n line-height: 12;\n overflow: visible;\n }\n }\n`;\nconst Space = styled.div`\n width: 12%;\n height: 100%;\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n width: 0;\n height: 0;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n width: 0;\n height: 0;\n }\n \n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport { Carousel, Image } from \"react-bootstrap\";\nimport config from '../../config/config';\nimport getData from \"../../Getdata\";\nimport { useState, useEffect } from \"react\";\nimport parse from 'html-react-parser';\nimport Row5 from \"../subHome/Row5\";\nimport { Fade, Zoom } from \"react-reveal\";\n\nimport Banner_menu from \"../subHome/Banner_menu\";\n\nfunction Slide() {\n const [loading, setLoading] = useState(true);\n const { basics} = getData(\"basics\");\n\n useEffect(() => { \n \n setLoading(false);\n }, [Row5, Banner_menu]);\n\n\n return (\n <>\n \n \n\n{\nloading ? (\n \n \n \n \n \n \n)\n:(\n basics && basics.filter(s=>s.BasicTypeId==1).map((basic) => (\n \n \n \n \n \n

{basic.Title}

\n

{parse(basic.Content.slice(0, 180))}..

\n Learn More..\n
\n
\n \n \n ))\n \n )\n \n } \n \n
\n
\n\n {\n loading==false ? (\n <>\n \n \n \n\n\n \n \n \n ):\"\"\n}\n \n );\n}\n\nexport default Slide;\n\nconst Styles = styled.div`\n .carousel,\n .slide {\n padding: 0 1.1rem;\n }\n .carousel-caption{\n left:10% !important;\n right: 50% !important;\n padding-bottom: 100px !important;\n }\n`;\nconst WhiteSpace = styled.div`\n height: 2.3rem;\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n height: 0.7rem;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n height: 1.3rem;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport getCat from \"../../Getcat\";\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\nimport config from '../../config/config';\n\nfunction Row3() {\n const { category } = getCat(\"categories\");\n return (\n \n \n \n {category &&\n category.map((cat) => (\n \n \n \n {cat.CategoryName}\n \n \n ))}\n \n \n \n );\n}\n\nexport default Row3;\n\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n .imageOver {\n position: relative;\n text-align: center;\n color: white;\n }\n \n .centered {\n position: absolute;\n top: 50%;\n left: 50%;\n padding:5px;\n background-color:#fff;\n transform: translate(-50%, -50%);\n color:#000;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\n//import getData from \"../../Getdata\";\nimport { Link } from \"react-router-dom\";\n\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\n//import config from '../../config/config';\n\nfunction Row4() {\n //const { banner } = getData(\"regional\");\n return (\n \n \n \n {/* {banner &&\n banner.filter(ban=>ban.type==\"regional\").map((doc) => ( */}\n\n \n \n \"Regional\"\n \n \n\n {/* ))} */}\n \n \n \n \n );\n}\n\nexport default Row4;\n\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n .ftext{\n margin-top:5px;padding-top:5px;\n \n font-size: 1.5rem;\n text-align: center;\n padding: 30px;\n }\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\n\nimport getData from \"../../Getdata\";\nimport { Container, Row, Image ,Button} from \"react-bootstrap\";\n\n\nimport config from '../../config/config';\n\n\nimport Carousel from \"react-multi-carousel\";\nimport \"react-multi-carousel/lib/styles.css\";\n\n\nconst chevronWidth = 0;\n\nfunction Client() { \n const { basics } = getData(\"basicss\");\n\nconst responsive = {\n desktop: {\n breakpoint: { max: 3000, min: 1024 },\n items: 4,\n paritialVisibilityGutter: 60\n },\n tablet: {\n breakpoint: { max: 1024, min: 464 },\n items: 2,\n paritialVisibilityGutter: 50\n },\n mobile: {\n breakpoint: { max: 464, min: 0 },\n items: 1,\n paritialVisibilityGutter: 30\n }\n};\n\n \n\n\n return (\n \n \n \n { basics && basics.filter(s=>s.BasicTypeId==3).map((_, i) =>\n
\n
\n \n
\n
\n )\n }\n\n;\n \n
\n
\n );\n}\n\nexport default Client;\nconst Wrapper = styled.div`\n padding: 0 ${chevronWidth}px;\n max-width: 1000px;\n margin: 0 auto;\n `;\n \n const SlideItem = styled.div`\n height: 245px;\n background: #eee;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 20px;\n font-weight: bold;\n `;\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n .imageOver {\n position: relative;\n text-align: center;\n color: white;\n }\n \n .centered {\n position: absolute;\n top: 50%;\n left: 50%;\n padding:5px;\n background-color:#fff;\n transform: translate(-50%, -50%);\n color:#000;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport { Link } from \"react-router-dom\";\n\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\nimport config from '../../config/config';\n\n\nfunction Mission() {\n const { basics } = getData(\"basics\");\n let about= basics.find(s=>s.BasicTypeId==2);\n return (\n \n \n \n \n \n \n \n

\n {about?.Content}\n

\n\n \n {/* \n \n \n \n */}\n
\n \n \n {/* */}\n
\n
\n );\n}\n\nexport default Mission;\n\nconst Styles = styled.div`\n .img-thumbnail {\n border: none;\n }\n`;\n","import React, { useState, useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport { Fade, Zoom } from \"react-reveal\";\nimport getData from \"../Getdata\";\nimport { CardDeck, Container } from \"react-bootstrap\";\nimport SiteHeader from \"./SiteHeader\";\n\n// COMMPONENTS IMPORTS FROM SUBS\nimport { ImageGrid } from \"../Spinner\";\nimport Row0 from \"./subHome/Row0\";\nimport Row1 from \"./subHome/Row1\";\nimport Slide from \"./subHome/Slide\";\nimport Row3 from \"./subHome/Row3\";\nimport Row4 from \"./subHome/Row4\";\n\nimport Client from \"./subHome/Client\";\nimport Mission from \"./subHome/Mission\";\nimport { useMediaQuery } from 'react-responsive';\nimport { useStateValue } from \"../context/State\";\n\n\n\nconst Home = () => {\n const [{}, dispatch] = useStateValue();\n\n const { loading } = getData(\"basics\");\n\n\n useEffect(() => {\n \n const timing = setTimeout(() => {\n dispatch({\n type: \"SET_USER\",\n user: localStorage.getItem(\"uid\")\n });\n // alert('test');\n }, 800);\n return () => clearTimeout(timing);\n }, []);\n\n const Desktop = ({ children }) => {\n const isDesktop = useMediaQuery({ minWidth: 992 })\n return isDesktop ? children : null\n }\n\n\n return (\n \n <>\n \n
\n {loading ? (\n \n ) : (\n \n \n \n \n \n \n \n {loading==false ?\n (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

Our Customers

\n \n \n \n \n
\n \n

Mission Statement

\n \n \n
\n \n \n \n \n \n
\n ):\"\"\n\n }\n\n
\n )}\n
\n \n \n \n );\n};\n\nexport default Home;\n\nconst Styles = styled.div`\n /* padding: 0 12% 0 11%; */\n color: #ffff;\n .card-deck,\n .container {\n display: flex;\n text-align: center;\n \n }\n \n`;\n\nconst WhiteSpace = styled.div`\n height: 2.3rem;\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n height: 0.7rem;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n height: 1.3rem;\n }\n`;\n\nconst SmallSpace = styled(WhiteSpace)`\n height: 1.8rem;\n @media (min-device-width: 320px) and (max-device-width: 480px) {\n height: 0.5rem;\n }\n @media (min-device-width: 768px) and (max-device-width: 1024px) {\n height: 1rem;\n }\n`;\n","import React, { useState, useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport { Card } from \"react-bootstrap\";\nimport { useStateValue } from \"../../context/State\";\n\nimport { Catalog } from \"../../Spinner\";\nimport { Favorite, LocalMall, Star } from \"@material-ui/icons\";\nimport { toast } from \"react-toastify\";\n\nfunction ItemCard({ id, pName, image, rating, price, originalPrice,slug}) {\n const [{}, dispatch] = useStateValue();\n\n const Msg = () => (\n <>\n
\n \n
  Product added to Bag
\n
\n \n );\n\n const addToBag = () => {\n dispatch({\n type: \"ADD_TO_BAG\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: rating,\n originalPrice: originalPrice,\n quantity:1,\n status:false\n },\n });\n toast(Msg);\n };\n const addToWishlist = () => {\n dispatch({\n type: \"ADD_TO_WISHLIST\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: rating,\n originalPrice: originalPrice,\n quantity:1,\n status:false\n },\n });\n toast(\"Add To Wishlist\");\n };\n\n const [loading, setLoading] = useState(false);\n\n useEffect(() => {\n setLoading(true);\n const timing = setTimeout(() => {\n setLoading(false);\n }, 800);\n return () => clearTimeout(timing);\n }, []);\n return (\n <>\n
\n {loading ? (\n \n ) : (\n \n \n \n\n \n

{pName}

\n
\n \n
\n {localStorage.getItem(\"lang\")==='true' ? \"$\":\"৳\"} {price}\n { price\n
\n \n
\n \n \n
\n \n
\n
\n \n
\n \n
\n {parseInt(rating)} \n
\n \n
\n \n \n
\n \n
\n )}\n
\n \n );\n}\n\nexport default ItemCard;\n\nconst RoundDiv = styled.div`\n display: flex;\n @media (max-width: 990px) {\n // display: grid;\n position: absolute;\n right: 0;\n }\n`;\n\nconst Div = styled.div`\n margin-bottom: 1rem;\n padding: 0.45rem;\n background: transparent;\n h3 {\n font-size: 12px;\n font-weight: 500;\n @media (max-width: 990px) {\n font-size: 10px;\n }\n }\n h3,\n a {\n color: #292929;\n text-decoration: none;\n &:hover {\n color: #7289ab;\n }\n }\n .card {\n width: 25rem;\n height: 47rem;\n border: none;\n box-shadow: inset 3px 3px 8px #dbdbdb, inset -6px -6px 12px #ffffff;\n padding: 20px;\n border-radius: 5px;\n margin-bottom: 30px;\n &:hover {\n box-shadow: 6px 6px 12px #b8b8b8, -6px -6px 12px #ffffff;\n }\n @media (max-width: 990px) {\n width: 15rem;\n height: 32rem;\n margin-bottom: 0.8rem;\n \n }\n }\n .rating {\n width: 47px;\n background: rgba(253, 184, 39, 0.5);\n border-radius: 26px;\n font-size: 10px;\n font-weight: bolder;\n padding: 3px;\n text-align: center;\n margin-top: 0.7rem;\n margin-left: 0.2rem;\n @media (max-width: 990px) {\n position: relative;\n top: 9px;\n }\n }\n .card-img-top {\n margin-bottom: 5px;\n display: inline-block;\n /* max-width: 100%; */\n /* height: 13rem; */\n }\n\n .card-body {\n /* margin-bottom: 20px; */\n text-align: center;\n align-items: center;\n padding: 1rem 0.5rem;\n }\n\n .product-btns {\n display: flex;\n justify-content: center;\n }\n .btn-small {\n display: inline-block;\n font-size: 14px;\n text-align:center;\n font-weight: 700;\n text-transform: uppercase;\n padding: 6px 12px;\n border-radius: 5px;\n margin-bottom: 4px;;\n box-shadow: inset -2px -2px 8px white,\n inset -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n inset 2px 2px 8px rgba(0, 0, 0, 0.15);\n transition: 0.4s;\n &:hover {\n box-shadow: -2px -2px 8px white, -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n 2px 2px 8px rgba(0, 0, 0, 0.15);\n color: #7289ab;\n text-decoration: none;\n }\n @media (max-width: 990px) {\n position: relative;\n right: 0rem;\n top: 5px;\n\n \n }\n }\n\n .btn-round {\n cursor: pointer;\n display: inline-block;\n font-weight: 700;\n font-size: 14px;\n text-transform: uppercase;\n height: 4rem;\n width: 5rem;\n text-align: center;\n line-height: 30px;\n // border-radius: 50%;\n text-decoration: none;\n box-shadow: -2px -2px 8px white, -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n 2px 2px 8px rgba(0, 0, 0, 0.15);\n &:hover {\n box-shadow: inset -2px -2px 8px white,\n inset -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n inset 2px 2px 8px rgba(0, 0, 0, 0.15);\n color: #7289ab;\n }\n @media (max-width: 990px) {\n margin-bottom: 0.5rem;\n margin-right: 0px !IMPORTANT;\n }\n }\n`;\n\nconst OriginalPrice = styled.span`\n text-decoration: line-through;\n font-size: 10px;\n\n font-weight: 500;\n color: #7e818c;\n padding-left: 5px !IMPORTANT;\n padding: 0 0.2rem;\n`;\n","import React, { useState, useEffect } from \"react\";\nimport { MyLoader } from \"../../Spinner\";\nimport styled from \"styled-components\";\nimport Box from \"@material-ui/core/Box\";\nimport Rating from \"@material-ui/lab/Rating\";\n\nconst Filter = () => {\n const [loading, setLoading] = useState(false);\n\n useEffect(() => {\n setLoading(true);\n const timing = setTimeout(() => {\n setLoading(false);\n }, 700);\n return () => clearTimeout(timing);\n }, []);\n return (\n
\n {loading ? (\n \n ) : (\n
\n

Filters

\n \n
\n
\n \n
Category
\n
\n \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n \n
Avg. Customer Review
\n
\n \n
    \n
  • \n \n
  • \n
  • \n

    \n & Up\n

    \n
  • \n
\n
    \n
  • \n \n
  • \n
  • \n

    \n & Up\n

    \n
  • \n
\n
    \n
  • \n \n
  • \n
  • \n

    \n & Up\n

    \n
  • \n
\n
    \n
  • \n \n
  • \n
  • \n

    \n & Up\n

    \n
  • \n
\n
\n
\n
\n \n
Price
\n
\n \n
    \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
\n
\n
\n
\n
\n \n \n
\n

-

\n
\n \n \n
\n
\n
\n
\n\n
\n \n
Size
\n
\n \n
    \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n\n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
  • \n \n \n
  • \n
\n
\n
\n
\n \n
Color
\n
\n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n )}\n
\n );\n};\nexport default Filter;\n\nconst SPACE = styled.div`\n margin-bottom: 1rem;\n height: 1px;\n background: rgba(0, 0, 0, 0.4);\n width: 100%;\n`;\n\nconst Heading = styled.div``;\n\nconst Div = styled.div`\n max-width: 30%;\n text-transform: uppercase;\n .rating {\n list-style: none;\n padding: 0;\n }\n`;\nconst Category = styled.div`\n ul {\n padding-left: 18px;\n }\n`;\nconst AvgReview = styled.div`\n ul {\n display: flex;\n }\n`;\n\nconst Price = styled.div`\n ul {\n padding-left: 18px;\n }\n`;\n\nconst Size = styled.div`\n ul {\n \n padding-left: 18px;\n }\n`;\n\nconst Color = styled.div`\n display: flex;\n flex-wrap: wrap;\n .MuiBox-root,\n .MuiBox-root-40 {\n width: 1rem;\n margin: 0.4rem;\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport ItemCard from \"./ItemCard\";\nimport Filter from \"./Filter\";\nimport { Container } from \"react-bootstrap\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport { Link } from \"react-router-dom\";\n\nfunction MenClothing() {\n const { docs } = getData(\"men-clothing\" );\n\n console.log(docs);\n return (\n \n \n \n <Breadcrumbs aria-label=\"breadcrumb\">\n <Link to=\"/\">\n <h3>Home</h3>\n </Link>\n <Link to=\"/mobile-covers\">\n <h3>Men's Clothing 🧑</h3>\n </Link>\n </Breadcrumbs>\n \n \n \n \n \n {docs &&\n docs.map((doc) => (\n \n ))}\n \n \n \n );\n}\n\nexport default MenClothing;\n\nconst FilterStyle = styled.div`\n position: absolute;\n top: 14rem;\n @media (max-width: 990px) {\n display: none;\n }\n`;\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n width: 90%;\n padding-top: 8.5rem;\n margin-left: 15%;\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n padding-top: 2rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 4rem;\n .MuiTypography-body1 {\n font-family: \"Montserrat\", sans-serif;\n font-weight: bold;\n }\n h3 {\n font-size: 22px;\n font-weight: bold;\n }\n a {\n color: #181818;\n &:hover {\n color: #7289ab;\n }\n }\n\n @media (max-width: 990px) {\n display: none;\n }\n`;\n\nconst Styles = styled.div`\n margin-top: 3.6rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport ItemCard from \"./ItemCard\";\nimport Filter from \"./Filter\";\nimport { Container } from \"react-bootstrap\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\nimport { Link } from \"react-router-dom\";\n\nfunction WomenClothing() {\n const { docs } = getData(\"women-clothing\");\n\n return (\n \n \n \n <Breadcrumbs aria-label=\"breadcrumb\">\n <Link to=\"/\">\n <h3>Home</h3>\n </Link>\n <Link to=\"/mobile-covers\">\n <h3>Women's Clothing 👩</h3>\n </Link>\n </Breadcrumbs>\n \n \n \n \n \n {docs &&\n docs.map((doc) => (\n \n ))}\n \n \n \n );\n}\n\nexport default WomenClothing;\n\nconst FilterStyle = styled.div`\n position: absolute;\n top: 14rem;\n @media (max-width: 990px) {\n display: none;\n }\n`;\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n width: 90%;\n padding-top: 8.5rem;\n margin-left: 16%;\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n padding-top: 2rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 4rem;\n .MuiTypography-body1 {\n font-family: \"Montserrat\", sans-serif;\n font-weight: bold;\n }\n h3 {\n font-size: 22px;\n font-weight: bold;\n }\n a {\n color: #181818;\n &:hover {\n color: #7289ab;\n }\n }\n @media (max-width: 990px) {\n display: none;\n }\n`;\n\nconst Styles = styled.div`\n margin-top: 3.6rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport ItemCard from \"./ItemCard\";\n// import Filter from \"./Filter\";\nimport { Link } from \"react-router-dom\";\n\nimport { Container } from \"react-bootstrap\";\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\n\nfunction MobileCovers() {\n const { docs } = getData(\"mobile-covers\");\n\n return (\n \n \n \n <Breadcrumbs aria-label=\"breadcrumb\">\n <Link to=\"/\">\n <h3>Home</h3>\n </Link>\n <Link to=\"/mobile-covers\">\n <h3>Mobile Covers 📱</h3>\n </Link>\n </Breadcrumbs>\n \n {/* \n \n */}\n \n {docs &&\n docs.map((doc) => (\n \n ))}\n \n \n \n );\n}\n\nexport default MobileCovers;\n\n// const FilterStyle = styled.div`\n// position: absolute;\n// top: 14rem;\n// @media (max-width: 990px) {\n// display: none;\n// }\n// `;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n margin: 0 auto;\n width: 90%;\n padding-top: 8.5rem;\n /* margin-left: 16%; */\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n padding-top: 2rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 4rem;\n .MuiTypography-body1 {\n font-family: \"Montserrat\", sans-serif;\n font-weight: bold;\n }\n h3 {\n font-size: 22px;\n font-weight: bold;\n }\n a {\n color: #181818;\n &:hover {\n color: #7289ab;\n }\n }\n @media (max-width: 990px) {\n display: none;\n }\n`;\n\nconst Styles = styled.div`\n margin-top: 3.6rem;\n`;\n","import { useState, useEffect } from \"react\";\nimport config from './config/config';\n\n\nfunction GetPro(collection) {\n \n const [product, setProduct] = useState([]);\n \n const [loading, setLoading] = useState(false);\n \n \n useEffect(() => {\n setLoading(true);\n fetch(config.API()+\"api/Apiproduct\")\n .then((response) =>response.json()) \n .then((data) => { \n \n setProduct(data.products);\n setLoading(false);\n \n \n \n })\n \n }, [collection]);\n \n return { product,loading};\n }\n \n export default GetPro;\n\n ","import React from \"react\";\nimport styled from \"styled-components\";\nimport getPro from \"../../Getpro\";\nimport getCat from \"../../Getcat\";\nimport ItemCard from \"./ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport Row0 from \"../subHome/Row0\";\nimport Banner_menu from \"../subHome/Banner_menu\";\nimport { Fade, Zoom } from \"react-reveal\";\nimport SiteHeader from \"../SiteHeader\";\n\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Products() {\n const { category } = getCat(\"category\");\n const { product } = getPro(\"product\");\n const { slug } = useParams();\n let cat_id=category.find(s=>s.Slug==slug)?.CategoryId;\n\n // console.log(product);\n\n return (\n <>\n \n
\n \n {/* \n \n \n \n \n */}\n \n \n
\n \n Home\n \n {slug}\n \n
\n \n {product &&\n product.filter(s=>s.CategoryId==cat_id).map((pro) => (\n a = a + v.Rating , 0 )>0 ? (pro.ReviewList.reduce((a,v) => a = a + v.Rating , 0 )/pro.ReviewList.length):'0'} \n price={localStorage.getItem(\"lang\")===\"true\" ? pro.PriceUSD-pro.DiscountUSD:pro.PriceBDT-pro.DiscountBDT }\n originalPrice={localStorage.getItem(\"lang\")===\"true\" ? pro.PriceUSD:pro.PriceBDT }\n slug={pro.Slug}\n />\n ))}\n \n \n
\n
\n
\n \n );\n}\n\nexport default Products;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getPro from \"../../Getpro\";\nimport ItemCard from \"./ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport SiteHeader from \"../SiteHeader\";\n\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Products() {\n const {product } = getPro(\"product\");\n const { slug } = useParams();\n\n //console.log(slug);\n //let cat_id=category.find(s=>s.Slug==slug)?.CategoryId;\n //console.log(product.ReviewList);\n\n\n return (\n <>\n \n
\n \n \n \n \n
\n \n Home\n \n {slug}\n \n
\n\n\n \n {product &&\n product.filter(s=>s.ProductName.toLowerCase().includes(slug.toLowerCase())).map((pro) => (\n a = a + v.Rating , 0 )>0 ? (pro.ReviewList.reduce((a,v) => a = a + v.Rating , 0 )/pro.ReviewList.length).toFixed(1):'0'} \n price={localStorage.getItem(\"lang\")===\"true\" ? pro.PriceBDT-pro.DiscountBDT : pro.PriceUSD-pro.DiscountUSD}\n originalPrice={localStorage.getItem(\"lang\")===\"true\" ? pro.PriceBDT : pro.PriceUSD}\n slug={pro.Slug}\n />\n ))}\n \n \n
\n
\n
\n \n );\n}\n\nexport default Products;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../../Getdata\";\nimport ItemCard from \"./ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport Row0 from \"../subHome/Row0\";\nimport Banner_menu from \"../subHome/Banner_menu\";\nimport { Fade, Zoom } from \"react-reveal\";\nimport SiteHeader from \"../SiteHeader\";\n\nimport { Link ,useParams } from \"react-router-dom\";\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Events() {\n const { category,product } = getData(\"category\");\n const { slug } = useParams();\n let cat_id=category.find(s=>s.Slug==slug)?.CategoryId;\n\n //console.log(Boolean(localStorage.getItem(\"lang\")));\n\n return (\n <>\n \n
\n \n {/* \n \n \n \n \n */}\n \n \n \n {product &&\n product.filter(s=>s.CategoryId==cat_id).map((pro) => (\n \n ))}\n \n \n \n \n
\n \n );\n}\n\nexport default Events;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","\n\nconst cart =JSON.parse(localStorage.getItem('carts')||\"[]\");\nconst wlist =JSON.parse(localStorage.getItem('wlist')||\"[]\");\n\nconst Storage = (bag) => {\n localStorage.setItem('carts', JSON.stringify(bag.length > 0 ? bag: []));\n}\n\nconst StorageWishlist = (wishlist) => {\n localStorage.setItem('wlist', JSON.stringify(wishlist.length > 0 ? wishlist: []));\n}\n\nexport const initialState = {\n bag: cart,\n user: null,\n wishlist: wlist,\n};\n\nexport const getBagTotal = (bag) =>{\n //console.log(bag);\n Storage(bag);\n return bag.filter(s=>s.status==true)?.reduce((amount, item) => item.price * item.quantity + amount, 0);\n}\n\nconst reducer = (state, action) => {\n \n switch (action.type) {\n // ADD TO WISHLIST\n \n case \"ADD_TO_WISHLIST\":\n // console.log(action.item.id);\n if (!state.wishlist.find(item => item.id === action.item.id)) {\n state.wishlist.push(action.item)\n }\n else{\n\n state.wishlist[state.wishlist.findIndex(item => item.id === action.item.id)].quantity++\n } \n return {\n ...state, \n ...StorageWishlist(state.wishlist),\n wishlist: [...state.wishlist],\n };\n\n case \"REMOVE_FROM_WISHLIST\":\n const indexWish = state.wishlist.findIndex(\n (wishlistItem) => wishlistItem.id === action.item.id\n );\n let newwishlist = [...state.wishlist];\n if (indexWish >= 0) {\n newwishlist.splice(indexWish, 1);\n } else {\n console.warn(\n `Something Wrong with product (id: ${action.item.id}) maybe its not added`\n );\n }\n return {\n ...state,\n ...StorageWishlist(state.wishlist),\n wishlist: newwishlist,\n };\n\n // ADD TO BAG\n\n case \"ADD_TO_BAG\":\n \n if (!state.bag.find(item => item.id === action.item.id)) {\n state.bag.push(action.item)\n }\n else{\n \n state.bag[state.bag.findIndex(item => item.id === action.item.id)].quantity++\n } \n return {\n ...state,\n ...getBagTotal(state.bag),\n bag: [...state.bag]\n }\n\n // const cart =JSON.parse(localStorage.getItem('carts')||\"[]\");\n // cart.push(action.item);\n // localStorage.setItem('carts', JSON.stringify(cart))\n // return {\n // ...state,\n // bag: [...state.bag, action.item],\n // };\n case \"CHECKED\":\n state.bag[state.bag.findIndex(item => item.id === action.item.id)].status=action.item.status\n return {\n ...state,\n ...getBagTotal(state.bag),\n bag: [...state.bag]\n }\n case \"INCREASE\":\n state.bag[state.bag.findIndex(item => item.id === action.item.id)].quantity++\n return {\n ...state,\n ...getBagTotal(state.bag),\n bag: [...state.bag]\n }\n case \"DECREASE\":\n state.bag[state.bag.findIndex(item => item.id === action.item.id)].quantity--\n return {\n ...state,\n ...getBagTotal(state.bag),\n bag: [...state.bag]\n }\n case \"CLEAR\":\n return {\n bag: [],\n ...getBagTotal([]),\n }\n case \"REMOVE_FROM_BAG\":\n const index = state.bag.findIndex((bagItem) => bagItem.id === action.id);\n let newbag = [...state.bag];\n if (index >= 0) {\n newbag.splice(index, 1);\n } else {\n console.warn(\n `Something Wrong with product (id: ${action.id}) maybe its not added`\n );\n }\n return {\n ...state,\n ...getBagTotal(state.bag),\n bag: newbag,\n };\n case \"SET_USER\":\n return {\n ...state,\n user: action.user,\n };\n case \"LOGOUT_USER\":\n return {\n ...state,\n user: null,\n };\n default:\n return state;\n }\n};\n\nexport default reducer;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { useStateValue } from \"../../context/State\";\nimport DeleteForever from \"@material-ui/icons/DeleteForever\";\nimport { Rating } from \"@material-ui/lab\";\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\n\nimport {\n Dialog,\n DialogTitle,\n DialogActions,\n DialogContent,\n DialogContentText,\n Button,\n} from \"@material-ui/core\";\n\nfunction Product({ id, pName, image, price, originalPrice, rating,quantity }) {\n const [{ }, dispatch] = useStateValue();\n const [open, setOpen] = React.useState(false);\n const [ischeck, SetIscheck] = React.useState(true);\n\n const handleClickOpen = () => {\n setOpen(true);\n };\n\n const handleClose = () => {\n setOpen(false);\n };\n\n const removeItem = () => {\n dispatch({\n type: \"REMOVE_FROM_BAG\",\n id: id,\n });\n \n };\n const check = (id) => {\n\n if(ischeck==true) {\n SetIscheck(false);\n \n }\n else{\n SetIscheck(true);\n \n }\n\n dispatch({\n type: \"CHECKED\",\n item: {\n id:id,\n status:ischeck\n } \n });\n \n };\n\n const addToWishlist = () => {\n dispatch({\n type: \"REMOVE_FROM_BAG\",\n id: id,\n });\n dispatch({\n type: \"ADD_TO_WISHLIST\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: rating,\n originalPrice: originalPrice,\n },\n });\n };\n const increase = (id) => {\n dispatch( {\n type: \"INCREASE\", \n item: {\n id:id\n } \n }); \n };\n const decrease = (id) => {\n dispatch( {\n type: \"DECREASE\", \n item: {\n id:id\n } \n }); \n };\n return (\n \n\n \n \n check(id)} type=\"checkbox\"/>\n \n \n \n \n
\n

{pName}

\n \n\n
\n \n {localStorage.getItem(\"lang\")==='true' ? \"USD\":\"BDT\"} {price}\n \n\n {originalPrice}\n
\n {/* */}\n \n {/*
\n \n \n \n \n \n \n \n \n \n \n \n \n
*/}\n\n \n
\n\n \n
\n decrease(id)} style={{fontSize:\"20px\", fontWeight:\"bold\", cursor:\"pointer\"}}>-\n \n increase(id)} style={{fontSize:\"20px\", fontWeight:\"bold\", cursor:\"pointer\"}}>+\n
\n \n \n \n \n \n \n \n \n
\n REMOVE ITEM\n
\n
\n \n\n \n \n

\n Are you sure you want to remove this item ?\n

\n
\n
\n \n \n \n \n \n \n \n
\n );\n}\n\nexport default Product;\n\nconst Line = styled.div`\n height: 2px;\n width: 100%;\n border-bottom: 1px solid rgba(0, 0, 0, 0.3);\n margin-bottom: 6px;\n`;\n\nconst PRODUCT = styled.div`\n width: 100%;\n max-height: 100%;\n display: flex;\n margin-top: 1rem;\n flex: 1;\n .MuiDialogTitle-root {\n padding: 16px 25px 5px 25px;\n }\n .MuiSvgIcon-root {\n font-size:3rem;\n }\n`;\nconst Delete = styled.button`\n background: transparent;\n border: none;\n font-size: 16px;\n padding-bottom: 0;\n color: grey;\n\n :active,\n :hover,\n :focus {\n outline: none;\n color: #000;\n transform: translateY(3px);\n }\n`;\n// const Btn = styled.div`\n// margin-right: 8px;\n// `;\n// const BUTTON = styled.button`\n// background-color: #fff;\n// border: 1px solid #bfc0c6;\n// border-radius: 50px;\n// padding: 0;\n// min-width: 30px;\n// height: 30px;\n// text-align: center;\n// cursor: pointer;\n// color: #282c3f;\n// &:focus {\n// border-color: #fd3a69;\n// outline: none;\n// color: #fd3a69;\n// }\n// `;\nconst OriginalPrice = styled.span`\n text-decoration: line-through;\n font-size: 14px;\n font-weight: 100;\n color: #7e818c;\n padding: 0 0.2rem;\n`;\n","import { useState, useEffect } from \"react\";\nimport config from './config/config';\n\n\n \nfunction GetGen(collection) {\n \n \n const [tag, setTag] = useState([]);\n const [countries, setCountry] = useState([]);\n const [districts, setDistrict] = useState([]); \n const [loading, setLoading] = useState(false);\n \n \n useEffect(() => {\n setLoading(true);\n fetch(config.API()+\"api/Apigeneral\")\n .then((response) =>response.json()) \n .then((data) => { \n \n \n setCountry(data.countries);\n setDistrict(data.districts); \n setTag(data.tags); \n setLoading(false);\n \n \n \n })\n \n }, [collection]);\n \n return { countries ,districts,tag,loading};\n }\n \n export default GetGen;","import React,{useState,useEffect} from \"react\";\nimport { Container, Card } from \"react-bootstrap\";\nimport CurrencyFormat from \"react-currency-format\";\n\nimport styled from \"styled-components\";\nimport { getBagTotal } from \"../../context/Reducer\";\nimport { useStateValue } from \"../../context/State\";\nimport Product from \"./Product\";\nimport Row0 from \"../subHome/Row0\";\nimport SiteHeader from \"../SiteHeader\";\nimport { Fade, Zoom } from \"react-reveal\";\nimport Banner_menu from \"../subHome/Banner_menu\";\nimport config from '../../config/config';\nimport { Link, useHistory } from \"react-router-dom\";\nimport getGen from \"../../Getgen\";\nimport { Label } from \"@material-ui/icons\";\n\nfunction Checkout() {\n\n const history = useHistory();\n const [{ bag },dispatch] = useStateValue();\n const bagLength = bag.length;\n const {districts, countries } = getGen(\"country\");\n const [isBangladesh, setIsBnangladesh] = useState(true);\n const [ischeck1, SetIscheck1] = useState(false);\n const [payment, SetPayment] = useState(\"Online\");\n \n\n const [ShippingCost, setShippingCost] = useState(\"0\");\n\n let user=JSON.parse(localStorage.getItem(\"uid\"));\n let address1, postalcode1, CountryName1, city1, alterphone1;\n \n const ischeck1Fun = () => {\n if(ischeck1==true) {\n SetIscheck1(false);\n }\n else{\n SetIscheck1(true);\n \n } \n \n };\n\n const isPayment = (e) => {\n \n SetPayment(e.trim());\n console.log(payment);\n \n };\n \n // const ischeck3Fun = () => {\n // if(ischeck3==true) {\n // SetIscheck3(false);\n // }\n // else{\n // SetIscheck3(true);\n \n // } \n // };\n\n if(user!=null){\n address1=user.ShippingAddress;\n postalcode1=user.PostalCode;\n CountryName1=user.Country;\n city1=user.City;\n alterphone1=user.PhoneNumber;\n alterphone1=\"\";\n }\n const [address, setAddress] = useState(address1);\n const [postalcode, setPostalcode] = useState(postalcode1);\n const [CountryName, setCountryName] = useState(CountryName1);\n const [city, setCity] = useState(city1);\n const [alterphone, setAlterphobe] = useState(alterphone1);\n \n\nconst cart_empty=(e)=>{\n dispatch({\n type: \"CLEAR\",\n \n });\n}\n\nfunction rcheck(){\n\n if(address==\"\")\n {\n alert(\"Address is Required\");\n return false;\n }\n else if(postalcode==\"\"){\n alert(\"Postalcode is Required\");\n }\n else if(CountryName==\"\"){\n alert(\"Postalcode is Required\");\n return false;\n }\n else if(city==\"\"){\n alert(\"City is Required\");\n return false;\n }\n else if(alterphone==\"\"){\n alert(\"Alternative Phone is Required\");\n return false;\n }\n else if(ischeck1==false){\n alert(\"Please check Terms, Reutrn & Refund Policy\");\n return false;\n }\n else if(bag.filter(s=>s.status==true).length==0){\n alert(\"Please Select Products\");\n return false;\n }\n else{\n return true;\n }\n \n}\n\nconst handleSelect=(e)=> {\n setCountryName(e);\n if(e===\"BANGLADESH\")\n {\n setIsBnangladesh(true);\n }\n else{\n setIsBnangladesh(false);\n }\n\n }\n\n const districtSelect=(e)=> {\n \n setCity(e);\n if(e.trim()===\"Dhaka\")\n {\n \n setShippingCost(60);\n \n }\n else{\n \n setShippingCost(120);\n }\n\n }\n\n useEffect(() => { \n if(city!=null){ \n if(city.trim()===\"Dhaka\")\n { \n setShippingCost(60);\n \n }\n else{\n \n setShippingCost(120);\n }\n }\n \n}, []);\n\n\n//localStorage.getItem(\"lang\")\n const postData = (e) => {\n e.preventDefault(); \n if(user!=null){\n if(rcheck()){\n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n user.ShippingAddress=address;\n user.PostalCode=postalcode;\n user.Country=CountryName;\n user.City=city;\n user.PhoneNumber=alterphone;\n\n var raw= JSON.stringify({\"postorder\":bag.filter(s=>s.status==true),\"customer\":user,ShippingCost:ShippingCost,Payment_Mode:payment, Payment_Status:false,\"isUSD\":localStorage.getItem(\"lang\")});\n //console.log(raw);\n var requestOptions = { \n method: 'POST', \n headers:myHeaders,\n body: raw, \n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Postorder\", requestOptions)\n .then(response => response.json())\n .then(result => {\n //var data=JSON.parse(result);\n // dispatch({\n // type: \"CLEAR\",\n \n // });\n \n bag.filter(s=>s.status==true).forEach((item,index) => {\n dispatch({\n type: \"REMOVE_FROM_BAG\",\n id: item.id,\n })\n });\n \n if(payment==\"Online\"){\n window.location.href=JSON.parse(result).url;\n }\n else{\n const win = window.open('/invoice/'+JSON.parse(result).OrderId, \"_blank\");\n win.focus();\n }\n })\n .catch(error => console.log('error', error));\n }\n }\n else{\n history.push('/login')\n }\n \n}\n \n return (\n <>\n \n {/* \n \n \n \n \n */}\n \n {bagLength === 0 ? (\n \n
\n \n
\n
\n ) : (\n \n \n
\n {bag.map((item) => (\n \n ))}\n \n \n {user!=null? (\n
\n
\n

Delivary Address

\n \n
\n
\n \n
\n setAddress(e.target.value)}\n type=\"text\"\n placeholder=\"Road No, Holding No, Area, Address\"\n >\n \n
\n
\n \n
\n \n
\n setPostalcode(e.target.value)}\n type=\"text\"\n placeholder=\"Postal Code\"\n />\n
\n
\n\n
\n \n
\n handleSelect(e.target.value)} \n >\n {countries && countries.map((country) => {\n return \n })\n }\n \n
\n
\n {\n isBangladesh ==true? (\n
\n \n
\n districtSelect(e.target.value)} \n >\n {districts && districts.map((district) => {\n return \n })\n }\n \n
\n
\n ):\n (\n
\n \n
\n setCity(e.target.value)}\n type=\"text\"\n placeholder=\"City\"\n />\n
\n
\n )\n }\n
\n \n
\n setAlterphobe(e.target.value)}\n type=\"text\"\n placeholder=\"Phone No\"\n \n />\n
\n
\n\n \n
\n )\n :(\"\")\n\n }\n \n\n
\n\n \n \n (\n \n Subtotal ({bagLength} items):\n \n {value}\n \n )}\n />\n\n \n \n \n
\n \n {ShippingCost}\n
\n \n If you have coupon enter the code here\n \n \n \n \n\n \n \n (\n \n Total ({bagLength} items):\n \n { value}\n \n )}\n />\n
\n
\n isPayment(e.target.value)} />\n
\n \n
\n isPayment(e.target.value)} />\n
\n \n\n
\n ischeck1Fun()} />\n
\n \n \n\n {/*
\n ischeck2Fun()} />\n
\n \n\n
\n ischeck3Fun()} />\n
*/}\n \n
\n \n\n
\n
\n
\n
\n )}\n
\n \n );\n}\n\nexport default Checkout;\n\nconst Emptybag = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 10%;\n @media (max-width: 990px) {\n margin-top: 20%;\n }\n img {\n object-fit: contain;\n width: 100%;\n }\n`;\n\nconst Styles = styled.div`\n display: flex;\n justify-content: space-between;\n margin-top: 4rem;\n @media (max-width: 990px) {\n display: block;\n }\n\n .neumorphism {\n color: #fff;\n font-weight: 600;\n border: none;\n text-transform: uppercase;\n border-radius: 8px;\n padding: 0.5rem 2rem;\n background: #1e1c19;\n box-shadow: inset 24px 24px 58px #0c0b0a, inset -24px -24px 58px #c5b8a3;\n &:hover {\n box-shadow: 3px 1px 13px #bfbfbf, -3px -1px 13px #ffffff;\n }\n &:focus {\n background-color: #1e1c19;\n outline: none;\n }\n &:active {\n background: #1e1c19;\n box-shadow: 3px 1px 13px #bfbfbf, -3px -1px 13px #ffffff;\n transform: translateY(3px);\n }\n }\n`;\n\nconst Price = styled.div`\n width: 35%;\n margin-top: 4rem;\n @media (max-width: 990px) {\n width: 100%;\n }\n`;\n\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Lock, Person } from \"@material-ui/icons\";\nimport config from '../../config/config';\nimport { useStateValue } from \"../../context/State\";\nimport getData from \"../../Getdata\";\nimport { Container, Image,Modal, Button } from \"react-bootstrap\";\nimport parse from 'html-react-parser';\n\nfunction Login() {\n const history = useHistory();\n const [phone, setPhone] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [{}, dispatch] = useStateValue();\n\n\n //terms\n const { basics } = getData(\"basics\");\n let terms= basics.find(s=>s.BasicTypeId==5); \n const [ischeck, SetIscheck] = useState(false);\n const [show, setShow] = useState(false);\n const handleClose = () =>{\n setShow(false);\n SetIscheck(true);\n }\n \n const handleShow = () => { \n SetIscheck(false);\n setShow(true);\n };\n \n\n const signIn = (e) => {\n e.preventDefault();\n // if(ischeck){\n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n \n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: JSON.stringify({\n \"PhoneNumber\":phone,\n \"Password\":password\n }),\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Login\", requestOptions)\n .then(response => response.json())\n .then(auth =>{\n if(auth!=null){\n localStorage.setItem(\"uid\",JSON.stringify(auth));\n dispatch({\n type: \"SET_USER\",\n user:auth\n });\n history.push('/');\n }\n else{\n alert('User Id or Password is Incorrect');\n }\n })\n .catch(error => alert('User Id or Password is Incorrect'));\n\n // }\n // else{\n // alert(\"Please Check Terms and condition\");\n // }\n };\n return (\n <>\n \n \n
\n
\n \n \n \n
\n
\n

Sign In

\n

You're just one step away from signing up

\n
\n
\n
\n \n setPhone(e.target.value)}\n placeholder=\"Phone Number or Email\"\n required\n />\n
\n
\n \n setPassword(e.target.value)}\n type=\"password\"\n placeholder=\"Password\"\n />\n
\n {/*
\n \n Terms & Condition\n \n
*/}\n
\n Forgot Password?\n
\n \n
\n Not a member?\n Register now\n
\n
\n
\n
\n\n \n\n \n {terms?.Title}\n \n\n \n

\n {parse(terms?.Content!=null? terms?.Content :\"\")}\n

\n\n
\n\n \n\n \n \n \n\n
\n \n );\n}\n\nexport default Login;\n\nconst Styles = styled.div`\n display: flex;\n justify-content: center;\n\n .content {\n width: 400px;\n background: #ffff;\n margin-top: 80px !important;\n // border-radius: 15px;\n padding: 40px 30px;\n box-shadow: 0 22px 40px rgba(17, 96, 96, 0.2);\n }\n .text {\n text-align: center;\n text-transform: uppercase;\n padding-bottom: 0.5rem;\n h1 {\n font-size: 22px;\n font-weight: bold;\n }\n h3 {\n font-size: 18px;\n font-weight: bold;\n }\n p {\n font-size: 10px;\n }\n }\n .field {\n height: 50px;\n width: 100%;\n display: flex;\n position: relative;\n input {\n height: 100%;\n width: 100%;\n padding-left: 45px;\n font-size: 18px;\n outline: none;\n border: 1px solid ;\n color: #595959;\n // background: #dde1e7;\n border-radius: 5px;\n // box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n &:focus ~ label {\n box-shadow: inset 2px 2px 5px #babecc, inset -1px -1px 2px #ffffff73;\n }\n }\n\n &:nth-child(2) {\n margin-top: 20px;\n }\n\n span {\n position: absolute;\n width: 50px;\n line-height: 50px;\n color: #595959;\n }\n\n label {\n position: absolute;\n top: 50%;\n left: 45px;\n pointer-events: none;\n color: #666666;\n transform: translateY(-50%);\n }\n\n .field input:focus ~ label {\n opacity: 0;\n }\n }\n\n .forgot-pass {\n text-align: left;\n margin: 10px 0 10px 5px;\n a {\n font-size: 16px;\n color: #3498db;\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n }\n }\n button {\n margin: 15px 0;\n width: 100%;\n height: 50px;\n color: #000;\n font-size: 18px;\n font-weight: 600;\n background: #dde1e7;\n border: none;\n outline: none;\n cursor: pointer;\n border-radius: 5px;\n box-shadow: 2px 2px 5px #babecc, -5px -5px 10px #ffffff73;\n\n &:focus {\n color: #3498db;\n box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n }\n }\n\n .signup {\n font-size: 16px;\n color: #595959;\n margin: 10px 0;\n a {\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n color: #000;\n }\n }\n }\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Email, LocationCity, Lock, Person,Phone } from \"@material-ui/icons\";\nimport config from '../../config/config';\nimport getGen from \"../../Getgen\";\nimport getData from \"../../Getdata\";\nimport { Container, Image,Modal, Button } from \"react-bootstrap\";\nimport parse from 'html-react-parser';\n\nfunction Signup() {\n const history = useHistory();\n const [firstName, setFirstName] = useState(\"\");\n const [code, setCode] = useState(\"\");\n const [phone, setPhone] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n const [country, setCountry] = useState(\"\");\n\n const {countries } = getGen(\"country\");\n \n const { basics } = getData(\"basics\");\n let terms= basics.find(s=>s.BasicTypeId==5);\n\n\n //terms\n \n const [ischeck, SetIscheck] = useState(false);\n\n const [show, setShow] = useState(false);\n const handleClose = () =>{\n setShow(false);\n SetIscheck(true);\n }\n\n const handleShow = () => { \n if(ischeck==true) {\n SetIscheck(false);\n \n }\n else{\n SetIscheck(true);\n setShow(true);\n }\n // \n };\n\n\n const handleSelect=(e, c)=> {\n setCode(e);\n setCountry(c);\n\n }\n\n const signUp = (e) => {\n e.preventDefault();\n if(ischeck){\n if (password === confirmPassword) {\n \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/x-www-form-urlencoded\");\n var urlencoded = new URLSearchParams();\n urlencoded.append(\"CustomerName\",firstName);\n urlencoded.append(\"Email\", email);\n urlencoded.append(\"PhoneNumber\", phone);\n urlencoded.append(\"CountryCode\", code);\n urlencoded.append(\"Country\", country);\n\n //Country\n urlencoded.append(\"Password\", password);\n\n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: urlencoded,\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Signup\", requestOptions)\n .then(response => response.json())\n .then(result =>{\n\n let rt=JSON.parse(result);\n // console.log(rt.phone);\n localStorage.setItem('phone',rt.phone);\n if(rt.msg==\"Submit Successful\"){\n \n history.push('/verification');\n }\n })\n .catch(error => alert(\"User Already Exist!\"));\n } else {\n alert(\"Password must be same\");\n }\n }\n else{\n alert(\"Please Check Terms and condition\");\n }\n };\n\n return (\n <>\n \n \n
\n
\n \n \n \n
\n
\n \n

Sign Up

\n {/*

Sally Ann BD

*/}\n

You're just one step away from signing up

\n
\n
\n
\n \n setFirstName(e.target.value)}\n placeholder=\"Enter your Full Name\"\n required\n />\n \n
\n
\n \n handleSelect(e.target.value, e.target.options[e.target.selectedIndex].text)} \n >\n \n\n {countries && countries.map((country) => {\n return \n })\n }\n \n
\n
\n \n \n setPhone(e.target.value)}\n placeholder=\"Phone\"\n \n required\n />\n
\n\n
\n \n setEmail(e.target.value)}\n placeholder=\"Email\"\n required\n />\n
\n
\n \n setPassword(e.target.value)}\n type=\"password\"\n placeholder=\"Password\"\n />\n
\n
\n \n setConfirmPassword(e.target.value)}\n type=\"password\"\n placeholder=\"Confirm Password\"\n />\n
\n
\n \n Terms & Condition\n \n
\n \n\n \n
\n Have an account?\n Login Now\n
\n
\n
\n
\n\n \n\n \n {terms?.Title}\n \n\n \n

\n {parse(terms?.Content!=null? terms?.Content :\"\")}\n

\n\n
\n\n \n\n \n \n \n\n
\n\n \n );\n}\n\nexport default Signup;\n\nconst Input = styled.input`\n width: 50%;\n padding: 0.8rem;\n font-size: 14px;\n outline: none;\n border: none;\n color: #595959;\n background: #fff;\n //box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n\n &:focus ~ label {\n box-shadow: inset 2px 2px 5px #babecc, inset -1px -1px 2px #ffffff73;\n }\n &:nth-child(1) {\n border-radius: 5px 0 0 5px;\n }\n &:nth-child(2) {\n border-radius: 0 5px 5px 0;\n }\n`;\n\nconst Styles = styled.div`\n display: flex;\n justify-content: center;\n\n .content {\n width: 400px;\n background: #ffff;\n margin-top:20px;\n border-radius: 5px;\n padding: 40px 30px;\n box-shadow: 0 22px 40px rgba(17, 96, 96, 0.2);\n }\n .name {\n display: flex;\n }\n .text {\n text-align: center;\n text-transform: uppercase;\n padding-bottom: 0.5rem;\n h1 {\n font-size: 22px;\n font-weight: bold;\n }\n h3 {\n font-size: 18px;\n font-weight: bold;\n }\n p {\n font-size: 10px;\n }\n }\n .field {\n height: 50px;\n width: 100%;\n display: flex;\n position: relative;\n margin-top: 20px;\n input,select {\n height: 100%;\n width: 100%;\n padding-left: 45px;\n font-size: 18px;\n outline: none;\n border: 1px solid;\n color: #595959;\n border-radius: 5px;\n // box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n\n &:focus ~ label {\n box-shadow: inset 2px 2px 5px #babecc, inset -1px -1px 2px #ffffff73;\n }\n }\n\n .field span {\n position: absolute;\n width: 50px;\n line-height: 50px;\n color: #595959;\n }\n\n .field label {\n position: absolute;\n top: 50%;\n left: 45px;\n pointer-events: none;\n color: #666666;\n transform: translateY(-50%);\n }\n\n .field input:focus ~ label {\n opacity: 0;\n }\n }\n\n button {\n margin: 15px 0;\n width: 100%;\n height: 50px;\n color: #000;\n font-size: 18px;\n font-weight: 600;\n background: #dde1e7;\n border: none;\n outline: none;\n cursor: pointer;\n border-radius: 5px;\n box-shadow: 2px 2px 5px #babecc, -5px -5px 10px #ffffff73;\n\n &:focus {\n color: #3498db;\n box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n }\n }\n\n .signup {\n font-size: 16px;\n color: #595959;\n margin: 10px 0;\n\n a {\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n color: #000;\n }\n }\n }\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport { Link } from \"react-router-dom\";\nimport { Card, Container } from \"react-bootstrap\";\nimport { useStateValue } from \"../../context/State\";\nimport { DeleteForever, LocalMall, Star } from \"@material-ui/icons\";\nimport SiteHeader from \"../SiteHeader\";\n\nfunction CARD({ id, pName, image, rating, price, originalPrice }) {\n const [{}, dispatch] = useStateValue();\n\n const addToBag = () => {\n dispatch({\n type: \"ADD_TO_BAG\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: rating,\n originalPrice: originalPrice,\n },\n });\n };\n const removeItem = () => {\n dispatch({\n type: \"REMOVE_FROM_WISHLIST\",\n item: {\n id: id,\n },\n });\n };\n return (\n \n \n \n \n \n \n\n \n

{pName}

\n
\n \n \n
\n {localStorage.getItem(\"lang\")==='true' ? \"USD\":\"BDT\"} {price}\n {originalPrice}\n
\n
\n \n
\n \n
\n
\n \n
\n
\n {rating} \n
\n
\n
\n \n \n
\n \n \n );\n}\n\nfunction Wishlist() {\n const [{ wishlist }] = useStateValue();\n const wishlistLength = wishlist.length;\n return (\n <>\n \n \n \n <span\n style={{\n position: \"absolute\",\n left: \"0rem\",\n }}\n >\n <h1>My Wishlist</h1>\n <div\n style={{\n height: \".2rem\",\n width: \"9rem\",\n background: \"#fdb827\",\n borderRadius: \"15%\",\n }}\n ></div>\n </span>\n \n {wishlistLength === 0 ? (\n \n
\n \n
\n
\n ) : (\n
\n {wishlist.map((item) => (\n \n ))}\n
\n )}\n
\n \n );\n}\n\nexport default Wishlist;\n\nconst Emptybag = styled.div`\n display: flex;\n justify-content: center;\n margin-top: 10%;\n @media (max-width: 990px) {\n margin-top: 20%;\n }\n img {\n object-fit: contain;\n width: 100%;\n }\n`;\nconst Title = styled.div`\n position: relative;\n\n @media (max-width: 990px) {\n display: none;\n }\n`;\nconst RoundDiv = styled.div`\n display: flex;\n @media (max-width: 990px) {\n //display: grid;\n position: absolute;\n right: 0;\n }\n`;\n\nconst Div = styled.div`\n margin-bottom: 1rem;\n margin-top: 5rem;\n padding: 0.45rem;\n background: transparent;\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n h3 {\n font-size: 12px;\n font-weight: 500;\n @media (max-width: 990px) {\n font-size: 10px;\n }\n }\n h3,\n a {\n color: #292929;\n text-decoration: none;\n &:hover {\n color: #7289ab;\n }\n }\n .card {\n margin-left: 1rem;\n margin-top: 5rem;\n width: 25rem;\n border: none;\n box-shadow: inset 3px 3px 8px #dbdbdb, inset -6px -6px 12px #ffffff;\n\n padding: 20px;\n border-radius: 12px;\n margin-bottom: 30px;\n &:hover {\n box-shadow: 6px 6px 12px #b8b8b8, -6px -6px 12px #ffffff;\n }\n @media (max-width: 990px) {\n width: 15rem;\n height: 32rem;\n }\n }\n .rating {\n width: 47px;\n background: rgba(253, 184, 39, 0.5);\n border-radius: 26px;\n font-size: 10px;\n font-weight: bolder;\n padding: 3px;\n text-align: center;\n margin-top: 0.7rem;\n margin-left: 0.2rem;\n }\n .card-img-top {\n margin-bottom: 5px;\n display: inline-block;\n /* max-width: 100%; */\n /* height: 13rem; */\n }\n\n .card-body {\n /* margin-bottom: 20px; */\n text-align: center;\n align-items: center;\n padding: 1rem 0.5rem;\n }\n\n .product-btns {\n display: flex;\n justify-content: center;\n }\n .btn-small {\n display: inline-block;\n font-size: 14px;\n font-weight: 700;\n text-transform: uppercase;\n text-align: center;\n padding: 6px 12px;\n border-radius: 5px;\n box-shadow: inset -2px -2px 8px white,\n inset -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n inset 2px 2px 8px rgba(0, 0, 0, 0.15);\n transition: 0.4s;\n &:hover {\n box-shadow: -2px -2px 8px white, -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n 2px 2px 8px rgba(0, 0, 0, 0.15);\n color: #7289ab;\n text-decoration: none;\n }\n @media (max-width: 990px) {\n position: relative;\n //right: 1.5rem;\n top: 5px;\n }\n }\n\n .btn-round {\n cursor: pointer;\n display: inline-block;\n font-weight: 700;\n font-size: 14px;\n text-transform: uppercase;\n height: 4rem;\n width: 5rem;\n text-align: center;\n line-height: 30px;\n // border-radius: 50%;\n text-decoration: none;\n box-shadow: -2px -2px 8px white, -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n 2px 2px 8px rgba(0, 0, 0, 0.15);\n &:hover {\n box-shadow: inset -2px -2px 8px white,\n inset -2px -2px 12px rgba(255, 255, 255, 0.5),\n inset 2px 2px 4px rgba(255, 255, 255, 0.1),\n inset 2px 2px 8px rgba(0, 0, 0, 0.15);\n color: #7289ab;\n }\n @media (max-width: 990px) {\n margin-bottom: 0.5rem;\n margin-right: 0px !IMPORTANT;\n }\n }\n`;\n\nconst OriginalPrice = styled.span`\n text-decoration: line-through;\n font-size: 10px;\n font-weight: 100;\n color: #7e818c;\n padding: 0 0.2rem;\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\n\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Lock, Person } from \"@material-ui/icons\";\nimport config from '../../config/config';\nimport { useStateValue } from \"../../context/State\";\n\nfunction Verification() {\n const history = useHistory();\n const [{}, dispatch] = useStateValue();\n const [otp, setOtp] = useState(\"\");\n\n const verification = (e) => {\n e.preventDefault(); \n \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n \n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: JSON.stringify({\n \"PhoneNumber\":localStorage.getItem(\"phone\"),\n \"Otp\":otp\n }),\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Apiverify\", requestOptions)\n .then(response => response.json())\n .then(auth =>{\n if(auth!=null){\n localStorage.setItem(\"uid\",JSON.stringify(auth));\n dispatch({\n type: \"SET_USER\",\n user:auth\n });\n history.push('/');\n }\n else{\n alert('User Id or Password is Incorrect');\n }\n })\n .catch(error => alert('User Id or Password is Incorrect'));\n };\n return (\n <>\n \n \n
\n
\n \n
\n
\n

Verify

\n

Enter OTP HERE

\n
\n
\n \n
\n \n setOtp(e.target.value)}\n type=\"text\"\n placeholder=\"OTP\"\n />\n
\n \n \n {/*
\n Please Login \n Click here\n
*/}\n
\n
\n
\n \n );\n}\n\nexport default Verification;\n\nconst Styles = styled.div`\n display: flex;\n justify-content: center;\n\n .content {\n width: 400px;\n background: #ffff;\n margin-top: 80px !important;\n // border-radius: 15px;\n padding: 40px 30px;\n box-shadow: 0 22px 40px rgba(17, 96, 96, 0.2);\n }\n .text {\n text-align: center;\n text-transform: uppercase;\n padding-bottom: 0.5rem;\n h1 {\n font-size: 22px;\n font-weight: bold;\n }\n h3 {\n font-size: 18px;\n font-weight: bold;\n }\n p {\n font-size: 10px;\n }\n }\n .field {\n height: 50px;\n width: 100%;\n display: flex;\n position: relative;\n input {\n height: 100%;\n width: 100%;\n padding-left: 45px;\n font-size: 18px;\n outline: none;\n border: 1px solid;\n color: #595959;\n // background: #dde1e7;\n border-radius: 5px;\n // box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n &:focus ~ label {\n box-shadow: inset 2px 2px 5px #babecc, inset -1px -1px 2px #ffffff73;\n }\n }\n\n &:nth-child(2) {\n margin-top: 20px;\n }\n\n span {\n position: absolute;\n width: 50px;\n line-height: 50px;\n color: #595959;\n }\n\n label {\n position: absolute;\n top: 50%;\n left: 45px;\n pointer-events: none;\n color: #666666;\n transform: translateY(-50%);\n }\n\n .field input:focus ~ label {\n opacity: 0;\n }\n }\n\n .forgot-pass {\n text-align: left;\n margin: 10px 0 10px 5px;\n a {\n font-size: 16px;\n color: #3498db;\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n }\n }\n button {\n margin: 15px 0;\n width: 100%;\n height: 50px;\n color: #000;\n font-size: 18px;\n font-weight: 600;\n background: #dde1e7;\n border: none;\n outline: none;\n cursor: pointer;\n border-radius: 5px;\n box-shadow: 2px 2px 5px #babecc, -5px -5px 10px #ffffff73;\n\n &:focus {\n color: #3498db;\n box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n }\n }\n\n .signup {\n font-size: 16px;\n color: #595959;\n margin: 10px 0;\n a {\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n color: #000;\n }\n }\n }\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\n\nimport { Link, useHistory } from \"react-router-dom\";\nimport { Lock,Phone, Person } from \"@material-ui/icons\";\nimport config from '../../config/config';\nimport { useStateValue } from \"../../context/State\";\n\nfunction ForgetPassword() {\n const history = useHistory();\n const [{}, dispatch] = useStateValue();\n const [otp, setOtp] = useState(\"\");\n\n const forgetPassword = (e) => {\n e.preventDefault(); \n \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n \n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: JSON.stringify({\n \"PhoneNumber\":otp\n \n }),\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/ApiForgetPassword\", requestOptions)\n .then(response => response.json())\n .then(msg =>{\n if(msg!=null){\n \n if(window.confirm(JSON.parse(msg).msg) == true) {\n history.push('/');\n }\n \n }\n else{\n alert('Error Occered');\n }\n })\n .catch(error => alert('User Id or Password is Incorrect'));\n };\n return (\n <>\n \n \n
\n
\n \n
\n
\n

Change Password

\n

Enter Your Phone Number or Email

\n
\n
\n \n
\n \n setOtp(e.target.value)}\n type=\"text\"\n placeholder=\"Phone Number or Email\"\n />\n
\n \n \n {/*
\n Please Login \n Click here\n
*/}\n
\n
\n
\n \n );\n}\n\nexport default ForgetPassword;\n\nconst Styles = styled.div`\n display: flex;\n justify-content: center;\n\n .content {\n width: 400px;\n background: #ffff;\n margin-top: 80px !important;\n // border-radius: 15px;\n padding: 40px 30px;\n box-shadow: 0 22px 40px rgba(17, 96, 96, 0.2);\n }\n .text {\n text-align: center;\n text-transform: uppercase;\n padding-bottom: 0.5rem;\n h1 {\n font-size: 22px;\n font-weight: bold;\n }\n h3 {\n font-size: 18px;\n font-weight: bold;\n }\n p {\n font-size: 10px;\n }\n }\n .field {\n height: 50px;\n width: 100%;\n display: flex;\n position: relative;\n input {\n height: 100%;\n width: 100%;\n padding-left: 45px;\n font-size: 18px;\n outline: none;\n border: 1px solid;\n color: #595959;\n // background: #dde1e7;\n border-radius: 5px;\n // box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n &:focus ~ label {\n box-shadow: inset 2px 2px 5px #babecc, inset -1px -1px 2px #ffffff73;\n }\n }\n\n &:nth-child(2) {\n margin-top: 20px;\n }\n\n span {\n position: absolute;\n width: 50px;\n line-height: 50px;\n color: #595959;\n }\n\n label {\n position: absolute;\n top: 50%;\n left: 45px;\n pointer-events: none;\n color: #666666;\n transform: translateY(-50%);\n }\n\n .field input:focus ~ label {\n opacity: 0;\n }\n }\n\n .forgot-pass {\n text-align: left;\n margin: 10px 0 10px 5px;\n a {\n font-size: 16px;\n color: #3498db;\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n }\n }\n button {\n margin: 15px 0;\n width: 100%;\n height: 50px;\n color: #000;\n font-size: 18px;\n font-weight: 600;\n background: #dde1e7;\n border: none;\n outline: none;\n cursor: pointer;\n border-radius: 5px;\n box-shadow: 2px 2px 5px #babecc, -5px -5px 10px #ffffff73;\n\n &:focus {\n color: #3498db;\n box-shadow: inset 2px 2px 5px #babecc, inset -5px -5px 10px #ffffff73;\n }\n }\n\n .signup {\n font-size: 16px;\n color: #595959;\n margin: 10px 0;\n a {\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n color: #000;\n }\n }\n }\n`;\n","import React, { useState } from \"react\";\nimport AdminLTE, { Sidebar, Content, Row, Col, Box, Button } from 'adminlte-2-react'\nimport { Link, useHistory } from \"react-router-dom\";\nimport config from '../config/config';\nimport getGen from \"../Getgen\";\n\nfunction Profile() {\n const history = useHistory();\n let user=JSON.parse(localStorage.getItem(\"uid\"));\n const [CustomerName, setCustomerName] = useState(user.CustomerName);\n const {districts, countries } = getGen(\"country\");\n const [isBangladesh, setIsBnangladesh] = useState(true);\n const [phone, setPhone] = useState(user.PhoneNumber);\n const [email, setEmail] = useState(user.Email);\n const [BillingAddress, setBillingAddress] = useState(user.BillingAddress);\n const [ShippingAddress, setShippingAddress] = useState(user.ShippingAddress);\n const [postalcode, setPostalcode] = useState(user.PostalCode);\n const [CountryName, setCountryName] = useState(user.Country);\n const [city, setCity] = useState(user.City);\n\n const [image, setImage] = useState(user.Pimage);\n\n //console.log(CountryName);\n \n const handleSelect=(e)=> {\n setCountryName(e);\n if(e===\"BANGLADESH\")\n {\n setIsBnangladesh(true);\n }\n else{\n setIsBnangladesh(false);\n }\n\n }\n\n const onFileChange = (event) => {\n \n // Update the state\n setImage({ selectedFile: event.target.files[0] });\n \n };\n // On file upload (click the upload button)\n const onFileUpload = () => { \n \n const formData = new FormData(); \n // Update the formData object\n formData.append(\n \"myFile\",\n image.selectedFile,\n image.selectedFile.name\n );\n formData.append(\"Customer_id\",user.CustomerId);\n \n var requestOptions = {\n method: 'POST', \n body: formData,\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Image\", requestOptions)\n .then(response => response.json())\n .then(result =>{\n localStorage.setItem(\"uid\",JSON.stringify(result));\n let usr= JSON.parse(localStorage.getItem(\"uid\"));\n setImage(usr.Pimage);\n alert(\"Submit Successful\");\n })\n .catch(error => console.log('error', error));\n };\n\n const update = (e) => {\n e.preventDefault(); \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n var customer=JSON.stringify({\n \"CustomerId\" : user.CustomerId,\n \"CustomerName\":CustomerName,\n \"BillingAddress\":BillingAddress,\n \"City\":city,\n \"Country\":CountryName, \n \"Email\":email,\n \"PhoneNumber\":phone,\n \"PostalCode\":postalcode,\n \"ShippingAddress\":ShippingAddress,\n });\n // console.log(user);\n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: customer,\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Apiprofile\", requestOptions)\n .then(response => response.json())\n .then(result =>{\n localStorage.setItem(\"uid\",JSON.stringify(result));\n \n alert(\"Submit Successful\");\n })\n .catch(error => console.log('error', error));\n \n };\n\n return (\n \n \n \n \n \n \n \"User\n \n

{CustomerName}

\n \n

Customer

\n\n
    \n
  • \n Total Orders 0\n
  • \n
  • \n Pending Orders 0\n
  • \n
  • \n Canceled Orders 0\n
  • \n
\n
\n {onFileChange(event)}} name=\"img\"/>\n
\n\n \n \n
\n \n\n\n \n \n \n \n
\n
\n \n
\n setCustomerName(e.target.value)}\n placeholder=\"Enter your Name\"\n required\n />\n
\n
\n\n
\n \n
\n setPhone(e.target.value)}\n placeholder=\"Phone\"\n required\n />\n
\n
\n\n \n
\n \n
\n \n setEmail(e.target.value)}\n placeholder=\"Email\"\n required\n />\n
\n
\n \n
\n \n
\n setBillingAddress(e.target.value)}\n type=\"text\"\n placeholder=\"Address\"\n >\n \n
\n
\n\n
\n \n
\n setShippingAddress(e.target.value)}\n type=\"text\"\n placeholder=\"Address\"\n >\n \n
\n
\n
\n \n
\n setPostalcode(e.target.value)}\n type=\"text\"\n placeholder=\"Postal Code\"\n />\n
\n
\n
\n \n
\n handleSelect(e.target.value)} \n >\n {countries && countries.map((country) => {\n return \n })\n }\n \n
\n
\n {\n isBangladesh==true ? (\n
\n \n
\n setCity(e.target.value)} \n >\n {districts && districts.map((district) => {\n return \n })\n }\n \n
\n
\n ):\n (\n
\n \n
\n setCity(e.target.value)}\n type=\"text\"\n placeholder=\"City\"\n />\n
\n
\n )\n }\n \n \n \n \n \n
\n \n
\n \n
\n
\n );\n}\n\nexport default Profile;\n","import React, { useState } from \"react\";\nimport AdminLTE, { Sidebar, Content, Row, Col, Box, Button } from 'adminlte-2-react'\nimport { Link, useHistory } from \"react-router-dom\";\nimport config from '../config/config';\n\nfunction Setting() {\n const history = useHistory();\n const [firstName, setFirstName] = useState(\"\");\n const [lastName, setLastName] = useState(\"\");\n const [phone, setPhone] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n\n const changePassword = (e) => {\n e.preventDefault();\n if (password === confirmPassword) {\n \n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/x-www-form-urlencoded\");\n var urlencoded = new URLSearchParams();\n urlencoded.append(\"CustomerName\",firstName + \" \" + lastName);\n urlencoded.append(\"Email\", email);\n urlencoded.append(\"PhoneNumber\", phone);\n urlencoded.append(\"Password\", password);\n\n var requestOptions = {\n method: 'POST',\n headers: myHeaders,\n body: urlencoded,\n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Signup\", requestOptions)\n .then(response => response.text())\n .then(result =>{\n history.push('/verification');\n })\n .catch(error => console.log('error', error));\n } else {\n alert(\"Password must be same\");\n }\n };\n\n return (\n \n \n \n \n\n \n \n \n \n
\n \n
\n \n
\n setPassword(e.target.value)}\n type=\"type\"\n placeholder=\"Password\"\n />\n \n
\n
\n \n
\n \n
\n setConfirmPassword(e.target.value)}\n type=\"text\"\n placeholder=\"Confirm Password\"\n />\n
\n
\n\n \n \n \n \n
\n \n
\n \n
\n
\n );\n}\n\nexport default Setting;\n","import React, { useState, useEffect } from \"react\";\nimport AdminLTE, { Sidebar, Content, Row, Col, Box, Button } from 'adminlte-2-react'\nimport { Link, useHistory } from \"react-router-dom\";\nimport Moment from 'react-moment';\n\nimport config from '../config/config';\n\nfunction OrderHistory() {\n let user=JSON.parse(localStorage.getItem(\"uid\"));\n\n const [order, setOrder] = useState([]);\n const invoiceDetails=(id)=> {\n // window.location.href=\"/invoice/\"+id;\n const win = window.open('/invoice/'+id, \"_blank\");\n win.focus();\n \n }\n\n\n //console.log(user);\n useEffect(() => {\n fetch(config.API()+\"api/Postorder/\"+user.CustomerId)\n .then((response) =>response.json()) \n .then((data) => { \n setOrder(data);\n // console.log(data);\n \n \n })\n},[])\n \n\n return (\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {order.map((item,key) => { \n return \n \n \n \n \n \n \n \n \n\n \n \n \n })} \n \n
SLInvoice NoDatePayment ModeTotal AmountOrder StatusETAAction
{key+1}{item.OrderId}\n \n \n {item.Created}\n {item.Discount}{item.TotalCost}{item.Status}\n \n 2022-04-19T12:59-0500\n \n
\n
\n \n
\n
\n );\n}\n\nexport default OrderHistory;\n","import React from \"react\";\nimport * as Icon from 'react-bootstrap-icons';\n\nfunction Logout() {\n \n\n const logout = () => {\n\n localStorage.removeItem(\"uid\"); \n // history.push(\"/\");\n window.location.href=\"/\";\n\n };\n\n return (\n \n \n   Logout\n \n );\n}\n\nexport default Logout;\n","import React from \"react\";\nimport * as Icon from 'react-bootstrap-icons';\n\nfunction CartMenu() {\n \n\n const cartmenu = () => {\n\n // localStorage.removeItem(\"uid\"); \n // history.push(\"/\");\n window.location.href=\"/cart\";\n\n };\n\n return (\n \n \n   Cart\n \n );\n}\n\nexport default CartMenu;\n","import React from \"react\";\nimport * as Icon from 'react-bootstrap-icons';\n\nfunction WishList() {\n \n\n const wishlist = () => {\n\n // localStorage.removeItem(\"uid\"); \n // history.push(\"/\");\n window.location.href=\"/wishlist\";\n\n };\n\n return (\n \n \n   Wishlist\n \n );\n}\n\nexport default WishList;\n","import React from \"react\";\nimport * as Icon from 'react-bootstrap-icons';\n\nfunction Shopping() {\n \n\n const shopping = () => {\n\n window.location.href=\"/\";\n\n };\n\n return (\n \n \n \n \n );\n}\n\nexport default Shopping;\n","import React, { Component } from 'react';\r\n\r\nimport AdminLTE, { Sidebar, Content, Row, Col, Box, Button } from 'adminlte-2-react';\r\nimport styled from \"styled-components\";\r\nimport Profile from \"../admin/Profile\";\r\nimport Setting from \"../admin/Setting\";\r\nimport OrderHistory from \"../admin/OrderHistory\";\r\nimport Logout from \"../admin/Logout\";\r\nimport CartMenu from \"../admin/CartMenu\";\r\nimport WishList from \"../admin/WishList\";\r\nimport Shopping from \"../admin/Shopping\";\r\nimport * as Icon from 'react-bootstrap-icons';\r\n\r\n\r\nconst { Item } = Sidebar;\r\n\r\nclass Dashboard extends Component {\r\n state = {}\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\nOrder Completed\r\n\r\n0\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\nOrder Pending\r\n0\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\nPayment Pending\r\n0\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\nCancellation\r\n0\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n {/* \r\n \r\n }>\r\n Hello World\r\n \r\n \r\n \r\n \r\n Content goes here\r\n \r\n \r\n */}\r\n
\r\n );\r\n }\r\n}\r\n\r\n\r\nclass Admin extends Component {\r\n\r\n \r\n \r\n sidebar = [\r\n \r\n ,\r\n ,\r\n \r\n
  • ,\r\n
  • ,\r\n ,\r\n ,\r\n //,\r\n
  • , \r\n
  • , \r\n ]\r\n\r\n \r\n \r\n\r\n render() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default Admin;\r\n\r\nconst Styles = styled.div`\r\n\r\n .sidebar-toggle {\r\n padding: 0px;\r\n }\r\n .navbar{\r\n justify-content: left;\r\n }\r\n .main-header .sidebar-toggle{\r\n padding: 10px 10px;\r\n }\r\n`;","import React,{useState,useEffect} from \"react\";\nimport styled from \"styled-components\";\n\nimport getPro from \"../../Getpro\";\n\nimport { Container, Row, Col,Modal, Image,Button } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport { Fade, Zoom } from \"react-reveal\";\nimport SiteHeader from \"../SiteHeader\";\nimport ItemCard from \"./ItemCard\";\nimport { Link,useParams } from \"react-router-dom\";\nimport parse from 'html-react-parser';\nimport { useStateValue } from \"../../context/State\";\nimport { Favorite, LocalMall, Star } from \"@material-ui/icons\";\nimport { toast } from \"react-toastify\";\nimport config from '../../config/config';\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction ProductDetails() {\n let user=JSON.parse(localStorage.getItem(\"uid\"));\n // console.log(user);\n \n const [show, setShow] = useState(false);\n const handleClose = () => setShow(false);\n const handleShow = () => setShow(true);\n\n const {product } = getPro(\"product\"); \n const { slug } = useParams(); \n let pro=product.find(s=>s.Slug.toLowerCase()==slug);\n\n const [{}, dispatch] = useStateValue();\n\n const [quantity, setQuantity] = useState(\"1\");\n\n let src=\"/images/demo.jpg\";\n \n\n const [imgsrc, setImgsrc] = useState(\"\");\n\n // useEffect(() => { \n // console.log(\"1\");\n // showimage(src); \n // }, [slug]);\n\n useEffect(() => { \n // console.log(pro!=undefined ? pro?.ImageList[0]?.Address:\"/images/demo.jpg\");\n // console.log(pro);\n src=pro!=undefined ? pro?.ImageList[0]?.Address:\"/images/demo.jpg\";\n showimage(src); \n \n}, [pro]);\n\n\n const showimage = (image) => {\n \n setImgsrc(image);\n\n }\n const Msg = () => (\n <>\n
    \n \n
      Product added to Bag
    \n
    \n \n );\n function addToBag(id,pName,price,image) {\n dispatch({\n type: \"ADD_TO_BAG\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: 0,\n originalPrice: 0,\n quantity:quantity,\n status:false\n },\n });\n toast(Msg);\n };\n\n function addToBuyNow(id,pName,price,image) {\n dispatch({\n type: \"ADD_TO_BAG\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: 0,\n originalPrice: 0,\n quantity:quantity,\n status:false\n },\n });\n\n window.location.href=\"/cart\";\n // toast(Msg);\n };\n\n function addToWishlist(id, pName,price,image){\n dispatch({\n type: \"ADD_TO_WISHLIST\",\n item: {\n id: id,\n pName: pName,\n price: price,\n image: image,\n rating: 0,\n originalPrice: 0,\n\n \n },\n });\n };\n\n //comments\n const [rate, setRate] = useState(\"\");\n const [comments, setComments] = useState(\"\");\n const postReview = (e) => {\n e.preventDefault(); \n if(user!=null){\n if(rate<=5){\n var myHeaders = new Headers();\n myHeaders.append(\"Content-Type\", \"application/json\");\n \n\n var raw= JSON.stringify({Rating:rate, ReviewString:comments,ProductId:pro.ProductId,CustomerId:user.CustomerId});\n console.log(raw);\n var requestOptions = { \n method: 'POST', \n headers:myHeaders,\n body: raw, \n redirect: 'follow'\n };\n\n fetch(config.API()+\"api/Apireview\", requestOptions)\n .then(response => response.text())\n .then(result => {\n \n alert('Submit Successful');\n })\n .catch(error => console.log('error', error));\n }\n else{\n alert('Rating Must be less then 5');\n }\n }\n else{\n alert('Please Login First');\n }\n }\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n {product && product.length>0? (\n <>\n
    \n \n Home\n \n {pro.Category.CategoryName}\n \n {pro.ProductName}\n \n
    \n \n \n \n \n \n \n \n \n
    \n \n {\n pro.ImageList.length!=null ? pro.ImageList.map((item)=>(\n \n
  • {showimage(item.Address)}} style={{width:\"70px\", padding:\"5px\"}} src={item?.Address}/>
  • \n \n \n )):\"\"\n }\n
    \n
    \n\n \n \n

    {pro.ProductName}

    \n \n

    Description { parse(pro.ProductDescription) }

    \n

    Metarial Used { pro.Metarial }

    \n \n

    SKU: {pro.Sku}

    \n

    Size: {pro.SizeList.SizeName}

    \n

    Color: {pro.ColorList.ColorName}

    \n

    Weight: {pro.Weight}

    \n \n { localStorage.getItem(\"lang\")==='true' ?(\n

    \n USD: $ {pro.PriceUSD}\n

    \n ):\n (\n

    \n BDT: ৳ {pro.PriceBDT}\n

    \n )\n }\n \n
    \n
    \n QTY setQuantity(e.target.value)} step=\"1\" type=\"number\" style={{width:\"50px\", textAlign:\"center\"}} /> EACH\n
    \n
    \n addToBuyNow(pro.ProductId, pro.ProductName, localStorage.getItem(\"lang\")==='true' ? pro.PriceUSD : pro.PriceBDT,pro.ImageList[0]?.Address )} className=\"btn btn-primary\" value=\"BUY NOW\"/>\n \n
    \n
    \n\n

    { pro.IsGlobal ? \"Only available in Bangladesh\" : \"\"} \n \n \n \n

    \n

    \n \n \n \n

    \n\n\n \n
    addToBag(pro.ProductId, pro.ProductName, localStorage.getItem(\"lang\")==='true' ? pro.PriceUSD : pro.PriceBDT,pro.ImageList[0]?.Address )} className=\"btn btn-primary\" value=\"Add to Cart\"/> \n \n \n addToWishlist(pro.ProductId, pro.ProductName, pro.PriceUSD,pro.ImageList[0]?.Address )} value=\"Add to Wishlist\"/>\n \n
    \n \n \n
    \n

    Reviews({pro.ReviewList.length})

    \n
    \n {pro &&\n pro.ReviewList.slice(0,2).map((rv) => (\n <>\n
    \n {Array(rv.Rating).fill(1).map((el, i) =>\n \n )}\n \n
    \n
    \n {rv.ReviewString}\n

    \n By {rv.Name}\n
    \n \n \n \n ))}\n View all\n

    \n
    \n
    \n \n

    Estimated Delivery

    \n

    \n Inside Dhaka: Up to 5 days \n

    \n

    \n Outside Dhaka: Up to 10 days \n

    \n
    \n
    \n \n

    Delivery

    \n

    \n Inside Dhaka: ৳60 \n

    \n

    \n Outside Dhaka: ৳120 \n

    \n
    \n \n
    \n \n ):\"\"} \n \n\n \n {product &&\n product.filter(s=>s.SubCategoryId==pro.SubCategoryId).slice(0,4).map((pro) => (\n a = a + v.Rating , 0 )>0 ? (pro.ReviewList.reduce((a,v) => a = a + v.Rating , 0 )/pro.ReviewList.length).toFixed(1):'0'} \n price={localStorage.getItem(\"lang\")===\"true\" ? pro.PriceUSD-pro.DiscountUSD: pro.PriceBDT-pro.DiscountBDT }\n \n originalPrice={ localStorage.getItem(\"lang\")===\"true\" ? pro.PriceUSD:pro.PriceBDT }\n slug={pro.Slug}\n />\n ))}\n \n \n
    \n
    \n
    \n\n \n \n Review\n \n \n
    \n \n setRate(e.target.value)} className=\"form-control\"/>\n
    \n
    \n \n \n
    \n\n {pro &&\n pro.ReviewList.map((rv) => (\n <>\n
    \n {Array(rv.Rating).fill(1).map((el, i) =>\n \n )}\n \n
    \n
    \n {rv.ReviewString}\n

    \n By {rv.Name}\n
    \n \n \n \n ))}\n \n \n
    \n \n \n \n \n
    \n\n \n );\n}\n\nexport default ProductDetails;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Gallery = styled.ul`\npadding: 15px;\n.gallery {\n display: inline;\n list-style: none;\n width: 70px;\n min-height: 70px;\n float: left;\n margin: 0 5px 5px 0;\n text-align: center;\n border: 1px solid gray;\n}\n\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React, { useState,useEffect } from \"react\";\nimport styled from \"styled-components\";\nimport { Link, useHistory,useParams } from \"react-router-dom\";\nimport { Container, Row, Col, Image } from \"react-bootstrap\";\n\nimport config from '../../config/config';\nimport { Display } from \"react-bootstrap-icons\";\nimport ReactToPdf from \"react-to-pdf\";\n\nfunction Invoice() {\n const history = useHistory();\n const { id } = useParams();\n let user=JSON.parse(localStorage.getItem(\"uid\"));\n let invoice=\"Invoice_\"+id+\".pdf\";\n const [order, setOrder] = useState([]);\n\n //console.log(id);\n useEffect(() => {\n fetch(config.API()+\"api/Apiinvoice/\"+id)\n .then((response) =>response.json()) \n .then((data) => { \n setOrder(data); \n })\n},[])\n\nconst ref = React.createRef();\nconst options = {\n orientation: 'portrait',\n unit: 'in',\n format: [8.3,11.7]\n};\n\n//console.log(order.OrderDetails);\n\nreturn (\n \n \n \n \n
    \n \n

    Invoice

    \n

    \n Customer Name {order.Customer?.CustomerName}\n

    \n

    \n Billing Address {order.Customer?.BillingAddress}\n

    \n

    \n Phone: {order.Customer?.PhoneNumber}\n

    \n\n \n \n \n \n \n \n
    \n
    \n \n

    Delivary Address

    \n

    \n Address: {order.Address}\n

    \n

    \n Postal Code: {order.PostalCode}\n

    \n

    \n Country: {order.Country}\n

    \n\n

    \n City: {order.City}\n

    \n

    \n Alternet Phone: {order.AlterPhone}\n

    \n\n\n \n \n
    \n

    Order Details

    \n

    \n Order Date: {order.Created}\n

    \n

    \n Invoice Id: {order.OrderId}\n

    \n

    \n Payment Mode: {order.Payment_Mode}\n

    \n

    \n Payment Status: {order.Payment_Status==0 ? \"Pending\":order.Payment_Status}\n

    \n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {order.OrderDetails && order.OrderDetails.map((item,key) => { \n return \n \n \n \n \n \n \n \n \n })} \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    SL#NameSKUQuantityRatePrice
    {key+1}{item.ProductName}{item.Sku}{item.Quantity}{Number(item.Price).toFixed(2)}{Number(item.Price*item.Quantity).toFixed(2)}
    Sub Total{order.OrderDetails?.reduce((a,v) => a = a + v.Price*v.Quantity , 0 )}
    Delivery Charge{order.ShippingCost}
    Discount{order.Discount}
    Coupon Discount{order.CouponDiscount}
    Grand Total (Including VAT 5%){Number(order.TotalCost).toFixed(2)}
    \n\n
    \n \n
    \n
    \n \n \n \n \n {({toPdf}) => (\n \n )}\n \n \n \n \n \n
    \n);\n}\n\nexport default Invoice;\n\n\nconst Styles = styled.div`\n \n .row {\n display:block;\n \n}\n`\n\n\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\nimport ItemCard from \"../components/productComponents/ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport SiteHeader from \"../components/SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\nimport config from \"../config/config\";\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction About() {\n const { basics } = getData(\"basics\");\n let about= basics.filter(s=>s.BasicTypeId==4);\n\n \n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n About\n \n
    \n
    \n \n \n \n
    \n

    {about?.Title}

    \n
    \n {about.map((item) => (\n <>\n

    \n \n
    \n \n
    \n

    \n {parse(item?.Content)}\n \n

    \n
    \n
    \n \n
    \n
    \n \n ))\n}\n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default About;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\nimport { Container, Image,Modal, Button } from \"react-bootstrap\";\nimport SiteHeader from \"../components/SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\nimport config from \"../config/config\";\n\nimport ImageGallery from 'react-image-gallery';\nimport \"react-image-gallery/styles/css/image-gallery.css\";\n\nfunction Story() {\n const { basics } = getData(\"basics\");\n const { slug } = useParams(); \n\n let about= basics.find(s=>(s.Title||'').toLowerCase() ==slug.replace(/-/g, ' ')); \n\n\n const images = [ \n ];\n\n if(about)\n { about.BasicDetails.map((cat) => (\n images.push({\n original:config.API() +cat.ImageURL, \n thumbnail:config.API() +cat.ImageURL\n })\n )) \n }\n\n\n return (\n <>\n \n
    \n \n \n \n
    \n \n Home\n \n Story\n \n
    \n
    \n \n {/*
    \n \n
    */}\n \n
    \n\n

    {about?.Title}

    \n \n

    \n {parse(about?.Content!=null? about?.Content :\"\")}\n \n

    \n \n \n
    \n
    \n
    \n \n \n \n\n\n
    \n
    \n
    \n
    \n
    \n
    \n\n \n \n );\n}\n\nexport default Story;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n \n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\n\n\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport SiteHeader from \"../../components/SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Cancel() {\n // const { basics } = getData(\"basics\");\n // let about= basics.filter(s=>s.BasicTypeId==4);\n window.location.href=\"/\";\n \n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Cancel\n \n
    \n
    \n \n \n \n
    \n

    Your Payment has been Cancel

    \n
    \n \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default Cancel;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React,{useEffect} from \"react\";\nimport styled from \"styled-components\";\n\n\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport SiteHeader from \"../../components/SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Fail() {\n // const { basics } = getData(\"basics\");\n // let about= basics.filter(s=>s.BasicTypeId==4);\n useEffect(() => { \n window.location.href=\"/\";\n \n })\n \n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Fail\n \n
    \n
    \n \n \n \n
    \n

    Your Payment has been failed

    \n
    \n \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default Fail;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\n\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\nimport SiteHeader from \"./SiteHeader\";\n\nimport parse from 'html-react-parser';\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction Contact() {\n const { basics } = getData(\"basics\");\n let about= basics.find(s=>s.BasicTypeId==7);\n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Contact Us\n \n
    \n
    \n

    {about?.Title}

    \n \n
    \n
    \n 365/2, Lane 6 (west), DOHS Baridhara, Dhaka-1206.
    \n Tel: 880-2-8411755-6
    \n Fax: 880-2-8411757
    \n e-mail: info@ban.salvationarmy.org
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default Contact;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport SiteHeader from \"./SiteHeader\";\n\n\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\nimport parse from 'html-react-parser';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction TermsCondition() {\n const { basics } = getData(\"basics\");\n let about= basics.find(s=>s.BasicTypeId==5);\n\n \n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Terms Condition\n \n
    \n
    \n

    {about?.Title}

    \n

    \n {parse(about?.Content!=null? about?.Content :\"\")}\n

    \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default TermsCondition;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\nimport ItemCard from \"./productComponents/ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\n\nimport SiteHeader from \"./SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction PrivacyPolicy() {\n const { basics } = getData(\"basics\");\n let about= basics.find(s=>s.BasicTypeId==6);\n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Privacy Policy\n \n
    \n
    \n

    {about?.Title}

    \n

    \n {parse(about?.Content!=null? about?.Content :\"\")}\n

    \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default PrivacyPolicy;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport styled from \"styled-components\";\nimport getData from \"../Getdata\";\nimport ItemCard from \"./productComponents/ItemCard\";\nimport { Container, Image } from \"react-bootstrap\";\nimport { makeStyles } from \"@material-ui/core/styles\";\n\n\nimport SiteHeader from \"./SiteHeader\";\nimport parse from 'html-react-parser';\nimport { Link ,useParams } from \"react-router-dom\";\nimport Breadcrumb from 'react-bootstrap/Breadcrumb'\n\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n \"& > *\": {\n margin: theme.spacing(0),\n },\n },\n}));\n\nfunction ReturnPolicy() {\n const { basics } = getData(\"basics\");\n let about= basics.find(s=>s.BasicTypeId==8);\n\n return (\n <>\n \n
    \n \n {/* \n \n \n \n \n */}\n \n \n
    \n \n Home\n \n Privacy Policy\n \n
    \n
    \n

    {about?.Title}

    \n

    \n {parse(about?.Content!=null? about?.Content :\"\")}\n

    \n
    \n
    \n
    \n
    \n \n );\n}\n\nexport default ReturnPolicy;\n\nconst BREADCRUMB = styled.div`\n background: #b5b0b0;\n button {\n padding: 1rem 2rem;\n color: #000;\n font-weight: bolder;\n background: #b5b0b0;\n outline: none;\n &:hover,\n &:focus {\n background: #b5b0b0;\n box-shadow: inset 19px 19px 37px #a19f74, inset -19px -19px 37px #ffffe6;\n outline: none;\n }\n }\n a {\n color: #000;\n text-decoration: none;\n &:hover,\n &:focus {\n color: rgba(255, 255, 255, 0.5);\n }\n }\n`;\n\nconst CardStyle = styled.div`\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n align-items: center;\n margin: 2.5rem auto 0 auto;\n\n @media (max-width: 990px) {\n width: 100%;\n margin: auto;\n margin-top: 2.5rem;\n width: 100%;\n justify-content: space-evenly;\n }\n`;\n\nconst Title = styled.div`\n position: relative;\n top: 1.5rem;\n`;\n\nconst Styles = styled.div`\n margin-top: 3rem;\n`;\n","import React from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport BottomNavigation from 'reactjs-bottom-navigation'\nimport 'reactjs-bottom-navigation/dist/index.css'\nimport * as Icon from 'react-bootstrap-icons';\nimport { useStateValue } from \"../context/State\";\n\nfunction BottomNav() {\n\n const history = useHistory();\n const [{ bag, user,wishlist }] = useStateValue();\n\n const home = (url) => {\n \n history.push(url);\n }\n\n const profile = () => {\n \n if(user!=null){\n history.push(\"/user/profile\");\n }\n else{\n history.push(\"/login\");\n }\n }\n const bottomNavItems = [\n {\n title: 'Home',\n icon: ,\n activeIcon:,\n \n onClick: () =>home(\"/\")\n },\n\n {\n title: 'Cart',\n icon: ,\n activeIcon:,\n onClick: () =>home(\"/cart\")\n },\n\n {\n title: 'Wishlist',\n icon: ,\n activeIcon:,\n onClick: () =>home(\"/wishlist\")\n },\n {\n title: 'Profile',\n icon: ,\n activeIcon:,\n onClick: () =>profile()//(\"/user/profile\")\n \n }\n ,\n\n {\n title: 'Menu',\n\n icon: ,\n\n activeIcon: ,\n\n \n }\n ]\n\n return (\n <>\n \n \n );\n}\n\nexport default BottomNav;\n","import React, { useEffect } from \"react\";\n\nimport { BrowserRouter as Router, Switch, Route, Link ,useHistory} from \"react-router-dom\";\nimport { ToastContainer } from \"react-toastify\";\nimport styled from \"styled-components\";\nimport { useStateValue } from \"./context/State\";\n\n\n// COMPONENTS\n\nimport Footer from \"./components/Footer\";\nimport Home from \"./components/Home\";\nimport MenClothing from \"./components/productComponents/MenClothing\";\nimport WomenClothing from \"./components/productComponents/WomenClothing\";\nimport MobileCovers from \"./components/productComponents/MobileCovers\";\n//import AllClothing from \"./components/productComponents/AllClothing\";\nimport Products from \"./components/productComponents/Products\";\nimport SearchProducts from \"./components/productComponents/SearchProducts\";\nimport Events from \"./components/productComponents/Events\";\nimport Checkout from \"./components/checkouts/Checkout\";\nimport Login from \"./components/subHeader/Login\";\nimport Signup from \"./components/subHeader/Signup\";\nimport Wishlist from \"./components/checkouts/Wishlist\";\nimport Verification from \"./components/subHeader/Verification\";\nimport ForgetPassword from \"./components/subHeader/ForgetPassword\";\nimport Admin from \"./admin/Admin\";\nimport ProductDetails from \"./components/productComponents/ProductDetails\";\nimport Invoice from \"./components/checkouts/Invoice\";\nimport About from \"./components/About\";\nimport Story from \"./components/Story\";\nimport Cancel from \"./components/checkouts/Cancel\";\nimport Fail from \"./components/checkouts/Fail\";\nimport Contact from \"./components/Contact\";\nimport TermsCondition from \"./components/TermsCondition\";\nimport PrivacyPolicy from \"./components/PrivacyPolicy\";\nimport ReturnPolicy from \"./components/ReturnPolicy\";\nimport { useMediaQuery } from 'react-responsive';\n\nimport BottomNav from \"./components/BottomNav\";\n\n\n\n\nfunction App() {\n \n const [{}, dispatch] = useStateValue();\n const authUser = JSON.parse(localStorage.getItem('uid'));\n const Mobile = ({ children }) => {\n const isMobile = useMediaQuery({ maxWidth: 767 })\n return isMobile ? children : null\n }\n\n const Desktop = ({ children }) => {\n const isDesktop = useMediaQuery({ minWidth: 992 })\n return isDesktop ? children : null\n }\n\n\n\n useEffect(() => {\n \n \n if (authUser!=null) {\n dispatch({\n type: \"SET_USER\",\n user: authUser,\n });\n } else {\n dispatch({\n type: \"SET_USER\",\n user: null,\n });\n }\n \n }, [dispatch]);\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n Some features are under construction will be here soon.......\n \n
    \n \n \n 🏠 HOME\n \n
    \n \n \n <>\n \n {/*
    */}\n \n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n