jemise111/react-native-swipe-list-view

Open row by key

Opened this issue ยท 0 comments

Hi! ๐Ÿ‘‹

Firstly, thanks for your work on this project! ๐Ÿ™‚

Today I used patch-package to patch react-native-swipe-list-view@3.2.9 for the project I'm working on.

Here is the diff that solved my problem:

diff --git a/node_modules/react-native-swipe-list-view/components/SwipeListView.js b/node_modules/react-native-swipe-list-view/components/SwipeListView.js
index 07dc767..34cd0d0 100644
--- a/node_modules/react-native-swipe-list-view/components/SwipeListView.js
+++ b/node_modules/react-native-swipe-list-view/components/SwipeListView.js
@@ -172,6 +172,18 @@ class SwipeListView extends PureComponent {
         });
     }
 
+    manuallyOpenRow(toValue, key) {
+        Object.keys(this._rows).forEach(rowKey => {
+            if (key != rowKey) {
+                return;
+            }
+            const row = this._rows[rowKey];
+            if (row && row.manuallySwipeRow) {
+                row.manuallySwipeRow(toValue);
+            }
+        });
+    }
+
     renderCell(VisibleComponent, HiddenComponent, key, item, shouldPreviewRow) {
         if (!HiddenComponent) {
             return React.cloneElement(VisibleComponent, {
diff --git a/node_modules/react-native-swipe-list-view/types/index.d.ts b/node_modules/react-native-swipe-list-view/types/index.d.ts
index bd71cf6..39d5600 100644
--- a/node_modules/react-native-swipe-list-view/types/index.d.ts
+++ b/node_modules/react-native-swipe-list-view/types/index.d.ts
@@ -502,5 +502,7 @@ interface IUseFlatListProps<T> extends FlatListPropsOverride<T>, IPropsSwipeList
 
 export class SwipeListView<T> extends Component<Partial<IUseSectionListProps<T>> | Partial<IUseFlatListProps<T>>> {
 	closeAllOpenRows: () => void;
+	manuallyOpenAllRows: (toValue: number) => void;
+	manuallyOpenRow: (toValue: number, key: string) => void;
 	render(): JSX.Element;
 }

This issue body was partially generated by patch-package.