related-ui-components 4.2.3 → 4.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -50,7 +50,8 @@ const CountryPickerView = ({
50
50
  countryNameStyle,
51
51
  countryCodeStyle,
52
52
  searchPlaceholder = "Search...",
53
- isNative
53
+ isNative,
54
+ style
54
55
  }) => {
55
56
  const {
56
57
  theme
@@ -82,7 +83,7 @@ const CountryPickerView = ({
82
83
  }), [onSelectCountry, memoizedNameStyle, memoizedCodeStyle]);
83
84
  const FlatListComponent = isNative ? FlatList : BottomSheetFlatList;
84
85
  return /*#__PURE__*/_jsxs(View, {
85
- style: styles.popup,
86
+ style: [styles.popup, style],
86
87
  children: [/*#__PURE__*/_jsx(Text, {
87
88
  style: [styles.popupTitle, {
88
89
  color: theme.text
@@ -103,6 +104,7 @@ const CountryPickerView = ({
103
104
  },
104
105
  initialNumToRender: 15,
105
106
  maxToRenderPerBatch: 10,
107
+ nestedScrollEnabled: isNative,
106
108
  showsVerticalScrollIndicator: false,
107
109
  keyboardShouldPersistTaps: "handled",
108
110
  ListEmptyComponent: /*#__PURE__*/_jsx(View, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useEffect","useCallback","useMemo","View","TouchableOpacity","StyleSheet","Keyboard","FlatList","BottomSheetFlatList","useTheme","iso2ToFlagEmoji","allCountries","CustomInput","ThemedText","Text","jsxs","_jsxs","jsx","_jsx","DEFAULT_COUNTRIES","map","c","code","dialCode","iso2","name","CountryRow","memo","item","onSelectCountry","nameStyle","codeStyle","handlePress","dismiss","style","styles","countryRow","onPress","children","flag","countryText","CountryPickerView","countries","listTitle","listTitleStyle","countryNameStyle","countryCodeStyle","searchPlaceholder","isNative","theme","searchQuery","setSearchQuery","filteredCountries","setFilteredCountries","lowercasedQuery","toLowerCase","trim","newFilteredData","filter","country","includes","memoizedNameStyle","countryName","color","text","memoizedCodeStyle","countryCode","helper","renderCountry","FlatListComponent","popup","popupTitle","placeholder","value","isBottomSheet","onChangeText","containerStyle","searchInputContainer","data","keyExtractor","renderItem","contentContainerStyle","paddingBottom","initialNumToRender","maxToRenderPerBatch","showsVerticalScrollIndicator","keyboardShouldPersistTaps","ListEmptyComponent","emptyListContainer","emptyListText","create","flex","width","paddingHorizontal","fontSize","fontWeight","marginBottom","paddingTop","flexDirection","alignItems","paddingVertical","marginLeft"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Input/CountryPickerView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useEffect","useCallback","useMemo","View","TouchableOpacity","StyleSheet","Keyboard","FlatList","BottomSheetFlatList","useTheme","iso2ToFlagEmoji","allCountries","CustomInput","ThemedText","Text","jsxs","_jsxs","jsx","_jsx","DEFAULT_COUNTRIES","map","c","code","dialCode","iso2","name","CountryRow","memo","item","onSelectCountry","nameStyle","codeStyle","handlePress","dismiss","style","styles","countryRow","onPress","children","flag","countryText","CountryPickerView","countries","listTitle","listTitleStyle","countryNameStyle","countryCodeStyle","searchPlaceholder","isNative","theme","searchQuery","setSearchQuery","filteredCountries","setFilteredCountries","lowercasedQuery","toLowerCase","trim","newFilteredData","filter","country","includes","memoizedNameStyle","countryName","color","text","memoizedCodeStyle","countryCode","helper","renderCountry","FlatListComponent","popup","popupTitle","placeholder","value","isBottomSheet","onChangeText","containerStyle","searchInputContainer","data","keyExtractor","renderItem","contentContainerStyle","paddingBottom","initialNumToRender","maxToRenderPerBatch","nestedScrollEnabled","showsVerticalScrollIndicator","keyboardShouldPersistTaps","ListEmptyComponent","emptyListContainer","emptyListText","create","flex","width","paddingHorizontal","fontSize","fontWeight","marginBottom","paddingTop","flexDirection","alignItems","paddingVertical","marginLeft"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Input/CountryPickerView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AACxE,SACEC,IAAI,EACJC,gBAAgB,EAChBC,UAAU,EAGVC,QAAQ,EACRC,QAAQ,QAEH,cAAc;AACrB,SAASC,mBAAmB,QAAQ,sBAAsB;AAC1D,SAASC,QAAQ,QAAQ,sBAAa;AACtC,SAASC,eAAe,QAAQ,sBAAmB;AAEnD,SAASC,YAAY,QAAQ,wBAAwB;AACrD,OAAOC,WAAW,MAAM,YAAS;AACjC,SAASC,UAAU,IAAIC,IAAI,QAAQ,gBAAO;AAAC,SAAAC,IAAA,IAAAC,KAAA,EAAAC,GAAA,IAAAC,IAAA;AAc3C,OAAO,MAAMC,iBAA4B,GAAGR,YAAY,CAACS,GAAG,CAAEC,CAAC,KAAM;EACnEC,IAAI,EAAE,IAAID,CAAC,CAACE,QAAQ,EAAE;EACtBC,IAAI,EAAEH,CAAC,CAACG,IAAI;EACZC,IAAI,EAAEJ,CAAC,CAACI;AACV,CAAC,CAAC,CAAC;AAEH,MAAMC,UAAU,gBAAG5B,KAAK,CAAC6B,IAAI,CAC3B,CAAC;EACCC,IAAI;EACJC,eAAe;EACfC,SAAS;EACTC;AAMF,CAAC,KAAK;EACJ,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxB1B,QAAQ,CAAC2B,OAAO,CAAC,CAAC,CAAC,CAAC;IACpBJ,eAAe,CAACD,IAAI,CAAC;EACvB,CAAC;EAED,oBACEZ,KAAA,CAACZ,gBAAgB;IAAC8B,KAAK,EAAEC,MAAM,CAACC,UAAW;IAACC,OAAO,EAAEL,WAAY;IAAAM,QAAA,gBAC/DtB,KAAA,CAACF,IAAI;MAACoB,KAAK,EAAEC,MAAM,CAACI,IAAK;MAAAD,QAAA,GAAC,GAAC,EAAC5B,eAAe,CAACkB,IAAI,CAACJ,IAAI,CAAC;IAAA,CAAO,CAAC,eAC9DR,KAAA,CAACb,IAAI;MAAC+B,KAAK,EAAEC,MAAM,CAACK,WAAY;MAAAF,QAAA,gBAC9BpB,IAAA,CAACJ,IAAI;QAACoB,KAAK,EAAE,CAACJ,SAAS,CAAE;QAAAQ,QAAA,EAAEV,IAAI,CAACH;MAAI,CAAO,CAAC,eAC5CP,IAAA,CAACJ,IAAI;QAACoB,KAAK,EAAEH,SAAU;QAAAO,QAAA,EAAEV,IAAI,CAACN;MAAI,CAAO,CAAC;IAAA,CACtC,CAAC;EAAA,CACS,CAAC;AAEvB,CACF,CAAC;AAED,MAAMmB,iBAAiB,GAAGA,CAAC;EACzBC,SAAS,GAAGvB,iBAAiB;EAC7BU,eAAe;EACfc,SAAS;EACTC,cAAc;EACdC,gBAAgB;EAChBC,gBAAgB;EAChBC,iBAAiB,GAAG,WAAW;EAC/BC,QAAQ;EACRd;AACsB,CAAC,KAAK;EAC5B,MAAM;IAAEe;EAAM,CAAC,GAAGxC,QAAQ,CAAC,CAAC;EAE5B,MAAM,CAACyC,WAAW,EAAEC,cAAc,CAAC,GAAGpD,QAAQ,CAAC,EAAE,CAAC;EAClD,MAAM,CAACqD,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGtD,QAAQ,CAAC2C,SAAS,CAAC;EAErE1C,SAAS,CAAC,MAAM;IACd,MAAMsD,eAAe,GAAGJ,WAAW,CAACK,WAAW,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC;IACxD,IAAIF,eAAe,KAAK,EAAE,EAAE;MAC1BD,oBAAoB,CAACX,SAAS,CAAC;IACjC,CAAC,MAAM;MACL,MAAMe,eAAe,GAAGf,SAAS,CAACgB,MAAM,CACrCC,OAAO,IACNA,OAAO,CAAClC,IAAI,CAAC8B,WAAW,CAAC,CAAC,CAACK,QAAQ,CAACN,eAAe,CAAC,IACpDK,OAAO,CAACrC,IAAI,CAACsC,QAAQ,CAACN,eAAe,CACzC,CAAC;MACDD,oBAAoB,CAACI,eAAe,CAAC;IACvC;EACF,CAAC,EAAE,CAACP,WAAW,EAAER,SAAS,CAAC,CAAC;EAE5B,MAAMmB,iBAAiB,GAAG3D,OAAO,CAC/B,MAAM,CAACiC,MAAM,CAAC2B,WAAW,EAAE;IAAEC,KAAK,EAAEd,KAAK,CAACe;EAAK,CAAC,EAAEnB,gBAAgB,CAAC,EACnE,CAACI,KAAK,CAACe,IAAI,EAAEnB,gBAAgB,CAC/B,CAAC;EAED,MAAMoB,iBAAiB,GAAG/D,OAAO,CAC/B,MAAM,CAACiC,MAAM,CAAC+B,WAAW,EAAE;IAAEH,KAAK,EAAEd,KAAK,CAACkB;EAAO,CAAC,EAAErB,gBAAgB,CAAC,EACrE,CAACG,KAAK,CAACkB,MAAM,EAAErB,gBAAgB,CACjC,CAAC;EAED,MAAMsB,aAAa,GAAGnE,WAAW,CAC/B,CAAC;IAAE2B;EAAwB,CAAC,kBAC1BV,IAAA,CAACQ,UAAU;IACTE,IAAI,EAAEA,IAAK;IACXC,eAAe,EAAEA,eAAgB;IACjCC,SAAS,EAAE+B,iBAAkB;IAC7B9B,SAAS,EAAEkC;EAAkB,CAC9B,CACF,EACD,CAACpC,eAAe,EAAEgC,iBAAiB,EAAEI,iBAAiB,CACxD,CAAC;EAED,MAAMI,iBAAiB,GAAGrB,QAAQ,GAAGzC,QAAQ,GAAGC,mBAAmB;EAEnE,oBACEQ,KAAA,CAACb,IAAI;IAAC+B,KAAK,EAAE,CAACC,MAAM,CAACmC,KAAK,EAAEpC,KAAK,CAAE;IAAAI,QAAA,gBACjCpB,IAAA,CAACJ,IAAI;MAACoB,KAAK,EAAE,CAACC,MAAM,CAACoC,UAAU,EAAE;QAAER,KAAK,EAAEd,KAAK,CAACe;MAAI,CAAC,EAAEpB,cAAc,CAAE;MAAAN,QAAA,EACpEK;IAAS,CACN,CAAC,eACPzB,IAAA,CAACN,WAAW;MACV4D,WAAW,EAAEzB,iBAAkB;MAC/B0B,KAAK,EAAEvB,WAAY;MACnBwB,aAAa,EAAE,CAAC1B,QAAS;MACzB2B,YAAY,EAAExB,cAAe;MAC7ByB,cAAc,EAAEzC,MAAM,CAAC0C;IAAqB,CAC7C,CAAC,eACF3D,IAAA,CAACmD,iBAAiB;MAChBS,IAAI,EAAE1B,iBAAkB;MACxB2B,YAAY,EAAG1D,CAAC,IAAKA,CAAC,CAACG,IAAK;MAC5BwD,UAAU,EAAEZ,aAAc;MAC1Ba,qBAAqB,EAAE;QAAEC,aAAa,EAAE;MAAG,CAAE;MAC7CC,kBAAkB,EAAE,EAAG;MACvBC,mBAAmB,EAAE,EAAG;MACxBC,mBAAmB,EAAErC,QAAS;MAC9BsC,4BAA4B,EAAE,KAAM;MACpCC,yBAAyB,EAAC,SAAS;MACnCC,kBAAkB,eAChBtE,IAAA,CAACf,IAAI;QAAC+B,KAAK,EAAEC,MAAM,CAACsD,kBAAmB;QAAAnD,QAAA,eACrCpB,IAAA,CAACJ,IAAI;UAACoB,KAAK,EAAE,CAACC,MAAM,CAACuD,aAAa,EAAE;YAAE3B,KAAK,EAAEd,KAAK,CAACkB;UAAO,CAAC,CAAE;UAAA7B,QAAA,EAAC;QAE9D,CAAM;MAAC,CACH;IACP,CACF,CAAC;EAAA,CACE,CAAC;AAEX,CAAC;AAED,MAAMH,MAAM,GAAG9B,UAAU,CAACsF,MAAM,CAAC;EAC/BrB,KAAK,EAAE;IACLsB,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,MAAM;IACbC,iBAAiB,EAAE;EACrB,CAAC;EACDvB,UAAU,EAAE;IACVwB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE,EAAE;IAChBC,UAAU,EAAE;EACd,CAAC;EACDrB,oBAAoB,EAAE;IACpBoB,YAAY,EAAE;EAChB,CAAC;EACD7D,UAAU,EAAE;IACV+D,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAE;IACjB;EACF,CAAC;EACD9D,IAAI,EAAE;IACJwD,QAAQ,EAAE;EACZ,CAAC;EACDvD,WAAW,EAAE;IACX8D,UAAU,EAAE,EAAE;IACdV,IAAI,EAAE;EACR,CAAC;EACD9B,WAAW,EAAE;IACXiC,QAAQ,EAAE;EACZ,CAAC;EACD7B,WAAW,EAAE;IACX6B,QAAQ,EAAE;EACZ,CAAC;EACDN,kBAAkB,EAAE;IAClBY,eAAe,EAAE,EAAE;IACnBD,UAAU,EAAE;EACd,CAAC;EACDV,aAAa,EAAE;IACbK,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC;AAEF,eAAetD,iBAAiB","ignoreList":[]}
@@ -18,7 +18,8 @@ const DefaultModalUI = ({
18
18
  isVisible,
19
19
  children,
20
20
  options,
21
- onClose
21
+ onClose,
22
+ onDismiss
22
23
  }) => {
23
24
  const insets = useSafeAreaInsets();
24
25
  const [isRendered, setIsRendered] = useState(isVisible);
@@ -42,6 +43,7 @@ const DefaultModalUI = ({
42
43
  opacity.value = withTiming(isVisible ? 1 : 0, animationConfig, finished => {
43
44
  if (finished && !isVisible) {
44
45
  runOnJS(setIsRendered)(false);
46
+ runOnJS(onDismiss)();
45
47
  }
46
48
  });
47
49
  }, [isVisible, animationConfig, opacity]);
@@ -141,6 +143,7 @@ export const UniversalModalProvider = ({
141
143
  content: null,
142
144
  options: {}
143
145
  });
146
+ const dismissCallbackRef = React.useRef(undefined);
144
147
  const showModal = useCallback((content, options) => {
145
148
  setState({
146
149
  isVisible: true,
@@ -150,21 +153,24 @@ export const UniversalModalProvider = ({
150
153
  }
151
154
  });
152
155
  }, []);
153
- const hideModal = useCallback(() => {
156
+ const hideModal = useCallback(options => {
157
+ dismissCallbackRef.current = options?.onDismiss;
154
158
  setState(prev => ({
155
159
  ...prev,
156
160
  isVisible: false
157
161
  }));
158
- // Clear content after animation normally finishes to avoid flicker
159
- setTimeout(() => {
160
- setState(prev => {
161
- // Only clear if still hidden (prevent race condition if immediately reshown)
162
- return !prev.isVisible ? {
163
- ...prev,
164
- content: null
165
- } : prev;
166
- });
167
- }, 350);
162
+ }, []);
163
+ const handleDismiss = useCallback(() => {
164
+ setState(prev => {
165
+ if (prev.isVisible) return prev;
166
+ return {
167
+ ...prev,
168
+ content: null
169
+ };
170
+ });
171
+ const callback = dismissCallbackRef.current;
172
+ dismissCallbackRef.current = undefined;
173
+ callback?.();
168
174
  }, []);
169
175
  const ModalUI = CustomModalComponent || DefaultModalUI;
170
176
  const value = useMemo(() => ({
@@ -177,6 +183,7 @@ export const UniversalModalProvider = ({
177
183
  isVisible: state.isVisible,
178
184
  options: state.options,
179
185
  onClose: hideModal,
186
+ onDismiss: handleDismiss,
180
187
  children: state.content
181
188
  })]
182
189
  });
@@ -190,8 +197,8 @@ export const useModal = () => {
190
197
  };
191
198
  const styles = StyleSheet.create({
192
199
  overlayWrapper: {
193
- zIndex: 1000,
194
- elevation: 1000
200
+ // zIndex: 1000,
201
+ // elevation: 1000,
195
202
  },
196
203
  backdrop: {
197
204
  backgroundColor: "rgba(0, 0, 0, 0.6)"
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useState","BackHandler","StyleSheet","TouchableOpacity","View","KeyboardAvoidingView","Animated","Easing","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useSafeAreaInsets","jsx","_jsx","jsxs","_jsxs","ModalContext","undefined","DEFAULT_MODAL_HOST","DefaultModalUI","isVisible","children","options","onClose","insets","isRendered","setIsRendered","opacity","closeOnBackdropPress","closeOnBackButton","animationConfig","duration","easing","bezier","position","animateFrom","avoidKeyboard","backdropStyle","containerStyle","closeIconComponent","value","finished","backHandler","addEventListener","remove","backdropAnimatedStyle","closeIconAnimatedStyle","contentAnimatedStyle","transform","push","translateY","scale","justifyContent","paddingBottom","bottom","paddingTop","top","ContentWrapper","style","absoluteFill","styles","overlayWrapper","backdrop","activeOpacity","onPress","closeIconContainer","pointerEvents","hitSlop","left","right","behavior","keyboardVerticalOffset","keyboardView","baseContainer","UniversalModalProvider","portalHostName","CustomModalComponent","state","setState","content","showModal","hideModal","prev","setTimeout","ModalUI","Provider","useModal","context","Error","create","zIndex","elevation","backgroundColor","alignItems","width"],"sourceRoot":"..\\..\\..\\src","sources":["contexts/UniversalModalProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useState","BackHandler","StyleSheet","TouchableOpacity","View","KeyboardAvoidingView","Animated","Easing","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useSafeAreaInsets","jsx","_jsx","jsxs","_jsxs","ModalContext","undefined","DEFAULT_MODAL_HOST","DefaultModalUI","isVisible","children","options","onClose","onDismiss","insets","isRendered","setIsRendered","opacity","closeOnBackdropPress","closeOnBackButton","animationConfig","duration","easing","bezier","position","animateFrom","avoidKeyboard","backdropStyle","containerStyle","closeIconComponent","value","finished","backHandler","addEventListener","remove","backdropAnimatedStyle","closeIconAnimatedStyle","contentAnimatedStyle","transform","push","translateY","scale","justifyContent","paddingBottom","bottom","paddingTop","top","ContentWrapper","style","absoluteFill","styles","overlayWrapper","backdrop","activeOpacity","onPress","closeIconContainer","pointerEvents","hitSlop","left","right","behavior","keyboardVerticalOffset","keyboardView","baseContainer","UniversalModalProvider","portalHostName","CustomModalComponent","state","setState","content","dismissCallbackRef","useRef","showModal","hideModal","current","prev","handleDismiss","callback","ModalUI","Provider","useModal","context","Error","create","backgroundColor","alignItems","width","zIndex"],"sourceRoot":"..\\..\\..\\src","sources":["contexts/UniversalModalProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { StyleProp, TextStyle } from "react-native";
2
+ import { StyleProp, TextStyle, ViewStyle } from "react-native";
3
3
  import { Country } from "./PhoneInput";
4
4
  interface CountryPickerViewProps {
5
5
  countries?: Country[];
@@ -10,8 +10,9 @@ interface CountryPickerViewProps {
10
10
  countryCodeStyle?: StyleProp<TextStyle>;
11
11
  searchPlaceholder?: string;
12
12
  isNative?: boolean;
13
+ style?: StyleProp<ViewStyle>;
13
14
  }
14
15
  export declare const DEFAULT_COUNTRIES: Country[];
15
- declare const CountryPickerView: ({ countries, onSelectCountry, listTitle, listTitleStyle, countryNameStyle, countryCodeStyle, searchPlaceholder, isNative }: CountryPickerViewProps) => React.JSX.Element;
16
+ declare const CountryPickerView: ({ countries, onSelectCountry, listTitle, listTitleStyle, countryNameStyle, countryCodeStyle, searchPlaceholder, isNative, style }: CountryPickerViewProps) => React.JSX.Element;
16
17
  export default CountryPickerView;
17
18
  //# sourceMappingURL=CountryPickerView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CountryPickerView.d.ts","sourceRoot":"","sources":["../../../../../src/components/Input/CountryPickerView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAIL,SAAS,EACT,SAAS,EAGV,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAKvC,UAAU,sBAAsB;IAC9B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,eAAe,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,OAAO,EAIpC,CAAC;AA+BJ,QAAA,MAAM,iBAAiB,GAAI,4HASxB,sBAAsB,sBA2ExB,CAAC;AA6CF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"CountryPickerView.d.ts","sourceRoot":"","sources":["../../../../../src/components/Input/CountryPickerView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAIL,SAAS,EACT,SAAS,EAGT,SAAS,EACV,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAKvC,UAAU,sBAAsB;IAC9B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,eAAe,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,iBAAiB,EAAE,OAAO,EAIpC,CAAC;AA+BJ,QAAA,MAAM,iBAAiB,GAAI,mIAUxB,sBAAsB,sBA4ExB,CAAC;AA6CF,eAAe,iBAAiB,CAAC"}
@@ -20,9 +20,12 @@ export interface ModalOptions {
20
20
  /** Optional component to render as a close icon at the top right or left of the screen */
21
21
  closeIconComponent?: ReactNode;
22
22
  }
23
+ interface HideModalOptions {
24
+ onDismiss?: () => void;
25
+ }
23
26
  interface ModalContextType {
24
27
  showModal: (content: ReactNode, options?: ModalOptions) => void;
25
- hideModal: () => void;
28
+ hideModal: (options?: HideModalOptions) => void;
26
29
  }
27
30
  interface ModalProviderProps {
28
31
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalModalProvider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/UniversalModalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,SAAS,EAMV,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,SAAS,EAIT,SAAS,EACV,MAAM,cAAc,CAAC;AAEtB,OAAiB,EAMf,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAIjC,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,6CAA6C;IAC7C,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,qCAAqC;IACrC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IACvC,WAAW,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC1C,mDAAmD;IACnD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE,SAAS,CAAC;CAChC;AAED,UAAU,gBAAgB;IACxB,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;IAChE,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,YAAY,CAAC;IAC9B,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAC9B,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,SAAS,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,OAAO,EAAE,MAAM,IAAI,CAAC;KACrB,CAAC,CAAC;CACJ;AAMD,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AA8JvD,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAwD/D,CAAC;AAEF,eAAO,MAAM,QAAQ,wBAMpB,CAAC"}
1
+ {"version":3,"file":"UniversalModalProvider.d.ts","sourceRoot":"","sources":["../../../../src/contexts/UniversalModalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,SAAS,EAMV,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,SAAS,EAIT,SAAS,EACV,MAAM,cAAc,CAAC;AAEtB,OAAiB,EAMf,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAIjC,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,6CAA6C;IAC7C,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,qCAAqC;IACrC,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACtC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IACvC,WAAW,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC1C,mDAAmD;IACnD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0FAA0F;IAC1F,kBAAkB,CAAC,EAAE,SAAS,CAAC;CAChC;AAED,UAAU,gBAAgB;IACxB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,UAAU,gBAAgB;IACxB,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;IAChE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACjD;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,YAAY,CAAC;IAC9B,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAC9B,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,SAAS,CAAC;QACpB,OAAO,EAAE,YAAY,CAAC;QACtB,OAAO,EAAE,MAAM,IAAI,CAAC;KACrB,CAAC,CAAC;CACJ;AAMD,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAgKvD,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgE/D,CAAC;AAEF,eAAO,MAAM,QAAQ,wBAMpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "related-ui-components",
3
- "version": "4.2.3",
3
+ "version": "4.2.5",
4
4
  "main": "lib/module/index.js",
5
5
  "scripts": {
6
6
  "start": "expo start",
@@ -7,6 +7,7 @@ import {
7
7
  TextStyle,
8
8
  Keyboard,
9
9
  FlatList,
10
+ ViewStyle,
10
11
  } from "react-native";
11
12
  import { BottomSheetFlatList } from "@gorhom/bottom-sheet";
12
13
  import { useTheme } from "../../theme";
@@ -25,6 +26,7 @@ interface CountryPickerViewProps {
25
26
  countryCodeStyle?: StyleProp<TextStyle>;
26
27
  searchPlaceholder?: string;
27
28
  isNative?: boolean;
29
+ style?: StyleProp<ViewStyle>;
28
30
  }
29
31
 
30
32
  export const DEFAULT_COUNTRIES: Country[] = allCountries.map((c) => ({
@@ -70,7 +72,8 @@ const CountryPickerView = ({
70
72
  countryNameStyle,
71
73
  countryCodeStyle,
72
74
  searchPlaceholder = "Search...",
73
- isNative
75
+ isNative,
76
+ style
74
77
  }: CountryPickerViewProps) => {
75
78
  const { theme } = useTheme();
76
79
 
@@ -116,7 +119,7 @@ const CountryPickerView = ({
116
119
  const FlatListComponent = isNative ? FlatList : BottomSheetFlatList
117
120
 
118
121
  return (
119
- <View style={styles.popup}>
122
+ <View style={[styles.popup, style]}>
120
123
  <Text style={[styles.popupTitle, { color: theme.text}, listTitleStyle]}>
121
124
  {listTitle}
122
125
  </Text>
@@ -134,6 +137,7 @@ const CountryPickerView = ({
134
137
  contentContainerStyle={{ paddingBottom: 16 }}
135
138
  initialNumToRender={15}
136
139
  maxToRenderPerBatch={10}
140
+ nestedScrollEnabled={isNative}
137
141
  showsVerticalScrollIndicator={false}
138
142
  keyboardShouldPersistTaps="handled"
139
143
  ListEmptyComponent={
@@ -47,9 +47,13 @@ export interface ModalOptions {
47
47
  closeIconComponent?: ReactNode;
48
48
  }
49
49
 
50
+ interface HideModalOptions {
51
+ onDismiss?: () => void;
52
+ }
53
+
50
54
  interface ModalContextType {
51
55
  showModal: (content: ReactNode, options?: ModalOptions) => void;
52
- hideModal: () => void;
56
+ hideModal: (options?: HideModalOptions) => void;
53
57
  }
54
58
 
55
59
  interface ModalProviderProps {
@@ -79,7 +83,8 @@ const DefaultModalUI: React.FC<{
79
83
  children: ReactNode;
80
84
  options: ModalOptions;
81
85
  onClose: () => void;
82
- }> = ({ isVisible, children, options, onClose }) => {
86
+ onDismiss: () => void;
87
+ }> = ({ isVisible, children, options, onClose, onDismiss }) => {
83
88
  const insets = useSafeAreaInsets();
84
89
  const [isRendered, setIsRendered] = useState(isVisible);
85
90
  const opacity = useSharedValue(0);
@@ -108,6 +113,7 @@ const DefaultModalUI: React.FC<{
108
113
  (finished) => {
109
114
  if (finished && !isVisible) {
110
115
  runOnJS(setIsRendered)(false);
116
+ runOnJS(onDismiss)();
111
117
  }
112
118
  },
113
119
  );
@@ -244,26 +250,33 @@ export const UniversalModalProvider: React.FC<ModalProviderProps> = ({
244
250
  options: {},
245
251
  });
246
252
 
253
+ const dismissCallbackRef = React.useRef<(() => void) | undefined>(undefined);
254
+
247
255
  const showModal = useCallback(
248
256
  (content: ReactNode, options?: ModalOptions) => {
249
257
  setState({
250
258
  isVisible: true,
251
259
  content,
252
- options: { ...options },
260
+ options: { ...options },
253
261
  });
254
262
  },
255
263
  [],
256
264
  );
257
265
 
258
- const hideModal = useCallback(() => {
266
+ const hideModal = useCallback((options?: HideModalOptions) => {
267
+ dismissCallbackRef.current = options?.onDismiss;
259
268
  setState((prev) => ({ ...prev, isVisible: false }));
260
- // Clear content after animation normally finishes to avoid flicker
261
- setTimeout(() => {
262
- setState((prev) => {
263
- // Only clear if still hidden (prevent race condition if immediately reshown)
264
- return !prev.isVisible ? { ...prev, content: null } : prev;
265
- });
266
- }, 350);
269
+ }, []);
270
+
271
+ const handleDismiss = useCallback(() => {
272
+ setState((prev) => {
273
+ if (prev.isVisible) return prev;
274
+ return { ...prev, content: null };
275
+ });
276
+
277
+ const callback = dismissCallbackRef.current;
278
+ dismissCallbackRef.current = undefined;
279
+ callback?.();
267
280
  }, []);
268
281
 
269
282
  const ModalUI = CustomModalComponent || DefaultModalUI;
@@ -280,6 +293,7 @@ export const UniversalModalProvider: React.FC<ModalProviderProps> = ({
280
293
  isVisible={state.isVisible}
281
294
  options={state.options}
282
295
  onClose={hideModal}
296
+ onDismiss={handleDismiss}
283
297
  >
284
298
  {state.content}
285
299
  </ModalUI>
@@ -297,8 +311,8 @@ export const useModal = () => {
297
311
 
298
312
  const styles = StyleSheet.create({
299
313
  overlayWrapper: {
300
- zIndex: 1000,
301
- elevation: 1000,
314
+ // zIndex: 1000,
315
+ // elevation: 1000,
302
316
  },
303
317
  backdrop: {
304
318
  backgroundColor: "rgba(0, 0, 0, 0.6)",