react-native-better-html 1.0.15 → 1.0.16

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.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  // src/index.ts
2
2
  import {
3
- useTheme as useTheme10,
3
+ useTheme as useTheme11,
4
4
  useLoader as useLoader2,
5
5
  useLoaderControls,
6
6
  countries,
@@ -35,7 +35,18 @@ var appConfig = {};
35
35
  var theme = {};
36
36
 
37
37
  // src/constants/icons.ts
38
- var icons = {};
38
+ var icons = {
39
+ magnifyingGlass: {
40
+ width: 512,
41
+ height: 512,
42
+ paths: [
43
+ {
44
+ d: "M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z",
45
+ type: "fill"
46
+ }
47
+ ]
48
+ }
49
+ };
39
50
 
40
51
  // src/constants/assets.ts
41
52
  var assets = {};
@@ -137,10 +148,10 @@ var checkBetterCoreContextValue = (value, functionsName) => {
137
148
  var pressStrength = () => {
138
149
  if (!checkBetterCoreContextValue(externalBetterCoreContextValue, "pressStrength")) return void 0;
139
150
  return {
140
- z05: externalBetterCoreContextValue.colorTheme === "dark" ? 0.85 : 0.95,
141
- z1: externalBetterCoreContextValue.colorTheme === "dark" ? 0.6 : 0.8,
142
- z2: externalBetterCoreContextValue.colorTheme === "dark" ? 0.5 : 0.7,
143
- z3: externalBetterCoreContextValue.colorTheme === "dark" ? 0.4 : 0.6
151
+ p05: externalBetterCoreContextValue.colorTheme === "dark" ? 0.85 : 0.95,
152
+ p1: externalBetterCoreContextValue.colorTheme === "dark" ? 0.6 : 0.8,
153
+ p2: externalBetterCoreContextValue.colorTheme === "dark" ? 0.5 : 0.7,
154
+ p3: externalBetterCoreContextValue.colorTheme === "dark" ? 0.4 : 0.6
144
155
  };
145
156
  };
146
157
 
@@ -654,7 +665,8 @@ var ViewComponent = function View({
654
665
  previousValue.shadowOffset = void 0;
655
666
  else previousValue[currentValue] = void 0;
656
667
  return previousValue;
657
- }, {})
668
+ }, {}),
669
+ width: props.width !== "100%" ? props.width : void 0
658
670
  }),
659
671
  [style]
660
672
  );
@@ -1066,7 +1078,7 @@ ButtonComponent.secondary = function Secondary(props) {
1066
1078
  borderWidth: 1,
1067
1079
  borderColor: theme2.colors.border,
1068
1080
  textColor: theme2.colors.textPrimary,
1069
- pressStrength: pressStrength().z05,
1081
+ pressStrength: pressStrength().p05,
1070
1082
  animateOpacity: props.disabled ? 0.4 : 1,
1071
1083
  ...props
1072
1084
  }
@@ -1262,19 +1274,58 @@ var Image2 = memo8(ImageComponent);
1262
1274
  Image2.profileImage = ImageComponent.profileImage;
1263
1275
  var Image_default = Image2;
1264
1276
 
