From 4094ce0718c54a2c9a326cc2962ea00e30b7bdf6 Mon Sep 17 00:00:00 2001 From: Tim Yung Date: Fri, 30 Aug 2024 15:50:00 -0700 Subject: [PATCH] RN: Improve Error for Invalid `processFilter` Values (#46271) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/46271 Improves the error thrown when an invalid value is supplied to `processFilter`. Without this, the error thrown would look something like: > TypeError: … is not iterable Changelog: [General][Changed] - Improved error message for invalid filter values Reviewed By: jorge-cab Differential Revision: D62011191 fbshipit-source-id: 5594eeaf2b9174af14cc9e4daa275ae72974e597 --- packages/react-native/Libraries/StyleSheet/processFilter.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/react-native/Libraries/StyleSheet/processFilter.js b/packages/react-native/Libraries/StyleSheet/processFilter.js index 584b28b713b..1e72cb206da 100644 --- a/packages/react-native/Libraries/StyleSheet/processFilter.js +++ b/packages/react-native/Libraries/StyleSheet/processFilter.js @@ -82,7 +82,7 @@ export default function processFilter( } } } - } else { + } else if (Array.isArray(filter)) { for (const filterFunction of filter) { const [filterName, filterValue] = Object.entries(filterFunction)[0]; if (filterName === 'dropShadow') { @@ -109,6 +109,8 @@ export default function processFilter( } } } + } else { + throw new TypeError(`${typeof filter} filter is not a string or array`); } return result;