-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
#1744 Create ReportTable component #1758
Changes from 4 commits
3ef8e11
e4baf19
329bed1
cc80e7b
7218d46
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
/* eslint-disable react/prop-types */ | ||
/* eslint-disable react/forbid-prop-types */ | ||
/** | ||
* mSupply Mobile | ||
* Sustainable Solutions (NZ) Ltd. 2018 | ||
*/ | ||
|
||
import React from 'react'; | ||
import { StyleSheet, FlatList, View } from 'react-native'; | ||
import PropTypes from 'prop-types'; | ||
import { LIGHT_GREY } from '../../globalStyles'; | ||
import { ReportRow } from './ReportRow'; | ||
|
||
export const ReportTable = ({ rows, header }) => { | ||
const renderItem = ({ item, index }) => <ReportRow rowData={item} rowIndex={index} />; | ||
|
||
const renderHeader = () => <ReportRow rowData={header} isHeader rowIndex={0} />; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is fine, but there is also this prop on There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I made this change here: 7218d46 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think that should work! |
||
|
||
// TODO: KeyExtractor should be altered to not use the index. | ||
return ( | ||
<View style={localStyles.container}> | ||
{renderHeader()} | ||
<FlatList data={rows} renderItem={renderItem} keyExtractor={(_, index) => `${index}`} /> | ||
</View> | ||
); | ||
}; | ||
|
||
ReportTable.propTypes = { | ||
header: PropTypes.array.isRequired, | ||
rows: PropTypes.array.isRequired, | ||
}; | ||
|
||
const localStyles = StyleSheet.create({ | ||
container: { | ||
backgroundColor: LIGHT_GREY, | ||
}, | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is for the
renderItem
call? Theres some info here about that if you're interested jsx-eslint/eslint-plugin-react#2325There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I have a problem with that indeed. If I declared them then
es-lint
says I'm not using them 😅