react-native-google-mobile-ads 13.4.0 → 13.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsBannerAdViewManager.java +8 -1
  2. package/docs/displaying-ads.mdx +5 -3
  3. package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerComponent.h +1 -0
  4. package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerComponent.m +9 -5
  5. package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerView.mm +15 -9
  6. package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerViewManager.mm +14 -0
  7. package/lib/commonjs/ads/BannerAd.js +19 -11
  8. package/lib/commonjs/ads/BannerAd.js.map +1 -1
  9. package/lib/commonjs/ads/GAMBannerAd.js +5 -0
  10. package/lib/commonjs/ads/GAMBannerAd.js.map +1 -1
  11. package/lib/commonjs/ads/GoogleMobileAdsBannerViewNativeComponent.js +1 -1
  12. package/lib/commonjs/ads/GoogleMobileAdsBannerViewNativeComponent.js.map +1 -1
  13. package/lib/commonjs/version.js +1 -1
  14. package/lib/module/ads/BannerAd.js +15 -9
  15. package/lib/module/ads/BannerAd.js.map +1 -1
  16. package/lib/module/ads/GAMBannerAd.js +5 -0
  17. package/lib/module/ads/GAMBannerAd.js.map +1 -1
  18. package/lib/module/ads/GoogleMobileAdsBannerViewNativeComponent.js +1 -1
  19. package/lib/module/ads/GoogleMobileAdsBannerViewNativeComponent.js.map +1 -1
  20. package/lib/module/version.js +1 -1
  21. package/lib/typescript/ads/BannerAd.d.ts +6 -2
  22. package/lib/typescript/ads/BannerAd.d.ts.map +1 -1
  23. package/lib/typescript/ads/GAMBannerAd.d.ts +1 -0
  24. package/lib/typescript/ads/GAMBannerAd.d.ts.map +1 -1
  25. package/lib/typescript/ads/GoogleMobileAdsBannerViewNativeComponent.d.ts +1 -0
  26. package/lib/typescript/ads/GoogleMobileAdsBannerViewNativeComponent.d.ts.map +1 -1
  27. package/lib/typescript/index.d.ts +1 -1
  28. package/lib/typescript/version.d.ts +1 -1
  29. package/package.json +1 -1
  30. package/src/ads/BannerAd.tsx +14 -3
  31. package/src/ads/GAMBannerAd.tsx +6 -0
  32. package/src/ads/GoogleMobileAdsBannerViewNativeComponent.ts +2 -1
  33. package/src/version.ts +1 -1
@@ -62,6 +62,7 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
62
62
  private final String EVENT_SIZE_CHANGE = "onSizeChange";
63
63
  private final String EVENT_APP_EVENT = "onAppEvent";
64
64
  private final int COMMAND_ID_RECORD_MANUAL_IMPRESSION = 1;
65
+ private final int COMMAND_ID_LOAD = 2;
65
66
 
66
67
  @Nonnull
67
68
  @Override
@@ -85,7 +86,9 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
85
86
  @Nullable
86
87
  @Override
87
88
  public Map<String, Integer> getCommandsMap() {
88
- return MapBuilder.of("recordManualImpression", COMMAND_ID_RECORD_MANUAL_IMPRESSION);
89
+ return MapBuilder.of(
90
+ "recordManualImpression", COMMAND_ID_RECORD_MANUAL_IMPRESSION,
91
+ "load", COMMAND_ID_LOAD);
89
92
  }
90
93
 
91
94
  @Override
@@ -99,6 +102,10 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
99
102
  if (adView instanceof AdManagerAdView) {
100
103
  ((AdManagerAdView) adView).recordManualImpression();
101
104
  }
105
+ } else if (commandIdInt == COMMAND_ID_LOAD) {
106
+ BaseAdView adView = getAdView(reactViewGroup);
107
+ AdRequest request = reactViewGroup.getRequest();
108
+ adView.loadAd(request);
102
109
  }
103
110
  }
104
111
 
