mirror of
https://github.com/myfatemi04/wheelshare-frontend.git
synced 2025-04-21 19:29:51 -04:00
create carpool base component
This commit is contained in:
parent
0fb3e5ce98
commit
4fedad1058
|
@ -1,6 +1,8 @@
|
|||
import { useEffect, useState } from 'react';
|
||||
import EventIcon from '@material-ui/icons/Event';
|
||||
import LocationOnIcon from '@material-ui/icons/LocationOn';
|
||||
|
||||
import { useState } from 'react';
|
||||
import { useParams } from 'react-router-dom';
|
||||
import { getCarpool } from '../api';
|
||||
import { ICarpool } from '../types';
|
||||
import UISecondaryBox from '../UI/UISecondaryBox';
|
||||
|
||||
|
@ -18,21 +20,61 @@ function MemberList({ members }: { members: ICarpool['members'] }) {
|
|||
|
||||
export default function Carpool() {
|
||||
const id = +useParams<{ id: string }>().id;
|
||||
const [carpool, setCarpool] = useState<ICarpool | null>(null);
|
||||
const [carpool, setCarpool] = useState<ICarpool | null>({
|
||||
id,
|
||||
name: 'carpoollo2398',
|
||||
eventId: 0,
|
||||
event: {
|
||||
id: 0,
|
||||
name: 'test event',
|
||||
latitude: 0,
|
||||
longitude: 0,
|
||||
formattedAddress: 'your house',
|
||||
placeId: 'secret',
|
||||
},
|
||||
members: [],
|
||||
invitations: [],
|
||||
});
|
||||
|
||||
useEffect(() => {
|
||||
getCarpool(id).then(setCarpool);
|
||||
}, [id]);
|
||||
// useEffect(() => {
|
||||
// getCarpool(id).then(setCarpool);
|
||||
// }, [id]);
|
||||
|
||||
const { event, name } = carpool!;
|
||||
|
||||
return (
|
||||
<UISecondaryBox style={{ width: '100%', alignItems: 'center' }}>
|
||||
{carpool && (
|
||||
{carpool ? (
|
||||
<>
|
||||
<h2 style={{ textAlign: 'center' }}>{carpool.name}</h2>
|
||||
{carpool.description}
|
||||
<h1>{name}</h1>
|
||||
<h2>{event.name}</h2>
|
||||
<div style={{ fontSize: '1.5rem', fontWeight: 600 }}>
|
||||
<div
|
||||
style={{
|
||||
color: '#303030',
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
}}
|
||||
>
|
||||
<LocationOnIcon style={{ marginRight: '1rem' }} />
|
||||
{event.formattedAddress}
|
||||
</div>
|
||||
<div
|
||||
style={{
|
||||
color: '#303030',
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
}}
|
||||
>
|
||||
<EventIcon style={{ marginRight: '1rem' }} />
|
||||
DAWN - DUSK
|
||||
</div>
|
||||
</div>
|
||||
<h3>Members</h3>
|
||||
<MemberList members={carpool.members} />
|
||||
</>
|
||||
) : (
|
||||
<h2>Loading</h2>
|
||||
)}
|
||||
</UISecondaryBox>
|
||||
);
|
||||
|
|
|
@ -15,9 +15,20 @@ export type IUser = {
|
|||
export type ICarpool = {
|
||||
id: number;
|
||||
name: string;
|
||||
description: string;
|
||||
eventId: number | null;
|
||||
event?: IEvent;
|
||||
event: {
|
||||
id: number;
|
||||
name: string;
|
||||
formattedAddress: string;
|
||||
latitude: number;
|
||||
longitude: number;
|
||||
placeId: string;
|
||||
};
|
||||
// driverId: number | null;
|
||||
// driver: {
|
||||
// id: number;
|
||||
// name: string;
|
||||
// };
|
||||
members: {
|
||||
id: number;
|
||||
name: string;
|
||||
|
|
Loading…
Reference in New Issue
Block a user