@hoddy-ui/next 2.0.46 → 2.0.48

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/dist/index.js CHANGED
@@ -228,7 +228,7 @@ function initialize(config2) {
228
228
  try {
229
229
  setConfig({
230
230
  GOOGLE_MAP_API_KEY: config2.googleMapApiKey,
231
- DEFAULT_FONT_FAMILY: config2.fontFamily,
231
+ TYPOGRAPHY: config2.typography,
232
232
  EDGE_TO_EDGE: config2.edgeToEdge ?? false
233
233
  });
234
234
  if (config2.colors)
@@ -259,6 +259,7 @@ var import_react_native_safe_area_context2 = require("react-native-safe-area-con
259
259
  // ../src/Components/FlashMessage.tsx
260
260
  var import_react2 = __toESM(require("react"));
261
261
  var import_react_native2 = require("react-native");
262
+ var import_react_native_reanimated = __toESM(require("react-native-reanimated"));
262
263
  var import_react_native_safe_area_context = require("react-native-safe-area-context");
263
264
  var import_react_native_size_matters2 = require("react-native-size-matters");
264
265
 
@@ -266,24 +267,31 @@ var import_react_native_size_matters2 = require("react-native-size-matters");
266
267
  var import_react = __toESM(require("react"));
267
268
  var import_react_native = require("react-native");
268
269
  var import_react_native_size_matters = require("react-native-size-matters");
270
+
271
+ // ../src/utility.ts
272
+ var getFontFamily = (fontWeight) => {
273
+ return getConfig().TYPOGRAPHY?.fontWeights?.[fontWeight] || getConfig().TYPOGRAPHY?.fontFamily || void 0;
274
+ };
275
+
276
+ // ../src/Components/Typography.tsx
269
277
  var Typography = (0, import_react.forwardRef)(
270
278
  ({
271
279
  children,
272
280
  color = "dark",
273
281
  style = {},
274
- textCase = null,
282
+ textCase,
275
283
  variant = "body1",
276
284
  align = "left",
277
285
  gutterBottom = 0,
278
- numberOfLines,
279
286
  adjustsFontSizeToFit,
280
287
  fontWeight = 400,
281
288
  fontFamily,
282
289
  // NEW PROP ADDED
290
+ fontSize,
283
291
  ...props
284
292
  }, ref) => {
285
293
  const colors2 = useColors();
286
- const fontSize = {
294
+ const _fontSize = {
287
295
  h1: (0, import_react_native_size_matters.moderateScale)(42),
288
296
  h2: (0, import_react_native_size_matters.moderateScale)(37),
289
297
  h3: (0, import_react_native_size_matters.moderateScale)(32),
@@ -296,15 +304,14 @@ var Typography = (0, import_react.forwardRef)(
296
304
  };
297
305
  const styles2 = import_react_native.StyleSheet.create({
298
306
  text: {
299
- fontSize: fontSize[variant],
300
- marginBottom: (0, import_react_native_size_matters.verticalScale)(gutterBottom) || 0,
307
+ fontSize: fontSize || _fontSize[variant],
308
+ marginBottom: (0, import_react_native_size_matters.ms)(gutterBottom) || 0,
301
309
  color: colors2[color]?.main || color,
302
310
  textTransform: textCase,
303
311
  alignItems: "center",
304
312
  textAlign: align,
305
313
  fontWeight,
306
- fontFamily: fontFamily || getConfig().DEFAULT_FONT_FAMILY || void 0
307
- // Use custom font if provided, else default
314
+ fontFamily: fontFamily || getFontFamily(fontWeight)
308
315
  }
309
316
  });
310
317
  return /* @__PURE__ */ import_react.default.createElement(
@@ -327,28 +334,53 @@ var showFlashMessage = () => {
327
334
  var FlashMessage = () => {
328
335
  const { top } = (0, import_react_native_safe_area_context.useSafeAreaInsets)();
329
336
  const [message, setMessage] = (0, import_react2.useState)(null);
330
- const [show, setShow] = (0, import_react2.useState)(false);
331
337
  const colors2 = useColors();
332
338
  const type = message?.type || "success";
339
+ const timeoutRef = (0, import_react2.useRef)(null);
340
+ const translateY = (0, import_react_native_reanimated.useSharedValue)(-200);
341
+ const opacity = (0, import_react_native_reanimated.useSharedValue)(0);
342
+ const hideMessage = () => {
343
+ setMessage(null);
344
+ };
345
+ const closeMessage = () => {
346
+ if (timeoutRef.current) {
347
+ clearTimeout(timeoutRef.current);
348
+ timeoutRef.current = null;
349
+ }
350
+ translateY.value = (0, import_react_native_reanimated.withTiming)(-200, { duration: 300 });
351
+ opacity.value = (0, import_react_native_reanimated.withTiming)(0, { duration: 300 }, () => {
352
+ (0, import_react_native_reanimated.runOnJS)(hideMessage)();
353
+ });
354
+ };
333
355
  showFlashMessage = (msg) => {
356
+ if (timeoutRef.current) {
357
+ clearTimeout(timeoutRef.current);
358
+ timeoutRef.current = null;
359
+ }
360
+ translateY.value = -200;
361
+ opacity.value = 0;
334
362
  setMessage(msg);
335
- setTimeout(() => {
336
- setShow(true);
337
- }, 50);
338
- setTimeout(() => {
339
- setShow(false);
340
- setTimeout(() => {
341
- setMessage(null);
342
- }, 500);
343
- }, msg.duration || 3e3);
363
+ translateY.value = (0, import_react_native_reanimated.withTiming)(0, { duration: 300 });
364
+ opacity.value = (0, import_react_native_reanimated.withTiming)(1, { duration: 300 });
365
+ const duration = msg.duration || 3e3;
366
+ timeoutRef.current = setTimeout(() => {
367
+ translateY.value = (0, import_react_native_reanimated.withTiming)(-200, { duration: 300 });
368
+ opacity.value = (0, import_react_native_reanimated.withTiming)(0, { duration: 300 }, () => {
369
+ (0, import_react_native_reanimated.runOnJS)(hideMessage)();
370
+ });
371
+ timeoutRef.current = null;
372
+ }, duration);
344
373
  };
345
- (0, import_react2.useEffect)(() => {
346
- import_react_native2.LayoutAnimation.configureNext(import_react_native2.LayoutAnimation.Presets.easeInEaseOut);
347
- }, [show]);
374
+ const animatedStyle = (0, import_react_native_reanimated.useAnimatedStyle)(() => {
375
+ return {
376
+ transform: [{ translateY: translateY.value }],
377
+ opacity: opacity.value
378
+ };
379
+ });
348
380
  const styles2 = import_react_native_size_matters2.ScaledSheet.create({
349
381
  root: {
350
382
  position: "absolute",
351
- top: show ? 0 : -200,
383
+ top: 0,
352
384
  zIndex: 1e3,
353
385
  left: 0,
354
386
  paddingTop: top + 10,
@@ -369,7 +401,9 @@ var FlashMessage = () => {
369
401
  backgroundColor: "#fff3"
370
402
  }
371
403
  });
372
- return /* @__PURE__ */ import_react2.default.createElement(import_react_native2.View, { style: styles2.root }, /* @__PURE__ */ import_react2.default.createElement(import_react_native2.View, { style: { flexDirection: "row" } }, /* @__PURE__ */ import_react2.default.createElement(import_react_native2.View, { style: { flex: 1, marginRight: 10 } }, message?.title && /* @__PURE__ */ import_react2.default.createElement(
404
+ if (!message)
405
+ return null;
406
+ return /* @__PURE__ */ import_react2.default.createElement(import_react_native_reanimated.default.View, { style: [styles2.root, animatedStyle] }, /* @__PURE__ */ import_react2.default.createElement(import_react_native2.TouchableOpacity, { onPress: closeMessage, activeOpacity: 0.9 }, /* @__PURE__ */ import_react2.default.createElement(import_react_native2.View, { style: { flexDirection: "row" } }, /* @__PURE__ */ import_react2.default.createElement(import_react_native2.View, { style: { flex: 1, marginRight: 10 } }, message?.title && /* @__PURE__ */ import_react2.default.createElement(
373
407
  Typography_default,
374
408
  {
375
409
  variant: "h6",
@@ -378,7 +412,18 @@ var FlashMessage = () => {
378
412
  style: { color: "#fff" }
379
413
  },
380
414
  message?.title
381
- ), /* @__PURE__ */ import_react2.default.createElement(Typography_default, { style: { color: "#fff" } }, message?.message))), message?.actions?.map((cur, i) => /* @__PURE__ */ import_react2.default.createElement(import_react_native2.TouchableOpacity, { key: i, style: styles2.action, onPress: cur.onPress }, /* @__PURE__ */ import_react2.default.createElement(Typography_default, { fontWeight: 700, style: { color: "#fff" } }, cur.title))));
415
+ ), /* @__PURE__ */ import_react2.default.createElement(Typography_default, { style: { color: "#fff" } }, message?.message)))), message?.actions?.map((cur, i) => /* @__PURE__ */ import_react2.default.createElement(
416
+ import_react_native2.TouchableOpacity,
417
+ {
418
+ key: i,
419
+ style: styles2.action,
420
+ onPress: () => {
421
+ cur.onPress?.();
422
+ closeMessage();
423
+ }
424
+ },
425
+ /* @__PURE__ */ import_react2.default.createElement(Typography_default, { fontWeight: 700, style: { color: "#fff" } }, cur.title)
426
+ )));
382
427
  };
383
428
  var FlashMessage_default = FlashMessage;
384
429
 
@@ -575,7 +620,7 @@ var AlertX = ({
575
620
  borderRadius: 8,
576
621
  alignItems: "center",
577
622
  flexDirection: "row",
578
- marginBottom: gutterBottom + "@ms",
623
+ marginBottom: (0, import_react_native_size_matters4.ms)(gutterBottom),
579
624
  backgroundColor: colors2[type].main + (variant === "contained" ? "" : "3")
580
625
  },
581
626
  title: {
@@ -585,7 +630,7 @@ var AlertX = ({
585
630
  color: variant === "contained" ? "#fff" : colors2[type].main
586
631
  }
587
632
  });
588
- return /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: { ...styles2.container, ...style } }, /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: { width: "80%" } }, /* @__PURE__ */ import_react6.default.createElement(Typography_default, { style: styles2.title, gutterBottom: 3, fontWeight: 700 }, title), body && /* @__PURE__ */ import_react6.default.createElement(Typography_default, { fontWeight: 700, variant: "body2", style: styles2.body }, body)), /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: { marginLeft: "auto" } }, /* @__PURE__ */ import_react6.default.createElement(
633
+ return /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: [styles2.container, style] }, /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: { width: "80%" } }, /* @__PURE__ */ import_react6.default.createElement(Typography_default, { style: styles2.title, gutterBottom: 3, fontWeight: 700 }, title), body && /* @__PURE__ */ import_react6.default.createElement(Typography_default, { fontWeight: 700, variant: "body2", style: styles2.body }, body)), /* @__PURE__ */ import_react6.default.createElement(import_react_native6.View, { style: { marginLeft: "auto" } }, /* @__PURE__ */ import_react6.default.createElement(
589
634
  import_vector_icons.MaterialIcons,
590
635
  {
591
636
  color: variant === "contained" ? "#fff" : colors2[type].main,
@@ -613,14 +658,14 @@ var Avatar = ({
613
658
  const styles2 = import_react_native_size_matters5.ScaledSheet.create({
614
659
  root: {
615
660
  borderRadius: 150,
616
- height: size + "@ms",
617
- width: size + "@ms",
661
+ height: (0, import_react_native_size_matters5.ms)(size),
662
+ width: (0, import_react_native_size_matters5.ms)(size),
618
663
  alignItems: "center",
619
664
  justifyContent: "center",
620
665
  overflow: "hidden",
621
666
  borderWidth: variant === "outlined" ? 5 : 0,
622
667
  borderColor: variant === "outlined" ? "#fff" : "#0000",
623
- backgroundColor: variant === "outlined" ? null : label ? colors2[color].main : colors2.white[4],
668
+ backgroundColor: variant === "outlined" ? void 0 : label ? colors2[color].main : colors2.white[4],
624
669
  ...style
625
670
  },
626
671
  image: {
@@ -642,7 +687,7 @@ var LinkButton = ({
642
687
  style = {},
643
688
  color = "blue",
644
689
  fontSize = 12,
645
- fontWeight = "400",
690
+ fontWeight = 400,
646
691
  disabled,
647
692
  onPress = () => {
648
693
  }
@@ -651,8 +696,8 @@ var LinkButton = ({
651
696
  const styles2 = import_react_native_size_matters6.ScaledSheet.create({
652
697
  text: {
653
698
  fontSize: (0, import_react_native_size_matters6.moderateScale)(fontSize),
654
- fontWeight,
655
- fontFamily: getConfig().DEFAULT_FONT_FAMILY || "System",
699
+ fontWeight: fontWeight.toString(),
700
+ fontFamily: getFontFamily(fontWeight),
656
701
  color: disabled ? "#777" : colors2[color].main
657
702
  }
658
703
  });
@@ -678,7 +723,7 @@ var IconButton = ({
678
723
  container: {
679
724
  alignSelf: "flex-start",
680
725
  flexGrow: 0,
681
- backgroundColor: bg ? bgColor : elevation > 0 ? bgColor : null,
726
+ backgroundColor: bg ? bgColor : elevation > 0 ? bgColor : void 0,
682
727
  padding: "5@ms",
683
728
  shadowColor: "#000",
684
729
  shadowOpacity: 0.1,
@@ -686,8 +731,8 @@ var IconButton = ({
686
731
  height: 1,
687
732
  width: 0
688
733
  },
689
- height: bg ? size + 20 + "@ms" : void 0,
690
- width: bg ? size + 20 + "@ms" : void 0,
734
+ height: bg ? (0, import_react_native_size_matters6.ms)(size + 20) : void 0,
735
+ width: bg ? (0, import_react_native_size_matters6.ms)(size + 20) : void 0,
691
736
  alignItems: "center",
692
737
  justifyContent: "center",
693
738
  shadowRadius: elevation,
@@ -738,10 +783,10 @@ var Button = (0, import_react8.forwardRef)(
738
783
  alignItems: "center",
739
784
  alignSelf: "flex-start",
740
785
  justifyContent: "center",
741
- backgroundColor: variant === "text" || variant === "outlined" ? null : translucent ? translucent === "dark" ? colors2.white[3] + "22" : colors2.black[3] + "22" : loading ? colors2[color].light : disabled ? colors2.white[4] : colors2[color].main,
786
+ backgroundColor: variant === "text" || variant === "outlined" ? void 0 : translucent ? translucent === "dark" ? colors2.white[3] + "22" : colors2.black[3] + "22" : loading ? colors2[color].light : disabled ? colors2.white[4] : colors2[color].main,
742
787
  borderRadius: rounded ? 30 : 10,
743
788
  elevation: variant === "text" ? 0 : elevation,
744
- paddingVertical: size === "small" ? 8 : size === "large" ? "15@ms" : "13@ms",
789
+ paddingVertical: size === "small" ? 8 : size === "large" ? "15@mvs" : "13@mvs",
745
790
  paddingHorizontal: size === "small" ? "10@ms" : "18@ms",
746
791
  borderColor: colors2[color].main,
747
792
  borderWidth: variant === "outlined" ? 1 : 0,
@@ -753,14 +798,14 @@ var Button = (0, import_react8.forwardRef)(
753
798
  width: 0
754
799
  },
755
800
  shadowOpacity: variant === "text" ? 0 : 0.3,
756
- width: fullWidth ? "100%" : null,
801
+ width: fullWidth ? "100%" : void 0,
757
802
  ...style
758
803
  },
759
804
  text: {
760
805
  color: disabled ? variant === "text" || variant === "outlined" ? colors2.black[1] : colors2[color].text : colors2[color][variant === "text" || variant === "outlined" ? "main" : "text"],
761
806
  fontWeight: variant === "outlined" ? "700" : "500",
762
- fontSize: size === "small" ? "12@ms" : "16@ms",
763
- fontFamily: getConfig().DEFAULT_FONT_FAMILY || "System"
807
+ fontSize: size === "small" ? "12@ms" : "13@ms",
808
+ fontFamily: getFontFamily(variant === "outlined" ? 700 : 500)
764
809
  }
765
810
  });
766
811
  return /* @__PURE__ */ import_react8.default.createElement(
@@ -880,6 +925,7 @@ var import_react_native_size_matters10 = require("react-native-size-matters");
880
925
  // ../src/Components/Popup.tsx
881
926
  var import_react_native11 = require("react-native");
882
927
  var import_react11 = __toESM(require("react"));
928
+ var import_react_native_reanimated2 = __toESM(require("react-native-reanimated"));
883
929
  var import_react_native_size_matters9 = require("react-native-size-matters");
884
930
  var Popup = ({
885
931
  title,
@@ -890,12 +936,40 @@ var Popup = ({
890
936
  open,
891
937
  onClose = () => {
892
938
  },
893
- style
939
+ style,
940
+ onModalShow,
941
+ onModalHide
894
942
  }) => {
895
943
  const theme = useTheme();
896
944
  const colors2 = useColors();
897
- const [show, setShow] = (0, import_react11.useState)(open);
898
- const [showSecondary, setShowSecondary] = (0, import_react11.useState)(false);
945
+ const [modalVisible, setModalVisible] = (0, import_react11.useState)(false);
946
+ const backdropOpacity = (0, import_react_native_reanimated2.useSharedValue)(0);
947
+ const contentTranslateY = (0, import_react_native_reanimated2.useSharedValue)(1e3);
948
+ (0, import_react11.useEffect)(() => {
949
+ if (open) {
950
+ setModalVisible(true);
951
+ backdropOpacity.value = (0, import_react_native_reanimated2.withTiming)(1, { duration: 300 });
952
+ contentTranslateY.value = (0, import_react_native_reanimated2.withTiming)(0, { duration: 300 }, () => {
953
+ if (onModalShow) {
954
+ (0, import_react_native_reanimated2.runOnJS)(onModalShow)();
955
+ }
956
+ });
957
+ } else {
958
+ backdropOpacity.value = (0, import_react_native_reanimated2.withTiming)(0, { duration: 200 });
959
+ contentTranslateY.value = (0, import_react_native_reanimated2.withTiming)(1e3, { duration: 200 }, () => {
960
+ (0, import_react_native_reanimated2.runOnJS)(setModalVisible)(false);
961
+ if (onModalHide) {
962
+ (0, import_react_native_reanimated2.runOnJS)(onModalHide)();
963
+ }
964
+ });
965
+ }
966
+ }, [open]);
967
+ const backdropAnimatedStyle = (0, import_react_native_reanimated2.useAnimatedStyle)(() => ({
968
+ opacity: backdropOpacity.value
969
+ }));
970
+ const contentAnimatedStyle = (0, import_react_native_reanimated2.useAnimatedStyle)(() => ({
971
+ transform: [{ translateY: contentTranslateY.value }]
972
+ }));
899
973
  const styles2 = import_react_native_size_matters9.ScaledSheet.create({
900
974
  root: {
901
975
  height: "100%",
@@ -911,7 +985,7 @@ var Popup = ({
911
985
  width: sheet ? "100%" : void 0
912
986
  },
913
987
  container: {
914
- paddingBottom: sheet ? "30@ms" : 0,
988
+ paddingBottom: sheet ? "30@ms" : void 0,
915
989
  backgroundColor: theme === "dark" ? "#111" : colors2.white[2],
916
990
  borderTopLeftRadius: 20,
917
991
  borderTopRightRadius: 20,
@@ -922,7 +996,6 @@ var Popup = ({
922
996
  },
923
997
  content: {
924
998
  paddingHorizontal: bare ? void 0 : "15@ms"
925
- // flex: 1,
926
999
  },
927
1000
  title: {
928
1001
  flexDirection: "row",
@@ -937,71 +1010,53 @@ var Popup = ({
937
1010
  backdrop: {
938
1011
  position: "absolute",
939
1012
  height: "100%",
940
- zIndex: -1,
1013
+ zIndex: 1,
941
1014
  width: "100%",
942
1015
  backgroundColor: "#000b"
943
1016
  }
944
1017
  });
945
- import_react11.default.useEffect(() => {
946
- if (open) {
947
- setShow(open);
948
- setTimeout(() => {
949
- setShowSecondary(open);
950
- }, 500);
951
- } else {
952
- closeAction();
953
- }
954
- }, [open]);
955
1018
  const closeAction = () => {
956
- setShowSecondary(false);
957
- setTimeout(() => {
958
- setShow(false);
959
- onClose();
960
- }, 300);
1019
+ onClose();
961
1020
  };
962
- return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(
1021
+ return /* @__PURE__ */ import_react11.default.createElement(
963
1022
  import_react_native11.Modal,
964
1023
  {
965
1024
  transparent: true,
966
- animationType: "fade",
1025
+ animationType: "none",
967
1026
  statusBarTranslucent: true,
968
- visible: show,
1027
+ visible: modalVisible,
969
1028
  onRequestClose: closeAction
970
1029
  },
971
- /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.backdrop }),
972
- /* @__PURE__ */ import_react11.default.createElement(UIThemeProvider, null, /* @__PURE__ */ import_react11.default.createElement(
973
- import_react_native11.Modal,
1030
+ /* @__PURE__ */ import_react11.default.createElement(UIThemeProvider, null, /* @__PURE__ */ import_react11.default.createElement(import_react_native11.TouchableWithoutFeedback, { onPress: import_react_native11.Keyboard.dismiss }, /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.root }, /* @__PURE__ */ import_react11.default.createElement(import_react_native_reanimated2.default.View, { style: [styles2.backdrop, backdropAnimatedStyle] }), open && /* @__PURE__ */ import_react11.default.createElement(
1031
+ import_react_native11.Pressable,
974
1032
  {
975
- transparent: true,
976
- animationType: "slide",
977
- statusBarTranslucent: true,
978
- visible: showSecondary,
979
- onRequestClose: closeAction
1033
+ style: [import_react_native11.StyleSheet.absoluteFill, { zIndex: 2 }],
1034
+ onPress: closeAction
1035
+ }
1036
+ ), /* @__PURE__ */ import_react11.default.createElement(import_react_native_reanimated2.default.View, { style: [styles2.avoidingView, contentAnimatedStyle] }, /* @__PURE__ */ import_react11.default.createElement(
1037
+ import_react_native11.KeyboardAvoidingView,
1038
+ {
1039
+ keyboardVerticalOffset,
1040
+ behavior: import_react_native11.Platform.OS === "ios" ? "padding" : "padding"
980
1041
  },
981
- /* @__PURE__ */ import_react11.default.createElement(import_react_native11.TouchableWithoutFeedback, { onPress: import_react_native11.Keyboard.dismiss }, /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.root }, open && /* @__PURE__ */ import_react11.default.createElement(
982
- import_react_native11.Pressable,
983
- {
984
- style: import_react_native11.StyleSheet.absoluteFill,
985
- onPress: closeAction
986
- }
987
- ), /* @__PURE__ */ import_react11.default.createElement(
988
- import_react_native11.KeyboardAvoidingView,
1042
+ /* @__PURE__ */ import_react11.default.createElement(
1043
+ import_react_native_reanimated2.default.View,
989
1044
  {
990
- style: styles2.avoidingView,
991
- keyboardVerticalOffset,
992
- behavior: import_react_native11.Platform.OS === "ios" ? "position" : "padding"
1045
+ layout: import_react_native_reanimated2.LinearTransition,
1046
+ style: styles2.container
993
1047
  },
994
- /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.container }, !bare && /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.title }, /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.titleIcon }, /* @__PURE__ */ import_react11.default.createElement(
1048
+ !bare && /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.title }, /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.titleIcon }, /* @__PURE__ */ import_react11.default.createElement(
995
1049
  IconButton,
996
1050
  {
997
1051
  size: 20,
998
1052
  icon: "close",
999
1053
  onPress: closeAction
1000
1054
  }
1001
- )), /* @__PURE__ */ import_react11.default.createElement(Typography_default, { align: "center", fontWeight: 500 }, title)), /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.content }, children))
1002
- )))
1003
- ))
1004
- ));
1055
+ )), /* @__PURE__ */ import_react11.default.createElement(Typography_default, { align: "center", fontWeight: 500 }, title)),
1056
+ /* @__PURE__ */ import_react11.default.createElement(import_react_native11.View, { style: styles2.content }, children)
1057
+ )
1058
+ )))))
1059
+ );
1005
1060
  };
1006
1061
 
1007
1062
  // ../src/Components/StarRating.tsx
@@ -1142,8 +1197,8 @@ var RatingInput = ({
1142
1197
  };
1143
1198
 
1144
1199
  // ../src/Components/Grid.tsx
1145
- var import_react_native13 = require("react-native");
1146
1200
  var import_react13 = __toESM(require("react"));
1201
+ var import_react_native13 = require("react-native");
1147
1202
  var import_react_native_size_matters11 = require("react-native-size-matters");
1148
1203
  var GridItem = ({
1149
1204
  children,
@@ -1154,8 +1209,8 @@ var GridItem = ({
1154
1209
  }) => {
1155
1210
  const styles2 = import_react_native_size_matters11.ScaledSheet.create({
1156
1211
  gridItem: {
1157
- width: 100 / col + "%",
1158
- padding: spacing * 10 + "@ms",
1212
+ width: `${100 / col}%`,
1213
+ padding: (0, import_react_native_size_matters11.ms)(spacing * 10),
1159
1214
  alignItems
1160
1215
  }
1161
1216
  });
@@ -1169,7 +1224,7 @@ var Grid = ({
1169
1224
  const styles2 = import_react_native_size_matters11.ScaledSheet.create({
1170
1225
  grid: {
1171
1226
  flexWrap: "wrap",
1172
- margin: -spacing * 10 + "@ms",
1227
+ margin: `${-spacing * 10}@ms`,
1173
1228
  flexDirection: "row"
1174
1229
  }
1175
1230
  });
@@ -1403,7 +1458,7 @@ var TextField = ({
1403
1458
  }, [focused, value]);
1404
1459
  const styles2 = import_react_native_size_matters14.ScaledSheet.create({
1405
1460
  root: {
1406
- marginBottom: gutterBottom + "@vs",
1461
+ marginBottom: (0, import_react_native_size_matters14.ms)(gutterBottom),
1407
1462
  width: "100%",
1408
1463
  ...style
1409
1464
  },
@@ -1427,7 +1482,7 @@ var TextField = ({
1427
1482
  paddingLeft: variant === "text" ? 0 : (0, import_react_native_size_matters14.moderateScale)(15),
1428
1483
  paddingRight: (0, import_react_native_size_matters14.moderateScale)(10),
1429
1484
  paddingTop: "11@vs",
1430
- fontFamily: getConfig().DEFAULT_FONT_FAMILY || "System",
1485
+ fontFamily: getFontFamily(400),
1431
1486
  color: colors2.black[1],
1432
1487
  zIndex: 10
1433
1488
  // backgroundColor: "#284",
@@ -1439,7 +1494,7 @@ var TextField = ({
1439
1494
  paddingTop: "13@ms"
1440
1495
  },
1441
1496
  label: {
1442
- fontFamily: getConfig().DEFAULT_FONT_FAMILY || "System",
1497
+ fontFamily: getFontFamily(400),
1443
1498
  position: "absolute",
1444
1499
  left: variant === "text" ? 0 : (0, import_react_native_size_matters14.moderateScale)(15),
1445
1500
  fontSize: focused || value ? "10@s" : "13@s",
@@ -1581,6 +1636,7 @@ var TextField = ({
1581
1636
  var TextField2 = import_react16.default.forwardRef(
1582
1637
  ({
1583
1638
  label,
1639
+ labelProps,
1584
1640
  keyboardType,
1585
1641
  color = "primary",
1586
1642
  value,
@@ -1617,7 +1673,7 @@ var TextField2 = import_react16.default.forwardRef(
1617
1673
  };
1618
1674
  const styles2 = import_react_native_size_matters14.ScaledSheet.create({
1619
1675
  root: {
1620
- marginBottom: gutterBottom + "@vs",
1676
+ marginBottom: (0, import_react_native_size_matters14.ms)(gutterBottom),
1621
1677
  ...style
1622
1678
  },
1623
1679
  container: {
@@ -1690,7 +1746,16 @@ var TextField2 = import_react16.default.forwardRef(
1690
1746
  autoCapitalize: "none",
1691
1747
  textContentType: "password"
1692
1748
  } : {};
1693
- return /* @__PURE__ */ import_react16.default.createElement(import_react16.default.Fragment, null, /* @__PURE__ */ import_react16.default.createElement(import_react_native16.View, { style: styles2.root }, label && /* @__PURE__ */ import_react16.default.createElement(Typography_default, { variant: "body1", color: "textSecondary", gutterBottom: 7 }, label), /* @__PURE__ */ import_react16.default.createElement(
1749
+ return /* @__PURE__ */ import_react16.default.createElement(import_react16.default.Fragment, null, /* @__PURE__ */ import_react16.default.createElement(import_react_native16.View, { style: styles2.root }, label && /* @__PURE__ */ import_react16.default.createElement(
1750
+ Typography_default,
1751
+ {
1752
+ variant: "body1",
1753
+ color: "textSecondary",
1754
+ gutterBottom: 7,
1755
+ ...labelProps
1756
+ },
1757
+ label
1758
+ ), /* @__PURE__ */ import_react16.default.createElement(
1694
1759
  import_react_native16.TouchableOpacity,
1695
1760
  {
1696
1761
  onPress: () => setFocused(true),
@@ -1727,7 +1792,7 @@ var TextField2 = import_react16.default.forwardRef(
1727
1792
  selectTextOnFocus: !disabled,
1728
1793
  onSubmitEditing,
1729
1794
  multiline,
1730
- textAlignVertical: multiline ? "top" : "center",
1795
+ extAlignVertical: multiline ? "top" : "center",
1731
1796
  ...formProps,
1732
1797
  ...props,
1733
1798
  style: styles2.input
@@ -1845,7 +1910,8 @@ var Locator = ({
1845
1910
  shadowOpacity: 0.1,
1846
1911
  shadowRadius: float ? 15 : 0,
1847
1912
  shadowOffset: {
1848
- height: 10
1913
+ height: 10,
1914
+ width: 0
1849
1915
  },
1850
1916
  borderRadius: 10,
1851
1917
  marginBottom: 10,
@@ -2071,12 +2137,10 @@ var OTPInput = ({
2071
2137
  () => Array(length).fill(0).map((_) => import_react20.default.createRef()),
2072
2138
  [length]
2073
2139
  );
2074
- console.log("v", value);
2075
2140
  const onChangeHandler = (val, index) => {
2076
2141
  if (value.length >= length && val.length > 0)
2077
2142
  return;
2078
2143
  if (val.length > 1) {
2079
- console.log("reached", val);
2080
2144
  const digits = val.replace(/\D/g, "").slice(0, length);
2081
2145
  onChange(digits);
2082
2146
  if (digits.length === length) {