Skip to content

Commit b1904fb

Browse files
authored
Merge pull request #142 from scientist-softserv/139-refactor-request-list-props
139 refactor request list props
2 parents b3085ee + 9b92243 commit b1904fb

File tree

4 files changed

+40
-36
lines changed

4 files changed

+40
-36
lines changed

src/compounds/RequestItem/RequestItem.jsx

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ import TextBox from '../../components/TextBox/TextBox'
66
import Title from '../../components/Title/Title'
77
import './request-item.scss'
88

9-
const RequestItem = React.forwardRef(({ createdAt, description, href, img, index, title, status, updatedAt }, ref) => {
9+
const RequestItem = React.forwardRef(({ index, request }, ref) => {
10+
const { createdAt, description, href, img, title, status, updatedAt } = request
1011
const { backgroundColor, text, textColor } = status
1112
const image = { ...img, height: 70, width: 70 }
1213

@@ -39,13 +40,16 @@ const RequestItem = React.forwardRef(({ createdAt, description, href, img, index
3940
})
4041

4142
RequestItem.propTypes = {
42-
createdAt: PropTypes.string.isRequired,
43-
description: PropTypes.string.isRequired,
4443
index: PropTypes.number,
45-
img: PropTypes.shape(Image.propTypes).isRequired,
46-
status: PropTypes.shape(Badge.propTypes).isRequired,
47-
title: PropTypes.string.isRequired,
48-
updatedAt: PropTypes.string.isRequired,
44+
request: PropTypes.shape({
45+
createdAt: PropTypes.string.isRequired,
46+
description: PropTypes.string.isRequired,
47+
href: PropTypes.string.isRequired,
48+
img: PropTypes.shape(Image.propTypes).isRequired,
49+
status: PropTypes.shape(Badge.propTypes).isRequired,
50+
title: PropTypes.string.isRequired,
51+
updatedAt: PropTypes.string.isRequired,
52+
}).isRequired,
4953
}
5054

5155
RequestItem.defaultProps = {

src/compounds/RequestItem/RequestItem.stories.jsx

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,34 @@ const Template = (args) => <RequestItem {...args} />
1111

1212
export const Default = Template.bind({})
1313
Default.args = {
14-
createdAt: 'September 9, 2022',
15-
description: 'Does the Company offer services related to Flow Cytometry?',
16-
href: '/request/F575C4',
17-
img: defaultImage,
18-
title: 'F575C4: Assay Depot Coffee Mug',
19-
status: {
20-
text: 'Vendor Review',
21-
},
22-
updatedAt: 'September 9, 2022 at 9:21 am',
14+
index: 0,
15+
request: {
16+
createdAt: 'September 9, 2022',
17+
description: 'Does the Company offer services related to Flow Cytometry?',
18+
href: '/request/F575C4',
19+
img: defaultImage,
20+
title: 'F575C4: Assay Depot Coffee Mug',
21+
status: {
22+
text: 'Vendor Review',
23+
},
24+
updatedAt: 'September 9, 2022 at 9:21 am',
25+
}
2326
}
2427

2528
export const Alternate = Template.bind({})
2629
Alternate.args = {
27-
createdAt: 'September 9, 2022',
28-
description: 'Does the Company offer services related to Flow Cytometry?',
29-
href: '/request/F575C4',
30-
img: defaultImage,
31-
title: 'F575C4: Assay Depot Coffee Mug',
32-
status: {
33-
backgroundColor: '#DEAF17',
34-
text: 'Work In Progress',
35-
textColor: '#FFFFFF',
36-
},
37-
updatedAt: 'November 16, 2022 at 4:45 pm',
30+
index: 1,
31+
request: {
32+
createdAt: 'September 9, 2022',
33+
description: 'Does the Company offer services related to Flow Cytometry?',
34+
href: '/request/F575C4',
35+
img: defaultImage,
36+
title: 'F575C4: Assay Depot Coffee Mug',
37+
status: {
38+
backgroundColor: '#DEAF17',
39+
text: 'Work In Progress',
40+
textColor: '#FFFFFF',
41+
},
42+
updatedAt: 'November 16, 2022 at 4:45 pm',
43+
}
3844
}

src/compounds/RequestList/RequestList.jsx

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,7 @@ const RequestList = ({ requests }) => (
1010
<div className='rounded overflow-hidden'>
1111
{requests.map((req, index) => (
1212
<Link key={req.id} href={`${req.href}`} passHref legacyBehavior>
13-
<RequestItem
14-
createdAt={req.createdAt}
15-
description={req.description}
16-
img={req.img}
17-
title={req.title}
18-
status={req.status}
19-
updatedAt={req.updatedAt}
20-
index={index}
21-
/>
13+
<RequestItem request={req} index={index} />
2214
</Link>
2315
))}
2416
</div>

src/compounds/index.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import Footer2 from './Footer/Footer2'
1010
import Header from './Header/Header'
1111
import Item from './Item/Item'
1212
import ItemGroup from './ItemGroup/ItemGroup'
13+
import ItemLoading from './Item/ItemLoading'
1314
import ItemPage from './ItemPage/ItemPage'
1415
import LinkGroup from './LinkGroup/LinkGroup'
1516
import LinkedButton from './LinkedButton/LinkedButton'
@@ -28,6 +29,7 @@ export {
2829
Header,
2930
Item,
3031
ItemGroup,
32+
ItemLoading,
3133
ItemPage,
3234
LinkGroup,
3335
LinkedButton,

0 commit comments

Comments
 (0)