We are using a custom CMP SDK (OneTrust) to ask user permission to track his data for target advertising.
When the user denies this permission, we need to make user that Google AdManager SDK actually requests only non-personalized-advs.
To do so, we need to setup a parameter for the request that is called npa. This parameters tells the AdManager network to request only non-personalized-advs.
Currently this library doesn't allow us to do so.
We've patched the library meanwhile that we wait for our PR to be merged.
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/AdaptiveBannerAdView.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/AdaptiveBannerAdView.java
index 3929753..8ebbffa 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/AdaptiveBannerAdView.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/AdaptiveBannerAdView.java
@@ -48,6 +48,7 @@ class AdaptiveBannerAdView extends ReactViewGroup implements AppEventListener, L
String publisherProvidedID;
Location location;
String correlator;
+ Boolean servePersonalizedAds = true;
int top;
int left;
@@ -207,6 +208,10 @@ class AdaptiveBannerAdView extends ReactViewGroup implements AppEventListener, L
Bundle bundle = new Bundle();
bundle.putString("correlator", correlator);
+ if (!servePersonalizedAds) {
+ bundle.putInt("npa", 1);
+ }
+
adRequestBuilder.addNetworkExtrasBundle(AdMobAdapter.class, bundle);
// Targeting
@@ -308,6 +313,10 @@ class AdaptiveBannerAdView extends ReactViewGroup implements AppEventListener, L
this.correlator = correlator;
}
+ public void setServePersonalizedAds(Boolean servePersonalizedAds) {
+ this.servePersonalizedAds = servePersonalizedAds;
+ }
+
@Override
public void onAppEvent(String name, String info) {
WritableMap event = Arguments.createMap();
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/BannerAdView.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/BannerAdView.java
index 348a7b6..4467dc9 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/BannerAdView.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/BannerAdView.java
@@ -50,6 +50,8 @@ class BannerAdView extends ReactViewGroup implements AppEventListener, Lifecycle
Location location;
String correlator;
+ Boolean servePersonalizedAds = true;
+
int top;
int left;
int width;
@@ -283,6 +285,10 @@ class BannerAdView extends ReactViewGroup implements AppEventListener, Lifecycle
Bundle bundle = new Bundle();
bundle.putString("correlator", correlator);
+ if (!servePersonalizedAds) {
+ bundle.putInt("npa", 1);
+ }
+
adRequestBuilder.addNetworkExtrasBundle(AdMobAdapter.class, bundle);
// Targeting
@@ -447,6 +453,14 @@ class BannerAdView extends ReactViewGroup implements AppEventListener, Lifecycle
}
}
+ public void setServePersonalizedAds(Boolean servePersonalizedAds) {
+ try {
+ this.servePersonalizedAds = servePersonalizedAds;
+ } catch (Exception e) {
+ sendErrorEvent("Error found at ad manager when setServePersonalizedAds(): " + e.getMessage() + "!");
+ }
+ }
+
@Override
public void onAppEvent(String name, String info) {
try {
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/NativeAdViewContainer.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/NativeAdViewContainer.java
index fc99289..f5bdd3f 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/NativeAdViewContainer.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/NativeAdViewContainer.java
@@ -76,6 +76,7 @@ public class NativeAdViewContainer extends ReactViewGroup implements AppEventLis
String publisherProvidedID;
Location location;
String correlator;
+ Boolean servePersonalizedAds = true;
List<String> customClickTemplateIds;
/**
@@ -267,6 +268,10 @@ public class NativeAdViewContainer extends ReactViewGroup implements AppEventLis
Bundle bundle = new Bundle();
bundle.putString("correlator", correlator);
+ if (!servePersonalizedAds) {
+ bundle.putInt("npa", 1);
+ }
+
adRequestBuilder.addNetworkExtrasBundle(AdMobAdapter.class, bundle);
Bundle fbExtras = new FacebookExtras()
@@ -639,6 +644,10 @@ public class NativeAdViewContainer extends ReactViewGroup implements AppEventLis
this.correlator = correlator;
}
+ public void setServePersonalizedAds(Boolean servePersonalizedAds) {
+ this.servePersonalizedAds = servePersonalizedAds;
+ }
+
public void setCustomClickTemplateIds(String[] customClickTemplateIds) {
this.customClickTemplateIds = Arrays.asList(customClickTemplateIds);
}
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerAdaptiveBannerViewManager.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerAdaptiveBannerViewManager.java
index 3bbf879..2750c06 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerAdaptiveBannerViewManager.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerAdaptiveBannerViewManager.java
@@ -32,6 +32,7 @@ public class RNAdManagerAdaptiveBannerViewManager extends ViewGroupManager<Adapt
public static final String PROP_TEST_DEVICES = "testDevices";
public static final String PROP_TARGETING = "targeting";
public static final String PROP_CORRELATOR = "correlator";
+ public static final String PROP_SERVE_PERSONALIZED_ADS = "servePersonalizedAds";
public static final String EVENT_SIZE_CHANGE = "onSizeChange";
public static final String EVENT_AD_LOADED = "onAdLoaded";
@@ -178,6 +179,11 @@ public class RNAdManagerAdaptiveBannerViewManager extends ViewGroupManager<Adapt
view.setCorrelator(correlator);
}
+ @ReactProp(name = PROP_SERVE_PERSONALIZED_ADS)
+ public void setServePersonalizedAds(final AdaptiveBannerAdView view, final Boolean servePersonalizedAds) {
+ view.setServePersonalizedAds(servePersonalizedAds);
+ }
+
@Nullable
@Override
public Map<String, Integer> getCommandsMap() {
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerBannerViewManager.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerBannerViewManager.java
index ebe4d31..7722a93 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerBannerViewManager.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerBannerViewManager.java
@@ -34,6 +34,7 @@ public class RNAdManagerBannerViewManager extends ViewGroupManager<BannerAdView>
public static final String PROP_TEST_DEVICES = "testDevices";
public static final String PROP_TARGETING = "targeting";
public static final String PROP_CORRELATOR = "correlator";
+ public static final String PROP_SERVE_PERSONALIZED_ADS = "servePersonalizedAds";
public static final String EVENT_SIZE_CHANGE = "onSizeChange";
public static final String EVENT_AD_LOADED = "onAdLoaded";
@@ -190,6 +191,11 @@ public class RNAdManagerBannerViewManager extends ViewGroupManager<BannerAdView>
view.setCorrelator(correlator);
}
+ @ReactProp(name = PROP_SERVE_PERSONALIZED_ADS)
+ public void setServePersonalizedAds(final BannerAdView view, final Boolean servePersonalizedAds) {
+ view.setServePersonalizedAds(servePersonalizedAds);
+ }
+
@Nullable
@Override
public Map<String, Integer> getCommandsMap() {
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerInterstitial.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerInterstitial.java
index 5cbf131..ee3553b 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerInterstitial.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerInterstitial.java
@@ -2,6 +2,7 @@ package com.matejdr.admanager;
import android.app.Activity;
import android.location.Location;
+import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
@@ -19,6 +20,7 @@ import com.facebook.react.bridge.ReadableMapKeySetIterator;
import com.facebook.react.bridge.ReadableNativeArray;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.modules.core.DeviceEventManagerModule;
+import com.google.ads.mediation.admob.AdMobAdapter;
import com.google.android.gms.ads.AdError;
import com.google.android.gms.ads.FullScreenContentCallback;
import com.google.android.gms.ads.LoadAdError;
@@ -60,6 +62,7 @@ public class RNAdManagerInterstitial extends ReactContextBaseJavaModule {
ReactApplicationContext reactContext;
private Promise mRequestAdPromise;
+ private Boolean servePersonalizedAds = true;
public RNAdManagerInterstitial(ReactApplicationContext reactContext) {
super(reactContext);
@@ -142,6 +145,11 @@ public class RNAdManagerInterstitial extends ReactContextBaseJavaModule {
}
}
+ @ReactMethod
+ public void setServePersonalizedAds(Boolean servePersonalizedAds) {
+ this.servePersonalizedAds = servePersonalizedAds;
+ }
+
private AdManagerAdRequest buildAdRequest() {
AdManagerAdRequest.Builder adRequestBuilder = new AdManagerAdRequest.Builder();
@@ -203,6 +211,13 @@ public class RNAdManagerInterstitial extends ReactContextBaseJavaModule {
// adRequestBuilder.setLocation(location);
//}
+ Bundle bundle = new Bundle();
+ if (!servePersonalizedAds) {
+ bundle.putInt("npa", 1);
+ }
+
+ adRequestBuilder.addNetworkExtrasBundle(AdMobAdapter.class, bundle);
+
adRequest = adRequestBuilder.build();
this.adRequest = adRequest;
diff --git a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerNativeViewManager.java b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerNativeViewManager.java
index 334d36c..ea91528 100644
--- a/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerNativeViewManager.java
+++ b/node_modules/react-native-ad-manager/android/src/main/java/com/matejdr/admanager/RNAdManagerNativeViewManager.java
@@ -36,6 +36,8 @@ public class RNAdManagerNativeViewManager extends ViewGroupManager<NativeAdViewC
public static final String PROP_VALID_AD_TYPES = "validAdTypes";
public static final String PROP_TARGETING = "targeting";
public static final String PROP_CORRELATOR = "correlator";
+ public static final String PROP_SERVE_PERSONALIZED_ADS = "servePersonalizedAds";
+
public static final String EVENT_AD_LOADED = "onAdLoaded";
public static final String EVENT_SIZE_CHANGE = "onSizeChange";
@@ -222,6 +224,11 @@ public class RNAdManagerNativeViewManager extends ViewGroupManager<NativeAdViewC
view.setCustomClickTemplateIds(customTemplateClickIdsStringArray);
}
+ @ReactProp(name = PROP_SERVE_PERSONALIZED_ADS)
+ public void setServePersonalizedAds(final NativeAdViewContainer view, final Boolean servePersonalizedAds) {
+ view.setServePersonalizedAds(servePersonalizedAds);
+ }
+
@Override
public void addView(NativeAdViewContainer parent, View child, int index) {
parent.addView(child, index);
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManageNativeManager.m b/node_modules/react-native-ad-manager/ios/RNAdManageNativeManager.m
index b8ec4dd..2eb6acb 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManageNativeManager.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManageNativeManager.m
@@ -180,6 +180,7 @@ - (UIView *)view
RCT_EXPORT_VIEW_PROPERTY(validAdSizes, NSArray)
RCT_EXPORT_VIEW_PROPERTY(targeting, NSDictionary)
RCT_EXPORT_VIEW_PROPERTY(correlator, NSString)
+RCT_EXPORT_VIEW_PROPERTY(servePersonalizedAds, BOOL)
RCT_EXPORT_VIEW_PROPERTY(onSizeChange, RCTBubblingEventBlock)
RCT_EXPORT_VIEW_PROPERTY(onAppEvent, RCTBubblingEventBlock)
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.h b/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.h
index dfcfd91..3fd6201 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.h
+++ b/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.h
@@ -33,6 +33,7 @@
@property (nonatomic, copy) NSArray *validAdSizes;
@property (nonatomic, copy) NSDictionary *targeting;
@property (nonatomic, copy) NSString *correlator;
+@property (nonatomic) BOOL servePersonalizedAds;
@property (nonatomic, copy) RCTBubblingEventBlock onSizeChange;
@property (nonatomic, copy) RCTBubblingEventBlock onAppEvent;
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.m b/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.m
index bdcd22c..0905c7a 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManageNativeView.m
@@ -143,9 +143,16 @@ - (void)reloadAd {
if (_correlator == nil) {
_correlator = getCorrelator(_adUnitID);
}
- extras.additionalParameters = [[NSDictionary alloc] initWithObjectsAndKeys:
- _correlator, @"correlator",
- nil];
+
+ NSMutableDictionary *additionalParams = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+ _correlator, @"correlator",
+ nil];
+ if (_servePersonalizedAds == NO) {
+ [additionalParams setObject:[NSNumber numberWithInt:1] forKey:@"npa"];
+ }
+
+ // Set the dictionary to extras.additionalParameters
+ extras.additionalParameters = [NSDictionary dictionaryWithDictionary:additionalParams];
[request registerAdNetworkExtras:extras];
@@ -237,6 +244,12 @@ - (void)setCorrelator:(NSString *)correlator
_correlator = correlator;
}
+- (void)setServePersonalizedAds:(BOOL)servePersonalizedAds
+{
+ _servePersonalizedAds = servePersonalizedAds;
+}
+
+
#pragma mark GADAdLoaderDelegate implementation
/// Tells the delegate an ad request failed.UnifiedNativeAdView
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.h b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.h
index feb6f25..ee93f65 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.h
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.h
@@ -9,6 +9,7 @@
@property (nonatomic, copy) NSNumber *maxHeight;
@property (nonatomic, strong) NSString *adUnitID;
@property (nonatomic, copy) NSString *correlator;
+@property (nonatomic) BOOL servePersonalizedAds;
@property (nonatomic, copy) RCTBubblingEventBlock onSizeChange;
@property (nonatomic, copy) RCTBubblingEventBlock onAppEvent;
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.m b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.m
index f919e41..df30fb7 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerView.m
@@ -53,6 +53,12 @@ - (void)setCorrelator:(NSString *)correlator
_correlator = correlator;
}
+- (void)setServePersonalizedAds:(BOOL)servePersonalizedAds
+{
+ _servePersonalizedAds = servePersonalizedAds;
+}
+
+
// Initialise BannerAdView as soon as all the props are set
- (void)createViewIfCan
{
@@ -110,9 +116,17 @@ - (void)createViewIfCan
if (_correlator == nil) {
_correlator = getCorrelator(_adUnitID);
}
- extras.additionalParameters = [[NSDictionary alloc] initWithObjectsAndKeys:
- _correlator, @"correlator",
- nil];
+
+ NSMutableDictionary *additionalParams = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+ _correlator, @"correlator",
+ nil];
+ if (_servePersonalizedAds == NO) {
+ [additionalParams setObject:[NSNumber numberWithInt:1] forKey:@"npa"];
+ }
+
+ // Set the dictionary to extras.additionalParameters
+ extras.additionalParameters = [NSDictionary dictionaryWithDictionary:additionalParams];
+
[request registerAdNetworkExtras:extras];
if (_targeting != nil) {
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerViewManager.m b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerViewManager.m
index 0118f4e..a276856 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerViewManager.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerAdaptiveBannerViewManager.m
@@ -40,6 +40,7 @@ - (UIView *)view
RCT_EXPORT_VIEW_PROPERTY(correlator, NSString)
RCT_EXPORT_VIEW_PROPERTY(testDevices, NSArray)
RCT_EXPORT_VIEW_PROPERTY(targeting, NSDictionary)
+RCT_EXPORT_VIEW_PROPERTY(servePersonalizedAds, BOOL)
RCT_EXPORT_VIEW_PROPERTY(onSizeChange, RCTBubblingEventBlock)
RCT_EXPORT_VIEW_PROPERTY(onAppEvent, RCTBubblingEventBlock)
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.h b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.h
index e2ec2cb..d86d1f3 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.h
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.h
@@ -9,6 +9,7 @@
@property (nonatomic, copy) NSString *adSize;
@property (nonatomic, strong) NSString *adUnitID;
@property (nonatomic, copy) NSString *correlator;
+@property (nonatomic) BOOL servePersonalizedAds;
@property (nonatomic, copy) RCTBubblingEventBlock onSizeChange;
@property (nonatomic, copy) RCTBubblingEventBlock onAppEvent;
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.m b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.m
index a92d69a..38fa5b6 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerView.m
@@ -64,6 +64,11 @@ - (void)setCorrelator:(NSString *)correlator
_correlator = correlator;
}
+- (void)setServePersonalizedAds:(BOOL)servePersonalizedAds
+{
+ _servePersonalizedAds = servePersonalizedAds;
+}
+
// Initialise BannerAdView as soon as all the props are set
- (void)createViewIfCan
{
@@ -97,9 +102,17 @@ - (void)createViewIfCan
if (_correlator == nil) {
_correlator = getCorrelator(_adUnitID);
}
- extras.additionalParameters = [[NSDictionary alloc] initWithObjectsAndKeys:
- _correlator, @"correlator",
- nil];
+
+ NSMutableDictionary *additionalParams = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+ _correlator, @"correlator",
+ nil];
+ if (_servePersonalizedAds == NO) {
+ [additionalParams setObject:[NSNumber numberWithInt:1] forKey:@"npa"];
+ }
+
+ // Set the dictionary to extras.additionalParameters
+ extras.additionalParameters = [NSDictionary dictionaryWithDictionary:additionalParams];
+
[request registerAdNetworkExtras:extras];
if (_targeting != nil) {
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerViewManager.m b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerViewManager.m
index 0e7c50d..7a698ca 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerBannerViewManager.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerBannerViewManager.m
@@ -45,6 +45,7 @@ - (UIView *)view
RCT_EXPORT_VIEW_PROPERTY(validAdSizes, NSArray)
RCT_EXPORT_VIEW_PROPERTY(testDevices, NSArray)
RCT_EXPORT_VIEW_PROPERTY(targeting, NSDictionary)
+RCT_EXPORT_VIEW_PROPERTY(servePersonalizedAds, BOOL)
RCT_EXPORT_VIEW_PROPERTY(onSizeChange, RCTBubblingEventBlock)
RCT_EXPORT_VIEW_PROPERTY(onAppEvent, RCTBubblingEventBlock)
diff --git a/node_modules/react-native-ad-manager/ios/RNAdManagerInterstitial.m b/node_modules/react-native-ad-manager/ios/RNAdManagerInterstitial.m
index ea69e41..d8033db 100644
--- a/node_modules/react-native-ad-manager/ios/RNAdManagerInterstitial.m
+++ b/node_modules/react-native-ad-manager/ios/RNAdManagerInterstitial.m
@@ -15,6 +15,7 @@ @implementation RNAdManagerInterstitial
NSString *_adUnitID;
NSArray *_testDevices;
NSDictionary *_targeting;
+ BOOL _servePersonalizedAds;
RCTPromiseResolveBlock _requestAdResolve;
RCTPromiseRejectBlock _requestAdReject;
@@ -60,6 +61,11 @@ + (BOOL)requiresMainQueueSetup
_targeting = targeting;
}
+RCT_EXPORT_METHOD(setServePersonalizedAds:(BOOL) servePersonalizedAds)
+{
+ _servePersonalizedAds = servePersonalizedAds;
+}
+
RCT_EXPORT_METHOD(requestAd:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
{
_requestAdResolve = nil;
@@ -73,6 +79,14 @@ + (BOOL)requiresMainQueueSetup
GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers = _testDevices;
GAMRequest *request = [GAMRequest request];
+ if (_servePersonalizedAds == NO) {
+ GADExtras *extras = [[GADExtras alloc] init];
+ extras.additionalParameters = [[NSDictionary alloc] initWithObjectsAndKeys:
+ [NSNumber numberWithInt:1], @"npa",
+ nil];
+ [request registerAdNetworkExtras:extras];
+ }
+
if (_targeting != nil) {
NSDictionary *customTargeting = [_targeting objectForKey:@"customTargeting"];
if (customTargeting != nil) {
diff --git a/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcodeproj/xcuserdata/mirkoquaglia.xcuserdatad/xcschemes/xcschememanagement.plist b/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcodeproj/xcuserdata/mirkoquaglia.xcuserdatad/xcschemes/xcschememanagement.plist
new file mode 100644
index 0000000..249ece5
--- /dev/null
+++ b/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcodeproj/xcuserdata/mirkoquaglia.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>SchemeUserState</key>
+ <dict>
+ <key>ReactNativeAdManager.xcscheme_^#shared#^_</key>
+ <dict>
+ <key>orderHint</key>
+ <integer>0</integer>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IDEDidComputeMac32BitWarning</key>
+ <true/>
+</dict>
+</plist>
diff --git a/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcworkspace/xcuserdata/mirkoquaglia.xcuserdatad/UserInterfaceState.xcuserstate b/node_modules/react-native-ad-manager/ios/ReactNativeAdManager.xcworkspace/xcuserdata/mirkoquaglia.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerAdaptiveBanner.js.map b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerAdaptiveBanner.js.map
index 304ce16..5442a21 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerAdaptiveBanner.js.map
+++ b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerAdaptiveBanner.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerAdaptiveBanner.tsx"],"names":["ComponentName","AdManagerAdaptiveBannerView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","AdaptiveBanner","React","Component","constructor","props","handleSizeChange","bind","state","style","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidMount","loadBanner","dispatchViewManagerCommand","Commands","nativeEvent","height","width","setState","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerAdaptiveBannerPropsBase extends ViewProps {\n /**\n * Adaptive banner position.\n */\n adPosition?:\n | 'currentOrientationAnchored'\n | 'currentOrientationInline'\n | 'portraitInline'\n | 'landscapeInline'\n | 'inline';\n\n /**\n * Max height of the adaptive banner. Only works with \"inline\" adPosition.\n */\n maxHeight?: number;\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n}\n\ninterface IAdManagerAdaptiveBannerProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerAdaptiveBannerState {\n style: {\n width?: number;\n height?: number;\n };\n}\n\ninterface IAdManagerAdaptiveBannerNativeProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKAdaptiveBannerView';\n\nconst AdManagerAdaptiveBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerAdaptiveBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class AdaptiveBanner extends React.Component<\n IAdManagerAdaptiveBannerProps,\n IAdManagerAdaptiveBannerState\n> {\n constructor(props: IAdManagerAdaptiveBannerProps) {\n super(props);\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerAdaptiveBannerProps,\n nextState: IAdManagerAdaptiveBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.loadBanner();\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerAdaptiveBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerAdaptiveBanner.tsx"],"names":["ComponentName","AdManagerAdaptiveBannerView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","AdaptiveBanner","React","Component","constructor","props","handleSizeChange","bind","state","style","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidMount","loadBanner","dispatchViewManagerCommand","Commands","nativeEvent","height","width","setState","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerAdaptiveBannerPropsBase extends ViewProps {\n /**\n * Adaptive banner position.\n */\n adPosition?:\n | 'currentOrientationAnchored'\n | 'currentOrientationInline'\n | 'portraitInline'\n | 'landscapeInline'\n | 'inline';\n\n /**\n * Max height of the adaptive banner. Only works with \"inline\" adPosition.\n */\n maxHeight?: number;\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n\n servePersonalizedAds?: boolean;\n}\n\ninterface IAdManagerAdaptiveBannerProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerAdaptiveBannerState {\n style: {\n width?: number;\n height?: number;\n };\n}\n\ninterface IAdManagerAdaptiveBannerNativeProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKAdaptiveBannerView';\n\nconst AdManagerAdaptiveBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerAdaptiveBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class AdaptiveBanner extends React.Component<\n IAdManagerAdaptiveBannerProps,\n IAdManagerAdaptiveBannerState\n> {\n constructor(props: IAdManagerAdaptiveBannerProps) {\n super(props);\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerAdaptiveBannerProps,\n nextState: IAdManagerAdaptiveBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.loadBanner();\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerAdaptiveBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerBanner.js.map b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerBanner.js.map
index 67a6608..a14f60d 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerBanner.js.map
+++ b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerBanner.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerBanner.tsx"],"names":["ComponentName","AdManagerBannerView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","Banner","React","Component","constructor","props","hasOnErrorFromParent","Object","prototype","hasOwnProperty","call","handleSizeChange","bind","state","style","error","shouldComponentUpdate","nextProps","nextState","entries","toString","componentDidMount","customListener","DeviceEventEmitter","addListener","eventData","setState","onError","loadBanner","componentWillUnmount","remove","dispatchViewManagerCommand","Commands","nativeEvent","height","width","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","onAppEvent","onAdOpened","onAdClosed","onAdRecordImpression"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n DeviceEventEmitter, \n EventSubscription\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerBannerPropsBase extends ViewProps {\n /**\n * DFP iOS library banner size constants\n * (https://developers.google.com/admob/ios/banner)\n * banner (320x50, Standard Banner for Phones and Tablets)\n * fullBanner (468x60, IAB Full-Size Banner for Tablets)\n * largeBanner (320x100, Large Banner for Phones and Tablets)\n * mediumRectangle (300x250, IAB Medium Rectangle for Phones and Tablets)\n * leaderboard (728x90, IAB Leaderboard for Tablets)\n * skyscraper (120x600, Skyscraper size for the iPad. Mediation only. AdMob/Google does not offer this size)\n * fluid (An ad size that spans the full width of its container, with a height dynamically determined by the ad)\n * {\\d}x{\\d} (Dynamic size determined byt the user, 300x250, 300x100 etc.)\n *\n * banner is default\n */\n adSize?: string;\n\n /**\n * Optional array specifying all valid sizes that are appropriate for this slot.\n */\n validAdSizes?: string[];\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n}\n\ninterface IAdManagerBannerProps extends IAdManagerBannerPropsBase {\n // onError is a callback function sent from parent RN component of your RN app, aka: the error handler. \n // so if your RN App wants to handle the error, please pass in the \"onError\" function.\n onError?: (eventData: Error) => void;\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerBannerState {\n style: {\n width?: number;\n height?: number;\n };\n error: Error | null;\n}\n\ninterface IAdManagerBannerNativeProps extends IAdManagerBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKBannerView';\n\nconst AdManagerBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class Banner extends React.Component<\n IAdManagerBannerProps,\n IAdManagerBannerState\n> {\n hasOnErrorFromParent: boolean;\n customListener: EventSubscription | undefined;\n\n constructor(props: IAdManagerBannerProps) {\n super(props);\n this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(props, 'onError');\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n error: null,\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerBannerProps,\n nextState: IAdManagerBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.customListener= DeviceEventEmitter.addListener('onError',eventData=>{\n this.setState({ error: eventData });\n if (this.hasOnErrorFromParent && this.props.onError) { \n this.props.onError(eventData);\n }\n }); \n this.loadBanner();\n }\n \n componentWillUnmount() {\n if (this.customListener) {\n this.customListener.remove();\n }\n }\n \n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerBanner.tsx"],"names":["ComponentName","AdManagerBannerView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","Banner","React","Component","constructor","props","hasOnErrorFromParent","Object","prototype","hasOwnProperty","call","handleSizeChange","bind","state","style","error","shouldComponentUpdate","nextProps","nextState","entries","toString","componentDidMount","customListener","DeviceEventEmitter","addListener","eventData","setState","onError","loadBanner","componentWillUnmount","remove","dispatchViewManagerCommand","Commands","nativeEvent","height","width","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","onAppEvent","onAdOpened","onAdClosed","onAdRecordImpression"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n DeviceEventEmitter,\n EventSubscription,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerBannerPropsBase extends ViewProps {\n /**\n * DFP iOS library banner size constants\n * (https://developers.google.com/admob/ios/banner)\n * banner (320x50, Standard Banner for Phones and Tablets)\n * fullBanner (468x60, IAB Full-Size Banner for Tablets)\n * largeBanner (320x100, Large Banner for Phones and Tablets)\n * mediumRectangle (300x250, IAB Medium Rectangle for Phones and Tablets)\n * leaderboard (728x90, IAB Leaderboard for Tablets)\n * skyscraper (120x600, Skyscraper size for the iPad. Mediation only. AdMob/Google does not offer this size)\n * fluid (An ad size that spans the full width of its container, with a height dynamically determined by the ad)\n * {\\d}x{\\d} (Dynamic size determined byt the user, 300x250, 300x100 etc.)\n *\n * banner is default\n */\n adSize?: string;\n\n /**\n * Optional array specifying all valid sizes that are appropriate for this slot.\n */\n validAdSizes?: string[];\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n\n servePersonalizedAds?: boolean;\n}\n\ninterface IAdManagerBannerProps extends IAdManagerBannerPropsBase {\n // onError is a callback function sent from parent RN component of your RN app, aka: the error handler.\n // so if your RN App wants to handle the error, please pass in the \"onError\" function.\n onError?: (eventData: Error) => void;\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerBannerState {\n style: {\n width?: number;\n height?: number;\n };\n error: Error | null;\n}\n\ninterface IAdManagerBannerNativeProps extends IAdManagerBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdRecordImpression?: (\n event: NativeSyntheticEvent<IAdManagerEventBase>\n ) => void;\n}\n\nconst ComponentName = 'CTKBannerView';\n\nconst AdManagerBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class Banner extends React.Component<\n IAdManagerBannerProps,\n IAdManagerBannerState\n> {\n hasOnErrorFromParent: boolean;\n customListener: EventSubscription | undefined;\n\n constructor(props: IAdManagerBannerProps) {\n super(props);\n this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(\n props,\n 'onError'\n );\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n error: null,\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerBannerProps,\n nextState: IAdManagerBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.customListener = DeviceEventEmitter.addListener(\n 'onError',\n (eventData) => {\n this.setState({ error: eventData });\n if (this.hasOnErrorFromParent && this.props.onError) {\n this.props.onError(eventData);\n }\n }\n );\n this.loadBanner();\n }\n\n componentWillUnmount() {\n if (this.customListener) {\n this.customListener.remove();\n }\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression &&\n this.props.onAdRecordImpression(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js
index 351717f..7394884 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js
+++ b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js
@@ -85,6 +85,10 @@ const setTargeting = targeting => {
CTKInterstitial.setTargeting(targeting);
};
+const setServePersonalizedAds = servePersonalizedAds => {
+ CTKInterstitial.setServePersonalizedAds(servePersonalizedAds);
+};
+
const requestAd = () => {
return CTKInterstitial.requestAd();
};
@@ -107,6 +111,7 @@ var _default = {
setTargeting,
requestAd,
showAd,
+ setServePersonalizedAds,
isReady
};
exports.default = _default;
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js.map b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js.map
index e81d757..c596ff2 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js.map
+++ b/node_modules/react-native-ad-manager/lib/commonjs/CTKAdManagerInterstitial.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerInterstitial.ts"],"names":["CTKInterstitial","NativeModules","Proxy","get","Error","LINKING_ERROR","eventEmitter","NativeEventEmitter","eventMap","adLoaded","adFailedToLoad","adOpened","adClosed","_subscriptions","Map","addEventListener","event","handler","mappedEvent","listener","addListener","error","set","remove","removeEventListener","console","warn","_event","delete","removeAllListeners","forEach","key","map","simulatorId","setAdUnitID","adUnitID","setTestDevices","testDevices","setTargeting","targeting","requestAd","showAd","isReady","callback"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, NativeModules } from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventErrorPayload,\n IAdManagerEventLoadedInterstitial,\n} from './AdManagerEvent';\nimport { LINKING_ERROR } from './Constants';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\n\nconst CTKInterstitial = NativeModules.CTKInterstitial\n ? NativeModules.CTKInterstitial\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst eventEmitter = new NativeEventEmitter(CTKInterstitial);\n\nconst eventMap = {\n adLoaded: 'interstitialAdLoaded',\n adFailedToLoad: 'interstitialAdFailedToLoad',\n adOpened: 'interstitialAdOpened',\n adClosed: 'interstitialAdClosed',\n};\n\ntype TAdManagerInterstitialEvent =\n | 'adLoaded'\n | 'adFailedToLoad'\n | 'adOpened'\n | 'adClosed';\n\ntype TAdManagerInterstitialHandler = (\n event: Error | IAdManagerEventBase | IAdManagerEventLoadedInterstitial\n) => void;\n\nconst _subscriptions = new Map();\n\nconst addEventListener = (\n event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const mappedEvent = eventMap[event];\n if (mappedEvent) {\n let listener;\n if (event === 'adFailedToLoad') {\n listener = eventEmitter.addListener(\n mappedEvent,\n (error: IAdManagerEventErrorPayload) =>\n handler(createErrorFromErrorData(error))\n );\n } else {\n listener = eventEmitter.addListener(mappedEvent, handler);\n }\n _subscriptions.set(handler, listener);\n return {\n remove: () => removeEventListener(event, handler),\n };\n } else {\n console.warn(`Trying to subscribe to unknown event: \"${event}\"`);\n return {\n remove: () => {},\n };\n }\n};\n\nconst removeEventListener = (\n _event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const listener = _subscriptions.get(handler);\n if (!listener) {\n return;\n }\n listener.remove();\n _subscriptions.delete(handler);\n};\n\nconst removeAllListeners = () => {\n _subscriptions.forEach((listener, key, map) => {\n listener.remove();\n map.delete(key);\n });\n};\n\nconst simulatorId = 'SIMULATOR';\n\nconst setAdUnitID = (adUnitID: string) => {\n CTKInterstitial.setAdUnitID(adUnitID);\n};\n\nconst setTestDevices = (testDevices: string[]) => {\n CTKInterstitial.setTestDevices(testDevices);\n};\n\nconst setTargeting = (targeting: IAdManagerTargeting) => {\n CTKInterstitial.setTargeting(targeting);\n};\n\nconst requestAd = (): Promise<null> => {\n return CTKInterstitial.requestAd();\n}\n\nconst showAd = (): Promise<null> => {\n return CTKInterstitial.showAd();\n}\n\nconst isReady = (callback: (isReady: boolean) => void): Promise<null> => {\n return CTKInterstitial.isReady(callback);\n}\n\nexport default {\n addEventListener,\n removeEventListener,\n removeAllListeners,\n simulatorId,\n setAdUnitID,\n setTestDevices,\n setTargeting,\n requestAd,\n showAd,\n isReady\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerInterstitial.ts"],"names":["CTKInterstitial","NativeModules","Proxy","get","Error","LINKING_ERROR","eventEmitter","NativeEventEmitter","eventMap","adLoaded","adFailedToLoad","adOpened","adClosed","_subscriptions","Map","addEventListener","event","handler","mappedEvent","listener","addListener","error","set","remove","removeEventListener","console","warn","_event","delete","removeAllListeners","forEach","key","map","simulatorId","setAdUnitID","adUnitID","setTestDevices","testDevices","setTargeting","targeting","setServePersonalizedAds","servePersonalizedAds","requestAd","showAd","isReady","callback"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, NativeModules } from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventErrorPayload,\n IAdManagerEventLoadedInterstitial,\n} from './AdManagerEvent';\nimport { LINKING_ERROR } from './Constants';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\n\nconst CTKInterstitial = NativeModules.CTKInterstitial\n ? NativeModules.CTKInterstitial\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst eventEmitter = new NativeEventEmitter(CTKInterstitial);\n\nconst eventMap = {\n adLoaded: 'interstitialAdLoaded',\n adFailedToLoad: 'interstitialAdFailedToLoad',\n adOpened: 'interstitialAdOpened',\n adClosed: 'interstitialAdClosed',\n};\n\ntype TAdManagerInterstitialEvent =\n | 'adLoaded'\n | 'adFailedToLoad'\n | 'adOpened'\n | 'adClosed';\n\ntype TAdManagerInterstitialHandler = (\n event: Error | IAdManagerEventBase | IAdManagerEventLoadedInterstitial\n) => void;\n\nconst _subscriptions = new Map();\n\nconst addEventListener = (\n event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const mappedEvent = eventMap[event];\n if (mappedEvent) {\n let listener;\n if (event === 'adFailedToLoad') {\n listener = eventEmitter.addListener(\n mappedEvent,\n (error: IAdManagerEventErrorPayload) =>\n handler(createErrorFromErrorData(error))\n );\n } else {\n listener = eventEmitter.addListener(mappedEvent, handler);\n }\n _subscriptions.set(handler, listener);\n return {\n remove: () => removeEventListener(event, handler),\n };\n } else {\n console.warn(`Trying to subscribe to unknown event: \"${event}\"`);\n return {\n remove: () => {},\n };\n }\n};\n\nconst removeEventListener = (\n _event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const listener = _subscriptions.get(handler);\n if (!listener) {\n return;\n }\n listener.remove();\n _subscriptions.delete(handler);\n};\n\nconst removeAllListeners = () => {\n _subscriptions.forEach((listener, key, map) => {\n listener.remove();\n map.delete(key);\n });\n};\n\nconst simulatorId = 'SIMULATOR';\n\nconst setAdUnitID = (adUnitID: string) => {\n CTKInterstitial.setAdUnitID(adUnitID);\n};\n\nconst setTestDevices = (testDevices: string[]) => {\n CTKInterstitial.setTestDevices(testDevices);\n};\n\nconst setTargeting = (targeting: IAdManagerTargeting) => {\n CTKInterstitial.setTargeting(targeting);\n};\n\nconst setServePersonalizedAds = (servePersonalizedAds: boolean) => {\n CTKInterstitial.setServePersonalizedAds(servePersonalizedAds);\n};\n\nconst requestAd = (): Promise<null> => {\n return CTKInterstitial.requestAd();\n};\n\nconst showAd = (): Promise<null> => {\n return CTKInterstitial.showAd();\n};\n\nconst isReady = (callback: (isReady: boolean) => void): Promise<null> => {\n return CTKInterstitial.isReady(callback);\n};\n\nexport default {\n addEventListener,\n removeEventListener,\n removeAllListeners,\n simulatorId,\n setAdUnitID,\n setTestDevices,\n setTargeting,\n requestAd,\n showAd,\n setServePersonalizedAds,\n isReady,\n};\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js b/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js
index 439e59f..4b00e4d 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js
+++ b/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js
@@ -179,7 +179,8 @@ var _default = Component => class NativeAdWrapper extends _react.default.Compone
onAdRecordImpression: event => this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent),
targeting: this.props.targeting,
customClickTemplateIds: this.props.customClickTemplateIds,
- adsManager: adsManager.toJSON()
+ adsManager: adsManager.toJSON(),
+ servePersonalizedAds: this.props.servePersonalizedAds
}, this.renderAdComponent(rest));
}
diff --git a/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js.map b/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js.map
index abaac86..520da49 100644
--- a/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js.map
+++ b/node_modules/react-native-ad-manager/lib/commonjs/native-ads/withNativeAd.js.map
@@ -1 +1 @@
-{"version":3,"sources":["withNativeAd.tsx"],"names":["areSetsEqual","a","b","size","aItem","has","ComponentName","NativeAdView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","Component","NativeAdWrapper","React","constructor","props","Map","child","handle","clickableChildrenNodeHandles","set","setState","clickableChildren","state","add","newClickableChildren","Set","delete","get","nativeEvent","height","width","style","onSizeChange","nativeAd","onAdLoaded","componentDidMount","reloadAd","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidUpdate","_","prevState","clickableChildrenChanged","viewHandle","NativeAdsManager","registerViewsForInteractionAsync","then","catch","dispatchViewManagerCommand","Commands","renderAdComponent","componentProps","register","registerClickableChild","unregister","unregisterClickableChild","render","_a","adsManager","rest","adSize","adLoaderIndex","correlator","customTemplateIds","validAdSizes","validAdTypes","handleSizeChange","handleAdLoaded","event","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed","onAdCustomClick","onAdRecordImpression","targeting","customClickTemplateIds","toJSON"],"mappings":"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","sourcesContent":["import React, { JSXElementConstructor } from 'react';\nimport {\n findNodeHandle,\n NativeSyntheticEvent,\n requireNativeComponent,\n UIManager,\n ViewProps,\n} from 'react-native';\nimport { TriggerableContext } from './TriggerableViewManager';\nimport { NativeAdsManager } from './NativeAdsManager';\nimport type {\n IAdManagerTargeting,\n TReactNodeHandleRef,\n} from '../AdManagerTypes';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventCustomClick,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventLoadedNative,\n IAdManagerEventLoadedTemplate,\n IAdManagerEventSize,\n IAdManagerEventError,\n} from '../AdManagerEvent';\nimport { createErrorFromErrorData, stripProperties } from '../utils';\nimport { LINKING_ERROR } from '../Constants';\n\n/*\n@property (nonatomic, copy) NSDictionary *targeting;\n\n */\ninterface INativeAdPropsBase extends ViewProps {\n adSize?: string;\n correlator?: string;\n customTemplateIds?: string[];\n validAdSizes?: string[];\n validAdTypes?: ('banner' | 'native' | 'template')[];\n customClickTemplateIds?: string[];\n targeting?: IAdManagerTargeting;\n}\n\ninterface INativeAdNativeProps extends INativeAdPropsBase {\n children: React.ReactNode;\n adsManager: string;\n loaderIndex?: string;\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdCustomClick?: (\n event: NativeSyntheticEvent<IAdManagerEventCustomClick>\n ) => void;\n onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\ninterface INativeAdProps extends INativeAdPropsBase {\n adsManager: NativeAdsManager;\n adLoaderIndex?: string;\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (\n event:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n ) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdCustomClick?: (event: IAdManagerEventCustomClick) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface INativeAdState {\n clickableChildren: Set<TReactNodeHandleRef>;\n style: {\n width?: number;\n height?: number;\n };\n nativeAd?:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative;\n}\n\nconst areSetsEqual = (\n a: Set<TReactNodeHandleRef>,\n b: Set<TReactNodeHandleRef>\n) => {\n if (a.size !== b.size) return false;\n for (const aItem of a) {\n if (!b.has(aItem)) return false;\n }\n return true;\n};\n\nconst ComponentName = 'CTKAdManageNative';\n\nconst NativeAdView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<INativeAdNativeProps>(ComponentName)\n : () => {\n // eslint-disable-next-line no-undef\n throw new Error(LINKING_ERROR);\n };\n\nexport default (Component: JSXElementConstructor<any>) =>\n class NativeAdWrapper extends React.Component<\n INativeAdProps,\n INativeAdState\n > {\n clickableChildrenNodeHandles = new Map();\n\n constructor(props: INativeAdProps) {\n super(props);\n this.state = {\n // iOS requires a non-null value\n clickableChildren: new Set(),\n style: {},\n };\n }\n\n componentDidMount() {\n this.reloadAd();\n }\n\n registerClickableChild = (child: TReactNodeHandleRef) => {\n const handle = findNodeHandle(child);\n if (!handle) {\n return;\n }\n this.clickableChildrenNodeHandles.set(child, handle);\n this.setState({\n clickableChildren: this.state.clickableChildren.add(handle),\n });\n };\n\n unregisterClickableChild = (child: TReactNodeHandleRef) => {\n this.setState(({ clickableChildren }) => {\n const newClickableChildren = new Set(clickableChildren);\n newClickableChildren.delete(\n this.clickableChildrenNodeHandles.get(child)\n );\n this.clickableChildrenNodeHandles.delete(child);\n return { clickableChildren: newClickableChildren };\n });\n };\n\n handleSizeChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<IAdManagerEventSize>) => {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n };\n\n handleAdLoaded = ({\n nativeEvent,\n }: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >) => {\n this.setState({ nativeAd: nativeEvent });\n this.props.onAdLoaded && this.props.onAdLoaded(nativeEvent);\n };\n\n shouldComponentUpdate(\n nextProps: INativeAdProps,\n nextState: INativeAdState\n ) {\n if (\n Object.entries(this.state).toString() ===\n Object.entries(nextState).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidUpdate(_: INativeAdProps, prevState: INativeAdState) {\n const clickableChildrenChanged = areSetsEqual(\n prevState.clickableChildren,\n this.state.clickableChildren\n );\n if (clickableChildrenChanged) {\n const viewHandle = findNodeHandle(this);\n if (!viewHandle) {\n // Skip registration if the view is no longer valid.\n return;\n }\n\n NativeAdsManager.registerViewsForInteractionAsync(viewHandle, [\n ...this.state.clickableChildren,\n ])\n .then(() => {\n // do nothing for now\n })\n .catch(() => {\n // do nothing for now\n });\n }\n }\n\n reloadAd() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.reloadAd,\n []\n );\n }\n\n renderAdComponent(componentProps: INativeAdProps) {\n if (!this.state.nativeAd) {\n return null;\n }\n\n return (\n <TriggerableContext.Provider\n value={{\n register: this.registerClickableChild,\n unregister: this.unregisterClickableChild,\n }}\n >\n <Component {...componentProps} nativeAd={this.state.nativeAd} />\n </TriggerableContext.Provider>\n );\n }\n\n render() {\n // Cast to any until https://github.com/Microsoft/TypeScript/issues/10727 is resolved\n const _a = this.props,\n { adsManager } = _a,\n rest = stripProperties(_a, ['adsManager', 'onAdLoaded']);\n\n return (\n <NativeAdView\n style={[this.props.style, this.state.style]}\n adSize={this.props.adSize}\n loaderIndex={this.props.adLoaderIndex}\n correlator={this.props.correlator}\n customTemplateIds={this.props.customTemplateIds}\n validAdSizes={this.props.validAdSizes}\n validAdTypes={this.props.validAdTypes}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={this.handleAdLoaded}\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdCustomClick={(event) =>\n this.props.onAdCustomClick &&\n this.props.onAdCustomClick(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)\n }\n targeting={this.props.targeting}\n customClickTemplateIds={this.props.customClickTemplateIds}\n adsManager={adsManager.toJSON()}\n >\n {this.renderAdComponent(rest)}\n </NativeAdView>\n );\n }\n };\n"]}
\ No newline at end of file
+{"version":3,"sources":["withNativeAd.tsx"],"names":["areSetsEqual","a","b","size","aItem","has","ComponentName","NativeAdView","UIManager","getViewManagerConfig","Error","LINKING_ERROR","Component","NativeAdWrapper","React","constructor","props","Map","child","handle","clickableChildrenNodeHandles","set","setState","clickableChildren","state","add","newClickableChildren","Set","delete","get","nativeEvent","height","width","style","onSizeChange","nativeAd","onAdLoaded","componentDidMount","reloadAd","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidUpdate","_","prevState","clickableChildrenChanged","viewHandle","NativeAdsManager","registerViewsForInteractionAsync","then","catch","dispatchViewManagerCommand","Commands","renderAdComponent","componentProps","register","registerClickableChild","unregister","unregisterClickableChild","render","_a","adsManager","rest","adSize","adLoaderIndex","correlator","customTemplateIds","validAdSizes","validAdTypes","handleSizeChange","handleAdLoaded","event","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed","onAdCustomClick","onAdRecordImpression","targeting","customClickTemplateIds","toJSON","servePersonalizedAds"],"mappings":";;;;;;;AAAA;;AACA;;AAOA;;AACA;;AAeA;;AACA;;;;;;;;AAyEA,MAAMA,YAAY,GAAG,CACnBC,CADmB,EAEnBC,CAFmB,KAGhB;AACH,MAAID,CAAC,CAACE,IAAF,KAAWD,CAAC,CAACC,IAAjB,EAAuB,OAAO,KAAP;;AACvB,OAAK,MAAMC,KAAX,IAAoBH,CAApB,EAAuB;AACrB,QAAI,CAACC,CAAC,CAACG,GAAF,CAAMD,KAAN,CAAL,EAAmB,OAAO,KAAP;AACpB;;AACD,SAAO,IAAP;AACD,CATD;;AAWA,MAAME,aAAa,GAAG,mBAAtB;AAEA,MAAMC,YAAY,GAChBC,uBAAUC,oBAAV,CAA+BH,aAA/B,KAAiD,IAAjD,GACI,yCAA6CA,aAA7C,CADJ,GAEI,MAAM;AACJ;AACA,QAAM,IAAII,KAAJ,CAAUC,wBAAV,CAAN;AACD,CANP;;eAQgBC,SAAD,IACb,MAAMC,eAAN,SAA8BC,eAAMF,SAApC,CAGE;AAGAG,EAAAA,WAAW,CAACC,KAAD,EAAwB;AACjC,UAAMA,KAAN;;AADiC,0DAFJ,IAAIC,GAAJ,EAEI;;AAAA,oDAaTC,KAAD,IAAgC;AACvD,YAAMC,MAAM,GAAG,iCAAeD,KAAf,CAAf;;AACA,UAAI,CAACC,MAAL,EAAa;AACX;AACD;;AACD,WAAKC,4BAAL,CAAkCC,GAAlC,CAAsCH,KAAtC,EAA6CC,MAA7C;AACA,WAAKG,QAAL,CAAc;AACZC,QAAAA,iBAAiB,EAAE,KAAKC,KAAL,CAAWD,iBAAX,CAA6BE,GAA7B,CAAiCN,MAAjC;AADP,OAAd;AAGD,KAtBkC;;AAAA,sDAwBPD,KAAD,IAAgC;AACzD,WAAKI,QAAL,CAAc,QAA2B;AAAA,YAA1B;AAAEC,UAAAA;AAAF,SAA0B;AACvC,cAAMG,oBAAoB,GAAG,IAAIC,GAAJ,CAAQJ,iBAAR,CAA7B;AACAG,QAAAA,oBAAoB,CAACE,MAArB,CACE,KAAKR,4BAAL,CAAkCS,GAAlC,CAAsCX,KAAtC,CADF;AAGA,aAAKE,4BAAL,CAAkCQ,MAAlC,CAAyCV,KAAzC;AACA,eAAO;AAAEK,UAAAA,iBAAiB,EAAEG;AAArB,SAAP;AACD,OAPD;AAQD,KAjCkC;;AAAA,8CAmChB,SAE8B;AAAA,UAF7B;AAClBI,QAAAA;AADkB,OAE6B;AAC/C,YAAM;AAAEC,QAAAA,MAAF;AAAUC,QAAAA;AAAV,UAAoBF,WAA1B;AACA,WAAKR,QAAL,CAAc;AAAEW,QAAAA,KAAK,EAAE;AAAED,UAAAA,KAAF;AAASD,UAAAA;AAAT;AAAT,OAAd;AACA,WAAKf,KAAL,CAAWkB,YAAX,IAA2B,KAAKlB,KAAL,CAAWkB,YAAX,CAAwBJ,WAAxB,CAA3B;AACD,KAzCkC;;AAAA,4CA2ClB,SAMX;AAAA,UANY;AAChBA,QAAAA;AADgB,OAMZ;AACJ,WAAKR,QAAL,CAAc;AAAEa,QAAAA,QAAQ,EAAEL;AAAZ,OAAd;AACA,WAAKd,KAAL,CAAWoB,UAAX,IAAyB,KAAKpB,KAAL,CAAWoB,UAAX,CAAsBN,WAAtB,CAAzB;AACD,KApDkC;;AAEjC,SAAKN,KAAL,GAAa;AACX;AACAD,MAAAA,iBAAiB,EAAE,IAAII,GAAJ,EAFR;AAGXM,MAAAA,KAAK,EAAE;AAHI,KAAb;AAKD;;AAEDI,EAAAA,iBAAiB,GAAG;AAClB,SAAKC,QAAL;AACD;;AA2CDC,EAAAA,qBAAqB,CACnBC,SADmB,EAEnBC,SAFmB,EAGnB;AACA,QACEC,MAAM,CAACC,OAAP,CAAe,KAAKnB,KAApB,EAA2BoB,QAA3B,OACEF,MAAM,CAACC,OAAP,CAAeF,SAAf,EAA0BG,QAA1B,EADF,IAEAF,MAAM,CAACC,OAAP,CAAe,KAAK3B,KAApB,EAA2B4B,QAA3B,OACEF,MAAM,CAACC,OAAP,CAAeH,SAAf,EAA0BI,QAA1B,EAJJ,EAKE;AACA,aAAO,KAAP;AACD;;AACD,WAAO,IAAP;AACD;;AAEDC,EAAAA,kBAAkB,CAACC,CAAD,EAAoBC,SAApB,EAA+C;AAC/D,UAAMC,wBAAwB,GAAGhD,YAAY,CAC3C+C,SAAS,CAACxB,iBADiC,EAE3C,KAAKC,KAAL,CAAWD,iBAFgC,CAA7C;;AAIA,QAAIyB,wBAAJ,EAA8B;AAC5B,YAAMC,UAAU,GAAG,iCAAe,IAAf,CAAnB;;AACA,UAAI,CAACA,UAAL,EAAiB;AACf;AACA;AACD;;AAEDC,yCAAiBC,gCAAjB,CAAkDF,UAAlD,EAA8D,CAC5D,GAAG,KAAKzB,KAAL,CAAWD,iBAD8C,CAA9D,EAGG6B,IAHH,CAGQ,MAAM,CACV;AACD,OALH,EAMGC,KANH,CAMS,MAAM,CACX;AACD,OARH;AASD;AACF;;AAEDf,EAAAA,QAAQ,GAAG;AACT9B,2BAAU8C,0BAAV,CACE,iCAAe,IAAf,CADF,EAEE9C,uBAAUC,oBAAV,CAA+BH,aAA/B,EAA8CiD,QAA9C,CAAuDjB,QAFzD,EAGE,EAHF;AAKD;;AAEDkB,EAAAA,iBAAiB,CAACC,cAAD,EAAiC;AAChD,QAAI,CAAC,KAAKjC,KAAL,CAAWW,QAAhB,EAA0B;AACxB,aAAO,IAAP;AACD;;AAED,wBACE,6BAAC,0CAAD,CAAoB,QAApB;AACE,MAAA,KAAK,EAAE;AACLuB,QAAAA,QAAQ,EAAE,KAAKC,sBADV;AAELC,QAAAA,UAAU,EAAE,KAAKC;AAFZ;AADT,oBAME,6BAAC,SAAD,eAAeJ,cAAf;AAA+B,MAAA,QAAQ,EAAE,KAAKjC,KAAL,CAAWW;AAApD,OANF,CADF;AAUD;;AAED2B,EAAAA,MAAM,GAAG;AACP;AACA,UAAMC,EAAE,GAAG,KAAK/C,KAAhB;AAAA,UACE;AAAEgD,MAAAA;AAAF,QAAiBD,EADnB;AAAA,UAEEE,IAAI,GAAG,4BAAgBF,EAAhB,EAAoB,CAAC,YAAD,EAAe,YAAf,CAApB,CAFT;AAIA,wBACE,6BAAC,YAAD;AACE,MAAA,KAAK,EAAE,CAAC,KAAK/C,KAAL,CAAWiB,KAAZ,EAAmB,KAAKT,KAAL,CAAWS,KAA9B,CADT;AAEE,MAAA,MAAM,EAAE,KAAKjB,KAAL,CAAWkD,MAFrB;AAGE,MAAA,WAAW,EAAE,KAAKlD,KAAL,CAAWmD,aAH1B;AAIE,MAAA,UAAU,EAAE,KAAKnD,KAAL,CAAWoD,UAJzB;AAKE,MAAA,iBAAiB,EAAE,KAAKpD,KAAL,CAAWqD,iBALhC;AAME,MAAA,YAAY,EAAE,KAAKrD,KAAL,CAAWsD,YAN3B;AAOE,MAAA,YAAY,EAAE,KAAKtD,KAAL,CAAWuD,YAP3B;AAQE,MAAA,YAAY,EAAE,KAAKC,gBARrB;AASE,MAAA,UAAU,EAAE,KAAKC,cATnB;AAUE,MAAA,gBAAgB,EAAGC,KAAD,IAChB,KAAK1D,KAAL,CAAW2D,gBAAX,IACA,KAAK3D,KAAL,CAAW2D,gBAAX,CACE,qCAAyBD,KAAK,CAAC5C,WAAN,CAAkB8C,KAA3C,CADF,CAZJ;AAgBE,MAAA,UAAU,EAAGF,KAAD,IACV,KAAK1D,KAAL,CAAW6D,UAAX,IAAyB,KAAK7D,KAAL,CAAW6D,UAAX,CAAsBH,KAAK,CAAC5C,WAA5B,CAjB7B;AAmBE,MAAA,UAAU,EAAG4C,KAAD,IACV,KAAK1D,KAAL,CAAW8D,UAAX,IAAyB,KAAK9D,KAAL,CAAW8D,UAAX,CAAsBJ,KAAK,CAAC5C,WAA5B,CApB7B;AAsBE,MAAA,UAAU,EAAG4C,KAAD,IACV,KAAK1D,KAAL,CAAW+D,UAAX,IAAyB,KAAK/D,KAAL,CAAW+D,UAAX,CAAsBL,KAAK,CAAC5C,WAA5B,CAvB7B;AAyBE,MAAA,eAAe,EAAG4C,KAAD,IACf,KAAK1D,KAAL,CAAWgE,eAAX,IACA,KAAKhE,KAAL,CAAWgE,eAAX,CAA2BN,KAAK,CAAC5C,WAAjC,CA3BJ;AA6BE,MAAA,oBAAoB,EAAG4C,KAAD,IACpB,KAAK1D,KAAL,CAAWiE,oBAAX,IACA,KAAKjE,KAAL,CAAWiE,oBAAX,CAAgCP,KAAK,CAAC5C,WAAtC,CA/BJ;AAiCE,MAAA,SAAS,EAAE,KAAKd,KAAL,CAAWkE,SAjCxB;AAkCE,MAAA,sBAAsB,EAAE,KAAKlE,KAAL,CAAWmE,sBAlCrC;AAmCE,MAAA,UAAU,EAAEnB,UAAU,CAACoB,MAAX,EAnCd;AAoCE,MAAA,oBAAoB,EAAE,KAAKpE,KAAL,CAAWqE;AApCnC,OAsCG,KAAK7B,iBAAL,CAAuBS,IAAvB,CAtCH,CADF;AA0CD;;AAzKD,C","sourcesContent":["import React, { JSXElementConstructor } from 'react';\nimport {\n findNodeHandle,\n NativeSyntheticEvent,\n requireNativeComponent,\n UIManager,\n ViewProps,\n} from 'react-native';\nimport { TriggerableContext } from './TriggerableViewManager';\nimport { NativeAdsManager } from './NativeAdsManager';\nimport type {\n IAdManagerTargeting,\n TReactNodeHandleRef,\n} from '../AdManagerTypes';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventCustomClick,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventLoadedNative,\n IAdManagerEventLoadedTemplate,\n IAdManagerEventSize,\n IAdManagerEventError,\n} from '../AdManagerEvent';\nimport { createErrorFromErrorData, stripProperties } from '../utils';\nimport { LINKING_ERROR } from '../Constants';\n\n/*\n@property (nonatomic, copy) NSDictionary *targeting;\n\n */\ninterface INativeAdPropsBase extends ViewProps {\n adSize?: string;\n correlator?: string;\n customTemplateIds?: string[];\n validAdSizes?: string[];\n validAdTypes?: ('banner' | 'native' | 'template')[];\n customClickTemplateIds?: string[];\n targeting?: IAdManagerTargeting;\n servePersonalizedAds?: boolean;\n}\n\ninterface INativeAdNativeProps extends INativeAdPropsBase {\n children: React.ReactNode;\n adsManager: string;\n loaderIndex?: string;\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdCustomClick?: (\n event: NativeSyntheticEvent<IAdManagerEventCustomClick>\n ) => void;\n onAdRecordImpression?: (\n event: NativeSyntheticEvent<IAdManagerEventBase>\n ) => void;\n}\n\ninterface INativeAdProps extends INativeAdPropsBase {\n adsManager: NativeAdsManager;\n adLoaderIndex?: string;\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (\n event:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n ) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdCustomClick?: (event: IAdManagerEventCustomClick) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface INativeAdState {\n clickableChildren: Set<TReactNodeHandleRef>;\n style: {\n width?: number;\n height?: number;\n };\n nativeAd?:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative;\n}\n\nconst areSetsEqual = (\n a: Set<TReactNodeHandleRef>,\n b: Set<TReactNodeHandleRef>\n) => {\n if (a.size !== b.size) return false;\n for (const aItem of a) {\n if (!b.has(aItem)) return false;\n }\n return true;\n};\n\nconst ComponentName = 'CTKAdManageNative';\n\nconst NativeAdView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<INativeAdNativeProps>(ComponentName)\n : () => {\n // eslint-disable-next-line no-undef\n throw new Error(LINKING_ERROR);\n };\n\nexport default (Component: JSXElementConstructor<any>) =>\n class NativeAdWrapper extends React.Component<\n INativeAdProps,\n INativeAdState\n > {\n clickableChildrenNodeHandles = new Map();\n\n constructor(props: INativeAdProps) {\n super(props);\n this.state = {\n // iOS requires a non-null value\n clickableChildren: new Set(),\n style: {},\n };\n }\n\n componentDidMount() {\n this.reloadAd();\n }\n\n registerClickableChild = (child: TReactNodeHandleRef) => {\n const handle = findNodeHandle(child);\n if (!handle) {\n return;\n }\n this.clickableChildrenNodeHandles.set(child, handle);\n this.setState({\n clickableChildren: this.state.clickableChildren.add(handle),\n });\n };\n\n unregisterClickableChild = (child: TReactNodeHandleRef) => {\n this.setState(({ clickableChildren }) => {\n const newClickableChildren = new Set(clickableChildren);\n newClickableChildren.delete(\n this.clickableChildrenNodeHandles.get(child)\n );\n this.clickableChildrenNodeHandles.delete(child);\n return { clickableChildren: newClickableChildren };\n });\n };\n\n handleSizeChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<IAdManagerEventSize>) => {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n };\n\n handleAdLoaded = ({\n nativeEvent,\n }: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >) => {\n this.setState({ nativeAd: nativeEvent });\n this.props.onAdLoaded && this.props.onAdLoaded(nativeEvent);\n };\n\n shouldComponentUpdate(\n nextProps: INativeAdProps,\n nextState: INativeAdState\n ) {\n if (\n Object.entries(this.state).toString() ===\n Object.entries(nextState).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidUpdate(_: INativeAdProps, prevState: INativeAdState) {\n const clickableChildrenChanged = areSetsEqual(\n prevState.clickableChildren,\n this.state.clickableChildren\n );\n if (clickableChildrenChanged) {\n const viewHandle = findNodeHandle(this);\n if (!viewHandle) {\n // Skip registration if the view is no longer valid.\n return;\n }\n\n NativeAdsManager.registerViewsForInteractionAsync(viewHandle, [\n ...this.state.clickableChildren,\n ])\n .then(() => {\n // do nothing for now\n })\n .catch(() => {\n // do nothing for now\n });\n }\n }\n\n reloadAd() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.reloadAd,\n []\n );\n }\n\n renderAdComponent(componentProps: INativeAdProps) {\n if (!this.state.nativeAd) {\n return null;\n }\n\n return (\n <TriggerableContext.Provider\n value={{\n register: this.registerClickableChild,\n unregister: this.unregisterClickableChild,\n }}\n >\n <Component {...componentProps} nativeAd={this.state.nativeAd} />\n </TriggerableContext.Provider>\n );\n }\n\n render() {\n // Cast to any until https://github.com/Microsoft/TypeScript/issues/10727 is resolved\n const _a = this.props,\n { adsManager } = _a,\n rest = stripProperties(_a, ['adsManager', 'onAdLoaded']);\n\n return (\n <NativeAdView\n style={[this.props.style, this.state.style]}\n adSize={this.props.adSize}\n loaderIndex={this.props.adLoaderIndex}\n correlator={this.props.correlator}\n customTemplateIds={this.props.customTemplateIds}\n validAdSizes={this.props.validAdSizes}\n validAdTypes={this.props.validAdTypes}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={this.handleAdLoaded}\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdCustomClick={(event) =>\n this.props.onAdCustomClick &&\n this.props.onAdCustomClick(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression &&\n this.props.onAdRecordImpression(event.nativeEvent)\n }\n targeting={this.props.targeting}\n customClickTemplateIds={this.props.customClickTemplateIds}\n adsManager={adsManager.toJSON()}\n servePersonalizedAds={this.props.servePersonalizedAds}\n >\n {this.renderAdComponent(rest)}\n </NativeAdView>\n );\n }\n };\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerAdaptiveBanner.js.map b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerAdaptiveBanner.js.map
index ca11779..e04a0f0 100644
--- a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerAdaptiveBanner.js.map
+++ b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerAdaptiveBanner.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerAdaptiveBanner.tsx"],"names":["React","requireNativeComponent","UIManager","findNodeHandle","createErrorFromErrorData","LINKING_ERROR","ComponentName","AdManagerAdaptiveBannerView","getViewManagerConfig","Error","AdaptiveBanner","Component","constructor","props","handleSizeChange","bind","state","style","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidMount","loadBanner","dispatchViewManagerCommand","Commands","nativeEvent","height","width","setState","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerAdaptiveBannerPropsBase extends ViewProps {\n /**\n * Adaptive banner position.\n */\n adPosition?:\n | 'currentOrientationAnchored'\n | 'currentOrientationInline'\n | 'portraitInline'\n | 'landscapeInline'\n | 'inline';\n\n /**\n * Max height of the adaptive banner. Only works with \"inline\" adPosition.\n */\n maxHeight?: number;\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n}\n\ninterface IAdManagerAdaptiveBannerProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerAdaptiveBannerState {\n style: {\n width?: number;\n height?: number;\n };\n}\n\ninterface IAdManagerAdaptiveBannerNativeProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKAdaptiveBannerView';\n\nconst AdManagerAdaptiveBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerAdaptiveBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class AdaptiveBanner extends React.Component<\n IAdManagerAdaptiveBannerProps,\n IAdManagerAdaptiveBannerState\n> {\n constructor(props: IAdManagerAdaptiveBannerProps) {\n super(props);\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerAdaptiveBannerProps,\n nextState: IAdManagerAdaptiveBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.loadBanner();\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerAdaptiveBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerAdaptiveBanner.tsx"],"names":["React","requireNativeComponent","UIManager","findNodeHandle","createErrorFromErrorData","LINKING_ERROR","ComponentName","AdManagerAdaptiveBannerView","getViewManagerConfig","Error","AdaptiveBanner","Component","constructor","props","handleSizeChange","bind","state","style","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidMount","loadBanner","dispatchViewManagerCommand","Commands","nativeEvent","height","width","setState","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SACEC,sBADF,EAEEC,SAFF,EAIEC,cAJF,QAMO,cANP;AAOA,SAASC,wBAAT,QAAyC,SAAzC;AASA,SAASC,aAAT,QAA8B,aAA9B;AAsEA,MAAMC,aAAa,GAAG,uBAAtB;AAEA,MAAMC,2BAA2B,GAC/BL,SAAS,CAACM,oBAAV,CAA+BF,aAA/B,KAAiD,IAAjD,GACIL,sBAAsB,CAAsCK,aAAtC,CAD1B,GAEI,MAAM;AACJ,QAAM,IAAIG,KAAJ,CAAUJ,aAAV,CAAN;AACD,CALP;AAOA,OAAO,MAAMK,cAAN,SAA6BV,KAAK,CAACW,SAAnC,CAGL;AACAC,EAAAA,WAAW,CAACC,KAAD,EAAuC;AAChD,UAAMA,KAAN;AACA,SAAKC,gBAAL,GAAwB,KAAKA,gBAAL,CAAsBC,IAAtB,CAA2B,IAA3B,CAAxB;AACA,SAAKC,KAAL,GAAa;AACXC,MAAAA,KAAK,EAAE;AADI,KAAb;AAGD;;AAEDC,EAAAA,qBAAqB,CACnBC,SADmB,EAEnBC,SAFmB,EAGnB;AACA,QACEC,MAAM,CAACC,OAAP,CAAe,KAAKN,KAAL,CAAWC,KAA1B,EAAiCM,QAAjC,OACEF,MAAM,CAACC,OAAP,CAAeF,SAAS,CAACH,KAAzB,EAAgCM,QAAhC,EADF,IAEAF,MAAM,CAACC,OAAP,CAAe,KAAKT,KAApB,EAA2BU,QAA3B,OACEF,MAAM,CAACC,OAAP,CAAeH,SAAf,EAA0BI,QAA1B,EAJJ,EAKE;AACA,aAAO,KAAP;AACD;;AACD,WAAO,IAAP;AACD;;AAEDC,EAAAA,iBAAiB,GAAG;AAClB,SAAKC,UAAL;AACD;;AAEDA,EAAAA,UAAU,GAAG;AACXvB,IAAAA,SAAS,CAACwB,0BAAV,CACEvB,cAAc,CAAC,IAAD,CADhB,EAEED,SAAS,CAACM,oBAAV,CAA+BF,aAA/B,EAA8CqB,QAA9C,CAAuDF,UAFzD,EAGE,EAHF;AAKD;;AAEDX,EAAAA,gBAAgB,OAA6D;AAAA,QAA5D;AAAEc,MAAAA;AAAF,KAA4D;AAC3E,UAAM;AAAEC,MAAAA,MAAF;AAAUC,MAAAA;AAAV,QAAoBF,WAA1B;AACA,SAAKG,QAAL,CAAc;AAAEd,MAAAA,KAAK,EAAE;AAAEa,QAAAA,KAAF;AAASD,QAAAA;AAAT;AAAT,KAAd;AACA,SAAKhB,KAAL,CAAWmB,YAAX,IAA2B,KAAKnB,KAAL,CAAWmB,YAAX,CAAwBJ,WAAxB,CAA3B;AACD;;AAEDK,EAAAA,MAAM,GAAG;AACP,wBACE,oBAAC,2BAAD,eACM,KAAKpB,KADX;AAEE,MAAA,KAAK,EAAE,CAAC,KAAKA,KAAL,CAAWI,KAAZ,EAAmB,KAAKD,KAAL,CAAWC,KAA9B,CAFT;AAGE,MAAA,YAAY,EAAE,KAAKH,gBAHrB;AAIE,MAAA,UAAU,EAAGoB,KAAD,IACV,KAAKrB,KAAL,CAAWsB,UAAX,IAAyB,KAAKtB,KAAL,CAAWsB,UAAX,CAAsBD,KAAK,CAACN,WAA5B,CAL7B;AAOE,MAAA,gBAAgB,EAAGM,KAAD,IAChB,KAAKrB,KAAL,CAAWuB,gBAAX,IACA,KAAKvB,KAAL,CAAWuB,gBAAX,CACEhC,wBAAwB,CAAC8B,KAAK,CAACN,WAAN,CAAkBS,KAAnB,CAD1B,CATJ;AAaE,MAAA,UAAU,EAAGH,KAAD,IACV,KAAKrB,KAAL,CAAWyB,UAAX,IAAyB,KAAKzB,KAAL,CAAWyB,UAAX,CAAsBJ,KAAK,CAACN,WAA5B,CAd7B;AAgBE,MAAA,UAAU,EAAGM,KAAD,IACV,KAAKrB,KAAL,CAAW0B,UAAX,IAAyB,KAAK1B,KAAL,CAAW0B,UAAX,CAAsBL,KAAK,CAACN,WAA5B,CAjB7B;AAmBE,MAAA,UAAU,EAAGM,KAAD,IACV,KAAKrB,KAAL,CAAW2B,UAAX,IAAyB,KAAK3B,KAAL,CAAW2B,UAAX,CAAsBN,KAAK,CAACN,WAA5B;AApB7B,OADF;AAyBD;;AApED","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerAdaptiveBannerPropsBase extends ViewProps {\n /**\n * Adaptive banner position.\n */\n adPosition?:\n | 'currentOrientationAnchored'\n | 'currentOrientationInline'\n | 'portraitInline'\n | 'landscapeInline'\n | 'inline';\n\n /**\n * Max height of the adaptive banner. Only works with \"inline\" adPosition.\n */\n maxHeight?: number;\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n\n servePersonalizedAds?: boolean;\n}\n\ninterface IAdManagerAdaptiveBannerProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerAdaptiveBannerState {\n style: {\n width?: number;\n height?: number;\n };\n}\n\ninterface IAdManagerAdaptiveBannerNativeProps\n extends IAdManagerAdaptiveBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKAdaptiveBannerView';\n\nconst AdManagerAdaptiveBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerAdaptiveBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class AdaptiveBanner extends React.Component<\n IAdManagerAdaptiveBannerProps,\n IAdManagerAdaptiveBannerState\n> {\n constructor(props: IAdManagerAdaptiveBannerProps) {\n super(props);\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerAdaptiveBannerProps,\n nextState: IAdManagerAdaptiveBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.loadBanner();\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerAdaptiveBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerBanner.js.map b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerBanner.js.map
index 02def61..ee14c2e 100644
--- a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerBanner.js.map
+++ b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerBanner.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerBanner.tsx"],"names":["React","requireNativeComponent","UIManager","findNodeHandle","DeviceEventEmitter","createErrorFromErrorData","LINKING_ERROR","ComponentName","AdManagerBannerView","getViewManagerConfig","Error","Banner","Component","constructor","props","hasOnErrorFromParent","Object","prototype","hasOwnProperty","call","handleSizeChange","bind","state","style","error","shouldComponentUpdate","nextProps","nextState","entries","toString","componentDidMount","customListener","addListener","eventData","setState","onError","loadBanner","componentWillUnmount","remove","dispatchViewManagerCommand","Commands","nativeEvent","height","width","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","onAppEvent","onAdOpened","onAdClosed","onAdRecordImpression"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n DeviceEventEmitter, \n EventSubscription\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerBannerPropsBase extends ViewProps {\n /**\n * DFP iOS library banner size constants\n * (https://developers.google.com/admob/ios/banner)\n * banner (320x50, Standard Banner for Phones and Tablets)\n * fullBanner (468x60, IAB Full-Size Banner for Tablets)\n * largeBanner (320x100, Large Banner for Phones and Tablets)\n * mediumRectangle (300x250, IAB Medium Rectangle for Phones and Tablets)\n * leaderboard (728x90, IAB Leaderboard for Tablets)\n * skyscraper (120x600, Skyscraper size for the iPad. Mediation only. AdMob/Google does not offer this size)\n * fluid (An ad size that spans the full width of its container, with a height dynamically determined by the ad)\n * {\\d}x{\\d} (Dynamic size determined byt the user, 300x250, 300x100 etc.)\n *\n * banner is default\n */\n adSize?: string;\n\n /**\n * Optional array specifying all valid sizes that are appropriate for this slot.\n */\n validAdSizes?: string[];\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n}\n\ninterface IAdManagerBannerProps extends IAdManagerBannerPropsBase {\n // onError is a callback function sent from parent RN component of your RN app, aka: the error handler. \n // so if your RN App wants to handle the error, please pass in the \"onError\" function.\n onError?: (eventData: Error) => void;\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerBannerState {\n style: {\n width?: number;\n height?: number;\n };\n error: Error | null;\n}\n\ninterface IAdManagerBannerNativeProps extends IAdManagerBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\nconst ComponentName = 'CTKBannerView';\n\nconst AdManagerBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class Banner extends React.Component<\n IAdManagerBannerProps,\n IAdManagerBannerState\n> {\n hasOnErrorFromParent: boolean;\n customListener: EventSubscription | undefined;\n\n constructor(props: IAdManagerBannerProps) {\n super(props);\n this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(props, 'onError');\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n error: null,\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerBannerProps,\n nextState: IAdManagerBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.customListener= DeviceEventEmitter.addListener('onError',eventData=>{\n this.setState({ error: eventData });\n if (this.hasOnErrorFromParent && this.props.onError) { \n this.props.onError(eventData);\n }\n }); \n this.loadBanner();\n }\n \n componentWillUnmount() {\n if (this.customListener) {\n this.customListener.remove();\n }\n }\n \n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerBanner.tsx"],"names":["React","requireNativeComponent","UIManager","findNodeHandle","DeviceEventEmitter","createErrorFromErrorData","LINKING_ERROR","ComponentName","AdManagerBannerView","getViewManagerConfig","Error","Banner","Component","constructor","props","hasOnErrorFromParent","Object","prototype","hasOwnProperty","call","handleSizeChange","bind","state","style","error","shouldComponentUpdate","nextProps","nextState","entries","toString","componentDidMount","customListener","addListener","eventData","setState","onError","loadBanner","componentWillUnmount","remove","dispatchViewManagerCommand","Commands","nativeEvent","height","width","onSizeChange","render","event","onAdLoaded","onAdFailedToLoad","onAppEvent","onAdOpened","onAdClosed","onAdRecordImpression"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n ViewProps,\n findNodeHandle,\n NativeSyntheticEvent,\n DeviceEventEmitter,\n EventSubscription,\n} from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventError,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventSize,\n} from './AdManagerEvent';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\nimport { LINKING_ERROR } from './Constants';\n\ninterface IAdManagerBannerPropsBase extends ViewProps {\n /**\n * DFP iOS library banner size constants\n * (https://developers.google.com/admob/ios/banner)\n * banner (320x50, Standard Banner for Phones and Tablets)\n * fullBanner (468x60, IAB Full-Size Banner for Tablets)\n * largeBanner (320x100, Large Banner for Phones and Tablets)\n * mediumRectangle (300x250, IAB Medium Rectangle for Phones and Tablets)\n * leaderboard (728x90, IAB Leaderboard for Tablets)\n * skyscraper (120x600, Skyscraper size for the iPad. Mediation only. AdMob/Google does not offer this size)\n * fluid (An ad size that spans the full width of its container, with a height dynamically determined by the ad)\n * {\\d}x{\\d} (Dynamic size determined byt the user, 300x250, 300x100 etc.)\n *\n * banner is default\n */\n adSize?: string;\n\n /**\n * Optional array specifying all valid sizes that are appropriate for this slot.\n */\n validAdSizes?: string[];\n\n /**\n * DFP ad unit ID\n */\n adUnitID?: string;\n\n /**\n * Array of test devices. Use Banner.simulatorId for the simulator\n */\n testDevices?: string[];\n\n targeting?: IAdManagerTargeting;\n\n servePersonalizedAds?: boolean;\n}\n\ninterface IAdManagerBannerProps extends IAdManagerBannerPropsBase {\n // onError is a callback function sent from parent RN component of your RN app, aka: the error handler.\n // so if your RN App wants to handle the error, please pass in the \"onError\" function.\n onError?: (eventData: Error) => void;\n /**\n * DFP library events\n */\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (event: IAdManagerEventLoadedBanner) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface IAdManagerBannerState {\n style: {\n width?: number;\n height?: number;\n };\n error: Error | null;\n}\n\ninterface IAdManagerBannerNativeProps extends IAdManagerBannerPropsBase {\n /**\n * DFP library events\n */\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<IAdManagerEventLoadedBanner>\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdRecordImpression?: (\n event: NativeSyntheticEvent<IAdManagerEventBase>\n ) => void;\n}\n\nconst ComponentName = 'CTKBannerView';\n\nconst AdManagerBannerView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<IAdManagerBannerNativeProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport class Banner extends React.Component<\n IAdManagerBannerProps,\n IAdManagerBannerState\n> {\n hasOnErrorFromParent: boolean;\n customListener: EventSubscription | undefined;\n\n constructor(props: IAdManagerBannerProps) {\n super(props);\n this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(\n props,\n 'onError'\n );\n this.handleSizeChange = this.handleSizeChange.bind(this);\n this.state = {\n style: {},\n error: null,\n };\n }\n\n shouldComponentUpdate(\n nextProps: IAdManagerBannerProps,\n nextState: IAdManagerBannerState\n ) {\n if (\n Object.entries(this.state.style).toString() ===\n Object.entries(nextState.style).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidMount() {\n this.customListener = DeviceEventEmitter.addListener(\n 'onError',\n (eventData) => {\n this.setState({ error: eventData });\n if (this.hasOnErrorFromParent && this.props.onError) {\n this.props.onError(eventData);\n }\n }\n );\n this.loadBanner();\n }\n\n componentWillUnmount() {\n if (this.customListener) {\n this.customListener.remove();\n }\n }\n\n loadBanner() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.loadBanner,\n []\n );\n }\n\n handleSizeChange({ nativeEvent }: NativeSyntheticEvent<IAdManagerEventSize>) {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n }\n\n render() {\n return (\n <AdManagerBannerView\n {...this.props}\n style={[this.props.style, this.state.style]}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={(event) =>\n this.props.onAdLoaded && this.props.onAdLoaded(event.nativeEvent)\n }\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression &&\n this.props.onAdRecordImpression(event.nativeEvent)\n }\n />\n );\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js
index 2622210..33f9fd8 100644
--- a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js
+++ b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js
@@ -75,6 +75,10 @@ const setTargeting = targeting => {
CTKInterstitial.setTargeting(targeting);
};
+const setServePersonalizedAds = servePersonalizedAds => {
+ CTKInterstitial.setServePersonalizedAds(servePersonalizedAds);
+};
+
const requestAd = () => {
return CTKInterstitial.requestAd();
};
@@ -97,6 +101,7 @@ export default {
setTargeting,
requestAd,
showAd,
+ setServePersonalizedAds,
isReady
};
//# sourceMappingURL=CTKAdManagerInterstitial.js.map
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js.map b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js.map
index 899138d..a83c9d0 100644
--- a/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js.map
+++ b/node_modules/react-native-ad-manager/lib/module/CTKAdManagerInterstitial.js.map
@@ -1 +1 @@
-{"version":3,"sources":["CTKAdManagerInterstitial.ts"],"names":["NativeEventEmitter","NativeModules","createErrorFromErrorData","LINKING_ERROR","CTKInterstitial","Proxy","get","Error","eventEmitter","eventMap","adLoaded","adFailedToLoad","adOpened","adClosed","_subscriptions","Map","addEventListener","event","handler","mappedEvent","listener","addListener","error","set","remove","removeEventListener","console","warn","_event","delete","removeAllListeners","forEach","key","map","simulatorId","setAdUnitID","adUnitID","setTestDevices","testDevices","setTargeting","targeting","requestAd","showAd","isReady","callback"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, NativeModules } from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventErrorPayload,\n IAdManagerEventLoadedInterstitial,\n} from './AdManagerEvent';\nimport { LINKING_ERROR } from './Constants';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\n\nconst CTKInterstitial = NativeModules.CTKInterstitial\n ? NativeModules.CTKInterstitial\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst eventEmitter = new NativeEventEmitter(CTKInterstitial);\n\nconst eventMap = {\n adLoaded: 'interstitialAdLoaded',\n adFailedToLoad: 'interstitialAdFailedToLoad',\n adOpened: 'interstitialAdOpened',\n adClosed: 'interstitialAdClosed',\n};\n\ntype TAdManagerInterstitialEvent =\n | 'adLoaded'\n | 'adFailedToLoad'\n | 'adOpened'\n | 'adClosed';\n\ntype TAdManagerInterstitialHandler = (\n event: Error | IAdManagerEventBase | IAdManagerEventLoadedInterstitial\n) => void;\n\nconst _subscriptions = new Map();\n\nconst addEventListener = (\n event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const mappedEvent = eventMap[event];\n if (mappedEvent) {\n let listener;\n if (event === 'adFailedToLoad') {\n listener = eventEmitter.addListener(\n mappedEvent,\n (error: IAdManagerEventErrorPayload) =>\n handler(createErrorFromErrorData(error))\n );\n } else {\n listener = eventEmitter.addListener(mappedEvent, handler);\n }\n _subscriptions.set(handler, listener);\n return {\n remove: () => removeEventListener(event, handler),\n };\n } else {\n console.warn(`Trying to subscribe to unknown event: \"${event}\"`);\n return {\n remove: () => {},\n };\n }\n};\n\nconst removeEventListener = (\n _event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const listener = _subscriptions.get(handler);\n if (!listener) {\n return;\n }\n listener.remove();\n _subscriptions.delete(handler);\n};\n\nconst removeAllListeners = () => {\n _subscriptions.forEach((listener, key, map) => {\n listener.remove();\n map.delete(key);\n });\n};\n\nconst simulatorId = 'SIMULATOR';\n\nconst setAdUnitID = (adUnitID: string) => {\n CTKInterstitial.setAdUnitID(adUnitID);\n};\n\nconst setTestDevices = (testDevices: string[]) => {\n CTKInterstitial.setTestDevices(testDevices);\n};\n\nconst setTargeting = (targeting: IAdManagerTargeting) => {\n CTKInterstitial.setTargeting(targeting);\n};\n\nconst requestAd = (): Promise<null> => {\n return CTKInterstitial.requestAd();\n}\n\nconst showAd = (): Promise<null> => {\n return CTKInterstitial.showAd();\n}\n\nconst isReady = (callback: (isReady: boolean) => void): Promise<null> => {\n return CTKInterstitial.isReady(callback);\n}\n\nexport default {\n addEventListener,\n removeEventListener,\n removeAllListeners,\n simulatorId,\n setAdUnitID,\n setTestDevices,\n setTargeting,\n requestAd,\n showAd,\n isReady\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["CTKAdManagerInterstitial.ts"],"names":["NativeEventEmitter","NativeModules","createErrorFromErrorData","LINKING_ERROR","CTKInterstitial","Proxy","get","Error","eventEmitter","eventMap","adLoaded","adFailedToLoad","adOpened","adClosed","_subscriptions","Map","addEventListener","event","handler","mappedEvent","listener","addListener","error","set","remove","removeEventListener","console","warn","_event","delete","removeAllListeners","forEach","key","map","simulatorId","setAdUnitID","adUnitID","setTestDevices","testDevices","setTargeting","targeting","setServePersonalizedAds","servePersonalizedAds","requestAd","showAd","isReady","callback"],"mappings":"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","sourcesContent":["import { NativeEventEmitter, NativeModules } from 'react-native';\nimport { createErrorFromErrorData } from './utils';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventErrorPayload,\n IAdManagerEventLoadedInterstitial,\n} from './AdManagerEvent';\nimport { LINKING_ERROR } from './Constants';\nimport type { IAdManagerTargeting } from './AdManagerTypes';\n\nconst CTKInterstitial = NativeModules.CTKInterstitial\n ? NativeModules.CTKInterstitial\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst eventEmitter = new NativeEventEmitter(CTKInterstitial);\n\nconst eventMap = {\n adLoaded: 'interstitialAdLoaded',\n adFailedToLoad: 'interstitialAdFailedToLoad',\n adOpened: 'interstitialAdOpened',\n adClosed: 'interstitialAdClosed',\n};\n\ntype TAdManagerInterstitialEvent =\n | 'adLoaded'\n | 'adFailedToLoad'\n | 'adOpened'\n | 'adClosed';\n\ntype TAdManagerInterstitialHandler = (\n event: Error | IAdManagerEventBase | IAdManagerEventLoadedInterstitial\n) => void;\n\nconst _subscriptions = new Map();\n\nconst addEventListener = (\n event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const mappedEvent = eventMap[event];\n if (mappedEvent) {\n let listener;\n if (event === 'adFailedToLoad') {\n listener = eventEmitter.addListener(\n mappedEvent,\n (error: IAdManagerEventErrorPayload) =>\n handler(createErrorFromErrorData(error))\n );\n } else {\n listener = eventEmitter.addListener(mappedEvent, handler);\n }\n _subscriptions.set(handler, listener);\n return {\n remove: () => removeEventListener(event, handler),\n };\n } else {\n console.warn(`Trying to subscribe to unknown event: \"${event}\"`);\n return {\n remove: () => {},\n };\n }\n};\n\nconst removeEventListener = (\n _event: TAdManagerInterstitialEvent,\n handler: TAdManagerInterstitialHandler\n) => {\n const listener = _subscriptions.get(handler);\n if (!listener) {\n return;\n }\n listener.remove();\n _subscriptions.delete(handler);\n};\n\nconst removeAllListeners = () => {\n _subscriptions.forEach((listener, key, map) => {\n listener.remove();\n map.delete(key);\n });\n};\n\nconst simulatorId = 'SIMULATOR';\n\nconst setAdUnitID = (adUnitID: string) => {\n CTKInterstitial.setAdUnitID(adUnitID);\n};\n\nconst setTestDevices = (testDevices: string[]) => {\n CTKInterstitial.setTestDevices(testDevices);\n};\n\nconst setTargeting = (targeting: IAdManagerTargeting) => {\n CTKInterstitial.setTargeting(targeting);\n};\n\nconst setServePersonalizedAds = (servePersonalizedAds: boolean) => {\n CTKInterstitial.setServePersonalizedAds(servePersonalizedAds);\n};\n\nconst requestAd = (): Promise<null> => {\n return CTKInterstitial.requestAd();\n};\n\nconst showAd = (): Promise<null> => {\n return CTKInterstitial.showAd();\n};\n\nconst isReady = (callback: (isReady: boolean) => void): Promise<null> => {\n return CTKInterstitial.isReady(callback);\n};\n\nexport default {\n addEventListener,\n removeEventListener,\n removeAllListeners,\n simulatorId,\n setAdUnitID,\n setTestDevices,\n setTargeting,\n requestAd,\n showAd,\n setServePersonalizedAds,\n isReady,\n};\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js b/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js
index 98da5a3..34083e7 100644
--- a/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js
+++ b/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js
@@ -168,7 +168,8 @@ export default (Component => class NativeAdWrapper extends React.Component {
onAdRecordImpression: event => this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent),
targeting: this.props.targeting,
customClickTemplateIds: this.props.customClickTemplateIds,
- adsManager: adsManager.toJSON()
+ adsManager: adsManager.toJSON(),
+ servePersonalizedAds: this.props.servePersonalizedAds
}, this.renderAdComponent(rest));
}
diff --git a/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js.map b/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js.map
index e6595c0..c0f7ed6 100644
--- a/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js.map
+++ b/node_modules/react-native-ad-manager/lib/module/native-ads/withNativeAd.js.map
@@ -1 +1 @@
-{"version":3,"sources":["withNativeAd.tsx"],"names":["React","findNodeHandle","requireNativeComponent","UIManager","TriggerableContext","NativeAdsManager","createErrorFromErrorData","stripProperties","LINKING_ERROR","areSetsEqual","a","b","size","aItem","has","ComponentName","NativeAdView","getViewManagerConfig","Error","Component","NativeAdWrapper","constructor","props","Map","child","handle","clickableChildrenNodeHandles","set","setState","clickableChildren","state","add","newClickableChildren","Set","delete","get","nativeEvent","height","width","style","onSizeChange","nativeAd","onAdLoaded","componentDidMount","reloadAd","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidUpdate","_","prevState","clickableChildrenChanged","viewHandle","registerViewsForInteractionAsync","then","catch","dispatchViewManagerCommand","Commands","renderAdComponent","componentProps","register","registerClickableChild","unregister","unregisterClickableChild","render","_a","adsManager","rest","adSize","adLoaderIndex","correlator","customTemplateIds","validAdSizes","validAdTypes","handleSizeChange","handleAdLoaded","event","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed","onAdCustomClick","onAdRecordImpression","targeting","customClickTemplateIds","toJSON"],"mappings":"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","sourcesContent":["import React, { JSXElementConstructor } from 'react';\nimport {\n findNodeHandle,\n NativeSyntheticEvent,\n requireNativeComponent,\n UIManager,\n ViewProps,\n} from 'react-native';\nimport { TriggerableContext } from './TriggerableViewManager';\nimport { NativeAdsManager } from './NativeAdsManager';\nimport type {\n IAdManagerTargeting,\n TReactNodeHandleRef,\n} from '../AdManagerTypes';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventCustomClick,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventLoadedNative,\n IAdManagerEventLoadedTemplate,\n IAdManagerEventSize,\n IAdManagerEventError,\n} from '../AdManagerEvent';\nimport { createErrorFromErrorData, stripProperties } from '../utils';\nimport { LINKING_ERROR } from '../Constants';\n\n/*\n@property (nonatomic, copy) NSDictionary *targeting;\n\n */\ninterface INativeAdPropsBase extends ViewProps {\n adSize?: string;\n correlator?: string;\n customTemplateIds?: string[];\n validAdSizes?: string[];\n validAdTypes?: ('banner' | 'native' | 'template')[];\n customClickTemplateIds?: string[];\n targeting?: IAdManagerTargeting;\n}\n\ninterface INativeAdNativeProps extends INativeAdPropsBase {\n children: React.ReactNode;\n adsManager: string;\n loaderIndex?: string;\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdCustomClick?: (\n event: NativeSyntheticEvent<IAdManagerEventCustomClick>\n ) => void;\n onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n}\n\ninterface INativeAdProps extends INativeAdPropsBase {\n adsManager: NativeAdsManager;\n adLoaderIndex?: string;\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (\n event:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n ) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdCustomClick?: (event: IAdManagerEventCustomClick) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface INativeAdState {\n clickableChildren: Set<TReactNodeHandleRef>;\n style: {\n width?: number;\n height?: number;\n };\n nativeAd?:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative;\n}\n\nconst areSetsEqual = (\n a: Set<TReactNodeHandleRef>,\n b: Set<TReactNodeHandleRef>\n) => {\n if (a.size !== b.size) return false;\n for (const aItem of a) {\n if (!b.has(aItem)) return false;\n }\n return true;\n};\n\nconst ComponentName = 'CTKAdManageNative';\n\nconst NativeAdView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<INativeAdNativeProps>(ComponentName)\n : () => {\n // eslint-disable-next-line no-undef\n throw new Error(LINKING_ERROR);\n };\n\nexport default (Component: JSXElementConstructor<any>) =>\n class NativeAdWrapper extends React.Component<\n INativeAdProps,\n INativeAdState\n > {\n clickableChildrenNodeHandles = new Map();\n\n constructor(props: INativeAdProps) {\n super(props);\n this.state = {\n // iOS requires a non-null value\n clickableChildren: new Set(),\n style: {},\n };\n }\n\n componentDidMount() {\n this.reloadAd();\n }\n\n registerClickableChild = (child: TReactNodeHandleRef) => {\n const handle = findNodeHandle(child);\n if (!handle) {\n return;\n }\n this.clickableChildrenNodeHandles.set(child, handle);\n this.setState({\n clickableChildren: this.state.clickableChildren.add(handle),\n });\n };\n\n unregisterClickableChild = (child: TReactNodeHandleRef) => {\n this.setState(({ clickableChildren }) => {\n const newClickableChildren = new Set(clickableChildren);\n newClickableChildren.delete(\n this.clickableChildrenNodeHandles.get(child)\n );\n this.clickableChildrenNodeHandles.delete(child);\n return { clickableChildren: newClickableChildren };\n });\n };\n\n handleSizeChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<IAdManagerEventSize>) => {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n };\n\n handleAdLoaded = ({\n nativeEvent,\n }: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >) => {\n this.setState({ nativeAd: nativeEvent });\n this.props.onAdLoaded && this.props.onAdLoaded(nativeEvent);\n };\n\n shouldComponentUpdate(\n nextProps: INativeAdProps,\n nextState: INativeAdState\n ) {\n if (\n Object.entries(this.state).toString() ===\n Object.entries(nextState).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidUpdate(_: INativeAdProps, prevState: INativeAdState) {\n const clickableChildrenChanged = areSetsEqual(\n prevState.clickableChildren,\n this.state.clickableChildren\n );\n if (clickableChildrenChanged) {\n const viewHandle = findNodeHandle(this);\n if (!viewHandle) {\n // Skip registration if the view is no longer valid.\n return;\n }\n\n NativeAdsManager.registerViewsForInteractionAsync(viewHandle, [\n ...this.state.clickableChildren,\n ])\n .then(() => {\n // do nothing for now\n })\n .catch(() => {\n // do nothing for now\n });\n }\n }\n\n reloadAd() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.reloadAd,\n []\n );\n }\n\n renderAdComponent(componentProps: INativeAdProps) {\n if (!this.state.nativeAd) {\n return null;\n }\n\n return (\n <TriggerableContext.Provider\n value={{\n register: this.registerClickableChild,\n unregister: this.unregisterClickableChild,\n }}\n >\n <Component {...componentProps} nativeAd={this.state.nativeAd} />\n </TriggerableContext.Provider>\n );\n }\n\n render() {\n // Cast to any until https://github.com/Microsoft/TypeScript/issues/10727 is resolved\n const _a = this.props,\n { adsManager } = _a,\n rest = stripProperties(_a, ['adsManager', 'onAdLoaded']);\n\n return (\n <NativeAdView\n style={[this.props.style, this.state.style]}\n adSize={this.props.adSize}\n loaderIndex={this.props.adLoaderIndex}\n correlator={this.props.correlator}\n customTemplateIds={this.props.customTemplateIds}\n validAdSizes={this.props.validAdSizes}\n validAdTypes={this.props.validAdTypes}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={this.handleAdLoaded}\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdCustomClick={(event) =>\n this.props.onAdCustomClick &&\n this.props.onAdCustomClick(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)\n }\n targeting={this.props.targeting}\n customClickTemplateIds={this.props.customClickTemplateIds}\n adsManager={adsManager.toJSON()}\n >\n {this.renderAdComponent(rest)}\n </NativeAdView>\n );\n }\n };\n"]}
\ No newline at end of file
+{"version":3,"sources":["withNativeAd.tsx"],"names":["React","findNodeHandle","requireNativeComponent","UIManager","TriggerableContext","NativeAdsManager","createErrorFromErrorData","stripProperties","LINKING_ERROR","areSetsEqual","a","b","size","aItem","has","ComponentName","NativeAdView","getViewManagerConfig","Error","Component","NativeAdWrapper","constructor","props","Map","child","handle","clickableChildrenNodeHandles","set","setState","clickableChildren","state","add","newClickableChildren","Set","delete","get","nativeEvent","height","width","style","onSizeChange","nativeAd","onAdLoaded","componentDidMount","reloadAd","shouldComponentUpdate","nextProps","nextState","Object","entries","toString","componentDidUpdate","_","prevState","clickableChildrenChanged","viewHandle","registerViewsForInteractionAsync","then","catch","dispatchViewManagerCommand","Commands","renderAdComponent","componentProps","register","registerClickableChild","unregister","unregisterClickableChild","render","_a","adsManager","rest","adSize","adLoaderIndex","correlator","customTemplateIds","validAdSizes","validAdTypes","handleSizeChange","handleAdLoaded","event","onAdFailedToLoad","error","onAppEvent","onAdOpened","onAdClosed","onAdCustomClick","onAdRecordImpression","targeting","customClickTemplateIds","toJSON","servePersonalizedAds"],"mappings":"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","sourcesContent":["import React, { JSXElementConstructor } from 'react';\nimport {\n findNodeHandle,\n NativeSyntheticEvent,\n requireNativeComponent,\n UIManager,\n ViewProps,\n} from 'react-native';\nimport { TriggerableContext } from './TriggerableViewManager';\nimport { NativeAdsManager } from './NativeAdsManager';\nimport type {\n IAdManagerTargeting,\n TReactNodeHandleRef,\n} from '../AdManagerTypes';\nimport type {\n IAdManagerEventBase,\n IAdManagerEventCustomClick,\n IAdManagerEventAppEvent,\n IAdManagerEventLoadedBanner,\n IAdManagerEventLoadedNative,\n IAdManagerEventLoadedTemplate,\n IAdManagerEventSize,\n IAdManagerEventError,\n} from '../AdManagerEvent';\nimport { createErrorFromErrorData, stripProperties } from '../utils';\nimport { LINKING_ERROR } from '../Constants';\n\n/*\n@property (nonatomic, copy) NSDictionary *targeting;\n\n */\ninterface INativeAdPropsBase extends ViewProps {\n adSize?: string;\n correlator?: string;\n customTemplateIds?: string[];\n validAdSizes?: string[];\n validAdTypes?: ('banner' | 'native' | 'template')[];\n customClickTemplateIds?: string[];\n targeting?: IAdManagerTargeting;\n servePersonalizedAds?: boolean;\n}\n\ninterface INativeAdNativeProps extends INativeAdPropsBase {\n children: React.ReactNode;\n adsManager: string;\n loaderIndex?: string;\n onSizeChange?: (event: NativeSyntheticEvent<IAdManagerEventSize>) => void;\n onAdLoaded?: (\n event: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >\n ) => void;\n onAdFailedToLoad?: (\n event: NativeSyntheticEvent<IAdManagerEventError>\n ) => void;\n onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;\n onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;\n onAdCustomClick?: (\n event: NativeSyntheticEvent<IAdManagerEventCustomClick>\n ) => void;\n onAdRecordImpression?: (\n event: NativeSyntheticEvent<IAdManagerEventBase>\n ) => void;\n}\n\ninterface INativeAdProps extends INativeAdPropsBase {\n adsManager: NativeAdsManager;\n adLoaderIndex?: string;\n onSizeChange?: (event: IAdManagerEventSize) => void;\n onAdLoaded?: (\n event:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n ) => void;\n onAdFailedToLoad?: (error: Error) => void;\n onAppEvent?: (event: IAdManagerEventAppEvent) => void;\n onAdOpened?: (event: IAdManagerEventBase) => void;\n onAdClosed?: (event: IAdManagerEventBase) => void;\n onAdCustomClick?: (event: IAdManagerEventCustomClick) => void;\n onAdRecordImpression?: (event: IAdManagerEventBase) => void;\n}\n\ninterface INativeAdState {\n clickableChildren: Set<TReactNodeHandleRef>;\n style: {\n width?: number;\n height?: number;\n };\n nativeAd?:\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative;\n}\n\nconst areSetsEqual = (\n a: Set<TReactNodeHandleRef>,\n b: Set<TReactNodeHandleRef>\n) => {\n if (a.size !== b.size) return false;\n for (const aItem of a) {\n if (!b.has(aItem)) return false;\n }\n return true;\n};\n\nconst ComponentName = 'CTKAdManageNative';\n\nconst NativeAdView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<INativeAdNativeProps>(ComponentName)\n : () => {\n // eslint-disable-next-line no-undef\n throw new Error(LINKING_ERROR);\n };\n\nexport default (Component: JSXElementConstructor<any>) =>\n class NativeAdWrapper extends React.Component<\n INativeAdProps,\n INativeAdState\n > {\n clickableChildrenNodeHandles = new Map();\n\n constructor(props: INativeAdProps) {\n super(props);\n this.state = {\n // iOS requires a non-null value\n clickableChildren: new Set(),\n style: {},\n };\n }\n\n componentDidMount() {\n this.reloadAd();\n }\n\n registerClickableChild = (child: TReactNodeHandleRef) => {\n const handle = findNodeHandle(child);\n if (!handle) {\n return;\n }\n this.clickableChildrenNodeHandles.set(child, handle);\n this.setState({\n clickableChildren: this.state.clickableChildren.add(handle),\n });\n };\n\n unregisterClickableChild = (child: TReactNodeHandleRef) => {\n this.setState(({ clickableChildren }) => {\n const newClickableChildren = new Set(clickableChildren);\n newClickableChildren.delete(\n this.clickableChildrenNodeHandles.get(child)\n );\n this.clickableChildrenNodeHandles.delete(child);\n return { clickableChildren: newClickableChildren };\n });\n };\n\n handleSizeChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<IAdManagerEventSize>) => {\n const { height, width } = nativeEvent;\n this.setState({ style: { width, height } });\n this.props.onSizeChange && this.props.onSizeChange(nativeEvent);\n };\n\n handleAdLoaded = ({\n nativeEvent,\n }: NativeSyntheticEvent<\n | IAdManagerEventLoadedBanner\n | IAdManagerEventLoadedTemplate\n | IAdManagerEventLoadedNative\n >) => {\n this.setState({ nativeAd: nativeEvent });\n this.props.onAdLoaded && this.props.onAdLoaded(nativeEvent);\n };\n\n shouldComponentUpdate(\n nextProps: INativeAdProps,\n nextState: INativeAdState\n ) {\n if (\n Object.entries(this.state).toString() ===\n Object.entries(nextState).toString() &&\n Object.entries(this.props).toString() ===\n Object.entries(nextProps).toString()\n ) {\n return false;\n }\n return true;\n }\n\n componentDidUpdate(_: INativeAdProps, prevState: INativeAdState) {\n const clickableChildrenChanged = areSetsEqual(\n prevState.clickableChildren,\n this.state.clickableChildren\n );\n if (clickableChildrenChanged) {\n const viewHandle = findNodeHandle(this);\n if (!viewHandle) {\n // Skip registration if the view is no longer valid.\n return;\n }\n\n NativeAdsManager.registerViewsForInteractionAsync(viewHandle, [\n ...this.state.clickableChildren,\n ])\n .then(() => {\n // do nothing for now\n })\n .catch(() => {\n // do nothing for now\n });\n }\n }\n\n reloadAd() {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(this),\n UIManager.getViewManagerConfig(ComponentName).Commands.reloadAd,\n []\n );\n }\n\n renderAdComponent(componentProps: INativeAdProps) {\n if (!this.state.nativeAd) {\n return null;\n }\n\n return (\n <TriggerableContext.Provider\n value={{\n register: this.registerClickableChild,\n unregister: this.unregisterClickableChild,\n }}\n >\n <Component {...componentProps} nativeAd={this.state.nativeAd} />\n </TriggerableContext.Provider>\n );\n }\n\n render() {\n // Cast to any until https://github.com/Microsoft/TypeScript/issues/10727 is resolved\n const _a = this.props,\n { adsManager } = _a,\n rest = stripProperties(_a, ['adsManager', 'onAdLoaded']);\n\n return (\n <NativeAdView\n style={[this.props.style, this.state.style]}\n adSize={this.props.adSize}\n loaderIndex={this.props.adLoaderIndex}\n correlator={this.props.correlator}\n customTemplateIds={this.props.customTemplateIds}\n validAdSizes={this.props.validAdSizes}\n validAdTypes={this.props.validAdTypes}\n onSizeChange={this.handleSizeChange}\n onAdLoaded={this.handleAdLoaded}\n onAdFailedToLoad={(event) =>\n this.props.onAdFailedToLoad &&\n this.props.onAdFailedToLoad(\n createErrorFromErrorData(event.nativeEvent.error)\n )\n }\n onAppEvent={(event) =>\n this.props.onAppEvent && this.props.onAppEvent(event.nativeEvent)\n }\n onAdOpened={(event) =>\n this.props.onAdOpened && this.props.onAdOpened(event.nativeEvent)\n }\n onAdClosed={(event) =>\n this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)\n }\n onAdCustomClick={(event) =>\n this.props.onAdCustomClick &&\n this.props.onAdCustomClick(event.nativeEvent)\n }\n onAdRecordImpression={(event) =>\n this.props.onAdRecordImpression &&\n this.props.onAdRecordImpression(event.nativeEvent)\n }\n targeting={this.props.targeting}\n customClickTemplateIds={this.props.customClickTemplateIds}\n adsManager={adsManager.toJSON()}\n servePersonalizedAds={this.props.servePersonalizedAds}\n >\n {this.renderAdComponent(rest)}\n </NativeAdView>\n );\n }\n };\n"]}
\ No newline at end of file
diff --git a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerAdaptiveBanner.d.ts b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerAdaptiveBanner.d.ts
index 9db41d1..a8d9f57 100644
--- a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerAdaptiveBanner.d.ts
+++ b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerAdaptiveBanner.d.ts
@@ -20,6 +20,7 @@ interface IAdManagerAdaptiveBannerPropsBase extends ViewProps {
*/
testDevices?: string[];
targeting?: IAdManagerTargeting;
+ servePersonalizedAds?: boolean;
}
interface IAdManagerAdaptiveBannerProps extends IAdManagerAdaptiveBannerPropsBase {
/**
diff --git a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerBanner.d.ts b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerBanner.d.ts
index e23c639..ee0b6ea 100644
--- a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerBanner.d.ts
+++ b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerBanner.d.ts
@@ -31,6 +31,7 @@ interface IAdManagerBannerPropsBase extends ViewProps {
*/
testDevices?: string[];
targeting?: IAdManagerTargeting;
+ servePersonalizedAds?: boolean;
}
interface IAdManagerBannerProps extends IAdManagerBannerPropsBase {
onError?: (eventData: Error) => void;
diff --git a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerInterstitial.d.ts b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerInterstitial.d.ts
index bf01c95..2f49f53 100644
--- a/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerInterstitial.d.ts
+++ b/node_modules/react-native-ad-manager/lib/typescript/CTKAdManagerInterstitial.d.ts
@@ -14,6 +14,7 @@ declare const _default: {
setTargeting: (targeting: IAdManagerTargeting) => void;
requestAd: () => Promise<null>;
showAd: () => Promise<null>;
+ setServePersonalizedAds: (servePersonalizedAds: boolean) => void;
isReady: (callback: (isReady: boolean) => void) => Promise<null>;
};
export default _default;
diff --git a/node_modules/react-native-ad-manager/lib/typescript/__tests__/index.test.d.ts b/node_modules/react-native-ad-manager/lib/typescript/__tests__/index.test.d.ts
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/react-native-ad-manager/lib/typescript/native-ads/withNativeAd.d.ts b/node_modules/react-native-ad-manager/lib/typescript/native-ads/withNativeAd.d.ts
index adb3168..b6c383a 100644
--- a/node_modules/react-native-ad-manager/lib/typescript/native-ads/withNativeAd.d.ts
+++ b/node_modules/react-native-ad-manager/lib/typescript/native-ads/withNativeAd.d.ts
@@ -11,6 +11,7 @@ interface INativeAdPropsBase extends ViewProps {
validAdTypes?: ('banner' | 'native' | 'template')[];
customClickTemplateIds?: string[];
targeting?: IAdManagerTargeting;
+ servePersonalizedAds?: boolean;
}
interface INativeAdProps extends INativeAdPropsBase {
adsManager: NativeAdsManager;
diff --git a/node_modules/react-native-ad-manager/src/CTKAdManagerAdaptiveBanner.tsx b/node_modules/react-native-ad-manager/src/CTKAdManagerAdaptiveBanner.tsx
index b20a336..0c8a750 100644
--- a/node_modules/react-native-ad-manager/src/CTKAdManagerAdaptiveBanner.tsx
+++ b/node_modules/react-native-ad-manager/src/CTKAdManagerAdaptiveBanner.tsx
@@ -44,6 +44,8 @@ interface IAdManagerAdaptiveBannerPropsBase extends ViewProps {
testDevices?: string[];
targeting?: IAdManagerTargeting;
+
+ servePersonalizedAds?: boolean;
}
interface IAdManagerAdaptiveBannerProps
diff --git a/node_modules/react-native-ad-manager/src/CTKAdManagerBanner.tsx b/node_modules/react-native-ad-manager/src/CTKAdManagerBanner.tsx
index d3130cb..665ceb2 100644
--- a/node_modules/react-native-ad-manager/src/CTKAdManagerBanner.tsx
+++ b/node_modules/react-native-ad-manager/src/CTKAdManagerBanner.tsx
@@ -6,7 +6,7 @@ import {
findNodeHandle,
NativeSyntheticEvent,
DeviceEventEmitter,
- EventSubscription
+ EventSubscription,
} from 'react-native';
import { createErrorFromErrorData } from './utils';
import type {
@@ -52,6 +52,8 @@ interface IAdManagerBannerPropsBase extends ViewProps {
testDevices?: string[];
targeting?: IAdManagerTargeting;
+
+ servePersonalizedAds?: boolean;
}
interface IAdManagerBannerProps extends IAdManagerBannerPropsBase {
@@ -92,7 +94,9 @@ interface IAdManagerBannerNativeProps extends IAdManagerBannerPropsBase {
onAppEvent?: (event: NativeSyntheticEvent<IAdManagerEventAppEvent>) => void;
onAdOpened?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;
onAdClosed?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;
- onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;
+ onAdRecordImpression?: (
+ event: NativeSyntheticEvent<IAdManagerEventBase>
+ ) => void;
}
const ComponentName = 'CTKBannerView';
@@ -113,7 +117,10 @@ export class Banner extends React.Component<
constructor(props: IAdManagerBannerProps) {
super(props);
- this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(props, 'onError');
+ this.hasOnErrorFromParent = Object.prototype.hasOwnProperty.call(
+ props,
+ 'onError'
+ );
this.handleSizeChange = this.handleSizeChange.bind(this);
this.state = {
style: {},
@@ -137,12 +144,15 @@ export class Banner extends React.Component<
}
componentDidMount() {
- this.customListener= DeviceEventEmitter.addListener('onError',eventData=>{
- this.setState({ error: eventData });
- if (this.hasOnErrorFromParent && this.props.onError) {
- this.props.onError(eventData);
+ this.customListener = DeviceEventEmitter.addListener(
+ 'onError',
+ (eventData) => {
+ this.setState({ error: eventData });
+ if (this.hasOnErrorFromParent && this.props.onError) {
+ this.props.onError(eventData);
+ }
}
- });
+ );
this.loadBanner();
}
@@ -191,7 +201,8 @@ export class Banner extends React.Component<
this.props.onAdClosed && this.props.onAdClosed(event.nativeEvent)
}
onAdRecordImpression={(event) =>
- this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)
+ this.props.onAdRecordImpression &&
+ this.props.onAdRecordImpression(event.nativeEvent)
}
/>
);
diff --git a/node_modules/react-native-ad-manager/src/CTKAdManagerInterstitial.ts b/node_modules/react-native-ad-manager/src/CTKAdManagerInterstitial.ts
index b2ab9ac..ec4490a 100644
--- a/node_modules/react-native-ad-manager/src/CTKAdManagerInterstitial.ts
+++ b/node_modules/react-native-ad-manager/src/CTKAdManagerInterstitial.ts
@@ -101,17 +101,21 @@ const setTargeting = (targeting: IAdManagerTargeting) => {
CTKInterstitial.setTargeting(targeting);
};
+const setServePersonalizedAds = (servePersonalizedAds: boolean) => {
+ CTKInterstitial.setServePersonalizedAds(servePersonalizedAds);
+};
+
const requestAd = (): Promise<null> => {
return CTKInterstitial.requestAd();
-}
+};
const showAd = (): Promise<null> => {
return CTKInterstitial.showAd();
-}
+};
const isReady = (callback: (isReady: boolean) => void): Promise<null> => {
return CTKInterstitial.isReady(callback);
-}
+};
export default {
addEventListener,
@@ -123,5 +127,6 @@ export default {
setTargeting,
requestAd,
showAd,
- isReady
-}
+ setServePersonalizedAds,
+ isReady,
+};
diff --git a/node_modules/react-native-ad-manager/src/__tests__/index.test.tsx b/node_modules/react-native-ad-manager/src/__tests__/index.test.tsx
new file mode 100644
index 0000000..bf84291
--- /dev/null
+++ b/node_modules/react-native-ad-manager/src/__tests__/index.test.tsx
@@ -0,0 +1 @@
+it.todo('write a test');
diff --git a/node_modules/react-native-ad-manager/src/native-ads/withNativeAd.tsx b/node_modules/react-native-ad-manager/src/native-ads/withNativeAd.tsx
index fef346b..544f701 100644
--- a/node_modules/react-native-ad-manager/src/native-ads/withNativeAd.tsx
+++ b/node_modules/react-native-ad-manager/src/native-ads/withNativeAd.tsx
@@ -37,6 +37,7 @@ interface INativeAdPropsBase extends ViewProps {
validAdTypes?: ('banner' | 'native' | 'template')[];
customClickTemplateIds?: string[];
targeting?: IAdManagerTargeting;
+ servePersonalizedAds?: boolean;
}
interface INativeAdNativeProps extends INativeAdPropsBase {
@@ -60,7 +61,9 @@ interface INativeAdNativeProps extends INativeAdPropsBase {
onAdCustomClick?: (
event: NativeSyntheticEvent<IAdManagerEventCustomClick>
) => void;
- onAdRecordImpression?: (event: NativeSyntheticEvent<IAdManagerEventBase>) => void;
+ onAdRecordImpression?: (
+ event: NativeSyntheticEvent<IAdManagerEventBase>
+ ) => void;
}
interface INativeAdProps extends INativeAdPropsBase {
@@ -276,11 +279,13 @@ export default (Component: JSXElementConstructor<any>) =>
this.props.onAdCustomClick(event.nativeEvent)
}
onAdRecordImpression={(event) =>
- this.props.onAdRecordImpression && this.props.onAdRecordImpression(event.nativeEvent)
+ this.props.onAdRecordImpression &&
+ this.props.onAdRecordImpression(event.nativeEvent)
}
targeting={this.props.targeting}
customClickTemplateIds={this.props.customClickTemplateIds}
adsManager={adsManager.toJSON()}
+ servePersonalizedAds={this.props.servePersonalizedAds}
>
{this.renderAdComponent(rest)}
</NativeAdView>