dhre-ui-kit 0.0.294 → 0.0.296

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.
package/lib/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var React$1 = require('react');
5
+ var React = require('react');
6
6
  var reactRedux = require('react-redux');
7
7
  var reactNative = require('react-native');
8
8
  var Modal = require('react-native-modal');
@@ -41,7 +41,7 @@ function _interopNamespace(e) {
41
41
  return Object.freeze(n);
42
42
  }
43
43
 
44
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React$1);
44
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
45
45
  var Modal__default = /*#__PURE__*/_interopDefaultLegacy(Modal);
46
46
  var Clipboard__default = /*#__PURE__*/_interopDefaultLegacy(Clipboard);
47
47
  var LottieView__default = /*#__PURE__*/_interopDefaultLegacy(LottieView);
@@ -302,7 +302,7 @@ const theme = {
302
302
  }
303
303
  };
304
304
 
305
- const ThemeContext = React$1.createContext(void 0);
305
+ const ThemeContext = React.createContext(void 0);
306
306
  const ThemeProvider = ({ children }) => {
307
307
  const mode = reactRedux.useSelector((state) => state.theme.currentTheme);
308
308
  const filteredTheme = Object.keys(theme).reduce((acc, key) => {
@@ -312,7 +312,7 @@ const ThemeProvider = ({ children }) => {
312
312
  return /* @__PURE__ */ React__default["default"].createElement(ThemeContext.Provider, { value: { theme: filteredTheme, mode } }, children);
313
313
  };
314
314
  const useTheme = () => {
315
- const context = React$1.useContext(ThemeContext);
315
+ const context = React.useContext(ThemeContext);
316
316
  if (context === void 0) {
317
317
  throw new Error("useTheme must be used within a ThemeProvider");
318
318
  }
@@ -1039,8 +1039,8 @@ const Checkbox = ({
1039
1039
  containerStyle,
1040
1040
  onPress
1041
1041
  }) => {
1042
- const [checked, setChecked] = React$1.useState(isChecked || false);
1043
- React$1.useEffect(() => {
1042
+ const [checked, setChecked] = React.useState(isChecked || false);
1043
+ React.useEffect(() => {
1044
1044
  setChecked(isChecked);
1045
1045
  }, [isChecked]);
1046
1046
  const handlePress = () => {
@@ -1123,7 +1123,7 @@ const CustomDropdown$1 = ({
1123
1123
  upArrowIcon,
1124
1124
  downArrowIcon
1125
1125
  }) => {
1126
- const [showOptions, setShowOptions] = React$1.useState(false);
1126
+ const [showOptions, setShowOptions] = React.useState(false);
1127
1127
  return /* @__PURE__ */ React__default["default"].createElement(reactNative.View, { testID: testId }, /* @__PURE__ */ React__default["default"].createElement(
1128
1128
  CustomTypography,
1129
1129
  {
@@ -1252,10 +1252,10 @@ const CustomTextInput = ({
1252
1252
  searchIcon,
1253
1253
  ...props
1254
1254
  }) => {
1255
- const [value, setValue] = React$1.useState("");
1256
- const [isFocused, setIsFocused] = React$1.useState(false);
1257
- const [error, setError] = React$1.useState(!!errorMessage);
1258
- const [isSecureTextEntry, setIsSecureTextEntry] = React$1.useState(secureTextEntry);
1255
+ const [value, setValue] = React.useState("");
1256
+ const [isFocused, setIsFocused] = React.useState(false);
1257
+ const [error, setError] = React.useState(!!errorMessage);
1258
+ const [isSecureTextEntry, setIsSecureTextEntry] = React.useState(secureTextEntry);
1259
1259
  const onFocus = () => {
1260
1260
  handleFocus?.();
1261
1261
  setIsFocused(true);
@@ -1574,7 +1574,7 @@ const CustomProgressBar = ({
1574
1574
  valueTextStyle,
1575
1575
  percentageTextStyle
1576
1576
  }) => {
1577
- React$1.useEffect(() => {
1577
+ React.useEffect(() => {
1578
1578
  const progressInterval = setInterval(() => {
1579
1579
  if (progress < value) {
1580
1580
  setProgress((prevProgress) => prevProgress + increment);
@@ -1746,16 +1746,24 @@ const Tabs = ({
1746
1746
  options,
1747
1747
  initialSelected = [],
1748
1748
  onSelectionChange,
1749
+ rating,
1749
1750
  style
1750
1751
  }) => {
1751
1752
  const { theme } = useTheme();
1752
- const [data, setData] = React$1.useState(
1753
+ const [data, setData] = React.useState(
1753
1754
  options.map((option) => ({
1754
1755
  title: option,
1755
1756
  id: option,
1756
1757
  isSelected: initialSelected?.includes(option)
1757
1758
  }))
1758
1759
  );
1760
+ React.useEffect(() => {
1761
+ setData(options.map((option) => ({
1762
+ title: option,
1763
+ id: option,
1764
+ isSelected: initialSelected?.includes(option)
1765
+ })));
1766
+ }, [rating]);
1759
1767
  const handlePress = (id) => {
1760
1768
  const updatedData = data?.map(
1761
1769
  (item) => item?.id === id ? { ...item, isSelected: !item?.isSelected } : item
@@ -1832,7 +1840,7 @@ const Tags = ({
1832
1840
  icon,
1833
1841
  iconStyle
1834
1842
  }) => {
1835
- const [selectedTags, setSelectedTags] = React$1.useState([]);
1843
+ const [selectedTags, setSelectedTags] = React.useState([]);
1836
1844
  const toggleTag = (tag) => {
1837
1845
  setSelectedTags((prevSelectedTags) => {
1838
1846
  const selectedTagsSet = new Set(prevSelectedTags);
@@ -1930,11 +1938,11 @@ const CustomSwitch = ({
1930
1938
  trackWidth = type !== ToggleButtonType.SMALL ? 35 : 15,
1931
1939
  width = type !== ToggleButtonType.SMALL ? 60 : 40
1932
1940
  }) => {
1933
- const [isOn, setIsOn] = React$1.useState(value);
1934
- const animatedValue = React$1.useRef(
1941
+ const [isOn, setIsOn] = React.useState(value);
1942
+ const animatedValue = React.useRef(
1935
1943
  new reactNative.Animated.Value(value ? trackWidth : 0)
1936
1944
  ).current;
1937
- React$1.useEffect(() => {
1945
+ React.useEffect(() => {
1938
1946
  reactNative.Animated.timing(animatedValue, {
1939
1947
  toValue: isOn ? trackWidth : 0,
1940
1948
  duration: 200,
@@ -2016,18 +2024,18 @@ const Accordion = ({
2016
2024
  icon,
2017
2025
  titleVariant = "B4_REGULAR"
2018
2026
  }) => {
2019
- const contentRef = React$1.useRef(null);
2020
- const [animation] = React$1.useState(new reactNative.Animated.Value(0));
2021
- const [contentHeight, setContentHeight] = React$1.useState(0);
2027
+ const contentRef = React.useRef(null);
2028
+ const [animation] = React.useState(new reactNative.Animated.Value(0));
2029
+ const [contentHeight, setContentHeight] = React.useState(0);
2022
2030
  const { theme } = useTheme();
2023
- React$1.useEffect(() => {
2031
+ React.useEffect(() => {
2024
2032
  if (contentRef.current) {
2025
2033
  contentRef.current.measure((x, y, width, height) => {
2026
2034
  setContentHeight(height);
2027
2035
  });
2028
2036
  }
2029
2037
  }, [isOpen]);
2030
- React$1.useEffect(() => {
2038
+ React.useEffect(() => {
2031
2039
  reactNative.Animated.timing(animation, {
2032
2040
  toValue: isOpen ? 1 : 0,
2033
2041
  duration: 300,
@@ -2122,14 +2130,14 @@ const styles$l = reactNative.StyleSheet.create({
2122
2130
 
2123
2131
  const Toast = React__default["default"].forwardRef(
2124
2132
  ({ sucessIcon, errorIcon }, ref) => {
2125
- const [visible, setVisible] = React$1.useState(false);
2126
- const [message, setMessage] = React$1.useState("");
2127
- const [isSuccess, setIsSuccess] = React$1.useState(true);
2128
- const [btnText, setBtnText] = React$1.useState(null);
2129
- const [onBtnPress, setOnBtnPress] = React$1.useState(null);
2130
- const [progress, setProgress] = React$1.useState(0);
2131
- const [height, setHeight] = React$1.useState(72);
2132
- const bottom = React$1.useRef(new reactNative.Animated.Value(-80)).current;
2133
+ const [visible, setVisible] = React.useState(false);
2134
+ const [message, setMessage] = React.useState("");
2135
+ const [isSuccess, setIsSuccess] = React.useState(true);
2136
+ const [btnText, setBtnText] = React.useState(null);
2137
+ const [onBtnPress, setOnBtnPress] = React.useState(null);
2138
+ const [progress, setProgress] = React.useState(0);
2139
+ const [height, setHeight] = React.useState(72);
2140
+ const bottom = React.useRef(new reactNative.Animated.Value(-80)).current;
2133
2141
  const showToast = (toastMessage, duration = 3e3, success = true, buttonText = null, buttonAction = null, height2 = 72) => {
2134
2142
  setMessage(toastMessage);
2135
2143
  setIsSuccess(success);
@@ -2159,7 +2167,7 @@ const Toast = React__default["default"].forwardRef(
2159
2167
  const simulateProgress = () => {
2160
2168
  setProgress((prev) => prev + 0.1 > 1 ? 1 : prev + 0.1);
2161
2169
  };
2162
- React$1.useEffect(() => {
2170
+ React.useEffect(() => {
2163
2171
  if (visible) {
2164
2172
  setProgress(0);
2165
2173
  const interval = setInterval(simulateProgress, 180);
@@ -2427,8 +2435,8 @@ const SwipableList = (props) => {
2427
2435
  titleStyle
2428
2436
  } = props;
2429
2437
  const { theme } = useTheme();
2430
- const [currentOpenId, setCurrentOpenId] = React$1.useState(null);
2431
- const swipeableRefs = React$1.useRef({});
2438
+ const [currentOpenId, setCurrentOpenId] = React.useState(null);
2439
+ const swipeableRefs = React.useRef({});
2432
2440
  const closeSwipeable = (id) => {
2433
2441
  swipeableRefs.current[id]?.close();
2434
2442
  };
@@ -2574,7 +2582,7 @@ const CustomIcon = ({
2574
2582
  };
2575
2583
 
2576
2584
  function AnimationWithImperativeApi() {
2577
- return /* @__PURE__ */ React.createElement(reactNative.View, { style: { flex: 1 } }, /* @__PURE__ */ React.createElement(
2585
+ return /* @__PURE__ */ React__default["default"].createElement(reactNative.View, { style: { flex: 1 } }, /* @__PURE__ */ React__default["default"].createElement(
2578
2586
  LottieView__default["default"],
2579
2587
  {
2580
2588
  style: { width: "100%", height: "100%" },
@@ -2872,7 +2880,7 @@ const styles$d = reactNative.StyleSheet.create({
2872
2880
 
2873
2881
  const DateRangePicker = (props) => {
2874
2882
  const { onButtonPress, btnTitle = "Apply" } = props;
2875
- const [selectedRange, setSelectedRange] = React$1.useState({
2883
+ const [selectedRange, setSelectedRange] = React.useState({
2876
2884
  startDate: "",
2877
2885
  endDate: ""
2878
2886
  });
@@ -3091,7 +3099,7 @@ const ScrollableList = ({
3091
3099
  errorStyle,
3092
3100
  activeTextStyle
3093
3101
  }) => {
3094
- const [selectedItem, setSelectedItem] = React$1.useState(
3102
+ const [selectedItem, setSelectedItem] = React.useState(
3095
3103
  data && data.length > 0 ? data[0].name : null
3096
3104
  );
3097
3105
  const { theme } = useTheme();
@@ -3306,10 +3314,10 @@ const CountryDropDown = ({
3306
3314
  errorMessage,
3307
3315
  label
3308
3316
  }) => {
3309
- const [countryCode, setCountryCode] = React$1.useState(defaultCountryCode);
3310
- const [callingCode, setCallingCode] = React$1.useState(defaultCallingCode);
3311
- const [pickerVisible, setPickerVisible] = React$1.useState(false);
3312
- const [isFocused, setIsFocused] = React$1.useState(false);
3317
+ const [countryCode, setCountryCode] = React.useState(defaultCountryCode);
3318
+ const [callingCode, setCallingCode] = React.useState(defaultCallingCode);
3319
+ const [pickerVisible, setPickerVisible] = React.useState(false);
3320
+ const [isFocused, setIsFocused] = React.useState(false);
3313
3321
  const handleSelect = (country) => {
3314
3322
  setCountryCode(country.cca2);
3315
3323
  setCallingCode(`+${country.callingCode[0]}`);
@@ -3555,8 +3563,8 @@ const CustomDropdown = (props) => {
3555
3563
  selectedItemTextStyle,
3556
3564
  disable
3557
3565
  } = props;
3558
- const [value, setValue] = React$1.useState(defaultValue);
3559
- const [isFocus, setIsFocus] = React$1.useState(false);
3566
+ const [value, setValue] = React.useState(defaultValue);
3567
+ const [isFocus, setIsFocus] = React.useState(false);
3560
3568
  const renderLabel = () => {
3561
3569
  if (value || isFocus) {
3562
3570
  return /* @__PURE__ */ React__default["default"].createElement(
@@ -3714,12 +3722,12 @@ const CustomSwitchBtn = ({
3714
3722
  inActiveTextStyle,
3715
3723
  circleStyle
3716
3724
  }) => {
3717
- const [animatedValue] = React$1.useState(new reactNative.Animated.Value(value ? 1 : 0));
3725
+ const [animatedValue] = React.useState(new reactNative.Animated.Value(value ? 1 : 0));
3718
3726
  const translateX = animatedValue.interpolate({
3719
3727
  inputRange: [0, 1],
3720
3728
  outputRange: [0, 28]
3721
3729
  });
3722
- React$1.useEffect(() => {
3730
+ React.useEffect(() => {
3723
3731
  reactNative.Animated.timing(animatedValue, {
3724
3732
  toValue: value ? 1 : 0,
3725
3733
  duration: 300,
@@ -3921,10 +3929,10 @@ const CustomDocumentPicker = ({
3921
3929
  uploadIcon,
3922
3930
  deleteIcon
3923
3931
  }) => {
3924
- const [error, setError] = React$1.useState("");
3925
- const [docDetails, setDocDetails] = React$1.useState();
3932
+ const [error, setError] = React.useState("");
3933
+ const [docDetails, setDocDetails] = React.useState();
3926
3934
  const { theme } = useTheme();
3927
- const pickDocument = React$1.useCallback(async () => {
3935
+ const pickDocument = React.useCallback(async () => {
3928
3936
  try {
3929
3937
  const res = await DocumentPicker__default["default"].pickSingle({
3930
3938
  type: fileTypes
@@ -3949,7 +3957,7 @@ const CustomDocumentPicker = ({
3949
3957
  }
3950
3958
  }
3951
3959
  }, [fileTypes, maxFileSize, onDocumentUpload]);
3952
- const removeDocument = React$1.useCallback(() => {
3960
+ const removeDocument = React.useCallback(() => {
3953
3961
  setDocDetails(void 0);
3954
3962
  }, []);
3955
3963
  return /* @__PURE__ */ React__default["default"].createElement(React__default["default"].Fragment, null, /* @__PURE__ */ React__default["default"].createElement(
@@ -3989,7 +3997,7 @@ const CustomDocumentPicker = ({
3989
3997
  }
3990
3998
  ));
3991
3999
  };
3992
- var CustomDocumentPicker$1 = withThemeProvider(React$1.memo(CustomDocumentPicker));
4000
+ var CustomDocumentPicker$1 = withThemeProvider(React.memo(CustomDocumentPicker));
3993
4001
 
3994
4002
  const styles$5 = reactNative.StyleSheet.create({
3995
4003
  textInputContainer: {
@@ -4049,11 +4057,11 @@ const OTPInput = React__default["default"].forwardRef(
4049
4057
  timerToResend = 6e4,
4050
4058
  timerIcon
4051
4059
  }, ref) => {
4052
- const [otp, setOTP] = React$1.useState("");
4053
- const [isResendOtpEnable, setIsResendOtpEnable] = React$1.useState(false);
4054
- const [activeInput, setActiveInput] = React$1.useState(null);
4055
- const [resendOTPCount, setResendOTPCount] = React$1.useState(0);
4056
- const [errorMessageMaxReachCount, setErrorMessageMaxReachCount] = React$1.useState("");
4060
+ const [otp, setOTP] = React.useState("");
4061
+ const [isResendOtpEnable, setIsResendOtpEnable] = React.useState(false);
4062
+ const [activeInput, setActiveInput] = React.useState(null);
4063
+ const [resendOTPCount, setResendOTPCount] = React.useState(0);
4064
+ const [errorMessageMaxReachCount, setErrorMessageMaxReachCount] = React.useState("");
4057
4065
  const filteredTheme = Object?.keys(theme)?.reduce(
4058
4066
  (acc, key) => {
4059
4067
  acc[key] = theme[key][mode];
@@ -4062,8 +4070,8 @@ const OTPInput = React__default["default"].forwardRef(
4062
4070
  {}
4063
4071
  );
4064
4072
  const { theme: theme$1 } = mode ? { theme: filteredTheme } : useTheme();
4065
- const [timeLeft, setTimeLeft] = React$1.useState(60);
4066
- React$1.useEffect(() => {
4073
+ const [timeLeft, setTimeLeft] = React.useState(60);
4074
+ React.useEffect(() => {
4067
4075
  let timer;
4068
4076
  if (!isResendOtpEnable && timeLeft > 0) {
4069
4077
  timer = setInterval(() => {
@@ -4074,9 +4082,9 @@ const OTPInput = React__default["default"].forwardRef(
4074
4082
  }
4075
4083
  return () => clearInterval(timer);
4076
4084
  }, [timeLeft, isResendOtpEnable]);
4077
- const refs = React$1.useRef([]);
4085
+ const refs = React.useRef([]);
4078
4086
  refs.current = Array(length).fill(0).map((_, index) => refs.current[index] || null);
4079
- React$1.useEffect(() => {
4087
+ React.useEffect(() => {
4080
4088
  enableResendOtp();
4081
4089
  }, []);
4082
4090
  const onClickResendOTP = () => {
@@ -4106,7 +4114,7 @@ const OTPInput = React__default["default"].forwardRef(
4106
4114
  setTimeLeft(timerToResend / 1e3);
4107
4115
  }, timerToResend);
4108
4116
  };
4109
- React$1.useEffect(() => {
4117
+ React.useEffect(() => {
4110
4118
  if (reactNative.Platform.OS === "android") {
4111
4119
  onStartListeningOtp();
4112
4120
  }
@@ -4162,7 +4170,7 @@ const OTPInput = React__default["default"].forwardRef(
4162
4170
  refs.current[index - 1]?.focus();
4163
4171
  }
4164
4172
  };
4165
- React$1.useEffect(() => {
4173
+ React.useEffect(() => {
4166
4174
  if (otp.length === length) {
4167
4175
  onComplete?.(otp);
4168
4176
  }
@@ -4466,12 +4474,12 @@ const CustomSlideButton = React__default["default"].forwardRef(
4466
4474
  sliderTextColor = "#000",
4467
4475
  resetTimer = 2e3
4468
4476
  }, ref) => {
4469
- const value = React$1.useRef(0);
4470
- const cardRef = React$1.useRef(null);
4471
- const [translateX] = React$1.useState(new reactNative.Animated.Value(0));
4472
- const sliderConteinerRef = React$1.useRef(null);
4473
- const [color, setColor] = React$1.useState(new reactNative.Animated.Value(0));
4474
- const [sliderBackgroundColorRef, setSliderBackgroundColorRef] = React$1.useState(new reactNative.Animated.Value(0));
4477
+ const value = React.useRef(0);
4478
+ const cardRef = React.useRef(null);
4479
+ const [translateX] = React.useState(new reactNative.Animated.Value(0));
4480
+ const sliderConteinerRef = React.useRef(null);
4481
+ const [color, setColor] = React.useState(new reactNative.Animated.Value(0));
4482
+ const [sliderBackgroundColorRef, setSliderBackgroundColorRef] = React.useState(new reactNative.Animated.Value(0));
4475
4483
  React__default["default"].useImperativeHandle(ref, () => ({
4476
4484
  reset() {
4477
4485
  resetAll();
@@ -4955,7 +4963,7 @@ const styles = reactNative.StyleSheet.create({
4955
4963
  });
4956
4964
 
4957
4965
  const RadioButtonGroup = ({ data, onSelect, containerStyle, labelStyle, optionContainerStyle }) => {
4958
- const [selectedOption, setSelectedOption] = React$1.useState(data[0]?.value);
4966
+ const [selectedOption, setSelectedOption] = React.useState(data[0]?.value);
4959
4967
  const handleSelect = (item) => {
4960
4968
  setSelectedOption(item.value);
4961
4969
  onSelect(item);