Skip to content
This repository was archived by the owner on Oct 6, 2024. It is now read-only.

Commit 54a7b74

Browse files
committed
Refactored Service Category Again so table is a standalone component
1 parent 58b8ea8 commit 54a7b74

File tree

2 files changed

+57
-37
lines changed

2 files changed

+57
-37
lines changed

src/components/ServiceCategory.js

Lines changed: 17 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
import React from 'react'
2-
import ServiceCategoryService from '../services/ServiceCategoryService'
3-
import { MdAdd, MdSave, MdEdit, MdDelete } from "react-icons/md"
1+
import React from 'react';
2+
import ServiceCategoryService from '../services/ServiceCategoryService';
3+
import { MdAdd, MdSave, MdEdit, MdDelete } from "react-icons/md";
44
import ServiceCategotyLineItem from "./ServiceCategoryLineItem";
5-
import ServiceCategoryInputLine from "./ServiceCategoryInputLine"
5+
import ServiceCategoryInputLine from "./ServiceCategoryInputLine";
6+
import ServiceCategoryTable from "./ServiceCategoryTable";
7+
68
class ServiceCategories extends React.Component {
79
constructor(props) {
810
super(props)
@@ -115,7 +117,6 @@ class ServiceCategories extends React.Component {
115117
[name]: value
116118
}
117119
}))
118-
console.log(this.state.new_entry);
119120
}
120121

121122
pgup(e) {
@@ -165,40 +166,19 @@ class ServiceCategories extends React.Component {
165166
let next = "page-item";
166167
if (this.state.metadata && this.state.metadata.first) prev += " disabled";
167168
if (this.state.metadata && this.state.metadata.last) next += " disabled";
169+
let tableprops = {
170+
new_entry: this.state.new_entry,
171+
updateInput: this.updateInput,
172+
createNewCategory: this.createNewCategory,
173+
updateExistingCategory: this.updateExistingCategory,
174+
serviceCategories: this.state.serviceCategories,
175+
selectForEdit: this.selectForEdit,
176+
deleteCategory: this.deleteCategory
177+
}
168178
return (
169179
<div>
170-
<div id="main_table">
171-
<h3>Service Categories</h3>
172-
<table className="table">
173-
<thead>
174-
<tr>
175-
<th>Category</th>
176-
<th>Popularity</th>
177-
<th>Actions</th>
178-
</tr>
179-
</thead>
180-
<tbody>
181-
<ServiceCategoryInputLine
182-
new_entry={this.state.new_entry}
183-
updateInput={this.updateInput}
184-
createNewCategory={this.createNewCategory}
185-
updateExistingCategory={this.updateExistingCategory}/>
186-
187-
{
188-
this.state.serviceCategories
189-
.map(serviceCategory =>
190-
<ServiceCategotyLineItem
191-
itemid={serviceCategory.id}
192-
serviceCategoryName={serviceCategory.serviceCategoryName}
193-
popularity={serviceCategory.popularity}
194-
selectForEdit={this.selectForEdit}
195-
deleteCategory={this.deleteCategory}/>
196-
197-
)
198-
}
199-
</tbody>
200-
</table>
201-
</div>
180+
<ServiceCategoryTable
181+
{...tableprops}/>
202182
<div id="page-control" className="d-flex flex-row align-baseline">
203183
<select
204184
className="form-control mx-1"
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import React from 'react';
2+
3+
import ServiceCategotyLineItem from "./ServiceCategoryLineItem";
4+
import ServiceCategoryInputLine from "./ServiceCategoryInputLine";
5+
6+
const ServiceCategoryTable = props =>
7+
<div id="main_table">
8+
<h3>Service Categories</h3>
9+
<table className="table">
10+
<thead>
11+
<tr>
12+
<th>Category</th>
13+
<th>Popularity</th>
14+
<th>Actions</th>
15+
</tr>
16+
</thead>
17+
<tbody>
18+
<ServiceCategoryInputLine
19+
new_entry={props.new_entry}
20+
updateInput={props.updateInput}
21+
createNewCategory={props.createNewCategory}
22+
updateExistingCategory={props.updateExistingCategory} />
23+
24+
{
25+
props.serviceCategories
26+
.map(serviceCategory =>
27+
<ServiceCategotyLineItem
28+
itemid={serviceCategory.id}
29+
serviceCategoryName={serviceCategory.serviceCategoryName}
30+
popularity={serviceCategory.popularity}
31+
selectForEdit={props.selectForEdit}
32+
deleteCategory={props.deleteCategory} />
33+
34+
)
35+
}
36+
</tbody>
37+
</table>
38+
</div>
39+
40+
export default ServiceCategoryTable;

0 commit comments

Comments
 (0)