dhre-ui-kit 0.0.377 → 0.0.378

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.d.ts CHANGED
@@ -384,6 +384,7 @@ interface ToastProps {
384
384
  sucessIcon: React$1.ReactElement;
385
385
  errorIcon: React$1.ReactElement;
386
386
  warningIcon: React$1.ReactElement;
387
+ language?: string;
387
388
  }
388
389
  interface ToastRef {
389
390
  showToast: (message: string, duration?: number, isSuccess?: boolean, buttonText?: string | null, buttonAction?: (() => void) | null, height?: number, subText?: string | null, subTextPress?: (() => void) | null, warning?: boolean) => void;
@@ -483,6 +484,7 @@ interface TypoTextProps extends TextProps {
483
484
  variant: keyof typeof FONT_STYLES;
484
485
  text?: string;
485
486
  testID?: string;
487
+ translateToArabic?: boolean;
486
488
  }
487
489
  declare const CustomTypography: React$1.FC<TypoTextProps>;
488
490
 
package/lib/index.js CHANGED
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var reactRedux = require('react-redux');
7
7
  var reactNative = require('react-native');
8
+ var translate = require('google-translate-api-x');
8
9
  var Modal = require('react-native-modal');
9
10
  var Clipboard = require('@react-native-clipboard/clipboard');
10
11
  var LottieView = require('lottie-react-native');
@@ -41,6 +42,7 @@ function _interopNamespace(e) {
41
42
  }
42
43
 
43
44
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
45
+ var translate__default = /*#__PURE__*/_interopDefaultLegacy(translate);
44
46
  var Modal__default = /*#__PURE__*/_interopDefaultLegacy(Modal);
45
47
  var Clipboard__default = /*#__PURE__*/_interopDefaultLegacy(Clipboard);
46
48
  var LottieView__default = /*#__PURE__*/_interopDefaultLegacy(LottieView);
@@ -379,9 +381,27 @@ const CustomTypography = ({
379
381
  style,
380
382
  text,
381
383
  testID = "CUSTOM_TYPOGRAPHY",
384
+ translateToArabic = false,
382
385
  ...props
383
386
  }) => {
387
+ const [translatedText, setTranslatedText] = React.useState(text || "");
384
388
  const textStyle = FONT_STYLES[variant];
389
+ React.useEffect(() => {
390
+ const translateText = async () => {
391
+ if (!translateToArabic || !text || text.trim() === "") {
392
+ setTranslatedText(text || "");
393
+ return;
394
+ }
395
+ try {
396
+ const res = await translate__default["default"](text, { to: "ar" });
397
+ setTranslatedText(res.text);
398
+ } catch (error) {
399
+ console.error("Translation error:", error);
400
+ setTranslatedText(text);
401
+ }
402
+ };
403
+ translateText();
404
+ }, [text, translateToArabic]);
385
405
  return /* @__PURE__ */ React__default["default"].createElement(
386
406
  reactNative.Text,
387
407
  {
@@ -389,7 +409,7 @@ const CustomTypography = ({
389
409
  style: [textStyle, styles$B.container, style],
390
410
  ...props
391
411
  },
392
- text
412
+ translatedText
393
413
  );
394
414
  };
395
415
  const styles$B = reactNative.StyleSheet.create({
@@ -3742,7 +3762,7 @@ const styles$l = reactNative.StyleSheet.create({
3742
3762
  });
3743
3763
 
3744
3764
  const Toast = React__default["default"].forwardRef(
3745
- ({ sucessIcon, errorIcon, warningIcon }, ref) => {
3765
+ ({ sucessIcon, errorIcon, warningIcon, language }, ref) => {
3746
3766
  const [visible, setVisible] = React.useState(false);
3747
3767
  const [message, setMessage] = React.useState("");
3748
3768
  const [isSuccess, setIsSuccess] = React.useState(true);
@@ -3814,6 +3834,7 @@ const Toast = React__default["default"].forwardRef(
3814
3834
  {
3815
3835
  variant: "L2_REGULAR",
3816
3836
  text: message,
3837
+ translateToArabic: language === "ar",
3817
3838
  style: styles$l.messageText
3818
3839
  }
3819
3840
  ), btnText && /* @__PURE__ */ React__default["default"].createElement(