@kontextso/sdk-react-native 0.0.5-rc.6 → 0.0.5-rc.7

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
@@ -301,7 +301,7 @@ function useInitializeAds({
301
301
  }
302
302
  }
303
303
  ).catch((e) => {
304
- import_loglevel.default.error("[BRAIN] Error initializing ads", e);
304
+ import_loglevel.default.warn("[BRAIN] Error initializing ads", e);
305
305
  setError(e.message);
306
306
  });
307
307
  } else {
@@ -382,8 +382,7 @@ function usePreloadAds({
382
382
  setPreloadDone(true);
383
383
  import_loglevel2.default.log("[BRAIN] preload ads finished");
384
384
  } catch (e) {
385
- import_loglevel2.default.error("[BRAIN] Error preloading ads", e);
386
- setPreloadDone(true);
385
+ import_loglevel2.default.warn("[BRAIN] Error preloading ads", e);
387
386
  }
388
387
  }
389
388
  preload();
@@ -624,7 +623,11 @@ if (import_react_native.Platform.OS !== "web") {
624
623
  patchFetch = require("react-native-fetch-api").fetch;
625
624
  }
626
625
  ErrorUtils.setGlobalHandler((error, isFatal) => {
627
- import_loglevel3.default.error(error);
626
+ if (!isFatal) {
627
+ import_loglevel3.default.warn(error);
628
+ } else {
629
+ import_loglevel3.default.error(error);
630
+ }
628
631
  });
629
632
  function useStreamAds({
630
633
  userId,
@@ -729,7 +732,7 @@ function useStreamAds({
729
732
  );
730
733
  import_loglevel3.default.log(`[BRAIN] streaming ${code} ad done`);
731
734
  } catch (e) {
732
- import_loglevel3.default.error("[BRAIN] Error streaming ad", e);
735
+ import_loglevel3.default.warn("[BRAIN] Error streaming ad", e);
733
736
  setAds((oldAds) => [...oldAds, { isError: true, code }]);
734
737
  }
735
738
  };
@@ -746,22 +749,23 @@ function useStreamAds({
746
749
  }
747
750
 
748
751
  // src/context/AdsProvider.tsx
749
- var import_loglevel4 = __toESM(require("loglevel"));
752
+ var import_loglevel5 = __toESM(require("loglevel"));
750
753
 
751
754
  // src/components/ErrorBoundary.tsx
752
755
  var import_react4 = __toESM(require("react"));
756
+ var import_loglevel4 = __toESM(require("loglevel"));
753
757
  var captureErrorFn = (adServerUrl, error, componentStack, context) => {
754
758
  fetch(`${adServerUrl}/error`, {
755
759
  method: "POST",
756
760
  body: JSON.stringify({
757
- error: error.message,
761
+ error: error?.message,
758
762
  stack: componentStack,
759
763
  context
760
764
  })
761
765
  }).catch((e) => {
762
- console.error(e);
766
+ import_loglevel4.default.warn("Error reporting client error", e);
763
767
  }).finally(() => {
764
- console.error(error, componentStack);
768
+ import_loglevel4.default.warn(error, componentStack);
765
769
  });
766
770
  };
767
771
  var ErrorBoundary = class extends import_react4.default.Component {
@@ -779,7 +783,7 @@ var ErrorBoundary = class extends import_react4.default.Component {
779
783
  componentDidCatch(error, info) {
780
784
  const adServerUrl = this.props.adserverUrl;
781
785
  if (adServerUrl) {
782
- captureErrorFn(adServerUrl, error, info.componentStack, this.props.reqBodyParams);
786
+ captureErrorFn(adServerUrl, error, info?.componentStack, this.props.reqBodyParams);
783
787
  }
784
788
  }
785
789
  render() {
@@ -812,7 +816,7 @@ var AdsProviderWithoutBoundary = ({
812
816
  }) => {
813
817
  const [viewedAds, setViewedAds] = (0, import_react5.useState)([]);
814
818
  const adServerUrlOrDefault = adserverUrl || "https://server.megabrain.co";
815
- import_loglevel4.default.setLevel(logLevel || "ERROR");
819
+ import_loglevel5.default.setLevel(logLevel || "ERROR");
816
820
  const {
817
821
  ads: initAds,
818
822
  sessionId,
@@ -860,7 +864,7 @@ var AdsProviderWithoutBoundary = ({
860
864
  throw new Error("Test error");
861
865
  }
862
866
  const markAdAsViewed = (ad) => {
863
- import_loglevel4.default.debug("[Brain] Calling onAdView");
867
+ import_loglevel5.default.debug("[Brain] Calling onAdView");
864
868
  onAdView && onAdView({
865
869
  id: ad.id,
866
870
  code: ad.code,
@@ -872,7 +876,7 @@ var AdsProviderWithoutBoundary = ({
872
876
  setViewedAds((old) => [...old, ad.id]);
873
877
  };
874
878
  const onAdClickInternal = (ad) => {
875
- import_loglevel4.default.debug("[Brain] Calling onAdClick");
879
+ import_loglevel5.default.debug("[Brain] Calling onAdClick");
876
880
  onAdClick && onAdClick({
877
881
  id: ad.id,
878
882
  code: ad.code,
@@ -959,7 +963,7 @@ var AdsProvider = ({
959
963
 
960
964
  // src/hooks/useAdViewed.tsx
961
965
  var import_react7 = require("react");
962
- var import_loglevel5 = __toESM(require("loglevel"));
966
+ var import_loglevel6 = __toESM(require("loglevel"));
963
967
  function useAdViewed(ad) {
964
968
  const context = (0, import_react7.useContext)(AdsContext);
965
969
  const [stillMounted, setStillMounted] = (0, import_react6.useState)(false);
@@ -979,34 +983,34 @@ function useAdViewed(ad) {
979
983
  if (!response.ok) {
980
984
  throw new Error("Error sending view request");
981
985
  }
982
- import_loglevel5.default.log("[BRAIN] ad marked as viewed", ad.id, ad.code);
986
+ import_loglevel6.default.log("[BRAIN] ad marked as viewed", ad.id, ad.code);
983
987
  } catch (e) {
984
- import_loglevel5.default.error("[BRAIN] Error sending view request", e);
988
+ import_loglevel6.default.warn("[BRAIN] Error sending view request", e);
985
989
  }
986
990
  };
987
991
  (0, import_react6.useEffect)(() => {
988
992
  if (!ad || ad.isError || ad.isLoading || ad.isStreaming || ad.viewed || stillMounted) {
989
993
  return;
990
994
  }
991
- import_loglevel5.default.log("[BRAIN] setting timeout", ad.id, ad.code);
995
+ import_loglevel6.default.log("[BRAIN] setting timeout", ad.id, ad.code);
992
996
  setTimeout(() => {
993
- import_loglevel5.default.log("[BRAIN] setting setStillMounted", ad.id, ad.code);
997
+ import_loglevel6.default.log("[BRAIN] setting setStillMounted", ad.id, ad.code);
994
998
  setStillMounted(true);
995
999
  }, 1e3);
996
1000
  }, [ad]);
997
1001
  (0, import_react6.useEffect)(() => {
998
1002
  if (stillMounted) {
999
- import_loglevel5.default.log("[BRAIN] sending request");
1003
+ import_loglevel6.default.log("[BRAIN] sending request");
1000
1004
  sendRequest();
1001
1005
  }
1002
1006
  }, [stillMounted]);
1003
1007
  }
1004
1008
 
1005
1009
  // src/formats/InlineAd.tsx
1006
- var import_loglevel8 = __toESM(require("loglevel"));
1010
+ var import_loglevel9 = __toESM(require("loglevel"));
1007
1011
 
1008
1012
  // src/components/MarkdownText.tsx
1009
- var import_loglevel6 = __toESM(require("loglevel"));
1013
+ var import_loglevel7 = __toESM(require("loglevel"));
1010
1014
  var import_react8 = require("react");
1011
1015
  var import_react_native2 = require("react-native");
1012
1016
  var import_jsx_runtime2 = require("react/jsx-runtime");
@@ -1020,7 +1024,7 @@ function MarkdownText({
1020
1024
  const linkClickHandler = (href) => {
1021
1025
  onLinkClick();
1022
1026
  import_react_native2.Linking.openURL(href).catch(
1023
- (err) => import_loglevel6.default.error("Failed to open URL:", err)
1027
+ (err) => import_loglevel7.default.warn("Failed to open URL:", err)
1024
1028
  );
1025
1029
  return false;
1026
1030
  };
@@ -1047,7 +1051,7 @@ function MarkdownText({
1047
1051
 
1048
1052
  // src/components/VideoPlayer.tsx
1049
1053
  var import_expo_av = require("expo-av");
1050
- var import_loglevel7 = __toESM(require("loglevel"));
1054
+ var import_loglevel8 = __toESM(require("loglevel"));
1051
1055
  var import_react10 = require("react");
1052
1056
  var import_react_native4 = require("react-native");
1053
1057
 
@@ -1142,7 +1146,7 @@ var VideoPlayer = ({
1142
1146
  };
1143
1147
  const handleLinkClick = (url) => {
1144
1148
  if (url) {
1145
- import_react_native4.Linking.openURL(url).catch((err) => import_loglevel7.default.error("Failed to open URL:", err));
1149
+ import_react_native4.Linking.openURL(url).catch((err) => import_loglevel8.default.warn("Failed to open URL:", err));
1146
1150
  onLinkClick();
1147
1151
  }
1148
1152
  };
@@ -1244,7 +1248,7 @@ var InlineAd = ({ code, messageId, wrapper }) => {
1244
1248
  if (ad.isLoading || ad.content?.trim().toLowerCase().includes("none"))
1245
1249
  return null;
1246
1250
  const onProgress = (progress) => {
1247
- import_loglevel8.default.log(`Progress: ${progress}`);
1251
+ import_loglevel9.default.log(`Progress: ${progress}`);
1248
1252
  };
1249
1253
  const handleImageClick = (url) => {
1250
1254
  if (url) {
@@ -1253,7 +1257,7 @@ var InlineAd = ({ code, messageId, wrapper }) => {
1253
1257
  window.open(url, "_blank");
1254
1258
  } else {
1255
1259
  import_react_native5.Linking.openURL(url).catch(
1256
- (err) => import_loglevel8.default.error("Failed to open URL:", err)
1260
+ (err) => import_loglevel9.default.warn("Failed to open URL:", err)
1257
1261
  );
1258
1262
  }
1259
1263
  }
package/dist/index.mjs CHANGED
@@ -275,7 +275,7 @@ function useInitializeAds({
275
275
  }
276
276
  }
277
277
  ).catch((e) => {
278
- log.error("[BRAIN] Error initializing ads", e);
278
+ log.warn("[BRAIN] Error initializing ads", e);
279
279
  setError(e.message);
280
280
  });
281
281
  } else {
@@ -356,8 +356,7 @@ function usePreloadAds({
356
356
  setPreloadDone(true);
357
357
  log2.log("[BRAIN] preload ads finished");
358
358
  } catch (e) {
359
- log2.error("[BRAIN] Error preloading ads", e);
360
- setPreloadDone(true);
359
+ log2.warn("[BRAIN] Error preloading ads", e);
361
360
  }
362
361
  }
363
362
  preload();
@@ -598,7 +597,11 @@ if (Platform.OS !== "web") {
598
597
  patchFetch = __require("react-native-fetch-api").fetch;
599
598
  }
600
599
  ErrorUtils.setGlobalHandler((error, isFatal) => {
601
- log3.error(error);
600
+ if (!isFatal) {
601
+ log3.warn(error);
602
+ } else {
603
+ log3.error(error);
604
+ }
602
605
  });
603
606
  function useStreamAds({
604
607
  userId,
@@ -703,7 +706,7 @@ function useStreamAds({
703
706
  );
704
707
  log3.log(`[BRAIN] streaming ${code} ad done`);
705
708
  } catch (e) {
706
- log3.error("[BRAIN] Error streaming ad", e);
709
+ log3.warn("[BRAIN] Error streaming ad", e);
707
710
  setAds((oldAds) => [...oldAds, { isError: true, code }]);
708
711
  }
709
712
  };
@@ -720,22 +723,23 @@ function useStreamAds({
720
723
  }
721
724
 
722
725
  // src/context/AdsProvider.tsx
723
- import log4 from "loglevel";
726
+ import log5 from "loglevel";
724
727
 
725
728
  // src/components/ErrorBoundary.tsx
726
729
  import React from "react";
730
+ import log4 from "loglevel";
727
731
  var captureErrorFn = (adServerUrl, error, componentStack, context) => {
728
732
  fetch(`${adServerUrl}/error`, {
729
733
  method: "POST",
730
734
  body: JSON.stringify({
731
- error: error.message,
735
+ error: error?.message,
732
736
  stack: componentStack,
733
737
  context
734
738
  })
735
739
  }).catch((e) => {
736
- console.error(e);
740
+ log4.warn("Error reporting client error", e);
737
741
  }).finally(() => {
738
- console.error(error, componentStack);
742
+ log4.warn(error, componentStack);
739
743
  });
740
744
  };
741
745
  var ErrorBoundary = class extends React.Component {
@@ -753,7 +757,7 @@ var ErrorBoundary = class extends React.Component {
753
757
  componentDidCatch(error, info) {
754
758
  const adServerUrl = this.props.adserverUrl;
755
759
  if (adServerUrl) {
756
- captureErrorFn(adServerUrl, error, info.componentStack, this.props.reqBodyParams);
760
+ captureErrorFn(adServerUrl, error, info?.componentStack, this.props.reqBodyParams);
757
761
  }
758
762
  }
759
763
  render() {
@@ -786,7 +790,7 @@ var AdsProviderWithoutBoundary = ({
786
790
  }) => {
787
791
  const [viewedAds, setViewedAds] = useState4([]);
788
792
  const adServerUrlOrDefault = adserverUrl || "https://server.megabrain.co";
789
- log4.setLevel(logLevel || "ERROR");
793
+ log5.setLevel(logLevel || "ERROR");
790
794
  const {
791
795
  ads: initAds,
792
796
  sessionId,
@@ -834,7 +838,7 @@ var AdsProviderWithoutBoundary = ({
834
838
  throw new Error("Test error");
835
839
  }
836
840
  const markAdAsViewed = (ad) => {
837
- log4.debug("[Brain] Calling onAdView");
841
+ log5.debug("[Brain] Calling onAdView");
838
842
  onAdView && onAdView({
839
843
  id: ad.id,
840
844
  code: ad.code,
@@ -846,7 +850,7 @@ var AdsProviderWithoutBoundary = ({
846
850
  setViewedAds((old) => [...old, ad.id]);
847
851
  };
848
852
  const onAdClickInternal = (ad) => {
849
- log4.debug("[Brain] Calling onAdClick");
853
+ log5.debug("[Brain] Calling onAdClick");
850
854
  onAdClick && onAdClick({
851
855
  id: ad.id,
852
856
  code: ad.code,
@@ -933,7 +937,7 @@ var AdsProvider = ({
933
937
 
934
938
  // src/hooks/useAdViewed.tsx
935
939
  import { useContext } from "react";
936
- import log5 from "loglevel";
940
+ import log6 from "loglevel";
937
941
  function useAdViewed(ad) {
938
942
  const context = useContext(AdsContext);
939
943
  const [stillMounted, setStillMounted] = useState5(false);
@@ -953,34 +957,34 @@ function useAdViewed(ad) {
953
957
  if (!response.ok) {
954
958
  throw new Error("Error sending view request");
955
959
  }
956
- log5.log("[BRAIN] ad marked as viewed", ad.id, ad.code);
960
+ log6.log("[BRAIN] ad marked as viewed", ad.id, ad.code);
957
961
  } catch (e) {
958
- log5.error("[BRAIN] Error sending view request", e);
962
+ log6.warn("[BRAIN] Error sending view request", e);
959
963
  }
960
964
  };
961
965
  useEffect5(() => {
962
966
  if (!ad || ad.isError || ad.isLoading || ad.isStreaming || ad.viewed || stillMounted) {
963
967
  return;
964
968
  }
965
- log5.log("[BRAIN] setting timeout", ad.id, ad.code);
969
+ log6.log("[BRAIN] setting timeout", ad.id, ad.code);
966
970
  setTimeout(() => {
967
- log5.log("[BRAIN] setting setStillMounted", ad.id, ad.code);
971
+ log6.log("[BRAIN] setting setStillMounted", ad.id, ad.code);
968
972
  setStillMounted(true);
969
973
  }, 1e3);
970
974
  }, [ad]);
971
975
  useEffect5(() => {
972
976
  if (stillMounted) {
973
- log5.log("[BRAIN] sending request");
977
+ log6.log("[BRAIN] sending request");
974
978
  sendRequest();
975
979
  }
976
980
  }, [stillMounted]);
977
981
  }
978
982
 
979
983
  // src/formats/InlineAd.tsx
980
- import log8 from "loglevel";
984
+ import log9 from "loglevel";
981
985
 
982
986
  // src/components/MarkdownText.tsx
983
- import log6 from "loglevel";
987
+ import log7 from "loglevel";
984
988
  import { useContext as useContext2 } from "react";
985
989
  import {
986
990
  Linking,
@@ -997,7 +1001,7 @@ function MarkdownText({
997
1001
  const linkClickHandler = (href) => {
998
1002
  onLinkClick();
999
1003
  Linking.openURL(href).catch(
1000
- (err) => log6.error("Failed to open URL:", err)
1004
+ (err) => log7.warn("Failed to open URL:", err)
1001
1005
  );
1002
1006
  return false;
1003
1007
  };
@@ -1024,7 +1028,7 @@ function MarkdownText({
1024
1028
 
1025
1029
  // src/components/VideoPlayer.tsx
1026
1030
  import { ResizeMode, Video } from "expo-av";
1027
- import log7 from "loglevel";
1031
+ import log8 from "loglevel";
1028
1032
  import { useContext as useContext4, useEffect as useEffect7, useRef, useState as useState7 } from "react";
1029
1033
  import { Linking as Linking2, Text as Text2, TouchableOpacity, View as View2 } from "react-native";
1030
1034
 
@@ -1119,7 +1123,7 @@ var VideoPlayer = ({
1119
1123
  };
1120
1124
  const handleLinkClick = (url) => {
1121
1125
  if (url) {
1122
- Linking2.openURL(url).catch((err) => log7.error("Failed to open URL:", err));
1126
+ Linking2.openURL(url).catch((err) => log8.warn("Failed to open URL:", err));
1123
1127
  onLinkClick();
1124
1128
  }
1125
1129
  };
@@ -1221,7 +1225,7 @@ var InlineAd = ({ code, messageId, wrapper }) => {
1221
1225
  if (ad.isLoading || ad.content?.trim().toLowerCase().includes("none"))
1222
1226
  return null;
1223
1227
  const onProgress = (progress) => {
1224
- log8.log(`Progress: ${progress}`);
1228
+ log9.log(`Progress: ${progress}`);
1225
1229
  };
1226
1230
  const handleImageClick = (url) => {
1227
1231
  if (url) {
@@ -1230,7 +1234,7 @@ var InlineAd = ({ code, messageId, wrapper }) => {
1230
1234
  window.open(url, "_blank");
1231
1235
  } else {
1232
1236
  Linking3.openURL(url).catch(
1233
- (err) => log8.error("Failed to open URL:", err)
1237
+ (err) => log9.warn("Failed to open URL:", err)
1234
1238
  );
1235
1239
  }
1236
1240
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontextso/sdk-react-native",
3
- "version": "0.0.5-rc.6",
3
+ "version": "0.0.5-rc.7",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index.mjs",
6
6
  "types": "./dist/index.d.ts",