1277
+ // src/components/Icon.tsx
1278
+ import { useEffect as useEffect4 } from "react";
1279
+ import { Platform as Platform4 } from "react-native";
1280
+ import { Path, Svg } from "react-native-svg";
1281
+ import { useBetterCoreContext as useBetterCoreContext3, useTheme as useTheme8 } from "react-better-core";
1282
+ import { SymbolView } from "expo-symbols";
1283
+ import { jsx as jsx9 } from "react/jsx-runtime";
1284
+ import { createElement } from "react";
1285
+ function Icon({ name, nameIOS, size = 16, color, ...props }) {
1286
+ const theme2 = useTheme8();
1287
+ const { icons: icons2 } = useBetterCoreContext3();
1288
+ const svgColor = color ?? theme2.colors.textPrimary;
1289
+ useEffect4(() => {
1290
+ if (!icons2[name.toString()])
1291
+ console.warn(
1292
+ `The icon \`${name}\` you are trying to use does not exist. Make sure to add it to the \`icons\` object in \`<BetterComponentsProvider>\` config value prop.`
1293
+ );
1294
+ }, [icons2, name]);
1295
+ return /* @__PURE__ */ jsx9(View_default, { width: size, height: size, pressType: "opacity", pressStrength: pressStrength().p2, ...props, children: Platform4.OS === "ios" && nameIOS ? /* @__PURE__ */ jsx9(SymbolView, { name: nameIOS, tintColor: svgColor, size }) : /* @__PURE__ */ jsx9(
1296
+ Svg,
1297
+ {
1298
+ width: size,
1299
+ height: size,
1300
+ viewBox: `0 0 ${icons2[name.toString()]?.width ?? 0} ${icons2[name.toString()]?.height ?? 0}`,
1301
+ fill: "none",
1302
+ children: icons2[name.toString()]?.paths.map(({ type, ...path }) => /* @__PURE__ */ createElement(
1303
+ Path,
1304
+ {
1305
+ ...path,
1306
+ fill: type === "fill" ? svgColor : void 0,
1307
+ stroke: type === "stroke" ? svgColor : void 0,
1308
+ key: path.d
1309
+ }
1310
+ ))
1311
+ }
1312
+ ) });
1313
+ }
1314
+ var Icon_default = Icon;
1315
+
1265
1316
  // src/components/InputField.tsx
1266
1317
  import {
1267
1318
  forwardRef,
1268
1319
  memo as memo9,
1269
1320
  useCallback as useCallback3,
1270
- useEffect as useEffect4,
1321
+ useEffect as useEffect5,
1271
1322
  useImperativeHandle,
1272
1323
  useMemo as useMemo8,
1273
1324
  useRef as useRef2,
1274
1325
  useState as useState2
1275
1326
  } from "react";
1276
1327
  import {
1277
- Platform as Platform4,
1328
+ Platform as Platform5,
1278
1329
  TextInput as TextInput2
1279
1330
  } from "react-native";