@@ -406,8 +406,8 @@ import { BannerAd, BannerAdSize, TestIds } from 'react-native-google-mobile-ads'
406
406
  const adUnitId = __DEV__ ? TestIds.ADAPTIVE_BANNER : 'ca-app-pub-xxxxxxxxxxxxx/yyyyyyyyyyyyyy';
407
407
 
408
408
  function App() {
409
+ const bannerRef = useRef<BannerAd>(null);
409
410
  const appState = useRef(AppState.currentState);
410
- const [key, setKey] = useState(`banner-${Date.now()}`);
411
411
 
412
412
  // WKWebView can terminate if app is in a "suspended state", resulting in an empty banner when app returns to foreground.
413
413
  // A Google Mobile Ads Advisor suggests requesting a new ad when the app is foregrounded.
@@ -415,7 +415,7 @@ function App() {
415
415
  useEffect(() => {
416
416
  const subscription = AppState.addEventListener('change', nextAppState => {
417
417
  if (appState.current.match(/background/) && nextAppState === 'active') {
418
- setKey(`banner-${Date.now()}`);
418
+ bannerRef.current?.load();
419
419
  }
420
420
  appState.current = nextAppState;
421
421
  });
@@ -425,7 +425,9 @@ function App() {
425
425
  };
426
426
  }, []);
427
427
 
428
- return <BannerAd key={key} unitId={adUnitId} size={BannerAdSize.ANCHORED_ADAPTIVE_BANNER} />;
428
+ return (
429
+ <BannerAd ref={bannerRef} unitId={adUnitId} size={BannerAdSize.ANCHORED_ADAPTIVE_BANNER} />
430
+ );
429
431
  }
430
432
  ```
431
433
 
@@ -36,6 +36,7 @@
36
36
  @property(nonatomic, copy) RCTBubblingEventBlock onNativeEvent;
37
37
 
38
38
  - (void)requestAd;
39
+ - (void)load;
39
40
  - (void)recordManualImpression;
40
41
 
41
42
  @end
@@ -122,13 +122,17 @@
122
122
  typeof(self) strongSelf = weakSelf;
123
123
  if (strongSelf) {
124
124
  [strongSelf sendEvent:@"onPaid"
125
- payload:@{
126
- @"value" : value.value,
127
- @"precision" : @(value.precision),
128
- @"currency" : value.currencyCode,
129
- }];
125
+ payload:@{
126
+ @"value" : value.value,
127
+ @"precision" : @(value.precision),
128
+ @"currency" : value.currencyCode,
129
+ }];
130
130
  }
131
131
  };
132
+ [self load];
133
+ }
134
+
135
+ - (void)load {
132
136
  [_banner loadRequest:[RNGoogleMobileAdsCommon buildAdRequest:_request]];
133
137
  [self sendEvent:@"onSizeChange"
134
138
  payload:@{
@@ -146,21 +146,27 @@ using namespace facebook::react;
146
146
  [self addSubview:_banner];
147
147
  _banner.adUnitID = _unitId;
148
148
  [self setRequested:YES];
149
- [_banner loadRequest:[RNGoogleMobileAdsCommon buildAdRequest:_request]];
150
- if (_eventEmitter != nullptr) {
151
- std::dynamic_pointer_cast<const facebook::react::RNGoogleMobileAdsBannerViewEventEmitter>(
152
- _eventEmitter)
153
- ->onNativeEvent(facebook::react::RNGoogleMobileAdsBannerViewEventEmitter::OnNativeEvent{
154
- .type = "onSizeChange",
155
- .width = _banner.bounds.size.width,
156
- .height = _banner.bounds.size.height});
157
- }
149
+ [self load];
150
+ }
151
+ }
152
+
153
+ - (void)load {
154
+ [_banner loadRequest:[RNGoogleMobileAdsCommon buildAdRequest:_request]];
155
+ if (_eventEmitter != nullptr) {
156
+ std::dynamic_pointer_cast<const facebook::react::RNGoogleMobileAdsBannerViewEventEmitter>(
157
+ _eventEmitter)
158
+ ->onNativeEvent(facebook::react::RNGoogleMobileAdsBannerViewEventEmitter::OnNativeEvent{
159
+ .type = "onSizeChange",
160
+ .width = _banner.bounds.size.width,
161
+ .height = _banner.bounds.size.height});
158
162
  }
159
163
  }
160
164
 
161
165
  - (void)handleCommand:(const NSString *)commandName args:(const NSArray *)args {
162
166
  if ([commandName isEqual:@"recordManualImpression"]) {
163
167
  [self recordManualImpression];
168
+ } else if ([commandName isEqual:@"load"]) {
169
+ [self load];
164
170
  }
165
171
  }
166
172
 
@@ -55,6 +55,20 @@ RCT_EXPORT_METHOD(recordManualImpression : (nonnull NSNumber *)reactTag) {
55
55
  #endif
56
56
  }
57
57
 
58
+ RCT_EXPORT_METHOD(load : (nonnull NSNumber *)reactTag) {
59
+ #if !TARGET_OS_MACCATALYST
60
+ [self.bridge.uiManager
61
+ addUIBlock:^(RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
62
+ RNGoogleMobileAdsBannerComponent *banner = viewRegistry[reactTag];
63
+ if (!banner || ![banner isKindOfClass:[RNGoogleMobileAdsBannerComponent class]]) {
64
+ RCTLogError(@"Cannot find NativeView with tag #%@", reactTag);
65
+ return;
66
+ }
67
+ [banner load];
68
+ }];
69
+ #endif
70
+ }
71
+
58
72
  #ifdef RCT_NEW_ARCH_ENABLE
59
73
 
60
74
  #else
@@ -3,10 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.BannerAd = BannerAd;
7
- var _react = _interopRequireDefault(require("react"));
6
+ exports.BannerAd = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _BaseAd = require("./BaseAd");
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ var _GoogleMobileAdsBannerViewNativeComponent = require("./GoogleMobileAdsBannerViewNativeComponent");
10
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
12
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /*
11
13
  * Copyright (c) 2016-present Invertase Limited & Contributors
12
14
  *
@@ -23,13 +25,19 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
23
25
  * limitations under the License.
24
26
  *
25
27
  */
26
- function BannerAd(_ref) {
27
- let {
28
- size,
29
- ...props
30
- } = _ref;
31
- return /*#__PURE__*/_react.default.createElement(_BaseAd.BaseAd, _extends({
32
- sizes: [size]
33
- }, props));
28
+ class BannerAd extends _react.default.Component {
29
+ ref = /*#__PURE__*/(0, _react.createRef)();
30
+ load() {
31
+ if (this.ref.current) {
32
+ _GoogleMobileAdsBannerViewNativeComponent.Commands.load(this.ref.current);
33
+ }
34
+ }
35
+ render() {
36
+ return /*#__PURE__*/_react.default.createElement(_BaseAd.BaseAd, _extends({
37
+ ref: this.ref,
38
+ sizes: [this.props.size]
39
+ }, this.props));
40
+ }
34
41
  }
42
+ exports.BannerAd = BannerAd;
35
43
  //# sourceMappingURL=BannerAd.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_BaseAd","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","BannerAd","_ref","size","props","createElement","BaseAd","sizes"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAkC,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA,KAnBlC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAMO,SAASQ,QAAQA,CAAAC,IAAA,EAAoC;EAAA,IAAnC;IAAEC,IAAI;IAAE,GAAGC;EAAqB,CAAC,GAAAF,IAAA;EACxD,oBAAOtB,MAAA,CAAAM,OAAA,CAAAmB,aAAA,CAACtB,OAAA,CAAAuB,MAAM,EAAAnB,QAAA;IAACoB,KAAK,EAAE,CAACJ,IAAI;EAAE,GAAKC,KAAK,CAAG,CAAC;AAC7C"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","BannerAd","React","Component","ref","createRef","load","current","Commands","render","createElement","BaseAd","sizes","props","size","exports"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,yCAAA,GAAAF,OAAA;AAAiG,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAL,wBAAAS,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA,KApBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,MAAMI,QAAQ,SAASC,cAAK,CAACC,SAAS,CAAgB;EACnDC,GAAG,gBAAG,IAAAC,gBAAS,EAAqD,CAAC;EAE7EC,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACF,GAAG,CAACG,OAAO,EAAE;MACpBC,kDAAQ,CAACF,IAAI,CAAC,IAAI,CAACF,GAAG,CAACG,OAAO,CAAC;IACjC;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,oBAAO5C,MAAA,CAAAY,OAAA,CAAAiC,aAAA,CAAC1C,OAAA,CAAA2C,MAAM,EAAAnB,QAAA;MAACY,GAAG,EAAE,IAAI,CAACA,GAAI;MAACQ,KAAK,EAAE,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI;IAAE,GAAK,IAAI,CAACD,KAAK,CAAG,CAAC;EAC5E;AACF;AAACE,OAAA,CAAAd,QAAA,GAAAA,QAAA"}
@@ -32,6 +32,11 @@ class GAMBannerAd extends _react.default.Component {
32
32
  _GoogleMobileAdsBannerViewNativeComponent.Commands.recordManualImpression(this.ref.current);
33
33
  }
34
34
  }
35
+ load() {
36
+ if (this.ref.current) {
37
+ _GoogleMobileAdsBannerViewNativeComponent.Commands.load(this.ref.current);
38
+ }
39
+ }
35
40
  render() {
36
41
  return /*#__PURE__*/_react.default.createElement(_BaseAd.BaseAd, _extends({
37
42
  ref: this.ref
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","GAMBannerAd","React","Component","ref","createRef","recordManualImpression","current","Commands","render","createElement","BaseAd","props","exports"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,yCAAA,GAAAF,OAAA;AAAiG,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAL,wBAAAS,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA,KApBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,MAAMI,WAAW,SAASC,cAAK,CAACC,SAAS,CAAmB;EACzDC,GAAG,gBAAG,IAAAC,gBAAS,EAAqD,CAAC;EAE7EC,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACF,GAAG,CAACG,OAAO,EAAE;MACpBC,kDAAQ,CAACF,sBAAsB,CAAC,IAAI,CAACF,GAAG,CAACG,OAAO,CAAC;IACnD;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,oBAAO5C,MAAA,CAAAY,OAAA,CAAAiC,aAAA,CAAC1C,OAAA,CAAA2C,MAAM,EAAAnB,QAAA;MAACY,GAAG,EAAE,IAAI,CAACA;IAAI,GAAK,IAAI,CAACQ,KAAK,CAAG,CAAC;EAClD;AACF;AAACC,OAAA,CAAAZ,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","GAMBannerAd","React","Component","ref","createRef","recordManualImpression","current","Commands","load","render","createElement","BaseAd","props","exports"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":"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"}
@@ -8,7 +8,7 @@ var _codegenNativeComponent = _interopRequireDefault(require("react-native/Libra
8
8
  var _codegenNativeCommands = _interopRequireDefault(require("react-native/Libraries/Utilities/codegenNativeCommands"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  const Commands = (0, _codegenNativeCommands.default)({
11
- supportedCommands: ['recordManualImpression']
11
+ supportedCommands: ['recordManualImpression', 'load']
12
12
  });
13
13
  exports.Commands = Commands;
14
14
  var _default = (0, _codegenNativeComponent.default)('RNGoogleMobileAdsBannerView');
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","_codegenNativeCommands","obj","__esModule","default","Commands","codegenNativeCommands","supportedCommands","exports","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA2F,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA6BpF,MAAMG,QAAwB,GAAG,IAAAC,8BAAqB,EAAiB;EAC5EC,iBAAiB,EAAE,CAAC,wBAAwB;AAC9C,CAAC,CAAC;AAACC,OAAA,CAAAH,QAAA,GAAAA,QAAA;AAAA,IAAAI,QAAA,GAEY,IAAAC,+BAAsB,EACnC,6BACF,CAAC;AAAAF,OAAA,CAAAJ,OAAA,GAAAK,QAAA"}
1
+ {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","_codegenNativeCommands","obj","__esModule","default","Commands","codegenNativeCommands","supportedCommands","exports","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA2F,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA8BpF,MAAMG,QAAwB,GAAG,IAAAC,8BAAqB,EAAiB;EAC5EC,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,MAAM;AACtD,CAAC,CAAC;AAACC,OAAA,CAAAH,QAAA,GAAAA,QAAA;AAAA,IAAAI,QAAA,GAEY,IAAAC,+BAAsB,EACnC,6BACF,CAAC;AAAAF,OAAA,CAAAJ,OAAA,GAAAK,QAAA"}
@@ -5,6 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.version = void 0;
7
7
  // Generated by genversion.
8
- const version = '13.4.0';
8
+ const version = '13.5.0';
9
9
  exports.version = version;
10
10
  //# sourceMappingURL=version.js.map
@@ -16,15 +16,21 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
16
16
  *
17
17
  */
18
18
 
19
- import React from 'react';
19
+ import React, { createRef } from 'react';
20
20
  import { BaseAd } from './BaseAd';
21
- export function BannerAd(_ref) {
22
- let {
23
- size,
24
- ...props
25
- } = _ref;
26
- return /*#__PURE__*/React.createElement(BaseAd, _extends({
27
- sizes: [size]
28
- }, props));
21
+ import { Commands } from './GoogleMobileAdsBannerViewNativeComponent';
22
+ export class BannerAd extends React.Component {
23
+ ref = /*#__PURE__*/createRef();
24
+ load() {
25
+ if (this.ref.current) {
26
+ Commands.load(this.ref.current);
27
+ }
28
+ }
29
+ render() {
30
+ return /*#__PURE__*/React.createElement(BaseAd, _extends({
31
+ ref: this.ref,
32
+ sizes: [this.props.size]
33
+ }, this.props));
34
+ }
29
35
  }
30
36
  //# sourceMappingURL=BannerAd.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","BaseAd","BannerAd","_ref","size","props","createElement","_extends","sizes"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,MAAM,QAAQ,UAAU;AAEjC,OAAO,SAASC,QAAQA,CAAAC,IAAA,EAAoC;EAAA,IAAnC;IAAEC,IAAI;IAAE,GAAGC;EAAqB,CAAC,GAAAF,IAAA;EACxD,oBAAOH,KAAA,CAAAM,aAAA,CAACL,MAAM,EAAAM,QAAA;IAACC,KAAK,EAAE,CAACJ,IAAI;EAAE,GAAKC,KAAK,CAAG,CAAC;AAC7C"}
1
+ {"version":3,"names":["React","createRef","BaseAd","Commands","BannerAd","Component","ref","load","current","render","createElement","_extends","sizes","props","size"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,QAAQ,SAASJ,KAAK,CAACK,SAAS,CAAgB;EACnDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,IAAI,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACjC;EACF;EAEAC,MAAMA,CAAA,EAAG;IACP,oBAAOT,KAAA,CAAAU,aAAA,CAACR,MAAM,EAAAS,QAAA;MAACL,GAAG,EAAE,IAAI,CAACA,GAAI;MAACM,KAAK,EAAE,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI;IAAE,GAAK,IAAI,CAACD,KAAK,CAAG,CAAC;EAC5E;AACF"}
@@ -26,6 +26,11 @@ export class GAMBannerAd extends React.Component {
26
26
  Commands.recordManualImpression(this.ref.current);
27
27
  }
28
28
  }
29
+ load() {
30
+ if (this.ref.current) {
31
+ Commands.load(this.ref.current);
32
+ }
33
+ }
29
34
  render() {
30
35
  return /*#__PURE__*/React.createElement(BaseAd, _extends({
31
36
  ref: this.ref
@@ -1 +1 @@
1
- {"version":3,"names":["React","createRef","BaseAd","Commands","GAMBannerAd","Component","ref","recordManualImpression","current","render","createElement","_extends","props"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,WAAW,SAASJ,KAAK,CAACK,SAAS,CAAmB;EACzDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,sBAAsB,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACnD;EACF;EAEAC,MAAMA,CAAA,EAAG;IACP,oBAAOT,KAAA,CAAAU,aAAA,CAACR,MAAM,EAAAS,QAAA;MAACL,GAAG,EAAE,IAAI,CAACA;IAAI,GAAK,IAAI,CAACM,KAAK,CAAG,CAAC;EAClD;AACF"}
1
+ {"version":3,"names":["React","createRef","BaseAd","Commands","GAMBannerAd","Component","ref","recordManualImpression","current","load","render","createElement","_extends","props"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,WAAW,SAASJ,KAAK,CAACK,SAAS,CAAmB;EACzDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,sBAAsB,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACnD;EACF;EAEAC,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACH,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACM,IAAI,CAAC,IAAI,CAACH,GAAG,CAACE,OAAO,CAAC;IACjC;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,oBAAOV,KAAA,CAAAW,aAAA,CAACT,MAAM,EAAAU,QAAA;MAACN,GAAG,EAAE,IAAI,CAACA;IAAI,GAAK,IAAI,CAACO,KAAK,CAAG,CAAC;EAClD;AACF"}
@@ -1,7 +1,7 @@
1
1
  import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
2
2
  import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
3
3
  export const Commands = codegenNativeCommands({
4
- supportedCommands: ['recordManualImpression']
4
+ supportedCommands: ['recordManualImpression', 'load']
5
5
  });
6
6
  export default codegenNativeComponent('RNGoogleMobileAdsBannerView');
7
7
  //# sourceMappingURL=GoogleMobileAdsBannerViewNativeComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["codegenNativeComponent","codegenNativeCommands","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AAC5F,OAAOC,qBAAqB,MAAM,wDAAwD;AA6B1F,OAAO,MAAMC,QAAwB,GAAGD,qBAAqB,CAAiB;EAC5EE,iBAAiB,EAAE,CAAC,wBAAwB;AAC9C,CAAC,CAAC;AAEF,eAAeH,sBAAsB,CACnC,6BACF,CAAC"}
1
+ {"version":3,"names":["codegenNativeComponent","codegenNativeCommands","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AAC5F,OAAOC,qBAAqB,MAAM,wDAAwD;AA8B1F,OAAO,MAAMC,QAAwB,GAAGD,qBAAqB,CAAiB;EAC5EE,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,MAAM;AACtD,CAAC,CAAC;AAEF,eAAeH,sBAAsB,CACnC,6BACF,CAAC"}
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '13.4.0';
2
+ export const version = '13.5.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -1,4 +1,8 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { BannerAdProps } from '../types/BannerAdProps';
3
- export declare function BannerAd({ size, ...props }: BannerAdProps): JSX.Element;
3
+ export declare class BannerAd extends React.Component<BannerAdProps> {
4
+ private ref;
5
+ load(): void;
6
+ render(): JSX.Element;
7
+ }
4
8
  //# sourceMappingURL=BannerAd.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/BannerAd.tsx"],"names":[],"mappings":";AAkBA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,eAEzD"}
1
+ {"version":3,"file":"BannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/BannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD,qBAAa,QAAS,SAAQ,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAmE;IAE9E,IAAI;IAMJ,MAAM;CAGP"}
@@ -3,6 +3,7 @@ import { GAMBannerAdProps } from '../types/BannerAdProps';
3
3
  export declare class GAMBannerAd extends React.Component<GAMBannerAdProps> {
4
4
  private ref;
5
5
  recordManualImpression(): void;
6
+ load(): void;
6
7
  render(): JSX.Element;
7
8
  }
8
9
  //# sourceMappingURL=GAMBannerAd.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GAMBannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/GAMBannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAChE,OAAO,CAAC,GAAG,CAAmE;IAE9E,sBAAsB;IAMtB,MAAM;CAGP"}
1
+ {"version":3,"file":"GAMBannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/GAMBannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAChE,OAAO,CAAC,GAAG,CAAmE;IAE9E,sBAAsB;IAMtB,IAAI;IAMJ,MAAM;CAGP"}
@@ -23,6 +23,7 @@ export interface NativeProps extends ViewProps {
23
23
  export declare type ComponentType = HostComponent<NativeProps>;
24
24
  interface NativeCommands {
25
25
  recordManualImpression: (viewRef: React.ElementRef<ComponentType>) => void;
26
+ load: (viewRef: React.ElementRef<ComponentType>) => void;
26
27
  }
27
28
  export declare const Commands: NativeCommands;
28
29
  declare const _default: HostComponent<NativeProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleMobileAdsBannerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAI7F,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB,EAAE,OAAO,CAAC;IAClC,aAAa,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,oBAAY,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEvD,UAAU,cAAc;IACtB,sBAAsB,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;CAC5E;AAED,eAAO,MAAM,QAAQ,EAAE,cAErB,CAAC;;AAEH,wBAEgC"}
1
+ {"version":3,"file":"GoogleMobileAdsBannerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAI7F,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB,EAAE,OAAO,CAAC;IAClC,aAAa,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,oBAAY,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEvD,UAAU,cAAc;IACtB,sBAAsB,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC3E,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;CAC1D;AAED,eAAO,MAAM,QAAQ,EAAE,cAErB,CAAC;;AAEH,wBAEgC"}
@@ -1,4 +1,4 @@
1
- export declare const SDK_VERSION = "13.4.0";
1
+ export declare const SDK_VERSION = "13.5.0";
2
2
  export { default, MobileAds } from './MobileAds';
3
3
  export { AdsConsentDebugGeography } from './AdsConsentDebugGeography';
4
4
  export { AdsConsentPurposes } from './AdsConsentPurposes';
@@ -1,2 +1,2 @@
1
- export declare const version = "13.4.0";
1
+ export declare const version = "13.5.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-google-mobile-ads",
3
- "version": "13.4.0",
3
+ "version": "13.5.0",
4
4
  "author": "Invertase <oss@invertase.io> (http://invertase.io)",
5
5
  "description": "React Native Google Mobile Ads is an easy way to monetize mobile apps with targeted, in-app advertising.",
6
6
  "main": "lib/commonjs/index.js",
@@ -15,10 +15,21 @@
15
15
  *
16
16
  */
17
17
 
18
- import React from 'react';
18
+ import React, { createRef } from 'react';
19
19
  import { BannerAdProps } from '../types/BannerAdProps';
20
20
  import { BaseAd } from './BaseAd';
21
+ import GoogleMobileAdsBannerView, { Commands } from './GoogleMobileAdsBannerViewNativeComponent';
21
22
 
22
- export function BannerAd({ size, ...props }: BannerAdProps) {
23
- return <BaseAd sizes={[size]} {...props} />;
23
+ export class BannerAd extends React.Component<BannerAdProps> {
24
+ private ref = createRef<React.ElementRef<typeof GoogleMobileAdsBannerView>>();
25
+
26
+ load() {
27
+ if (this.ref.current) {
28
+ Commands.load(this.ref.current);
29
+ }
30
+ }
31
+
32
+ render() {
33
+ return <BaseAd ref={this.ref} sizes={[this.props.size]} {...this.props} />;
34
+ }
24
35
  }
@@ -29,6 +29,12 @@ export class GAMBannerAd extends React.Component<GAMBannerAdProps> {
29
29
  }
30
30
  }
31
31
 
32
+ load() {
33
+ if (this.ref.current) {
34
+ Commands.load(this.ref.current);
35
+ }
36
+ }
37
+
32
38
  render() {
33
39
  return <BaseAd ref={this.ref} {...this.props} />;
34
40
  }
@@ -29,10 +29,11 @@ export type ComponentType = HostComponent<NativeProps>;
29
29
 
30
30
  interface NativeCommands {
31
31
  recordManualImpression: (viewRef: React.ElementRef<ComponentType>) => void;
32
+ load: (viewRef: React.ElementRef<ComponentType>) => void;
32
33
  }
33
34
 
34
35
  export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
35
- supportedCommands: ['recordManualImpression'],
36
+ supportedCommands: ['recordManualImpression', 'load'],
36
37
  });
37
38
 
38
39
  export default codegenNativeComponent<NativeProps>(
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  // Generated by genversion.
2
- export const version = '13.4.0';
2
+ export const version = '13.5.0';