From 2303dce55272c67d52fe22d3ac5737f68ae97515 Mon Sep 17 00:00:00 2001
From: Abhijith Sheheer <89389135+abhijithsheheer@users.noreply.github.com>
Date: Thu, 11 Jun 2026 14:37:05 +0530
Subject: [PATCH 1/4] Fixed published main at dist root
---
.scripts/post-build.mjs | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.scripts/post-build.mjs b/.scripts/post-build.mjs
index 4cda8c1a..2ed51030 100644
--- a/.scripts/post-build.mjs
+++ b/.scripts/post-build.mjs
@@ -11,6 +11,10 @@ function createPackageFile() {
JSON.parse(packageData)
);
+ // The dist folder is published as the package root, so "main" must point to
+ // the entry file relative to dist, not to the source tree.
+ packageJSON.main = "./index.js";
+
return fse.writeFile(
`./${BUILD_FOLDER}/package.json`,
JSON.stringify(packageJSON, null, 2),
From a2177e57d6b92cde60ab8d00f5db34ab90bd3f10 Mon Sep 17 00:00:00 2001
From: Abhijith Sheheer <89389135+abhijithsheheer@users.noreply.github.com>
Date: Thu, 11 Jun 2026 14:37:06 +0530
Subject: [PATCH 2/4] Moved flash-list to peerDependencies, require v2
---
package.json | 3 ++-
yarn.lock | 18 +++++-------------
2 files changed, 7 insertions(+), 14 deletions(-)
diff --git a/package.json b/package.json
index 9a0381bc..42d0fd5f 100644
--- a/package.json
+++ b/package.json
@@ -39,6 +39,7 @@
]
},
"peerDependencies": {
+ "@shopify/flash-list": ">=2.3.1",
"react-native-device-info": "^10.3.0",
"react-native-reanimated": ">=3.6.0",
"react-native-safe-area-context": ">=3.3.2",
@@ -47,7 +48,6 @@
},
"dependencies": {
"@bigbinary/neeto-icons-rn": "^1.0.7",
- "@shopify/flash-list": "^1.2.0",
"@styled-system/prop-types": "^5.1.5",
"dayjs": "^1.11.4",
"node-html-parser": "^6.1.5",
@@ -79,6 +79,7 @@
"@react-navigation/bottom-tabs": "^6.3.2",
"@react-navigation/material-top-tabs": "^6.2.2",
"@react-navigation/native": "^6.0.11",
+ "@shopify/flash-list": "^2.3.1",
"@storybook/addon-actions": "^6.5.15",
"@storybook/addon-controls": "^6.5.15",
"@storybook/addon-essentials": "^6.5.15",
diff --git a/yarn.lock b/yarn.lock
index 6535ca2a..3a6226f1 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2242,13 +2242,10 @@
dependencies:
nanoid "^3.1.23"
-"@shopify/flash-list@^1.2.0":
- version "1.6.3"
- resolved "https://registry.yarnpkg.com/@shopify/flash-list/-/flash-list-1.6.3.tgz#463dc1703815bf916f8173afc22c852bf26337ad"
- integrity sha512-XM2iu4CeD9SOEUxaGG3UkxfUxGPWG9yacga1yQSgskAjUsRDFTsD3y4Dyon9n8MfDwgrRpEwuijd+7NeQQoWaQ==
- dependencies:
- recyclerlistview "4.2.0"
- tslib "2.4.0"
+"@shopify/flash-list@^2.3.1":
+ version "2.3.2"
+ resolved "https://registry.yarnpkg.com/@shopify/flash-list/-/flash-list-2.3.2.tgz#d96a00f2195629b070117f1eaabc12f8b25be8f1"
+ integrity sha512-vQnd0y0Ag11yzS30llaeCrtIU3xYTMe7KEOP3dveLImnVjQEUw6BEg1+Ztja6aODlVNz1BpvxtlQ5eZGxiLwKw==
"@sideway/address@^4.1.3":
version "4.1.4"
@@ -14591,7 +14588,7 @@ rechoir@^0.7.0:
dependencies:
resolve "^1.9.0"
-recyclerlistview@4.2.0, recyclerlistview@^4.0.0:
+recyclerlistview@^4.0.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/recyclerlistview/-/recyclerlistview-4.2.0.tgz#a140149aaa470c9787a1426452651934240d69ef"
integrity sha512-uuBCi0c+ggqHKwrzPX4Z/mJOzsBbjZEAwGGmlwpD/sD7raXixdAbdJ6BTcAmuWG50Cg4ru9p12M94Njwhr/27A==
@@ -16520,11 +16517,6 @@ tsconfig-paths@^3.14.2:
minimist "^1.2.6"
strip-bom "^3.0.0"
-tslib@2.4.0:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
- integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
-
tslib@^1.8.1:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
From d6d53aef7c47be8672eb1b3c12b62f148d890e31 Mon Sep 17 00:00:00 2001
From: Abhijith Sheheer <89389135+abhijithsheheer@users.noreply.github.com>
Date: Thu, 11 Jun 2026 14:37:08 +0530
Subject: [PATCH 3/4] Applied fade-in animation to rendered rows
---
src/components/FlashList.jsx | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/src/components/FlashList.jsx b/src/components/FlashList.jsx
index ae6c070a..7860bdae 100644
--- a/src/components/FlashList.jsx
+++ b/src/components/FlashList.jsx
@@ -146,12 +146,21 @@ const FadeInFlatList = React.forwardRef(
item: PropTypes.object,
};
- const renderItem = item =>
- isLoading || item.index < props.placeHolderItemCount ? (
-
+ const shouldAnimate = animationDuration > 0;
+
+ const renderItem = item => {
+ if (isLoading || item.index < props.placeHolderItemCount) {
+ return ;
+ }
+
+ return shouldAnimate ? (
+
+ {originalRenderItem(item)}
+
) : (
originalRenderItem(item)
);
+ };
useEffect(() => {
value.value = 0;
From ce84da9e2f7d125ddd5d50df4a507895687f1451 Mon Sep 17 00:00:00 2001
From: Abhijith Sheheer <89389135+abhijithsheheer@users.noreply.github.com>
Date: Thu, 11 Jun 2026 14:37:13 +0530
Subject: [PATCH 4/4] Showed cancel button when input is empty
---
src/components/SearchBar.jsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/components/SearchBar.jsx b/src/components/SearchBar.jsx
index f8f40f7b..b6c76ee2 100644
--- a/src/components/SearchBar.jsx
+++ b/src/components/SearchBar.jsx
@@ -137,7 +137,7 @@ export const SearchBar = ({
}}
{...searchbarProps}
/>
- {showCancelButton && searchText.length > 0 && (
+ {showCancelButton && (