Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 87 additions & 0 deletions CreateModal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
import React, { useState } from "react";
import { Button, Form, Modal } from "react-bootstrap";

const CreateModal = ({ show, handleClose }) => {
const [formData, setFormData] = useState({
stateCode: "AL",
date: "",
positive: "",
recovered: "",
death: "",
});
const handleChange = (e) => {
setFormData({ ...formData, [e.target.name]: e.target.value });
};
return (
<Modal show={show} onHide={handleClose}>
<Modal.Header closeButton>
<Modal.Title>Update Data</Modal.Title>
</Modal.Header>
<Modal.Body>
<div className="">
<Form.Group className="mb-3" controlId="formBasicstate">
<Form.Label>State</Form.Label>
<Form.Control
onChange={handleChange}
name="stateCode"
value={formData?.stateCode}
type="text"
placeholder="Enter State"
disabled
/>
</Form.Group>
<Form.Group className="mb-3" controlId="formBasicDate">
<Form.Label>Date</Form.Label>
<Form.Control
onChange={handleChange}
name="date"
value={formData?.date}
type="date"
placeholder="Select Date"
/>
</Form.Group>
<Form.Group className="mb-3" controlId="formBasicPositive">
<Form.Label>Positive</Form.Label>
<Form.Control
onChange={handleChange}
name="positive"
value={formData?.positive}
type="text"
placeholder="Enter Positive"
/>
</Form.Group>
<Form.Group className="mb-3" controlId="formBasicRecovered">
<Form.Label>Recovered</Form.Label>
<Form.Control
onChange={handleChange}
name="recovered"
value={formData?.recovered}
type="text"
placeholder="Enter Recovered"
/>
</Form.Group>
<Form.Group className="mb-3" controlId="formBasicDeath">
<Form.Label>Death</Form.Label>
<Form.Control
onChange={handleChange}
name="death"
value={formData?.death}
type="text"
placeholder="Enter Death"
/>
</Form.Group>
</div>
</Modal.Body>
<div className="d-flex justify-content-end items-end m-2">
<Button variant="secondary" onClick={handleClose}>
Close
</Button>
<button className="delete-btn ms-2" onClick={handleClose}>
Confirm
</button>
</div>
</Modal>
);
};

export default CreateModal;
Empty file added State.css
Empty file.
259 changes: 259 additions & 0 deletions State.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,259 @@
import React, { useEffect, useState } from "react";
import { Container, Table } from "react-bootstrap";
import StateChart from "./StateChart";
import DeleteModal from "../Shared/DeleteModal/DeleteModal";
import CreateModal from "./CreateModal";
import UpdateModal from "./UpdateModal";
import { useParams } from "react-router-dom";

const State = () => {
const { code, stateName } = useParams();
const [state,setState] = useState()
const [deleteModal, setDeleteModal] = useState(false);
const [createModal, setCreateModal] = useState(false);
const [updateModal, setUpdateModal] = useState(false);
const [selected, setSelected] = useState({});
useEffect(()=>{
if (code == "AK"){
setState("Alaska")
}
if (code == "AR"){
setState("Arkansas")
}
if (code == "AZ"){
setState("Arizona")
}
if (code == "CA"){
setState("California")
}
if (code == "CO"){
setState("Colorado")
}
if (code == "CT"){
setState("Connecticut")
}
if (code == "AL"){
setState("Alabama")
}

},[code])

const handleDelete = () => {};
return (
<div>
<Container>
<div>
<div>
<h3 className="text-center mt-5 mb-4">
Covid News of Albama on January, 2021
</h3>
</div>
</div>
<div>
<h4 className="text-start mt-5 mb-4">Chart View For January, 2021</h4>
<StateChart />
</div>
<div className=" mt-5 mb-4">
<div className="d-flex justify-content-between items-start mb-3">
<h4 className="text-start">Tabular View For January, 2021</h4>
<button
className="view-details-btn d-block"
onClick={() => {
setCreateModal(true);
}}
>
+ New Entry
</button>
</div>

<Table className="mb-5" responsive striped bordered hover>
<thead>
<tr>
<th>#</th>
<th>State Name</th>
<th>Date</th>
<th>Positive</th>
<th>Recovered</th>
<th>Death</th>
<th>Update</th>
<th>Delete</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>{state}</td>
<td>01/10/2023</td>
<td>2000</td>
<td>1405</td>
<td>10</td>
<td>
<button
onClick={() => {
setSelected({});
setUpdateModal(true);
}}
className="view-details-btn"
>
Update
</button>
</td>
<td>
<button
onClick={() => {
setSelected({});
setDeleteModal(true);
}}
className="delete-btn"
>
Delete
</button>
</td>
</tr>
<tr>
<td>2</td>
<td>{state}</td>
<td>01/20/2023</td>
<td>2000</td>
<td>1405</td>
<td>10</td>
<td>
<button
onClick={() => {
setSelected({});
setUpdateModal(true);
}}
className="view-details-btn"
>
Update
</button>
</td>
<td>
<button
onClick={() => {
setSelected({});
setDeleteModal(true);
}}
className="delete-btn"
>
Delete
</button>
</td>
</tr>
<tr>
<td>3</td>
<td>{state}</td>
<td>01/30/2023</td>
<td>2000</td>
<td>1405</td>
<td>10</td>
<td>
<button
onClick={() => {
setSelected({});
setUpdateModal(true);
}}
className="view-details-btn"
>
Update
</button>
</td>
<td>
<button
onClick={() => {
setSelected({});
setDeleteModal(true);
}}
className="delete-btn"
>
Delete
</button>
</td>
</tr>
<tr>
<td>4</td>
<td>{state}</td>
<td>01/25/2023</td>
<td>2000</td>
<td>1405</td>
<td>10</td>
<td>
<button
onClick={() => {
setSelected({});
setUpdateModal(true);
}}
className="view-details-btn"
>
Update
</button>
</td>
<td>
<button
onClick={() => {
setSelected({});
setDeleteModal(true);
}}
className="delete-btn"
>
Delete
</button>
</td>
</tr>
<tr>
<td>5</td>
<td>{state }</td>
<td>02/09/2023</td>
<td>2000</td>
<td>1405</td>
<td>10</td>
<td>
<button
onClick={() => {
setSelected({});
setUpdateModal(true);
}}
className="view-details-btn"
>
Update
</button>
</td>
<td>
<button
onClick={() => {
setSelected({});
setDeleteModal(true);
}}
className="delete-btn"
>
Delete
</button>
</td>
</tr>
</tbody>
</Table>
</div>
</Container>
{/* delete */}
<DeleteModal
show={deleteModal}
handleClose={() => setDeleteModal(false)}
deleteFunc={handleDelete}
/>

{/* CreateModal */}
<CreateModal
show={createModal}
handleClose={() => setCreateModal(false)}
/>

{/* update */}
<UpdateModal
show={updateModal}
handleClose={() => setUpdateModal(false)}
/>
</div>
);
};

export default State;
Loading