diff --git a/Libraries/Experimental/SwipeableRow/SwipeableListView.js b/Libraries/Experimental/SwipeableRow/SwipeableListView.js index 95381044771544..abc2548116e289 100644 --- a/Libraries/Experimental/SwipeableRow/SwipeableListView.js +++ b/Libraries/Experimental/SwipeableRow/SwipeableListView.js @@ -61,12 +61,28 @@ class SwipeableListView extends React.Component { _listViewRef: ?React.Element = null; _shouldBounceFirstRowOnMount: boolean = false; - static getNewDataSource(): Object { + static getNewDataSource(params: ?Object): Object { return new SwipeableListViewDataSource({ - getRowData: (data, sectionID, rowID) => data[sectionID][rowID], - getSectionHeaderData: (data, sectionID) => data[sectionID], - rowHasChanged: (row1, row2) => row1 !== row2, - sectionHeaderHasChanged: (s1, s2) => s1 !== s2, + getRowData: ( + params && params.getRowData + ? params.getRowData + : (data, sectionID, rowID) => data[sectionID][rowID] + ), + getSectionHeaderData: ( + params && params.getSectionHeaderData + ? params.getSectionHeaderData + : (data, sectionID) => data[sectionID] + ), + rowHasChanged: ( + params && params.rowHasChanged + ? params.rowHasChanged + : (row1, row2) => row1 !== row2 + ), + sectionHeaderHasChanged: ( + params && params.sectionHeaderHasChanged + ? params.sectionHeaderHasChanged + : (s1, s2) => s1 !== s2 + ), }); }