1280
1331
  import RNDateTimePicker, {
@@ -1283,11 +1334,11 @@ import RNDateTimePicker, {
1283
1334
  import {
1284
1335
  darkenColor,
1285
1336
  lightenColor,
1286
- useBetterCoreContext as useBetterCoreContext3,
1337
+ useBetterCoreContext as useBetterCoreContext4,
1287
1338
  useBooleanState as useBooleanState4,
1288
- useTheme as useTheme8
1339
+ useTheme as useTheme9
1289
1340
  } from "react-better-core";
1290
- import { Fragment as Fragment3, jsx as jsx9, jsxs as jsxs4 } from "react/jsx-runtime";
1341
+ import { Fragment as Fragment3, jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
1291
1342
  var InputFieldComponent = forwardRef(
1292
1343
  ({
1293
1344
  flex,
@@ -1322,6 +1373,10 @@ var InputFieldComponent = forwardRef(
1322
1373
  maxLength,
1323
1374
  multiline,
1324
1375
  numberOfLines = 2,
1376
+ leftIcon,
1377
+ leftIconIOS,
1378
+ rightIcon,
1379
+ rightIconIOS,
1325
1380
  paddingHorizontal,
1326
1381
  paddingVertical,
1327
1382
  onFocus,
@@ -1333,17 +1388,19 @@ var InputFieldComponent = forwardRef(
1333
1388
  onPressEnter,
1334
1389
  ...props
1335
1390
  }, ref) => {
1336
- const theme2 = useTheme8();
1337
- const { colorTheme } = useBetterCoreContext3();
1391
+ const theme2 = useTheme9();
1392
+ const { colorTheme } = useBetterCoreContext4();
1338
1393
  const textInputRef = useRef2(null);
1339
1394
  const [internalValue, setInternalValue] = useState2(value?.toString() || defaultValue || "");
1340
1395
  const [internalDateValue, setInternalDateValue] = useState2();
1341
1396
  const [isFocused, setIsFocused] = useBooleanState4();
1342
- const isIOSDateTime = Platform4.OS === "ios" && (type === "date" || type === "time");
1397
+ const isIOSDateTime = Platform5.OS === "ios" && (type === "date" || type === "time");
1398
+ const iconSize = 16;
1399
+ const iconSideSpace = theme2.styles.space;
1343
1400
  const borderWidth = 1;
1344
1401
  const readyPaddingHorizontal = paddingHorizontal ?? theme2.styles.space;
1345
1402
  const readyPaddingVertical = paddingVertical ? parseFloat(paddingVertical.toString()) : (theme2.styles.space + theme2.styles.gap) / 2;
1346
- const readyHeight = height ?? isIOSDateTime ? void 0 : borderWidth + readyPaddingVertical + lineHeight + readyPaddingVertical + borderWidth + (Platform4.OS === "android" ? 2 : 0);
1403
+ const readyHeight = height ?? isIOSDateTime ? void 0 : borderWidth + readyPaddingVertical + lineHeight + readyPaddingVertical + borderWidth + (Platform5.OS === "android" ? 2 : 0);
1347
1404
  const onChangeRNDateTimePicker = useCallback3(
1348
1405
  (event, data) => {
1349
1406
  setInternalDateValue(data);
@@ -1355,7 +1412,7 @@ var InputFieldComponent = forwardRef(
1355
1412
  (event) => {
1356
1413
  onPress?.(event);
1357
1414
  if (type === "date" || type === "time") {
1358
- if (Platform4.OS === "android") {
1415
+ if (Platform5.OS === "android") {
1359
1416
  DateTimePickerAndroid.open({
1360
1417
  value: internalDateValue ?? /* @__PURE__ */ new Date(),
1361
1418
  is24Hour: true,
@@ -1373,7 +1430,7 @@ var InputFieldComponent = forwardRef(
1373
1430
  },
1374
1431
  onChange: onChangeRNDateTimePicker
1375
1432
  });
1376
- } else if (Platform4.OS === "ios") {
1433
+ } else if (Platform5.OS === "ios") {
1377
1434
  }
1378
1435
  }
1379
1436
  },
@@ -1401,10 +1458,23 @@ var InputFieldComponent = forwardRef(
1401
1458
  fontWeight,
1402
1459
  lineHeight,
1403
1460
  color: theme2.colors.textPrimary,
1461
+ paddingLeft: leftIcon ? iconSideSpace + iconSize + iconSideSpace : void 0,
1462
+ paddingRight: rightIcon ? iconSideSpace + iconSize + iconSideSpace : void 0,
1404
1463
  paddingHorizontal: readyPaddingHorizontal,
1405
1464
  paddingVertical: readyPaddingVertical
1406
1465
  }),
1407
- [theme2.colors, fontSize, fontWeight, lineHeight, readyPaddingHorizontal, readyPaddingVertical]
1466
+ [
1467
+ theme2.colors,
1468
+ fontSize,
1469
+ fontWeight,
1470
+ lineHeight,
1471
+ readyPaddingHorizontal,
1472
+ readyPaddingVertical,
1473
+ iconSideSpace,
1474
+ iconSize,
1475
+ leftIcon,
1476
+ rightIcon
1477
+ ]
1408
1478
  );
1409
1479
  const rnDateTimePickerStyle = useMemo8(
1410
1480
  () => ({
@@ -1413,7 +1483,7 @@ var InputFieldComponent = forwardRef(
1413
1483
  }),
1414
1484
  [iOSDateTimeFullSize]
1415
1485
  );
1416
- useEffect4(() => {
1486
+ useEffect5(() => {
1417
1487
  if (value === void 0) return;
1418
1488
  setInternalValue(value.toString());
1419
1489
  try {
@@ -1421,7 +1491,7 @@ var InputFieldComponent = forwardRef(
1421
1491
  } catch (error) {
1422
1492
  }
1423
1493
  }, [value]);
1424
- useEffect4(() => {
1494
+ useEffect5(() => {
1425
1495
  if (type !== "date" && type !== "time") return;
1426
1496
  const date = internalDateValue?.toISOString().split("T")[0] ?? "";
1427
1497
  const hours = internalDateValue ? internalDateValue.getHours().toString() : "00";
@@ -1440,8 +1510,8 @@ var InputFieldComponent = forwardRef(
1440
1510
  const withPressInputField = !!onPress || type === "date" || type === "time";
1441
1511
  const prefixSuffixBackgroundColor = colorTheme === "light" ? darkenColor(theme2.colors.backgroundContent, 0.03) : lightenColor(theme2.colors.backgroundContent, 0.1);
1442
1512
  const labelComponent = label && /* @__PURE__ */ jsxs4(View_default, { isRow: true, alignItems: "center", gap: 2, children: [
1443
- /* @__PURE__ */ jsx9(Text_default, { fontSize: 14, color: isError ? theme2.colors.error : theme2.colors.textSecondary, children: label }),
1444
- required && /* @__PURE__ */ jsx9(Text_default, { color: theme2.colors.error, children: "*" })
1513
+ /* @__PURE__ */ jsx10(Text_default, { fontSize: 14, color: isError ? theme2.colors.error : theme2.colors.textSecondary, children: label }),
1514
+ required && /* @__PURE__ */ jsx10(Text_default, { color: theme2.colors.error, children: "*" })
1445
1515
  ] });
1446
1516
  return /* @__PURE__ */ jsxs4(
1447
1517
  Animate_default.View,
@@ -1454,7 +1524,7 @@ var InputFieldComponent = forwardRef(
1454
1524
  children: [
1455
1525
  isIOSDateTime && !iOSDateTimeFullSize ? void 0 : labelComponent,
1456
1526
  /* @__PURE__ */ jsxs4(View_default, { isRow: true, position: "relative", alignItems: "center", height: readyHeight, children: [
1457
- prefix && /* @__PURE__ */ jsx9(
1527
+ prefix && /* @__PURE__ */ jsx10(
1458
1528
  View_default,
1459
1529
  {
1460
1530
  isRow: true,
@@ -1469,12 +1539,12 @@ var InputFieldComponent = forwardRef(
1469
1539
  borderColor: theme2.colors.border,
1470
1540
  paddingHorizontal: readyPaddingHorizontal,
1471
1541
  onPress: onPressPrefix,
1472
- children: typeof prefix === "string" ? /* @__PURE__ */ jsx9(
1542
+ children: typeof prefix === "string" ? /* @__PURE__ */ jsx10(
1473
1543
  Text_default,
1474
1544
  {
1475
1545
  fontWeight: 700,
1476
1546
  lineHeight,
1477
- marginTop: Platform4.OS === "ios" && onPressPrefix ? readyPaddingVertical : void 0,
1547
+ marginTop: Platform5.OS === "ios" && onPressPrefix ? readyPaddingVertical : void 0,
1478
1548
  children: prefix
1479
1549
  }
1480
1550
  ) : prefix
@@ -1482,7 +1552,7 @@ var InputFieldComponent = forwardRef(
1482
1552
  ),
1483
1553
  isIOSDateTime ? /* @__PURE__ */ jsxs4(Fragment3, { children: [
1484
1554
  !iOSDateTimeFullSize ? labelComponent : void 0,
1485
- /* @__PURE__ */ jsx9(
1555
+ /* @__PURE__ */ jsx10(
1486
1556
  RNDateTimePicker,
1487
1557
  {
1488
1558
  value: internalDateValue ?? /* @__PURE__ */ new Date(),
@@ -1493,7 +1563,7 @@ var InputFieldComponent = forwardRef(
1493
1563
  onChange: onChangeRNDateTimePicker
1494
1564
  }
1495
1565
  )
1496
- ] }) : /* @__PURE__ */ jsx9(
1566
+ ] }) : /* @__PURE__ */ jsx10(
1497
1567
  View_default,
1498
1568
  {
1499
1569
  flex: 1,
@@ -1503,11 +1573,13 @@ var InputFieldComponent = forwardRef(
1503
1573
  borderTopRightRadius: suffix ? 0 : theme2.styles.borderRadius,
1504
1574
  borderBottomRightRadius: suffix ? 0 : theme2.styles.borderRadius,
1505
1575
  pressStrength: 1,
1506
- onPress: Platform4.OS === "android" ? editable === false || withPressInputField ? onPressInputField : void 0 : void 0,
1507
- children: /* @__PURE__ */ jsx9(
1576
+ onPress: Platform5.OS === "android" ? editable === false || withPressInputField ? onPressInputField : void 0 : void 0,
1577
+ children: /* @__PURE__ */ jsxs4(
1508
1578
  Animate_default.View,
1509
1579
  {
1580
+ position: "relative",
1510
1581
  flex: 1,
1582
+ justifyContent: "center",
1511
1583
  backgroundColor: theme2.colors.backgroundContent,
1512
1584
  borderTopLeftRadius: prefix ? 0 : theme2.styles.borderRadius,
1513
1585
  borderBottomLeftRadius: prefix ? 0 : theme2.styles.borderRadius,
@@ -1517,44 +1589,68 @@ var InputFieldComponent = forwardRef(
1517
1589
  initialBorderColor: theme2.colors.border,
1518
1590
  animateBorderColor: isFocused ? theme2.colors.primary : isError ? theme2.colors.error : theme2.colors.border,
1519
1591
  overflow: "hidden",
1520
- children: /* @__PURE__ */ jsx9(
1521
- TextInput2,
1522
- {
1523
- style: textInputStyle,
1524
- value: internalValue,
1525
- defaultValue,
1526
- autoCapitalize,
1527
- autoComplete,
1528
- autoCorrect,
1529
- autoFocus,
1530
- placeholder: placeholder ?? label,
1531
- placeholderTextColor: theme2.colors.textSecondary + "80",
1532
- enterKeyHint: returnKeyLabel,
1533
- returnKeyType,
1534
- onSubmitEditing: onPressEnter,
1535
- readOnly: !editable || disabled || type === "date" || type === "time",
1536
- textAlign,
1537
- editable: !disabled,
1538
- keyboardAppearance,
1539
- keyboardType,
1540
- cursorColor: theme2.colors.primary,
1541
- selectionColor: theme2.colors.primary,
1542
- secureTextEntry,
1543
- onFocus: onFocusElement,
1544
- onBlur: onBlurElement,
1545
- onChangeText,
1546
- maxLength,
1547
- multiline,
1548
- numberOfLines,
1549
- onPress: withPressInputField ? onPressInputField : void 0,
1550
- ref: textInputRef
1551
- }
1552
- )
1592
+ children: [
1593
+ leftIcon && /* @__PURE__ */ jsx10(
1594
+ Icon_default,
1595
+ {
1596
+ position: "absolute",
1597
+ left: iconSideSpace,
1598
+ name: leftIcon,
1599
+ nameIOS: leftIconIOS,
1600
+ size: iconSize,
1601
+ pointerEvents: "box-none"
1602
+ }
1603
+ ),
1604
+ /* @__PURE__ */ jsx10(
1605
+ TextInput2,
1606
+ {
1607
+ style: textInputStyle,
1608
+ value: internalValue,
1609
+ defaultValue,
1610
+ autoCapitalize,
1611
+ autoComplete,
1612
+ autoCorrect,
1613
+ autoFocus,
1614
+ placeholder: placeholder ?? label,
1615
+ placeholderTextColor: theme2.colors.textSecondary + "80",
1616
+ enterKeyHint: returnKeyLabel,
1617
+ returnKeyType,
1618
+ onSubmitEditing: onPressEnter,
1619
+ readOnly: !editable || disabled || type === "date" || type === "time",
1620
+ textAlign,
1621
+ editable: !disabled,
1622
+ keyboardAppearance,
1623
+ keyboardType,
1624
+ cursorColor: theme2.colors.primary,
1625
+ selectionColor: theme2.colors.primary,
1626
+ secureTextEntry,
1627
+ onFocus: onFocusElement,
1628
+ onBlur: onBlurElement,
1629
+ onChangeText,
1630
+ maxLength,
1631
+ multiline,
1632
+ numberOfLines,
1633
+ onPress: withPressInputField ? onPressInputField : void 0,
1634
+ ref: textInputRef
1635
+ }
1636
+ ),
1637
+ rightIcon && /* @__PURE__ */ jsx10(
1638
+ Icon_default,
1639
+ {
1640
+ position: "absolute",
1641
+ right: iconSideSpace,
1642
+ name: rightIcon,
1643
+ nameIOS: rightIconIOS,
1644
+ size: iconSize,
1645
+ pointerEvents: "box-none"
1646
+ }
1647
+ )
1648
+ ]
1553
1649
  }
1554
1650
  )
1555
1651
  }
1556
1652
  ),
1557
- suffix && /* @__PURE__ */ jsx9(
1653
+ suffix && /* @__PURE__ */ jsx10(
1558
1654
  View_default,
1559
1655
  {
1560
1656
  isRow: true,
@@ -1568,19 +1664,19 @@ var InputFieldComponent = forwardRef(
1568
1664
  borderColor: theme2.colors.border,
1569
1665
  paddingHorizontal: readyPaddingHorizontal,
1570
1666
  onPress: onPressSuffix,
1571
- children: typeof suffix === "string" ? /* @__PURE__ */ jsx9(
1667
+ children: typeof suffix === "string" ? /* @__PURE__ */ jsx10(
1572
1668
  Text_default,
1573
1669
  {
1574
1670
  fontWeight: 700,
1575
1671
  lineHeight,
1576
- marginTop: Platform4.OS === "ios" && onPressSuffix ? readyPaddingVertical : void 0,
1672
+ marginTop: Platform5.OS === "ios" && onPressSuffix ? readyPaddingVertical : void 0,
1577
1673
  children: suffix
1578
1674
  }
1579
1675
  ) : suffix
1580
1676
  }
1581
1677
  )
1582
1678
  ] }),
1583
- infoMessage && /* @__PURE__ */ jsx9(
1679
+ infoMessage && /* @__PURE__ */ jsx10(
1584
1680
  Animate_default.Text,
1585
1681
  {
1586
1682
  fontSize: 14,
@@ -1592,7 +1688,7 @@ var InputFieldComponent = forwardRef(
1592
1688
  children: infoMessage
1593
1689
  }
1594
1690
  ),
1595
- errorMessage && /* @__PURE__ */ jsx9(
1691
+ errorMessage && /* @__PURE__ */ jsx10(
1596
1692
  Animate_default.Text,
1597
1693
  {
1598
1694
  fontSize: 14,
@@ -1610,7 +1706,7 @@ var InputFieldComponent = forwardRef(
1610
1706
  }
1611
1707
  );
1612
1708
  InputFieldComponent.email = forwardRef(function Email(props, ref) {
1613
- return /* @__PURE__ */ jsx9(
1709
+ return /* @__PURE__ */ jsx10(
1614
1710
  InputFieldComponent,
1615
1711
  {
1616
1712
  placeholder: "your@email.here",
@@ -1624,7 +1720,7 @@ InputFieldComponent.email = forwardRef(function Email(props, ref) {
1624
1720
  );
1625
1721
  });
1626
1722
  InputFieldComponent.password = forwardRef(function Password(props, ref) {
1627
- return /* @__PURE__ */ jsx9(
1723
+ return /* @__PURE__ */ jsx10(
1628
1724
  InputFieldComponent,
1629
1725
  {
1630
1726
  secureTextEntry: true,
@@ -1637,9 +1733,12 @@ InputFieldComponent.password = forwardRef(function Password(props, ref) {
1637
1733
  }
1638
1734
  );
1639
1735
  });
1736
+ InputFieldComponent.search = forwardRef(function Search(props, ref) {
1737
+ return /* @__PURE__ */ jsx10(InputFieldComponent, { placeholder: "Search...", leftIcon: "magnifyingGlass", ...props, ref });
1738
+ });
1640
1739
  InputFieldComponent.code = forwardRef(function Password2({ isSmall, ...props }, ref) {
1641
- const theme2 = useTheme8();
1642
- return /* @__PURE__ */ jsx9(
1740
+ const theme2 = useTheme9();
1741
+ return /* @__PURE__ */ jsx10(
1643
1742
  InputFieldComponent,
1644
1743
  {
1645
1744
  flex: 1,
@@ -1657,21 +1756,22 @@ InputFieldComponent.code = forwardRef(function Password2({ isSmall, ...props },
1657
1756
  var InputField = memo9(InputFieldComponent);
1658
1757
  InputField.email = InputFieldComponent.email;
1659
1758
  InputField.password = InputFieldComponent.password;
1759
+ InputField.search = InputFieldComponent.search;
1660
1760
  InputField.code = InputFieldComponent.code;
1661
1761
  var InputField_default = InputField;
1662
1762
 
1663
1763
  // src/components/StatusBar.tsx
1664
1764
  import { memo as memo10 } from "react";
1665
- import { useTheme as useTheme9 } from "react-better-core";
1666
- import { StatusBar as NativeStatusBar, Platform as Platform5 } from "react-native";
1667
- import { jsx as jsx10 } from "react/jsx-runtime";
1765
+ import { useTheme as useTheme10 } from "react-better-core";
1766
+ import { StatusBar as NativeStatusBar, Platform as Platform6 } from "react-native";
1767
+ import { jsx as jsx11 } from "react/jsx-runtime";
1668
1768
  function StatusBar({ darkStatusBar, hidden, barStyle, androidBarStyle, iOSBarStyle }) {
1669
- const theme2 = useTheme9();
1670
- return /* @__PURE__ */ jsx10(
1769
+ const theme2 = useTheme10();
1770
+ return /* @__PURE__ */ jsx11(
1671
1771
  NativeStatusBar,
1672
1772
  {
1673
1773
  backgroundColor: darkStatusBar ? theme2.colors.backgroundSecondary : void 0,
1674
- barStyle: barStyle ?? (Platform5.OS === "android" ? androidBarStyle : iOSBarStyle),
1774
+ barStyle: barStyle ?? (Platform6.OS === "android" ? androidBarStyle : iOSBarStyle),
1675
1775
  hidden
1676
1776
  }
1677
1777
  );
@@ -1694,6 +1794,7 @@ export {
1694
1794
  Animate_default as Animate,
1695
1795
  BetterComponentsProvider_default as BetterComponentsProvider,
1696
1796
  Button_default as Button,
1797
+ Icon_default as Icon,
1697
1798
  Image_default as Image,
1698
1799
  InputField_default as InputField,
1699
1800
  Loader_default as Loader,
@@ -1727,6 +1828,6 @@ export {
1727
1828
  useKeyboard,
1728
1829
  useLoader2 as useLoader,
1729
1830
  useLoaderControls,
1730
- useTheme10 as useTheme
1831
+ useTheme11 as useTheme
1731
1832
  };
1732
1833
  //# sourceMappingURL=index.mjs.map