From 74c2691e9a32362697049d1478220b692f489907 Mon Sep 17 00:00:00 2001 From: onuraskinn Date: Wed, 26 Apr 2023 15:13:30 +0300 Subject: [PATCH 1/2] defaultOption Support for multiple selection --- components/MultipleSelectList.tsx | 10 +++++++--- index.d.ts | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/components/MultipleSelectList.tsx b/components/MultipleSelectList.tsx index 1e8e3326..fb4862eb 100644 --- a/components/MultipleSelectList.tsx +++ b/components/MultipleSelectList.tsx @@ -42,13 +42,14 @@ const MultipleSelectList: React.FC = ({ badgeTextStyles, checkBoxStyles, save = 'key', - dropdownShown = false + dropdownShown = false, + defaultSelected = [], }) => { const oldOption = React.useRef(null) const [_firstRender,_setFirstRender] = React.useState(true); const [dropdown, setDropdown] = React.useState(dropdownShown); - const [selectedval, setSelectedVal] = React.useState([]); + const [selectedval, setSelectedVal] = React.useState(defaultSelected); const [height,setHeight] = React.useState(350) const animatedvalue = React.useRef(new Animated.Value(0)).current; const [filtereddata,setFilteredData] = React.useState(data); @@ -105,7 +106,10 @@ const MultipleSelectList: React.FC = ({ },[dropdownShown]) - + React.useEffect(() => { + setSelected(defaultSelected); + }, []); +   diff --git a/index.d.ts b/index.d.ts index cee3ba03..67041b97 100644 --- a/index.d.ts +++ b/index.d.ts @@ -257,6 +257,7 @@ export interface MultipleSelectListProps { * Additional styles for label */ labelStyles?: TextStyle, + defaultSelected?: any[]; } declare class MultipleSelectList extends React.Component {} From ff4e353aceccfdaa54522f463208c6a4f1d21735 Mon Sep 17 00:00:00 2001 From: onuraskinn Date: Fri, 28 Apr 2023 15:39:00 +0300 Subject: [PATCH 2/2] Update for Keyboard Dismiss --- components/MultipleSelectList.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/components/MultipleSelectList.tsx b/components/MultipleSelectList.tsx index fb4862eb..b40142a3 100644 --- a/components/MultipleSelectList.tsx +++ b/components/MultipleSelectList.tsx @@ -9,7 +9,8 @@ import { Animated, TextInput, ViewStyle, - Pressable} from 'react-native'; + Pressable, + Keyboard} from 'react-native'; import { MultipleSelectListProps } from '..'; @@ -57,6 +58,7 @@ const MultipleSelectList: React.FC = ({ const slidedown = () => { setDropdown(true) + Keyboard.dismiss(); Animated.timing(animatedvalue,{ toValue:height, @@ -188,7 +190,7 @@ const MultipleSelectList: React.FC = ({ : - { if(!dropdown){ slidedown() }else{ slideup() } }}> + { if(!dropdown){ slidedown() }else{ slideup() } }} > { (selectedval == "") ? (placeholder) ? placeholder : 'Select option' : selectedval } { (!arrowicon)