mobile view

This commit is contained in:
YasinShaikh123
2024-08-16 15:12:37 +05:30
parent 395d60fd2f
commit ee8f905d3a
7 changed files with 125 additions and 74 deletions

View File

@@ -1,8 +1,19 @@
import React, { forwardRef } from 'react';
import { Input } from "@chakra-ui/react";
// export const formatCurrency = (value) => {
// if (!value) return '';
// const [integer, decimal] = value.split('.');
// const formattedInteger = integer.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
// return decimal ? `${formattedInteger}.${decimal}` : formattedInteger;
// };
export const formatCurrency = (value) => {
if (!value) return '';
if (!value && value !== 0) return ''; // Handle null, undefined, and empty strings
// Ensure the value is a string
value = value.toString();
const [integer, decimal] = value.split('.');
const formattedInteger = integer.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
return decimal ? `${formattedInteger}.${decimal}` : formattedInteger;

View File

@@ -12,13 +12,47 @@ import {
Stack,
Text,
} from "@chakra-ui/react";
import React from "react";
import React, { useEffect, useState } from "react";
import Mobile from "../assets/mobileWing.png";
import mobileBanner from "../assets/welcome.avif";
import { GrDownload } from "react-icons/gr";
import { LuClock } from "react-icons/lu";
import { GiNetworkBars } from "react-icons/gi";
import { GrLinkedinOption } from "react-icons/gr";
import { FiInstagram } from "react-icons/fi";
import { IoBatteryHalf } from "react-icons/io5";
import { BiWifi } from "react-icons/bi";
import { useGetIOByIdQuery } from "../Services/io.service";
import { useParams } from "react-router-dom";
const MobileView = ({ isOpen, onClose, finalRef }) => {
const [time, setTime] = useState(new Date());
const params = useParams();
const id = params?.id;
const {
data,
isLoading: IObyIDisLoading,
error: IObyIDerror,
} = useGetIOByIdQuery(id, { skip: !id });
console.log(data);
useEffect(() => {
const timer = setInterval(() => {
setTime(new Date());
}, 1000);
return () => clearInterval(timer);
}, []);
const formatTime = (date) => {
return date.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', hour12: false });
};
return (
<div>
<Modal isCentered finalFocusRef={finalRef} isOpen={isOpen} onClose={onClose}>
@@ -46,6 +80,18 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
pt={"30px"}
px={"15px"}
>
<Box>
<Box display={"flex"} alignItems={"center"} position={"absolute"} left={"30px"} top={"18px"}>
<Text ml={1} mb={0}><GiNetworkBars fontSize={"10px"} /></Text>
<Text ml={1} mb={0} fontSize={"10px"}>{formatTime(time)}</Text>
<Text ml={"5px"} mb={0} ><GrLinkedinOption fontSize={"10px"} /></Text>
{/* <Text ml={1} mb={0}><FiInstagram fontSize={"10px"} /></Text> */}
</Box>
<Box display={"flex"} alignItems={"center"} position={"absolute"} right={"36px"} top={"17px"}>
<Text mb={0}><BiWifi fontSize={"14px"} /></Text>
<Text ml={1} mb={0}><IoBatteryHalf fontSize={"15px"}/></Text>
</Box>
</Box>
<Box
p={"10px"}
overflowY={"scroll"}
@@ -63,11 +109,11 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
"rgba(0, 0, 0, 0.15) 0px 2px 8px"
}
>
<Box>
<Box display={"flex"} justifyContent={"space-between"} alignItems={"center"}>
<Text fontSize={"xs"} fontWeight={500} color="green">Stock</Text>
<Text fontSize={"xs"} display={"flex"} alignItems={"center"} fontWeight={500}><LuClock /> Closing Date Aug 23 2024</Text>
</Box>
<Box position={"relative"}>
<Text position={"absolute"} top={"12px"} left={"10px"} backgroundColor={"#e4f6ea"} fontSize={"10px"} fontWeight={500} color="green" p={"7px 12px"} borderRadius={"20px"}>Stock</Text>
<Text position={"absolute"} top={"12px"} right={"10px"} fontSize={"10px"} display={"flex"} alignItems={"center"} fontWeight={500} backgroundColor={"#fff"} p={"7px 12px"} borderRadius={"20px"}>
<LuClock color="#d8804e" /> <Text mb={0} ml={1}>Closing Date Aug 23 2024</Text>
</Text>
<Image
borderTopLeftRadius={"20px"}
borderTopRightRadius={"20px"}
@@ -94,43 +140,43 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
value={20}
borderRadius={"3px"}
/>
<Text fontSize={"xs"} fontWeight={500} mb={0}>
<Text color={"#4e4e4e"} fontSize={"xs"} fontWeight={600} mb={0}>
0.0% funded
</Text>
<Text fontSize={"sm"} fontWeight={500} mb={0}>
<Text fontSize={"xs"} fontWeight={500} mb={0} color={"#9d9d9d"}>
fugit eligendi dolore dolore et
</Text>
</Stack>
<Box py={4} px={4}>
<Box display={"flex"} justifyContent={"space-between"}>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600} color={"#616161"}>
Sponsor name:
</Text>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600}>
Scott Simon
</Text>
</Box>
<Box display={"flex"} justifyContent={"space-between"}>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600} color={"#616161"}>
Estimated return:
</Text>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600}>
A provident veniam
</Text>
</Box>
<Box display={"flex"} justifyContent={"space-between"}>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600} color={"#616161"}>
Hoiding period:
</Text>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600}>
Eius eiusmod exericit
</Text>
</Box>
<Box display={"flex"} justifyContent={"space-between"}>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600} color={"#616161"}>
Minimum investment:
</Text>
<Text fontSize={"xs"} mb={1} fontWeight={600}>
<Text fontSize={"10px"} mb={1} fontWeight={600}>
BHD 1
</Text>
</Box>
@@ -145,7 +191,7 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
"rgba(0, 0, 0, 0.15) 0px 2px 8px"
}
>
<Heading fontSize="15px" fontWeight={600}>Key Merits</Heading>
<Heading fontSize="14px" fontWeight={600}>Key Merits</Heading>
<Box display={"flex"} alignItems={"center"}>
<Image
width={"30px"}
@@ -165,10 +211,10 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
"rgba(0, 0, 0, 0.15) 0px 2px 8px"
}
>
<Heading fontSize="15px" fontWeight={600}>Investment Documents</Heading>
<Heading fontSize="14px" fontWeight={600}>Investment Documents</Heading>
<Box bg={"#f5f8f6"} w={"150px"} p={3} borderRadius={"10px"}>
<Box display={"flex"} alignItems={"center"} mb={2}>
<Image src="https://tanami.betadelivery.com/public/icons/icon8.svg" />
<Image me={1} src="https://tanami.betadelivery.com/public/icons/icon8.svg" />
<Text fontSize={"xs"} mb={0}>
Merrill Rocha
</Text>
@@ -193,19 +239,19 @@ const MobileView = ({ isOpen, onClose, finalRef }) => {
"rgba(0, 0, 0, 0.15) 0px 2px 8px"
}
>
<Heading fontSize="15px" fontWeight={600}>Videos</Heading>
<Heading fontSize="14px" fontWeight={600}>Videos</Heading>
<video autoPlay style={{borderRadius:"18px"}}>
<source src="https://flutter.github.io/assets-for-api-docs/assets/videos/butterfly.mp4" type="video/mp4" />
<source src="https://flutter.github.io/assets-for-api-docs/assets/videos/butterfly.mp4" type="video/mp4" style={{height:"200px"}} />
</video>
</Box>
</Box>
<Box position={"relative"} p={4} background={"#fff"} padding={"24px"} paddingBottom={"3px"} borderBottomLeftRadius={"30px"} borderBottomRightRadius="30px">
<Button margin={"auto"} width={"85%"} bottom="10px" left="0" colorScheme='forestGreen' mr={3} w={"100%"} fontWeight={500} borderRadius={"20px"}>
Invest
</Button>
</Box>
<Button margin={"auto"} width={"85%"} bottom="10px" left="0" colorScheme='forestGreen' mr={3} w={"100%"} fontWeight={500} borderRadius={"20px"}>
Invest
</Button>
</Box>
</Box>
</ModalContent>
</Modal>