@capacitor-community/admob 8.0.0 → 8.1.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 (100) hide show
  1. package/CapacitorCommunityAdmob.podspec +1 -1
  2. package/Package.swift +1 -1
  3. package/README.md +635 -169
  4. package/android/build.gradle +1 -1
  5. package/android/src/main/java/com/getcapacitor/community/admob/AdMob.java +73 -23
  6. package/android/src/main/java/com/getcapacitor/community/admob/appopen/AppOpenAdManager.kt +92 -0
  7. package/android/src/main/java/com/getcapacitor/community/admob/appopen/AppOpenAdPlugin.kt +122 -0
  8. package/android/src/main/java/com/getcapacitor/community/admob/appopen/AppOpenAdPluginEvents.kt +10 -0
  9. package/android/src/main/java/com/getcapacitor/community/admob/banner/BannerAdPluginEvents.kt +2 -1
  10. package/android/src/main/java/com/getcapacitor/community/admob/banner/BannerExecutor.java +79 -29
  11. package/android/src/main/java/com/getcapacitor/community/admob/helpers/FullscreenPluginCallback.kt +7 -2
  12. package/android/src/main/java/com/getcapacitor/community/admob/interstitial/AdInterstitialExecutor.java +21 -3
  13. package/android/src/main/java/com/getcapacitor/community/admob/interstitial/InterstitialAdCallbackAndListeners.kt +12 -2
  14. package/android/src/main/java/com/getcapacitor/community/admob/interstitial/InterstitialAdPluginPluginEvent.kt +1 -0
  15. package/android/src/main/java/com/getcapacitor/community/admob/models/AdMobRevenueData.kt +15 -0
  16. package/android/src/main/java/com/getcapacitor/community/admob/models/AdOptions.java +10 -0
  17. package/android/src/main/java/com/getcapacitor/community/admob/rewarded/AdRewardExecutor.java +20 -3
  18. package/android/src/main/java/com/getcapacitor/community/admob/rewarded/RewardAdPluginEvents.kt +1 -0
  19. package/android/src/main/java/com/getcapacitor/community/admob/rewarded/RewardedAdCallbackAndListeners.kt +14 -4
  20. package/android/src/main/java/com/getcapacitor/community/admob/rewardedinterstitial/AdRewardInterstitialExecutor.java +20 -3
  21. package/android/src/main/java/com/getcapacitor/community/admob/rewardedinterstitial/RewardInterstitialAdPluginEvents.kt +1 -0
  22. package/android/src/main/java/com/getcapacitor/community/admob/rewardedinterstitial/RewardedInterstitialAdCallbackAndListeners.kt +14 -3
  23. package/dist/docs.json +740 -193
  24. package/dist/esm/app-open/app-open-ad-options.interface.d.ts +9 -0
  25. package/dist/esm/app-open/app-open-ad-options.interface.js +2 -0
  26. package/dist/esm/app-open/app-open-ad-options.interface.js.map +1 -0
  27. package/dist/esm/app-open/app-open-ad-plugin-events.enum.d.ts +26 -0
  28. package/dist/esm/app-open/app-open-ad-plugin-events.enum.js +28 -0
  29. package/dist/esm/app-open/app-open-ad-plugin-events.enum.js.map +1 -0
  30. package/dist/esm/app-open/app-open-definitions.interface.d.ts +50 -0
  31. package/dist/esm/app-open/app-open-definitions.interface.js +2 -0
  32. package/dist/esm/app-open/app-open-definitions.interface.js.map +1 -0
  33. package/dist/esm/app-open/index.d.ts +3 -0
  34. package/dist/esm/app-open/index.js +4 -0
  35. package/dist/esm/app-open/index.js.map +1 -0
  36. package/dist/esm/banner/banner-ad-options.interface.d.ts +5 -6
  37. package/dist/esm/banner/banner-ad-plugin-events.enum.d.ts +17 -4
  38. package/dist/esm/banner/banner-ad-plugin-events.enum.js +16 -3
  39. package/dist/esm/banner/banner-ad-plugin-events.enum.js.map +1 -1
  40. package/dist/esm/banner/banner-ad-position.enum.d.ts +3 -3
  41. package/dist/esm/banner/banner-ad-position.enum.js +3 -3
  42. package/dist/esm/banner/banner-ad-size.enum.d.ts +4 -3
  43. package/dist/esm/banner/banner-ad-size.enum.js +4 -3
  44. package/dist/esm/banner/banner-ad-size.enum.js.map +1 -1
  45. package/dist/esm/banner/banner-definitions.interface.d.ts +17 -10
  46. package/dist/esm/banner/banner-size.interface.d.ts +8 -1
  47. package/dist/esm/definitions.d.ts +19 -17
  48. package/dist/esm/definitions.js.map +1 -1
  49. package/dist/esm/index.d.ts +1 -0
  50. package/dist/esm/index.js +1 -0
  51. package/dist/esm/index.js.map +1 -1
  52. package/dist/esm/interstitial/interstitial-ad-plugin-events.enum.d.ts +10 -6
  53. package/dist/esm/interstitial/interstitial-ad-plugin-events.enum.js +9 -5
  54. package/dist/esm/interstitial/interstitial-ad-plugin-events.enum.js.map +1 -1
  55. package/dist/esm/interstitial/interstitial-definitions.interface.d.ts +24 -4
  56. package/dist/esm/reward/reward-ad-options.interface.d.ts +7 -6
  57. package/dist/esm/reward/reward-ad-plugin-events.enum.d.ts +13 -12
  58. package/dist/esm/reward/reward-ad-plugin-events.enum.js +12 -11
  59. package/dist/esm/reward/reward-ad-plugin-events.enum.js.map +1 -1
  60. package/dist/esm/reward/reward-definitions.interface.d.ts +27 -4
  61. package/dist/esm/reward/reward-item.interface.d.ts +3 -4
  62. package/dist/esm/reward-interstitial/reward-interstitial-ad-options.interface.d.ts +7 -6
  63. package/dist/esm/reward-interstitial/reward-interstitial-ad-plugin-events.enum.d.ts +13 -12
  64. package/dist/esm/reward-interstitial/reward-interstitial-ad-plugin-events.enum.js +12 -11
  65. package/dist/esm/reward-interstitial/reward-interstitial-ad-plugin-events.enum.js.map +1 -1
  66. package/dist/esm/reward-interstitial/reward-interstitial-definitions.interface.d.ts +30 -7
  67. package/dist/esm/reward-interstitial/reward-interstitial-item.interface.d.ts +3 -4
  68. package/dist/esm/shared/ad-load-info.interface.d.ts +6 -0
  69. package/dist/esm/shared/ad-mob-revenue-data.interface.d.ts +50 -0
  70. package/dist/esm/shared/ad-mob-revenue-data.interface.js +23 -0
  71. package/dist/esm/shared/ad-mob-revenue-data.interface.js.map +1 -0
  72. package/dist/esm/shared/ad-options.interface.d.ts +9 -11
  73. package/dist/esm/shared/ad-show-options.interface.d.ts +12 -0
  74. package/dist/esm/shared/ad-show-options.interface.js +2 -0
  75. package/dist/esm/shared/ad-show-options.interface.js.map +1 -0
  76. package/dist/esm/shared/admob-error.interface.d.ts +3 -2
  77. package/dist/esm/shared/index.d.ts +2 -0
  78. package/dist/esm/shared/index.js +2 -0
  79. package/dist/esm/shared/index.js.map +1 -1
  80. package/dist/esm/shared/tracking-authorization-status.interface.d.ts +6 -1
  81. package/dist/esm/web.d.ts +13 -4
  82. package/dist/esm/web.js +25 -9
  83. package/dist/esm/web.js.map +1 -1
  84. package/dist/plugin.cjs.js +131 -45
  85. package/dist/plugin.cjs.js.map +1 -1
  86. package/dist/plugin.js +131 -45
  87. package/dist/plugin.js.map +1 -1
  88. package/ios/Sources/AdMobPlugin/AdMobPlugin.swift +30 -4
  89. package/ios/Sources/AdMobPlugin/AppOpen/AppOpenAdManager.swift +112 -0
  90. package/ios/Sources/AdMobPlugin/AppOpen/AppOpenAdPlugin.swift +101 -0
  91. package/ios/Sources/AdMobPlugin/AppOpen/AppOpenAdPluginEvents.swift +8 -0
  92. package/ios/Sources/AdMobPlugin/Banner/BannerAdPluginEvents.swift +1 -0
  93. package/ios/Sources/AdMobPlugin/Banner/BannerExecutor.swift +20 -6
  94. package/ios/Sources/AdMobPlugin/Interstitial/AdInterstitialExecutor.swift +41 -5
  95. package/ios/Sources/AdMobPlugin/Interstitial/InterstitialAdPluginEvents.swift +1 -0
  96. package/ios/Sources/AdMobPlugin/Rewarded/AdRewardExecutor.swift +44 -5
  97. package/ios/Sources/AdMobPlugin/Rewarded/RewardAdPluginEvents.swift +1 -0
  98. package/ios/Sources/AdMobPlugin/RewardedInterstitial/AdRewardInterstitialExecutor.swift +45 -6
  99. package/ios/Sources/AdMobPlugin/RewardedInterstitial/RewardInterstitialAdPluginEvents.swift +1 -0
  100. package/package.json +2 -1
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Options for loading an App Open ad.
3
+ */
4
+ export interface AppOpenAdOptions {
5
+ /**
6
+ * The App Open ad unit ID to load.
7
+ */
8
+ adId: string;
9
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=app-open-ad-options.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-open-ad-options.interface.js","sourceRoot":"","sources":["../../../src/app-open/app-open-ad-options.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ export declare enum AppOpenAdPluginEvents {
2
+ /**
3
+ * Emits when an App Open ad has loaded.
4
+ */
5
+ Loaded = "appOpenAdLoaded",
6
+ /**
7
+ * Emits when an App Open ad fails to load.
8
+ */
9
+ FailedToLoad = "appOpenAdFailedToLoad",
10
+ /**
11
+ * Emits when an App Open ad is shown.
12
+ */
13
+ Opened = "appOpenAdOpened",
14
+ /**
15
+ * Emits when an App Open ad is dismissed.
16
+ */
17
+ Closed = "appOpenAdClosed",
18
+ /**
19
+ * Emits when a loaded App Open ad fails to show.
20
+ */
21
+ FailedToShow = "appOpenAdFailedToShow",
22
+ /**
23
+ * Emits impression-level ad revenue data when a paid event is recorded.
24
+ */
25
+ AdImpression = "appOpenAdImpression"
26
+ }
@@ -0,0 +1,28 @@
1
+ export var AppOpenAdPluginEvents;
2
+ (function (AppOpenAdPluginEvents) {
3
+ /**
4
+ * Emits when an App Open ad has loaded.
5
+ */
6
+ AppOpenAdPluginEvents["Loaded"] = "appOpenAdLoaded";
7
+ /**
8
+ * Emits when an App Open ad fails to load.
9
+ */
10
+ AppOpenAdPluginEvents["FailedToLoad"] = "appOpenAdFailedToLoad";
11
+ /**
12
+ * Emits when an App Open ad is shown.
13
+ */
14
+ AppOpenAdPluginEvents["Opened"] = "appOpenAdOpened";
15
+ /**
16
+ * Emits when an App Open ad is dismissed.
17
+ */
18
+ AppOpenAdPluginEvents["Closed"] = "appOpenAdClosed";
19
+ /**
20
+ * Emits when a loaded App Open ad fails to show.
21
+ */
22
+ AppOpenAdPluginEvents["FailedToShow"] = "appOpenAdFailedToShow";
23
+ /**
24
+ * Emits impression-level ad revenue data when a paid event is recorded.
25
+ */
26
+ AppOpenAdPluginEvents["AdImpression"] = "appOpenAdImpression";
27
+ })(AppOpenAdPluginEvents || (AppOpenAdPluginEvents = {}));
28
+ //# sourceMappingURL=app-open-ad-plugin-events.enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-open-ad-plugin-events.enum.js","sourceRoot":"","sources":["../../../src/app-open/app-open-ad-plugin-events.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBA8BX;AA9BD,WAAY,qBAAqB;IAC/B;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,+DAAsC,CAAA;IAEtC;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,mDAA0B,CAAA;IAE1B;;OAEG;IACH,+DAAsC,CAAA;IAEtC;;OAEG;IACH,6DAAoC,CAAA;AACtC,CAAC,EA9BW,qBAAqB,KAArB,qBAAqB,QA8BhC"}
@@ -0,0 +1,50 @@
1
+ import type { PluginListenerHandle } from '@capacitor/core';
2
+ import type { ValidateAllEventsEnumAreImplemented } from '../private/validate-all-events-implemented.type';
3
+ import type { AdLoadInfo, AdMobError, AdMobRevenueData, AdShowOptions } from '../shared';
4
+ import type { AppOpenAdOptions } from './app-open-ad-options.interface';
5
+ import type { AppOpenAdPluginEvents } from './app-open-ad-plugin-events.enum';
6
+ export type AppOpenDefinitionsHasAllEvents = ValidateAllEventsEnumAreImplemented<AppOpenAdPluginEvents, AppOpenAdPlugin>;
7
+ export interface AppOpenAdPlugin {
8
+ /**
9
+ * Loads an App Open ad and returns the loaded ad unit ID.
10
+ */
11
+ loadAppOpen(options: AppOpenAdOptions): Promise<AdLoadInfo>;
12
+ /**
13
+ * Shows a loaded App Open ad.
14
+ *
15
+ * @param options Optional. Pass { adId } to show a specific prepared ad instead of the most recent one.
16
+ */
17
+ showAppOpen(options?: AdShowOptions): Promise<void>;
18
+ /**
19
+ * Checks whether an App Open ad is loaded.
20
+ *
21
+ * @param options Optional. Pass an adId to check a specific prepared ad instead of the most recent one.
22
+ */
23
+ isAppOpenLoaded(options?: AdShowOptions): Promise<{
24
+ value: boolean;
25
+ }>;
26
+ /**
27
+ * Listens for App Open ad load events.
28
+ */
29
+ addListener(eventName: AppOpenAdPluginEvents.Loaded, listenerFunc: (info: AdLoadInfo) => void): Promise<PluginListenerHandle>;
30
+ /**
31
+ * Listens for App Open ad load failures.
32
+ */
33
+ addListener(eventName: AppOpenAdPluginEvents.FailedToLoad, listenerFunc: (error: AdMobError) => void): Promise<PluginListenerHandle>;
34
+ /**
35
+ * Listens for App Open ad opened events.
36
+ */
37
+ addListener(eventName: AppOpenAdPluginEvents.Opened, listenerFunc: () => void): Promise<PluginListenerHandle>;
38
+ /**
39
+ * Listens for App Open ad closed events.
40
+ */
41
+ addListener(eventName: AppOpenAdPluginEvents.Closed, listenerFunc: () => void): Promise<PluginListenerHandle>;
42
+ /**
43
+ * Listens for App Open ad show failures.
44
+ */
45
+ addListener(eventName: AppOpenAdPluginEvents.FailedToShow, listenerFunc: (error: AdMobError) => void): Promise<PluginListenerHandle>;
46
+ /**
47
+ * Listens for App Open impression-level ad revenue events.
48
+ */
49
+ addListener(eventName: AppOpenAdPluginEvents.AdImpression, listenerFunc: (data: AdMobRevenueData) => void): Promise<PluginListenerHandle>;
50
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=app-open-definitions.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-open-definitions.interface.js","sourceRoot":"","sources":["../../../src/app-open/app-open-definitions.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './app-open-ad-options.interface';
2
+ export * from './app-open-ad-plugin-events.enum';
3
+ export * from './app-open-definitions.interface';
@@ -0,0 +1,4 @@
1
+ export * from './app-open-ad-options.interface';
2
+ export * from './app-open-ad-plugin-events.enum';
3
+ export * from './app-open-definitions.interface';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/app-open/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC"}
@@ -2,21 +2,20 @@ import type { AdOptions } from '../shared';
2
2
  import type { BannerAdPosition } from './banner-ad-position.enum';
3
3
  import type { BannerAdSize } from './banner-ad-size.enum';
4
4
  /**
5
- * This interface extends AdOptions
5
+ * Options for displaying a banner ad.
6
+ *
7
+ * This interface extends AdOptions.
6
8
  */
7
9
  export interface BannerAdOptions extends AdOptions {
8
10
  /**
9
- * Banner Ad Size, defaults to ADAPTIVE_BANNER.
10
- * IT can be: ADAPTIVE_BANNER, SMART_BANNER, BANNER,
11
- * MEDIUM_RECTANGLE, FULL_BANNER, LEADERBOARD
11
+ * The banner size to display.
12
12
  *
13
13
  * @default ADAPTIVE_BANNER
14
14
  * @since 3.0.0
15
15
  */
16
16
  adSize?: BannerAdSize;
17
17
  /**
18
- * Set Banner Ad position.
19
- * TOP_CENTER or CENTER or BOTTOM_CENTER
18
+ * The position where the banner is displayed.
20
19
  *
21
20
  * @default TOP_CENTER
22
21
  * @since 1.1.2
@@ -1,17 +1,30 @@
1
1
  export declare enum BannerAdPluginEvents {
2
+ /**
3
+ * Emits when the displayed banner size changes.
4
+ */
2
5
  SizeChanged = "bannerAdSizeChanged",
6
+ /**
7
+ * Emits when a banner ad has loaded.
8
+ */
3
9
  Loaded = "bannerAdLoaded",
10
+ /**
11
+ * Emits when a banner ad fails to load.
12
+ */
4
13
  FailedToLoad = "bannerAdFailedToLoad",
5
14
  /**
6
- * Open "Adsense" Event after user click banner
15
+ * Emits when a banner opens an overlay after the user taps it.
7
16
  */
8
17
  Opened = "bannerAdOpened",
9
18
  /**
10
- * Close "Adsense" Event after user click banner
19
+ * Emits when the banner overlay is closed.
11
20
  */
12
21
  Closed = "bannerAdClosed",
13
22
  /**
14
- * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.
23
+ * Emits when an impression is recorded for the banner ad.
24
+ */
25
+ AdImpression = "bannerAdImpression",
26
+ /**
27
+ * Emits impression-level ad revenue data when a paid event is recorded.
15
28
  */
16
- AdImpression = "bannerAdImpression"
29
+ AdPaid = "bannerAdPaid"
17
30
  }
@@ -1,20 +1,33 @@
1
1
  // This enum should be keep in sync with their native equivalents with the same name
2
2
  export var BannerAdPluginEvents;
3
3
  (function (BannerAdPluginEvents) {
4
+ /**
5
+ * Emits when the displayed banner size changes.
6
+ */
4
7
  BannerAdPluginEvents["SizeChanged"] = "bannerAdSizeChanged";
8
+ /**
9
+ * Emits when a banner ad has loaded.
10
+ */
5
11
  BannerAdPluginEvents["Loaded"] = "bannerAdLoaded";
12
+ /**
13
+ * Emits when a banner ad fails to load.
14
+ */
6
15
  BannerAdPluginEvents["FailedToLoad"] = "bannerAdFailedToLoad";
7
16
  /**
8
- * Open "Adsense" Event after user click banner
17
+ * Emits when a banner opens an overlay after the user taps it.
9
18
  */
10
19
  BannerAdPluginEvents["Opened"] = "bannerAdOpened";
11
20
  /**
12
- * Close "Adsense" Event after user click banner
21
+ * Emits when the banner overlay is closed.
13
22
  */
14
23
  BannerAdPluginEvents["Closed"] = "bannerAdClosed";
15
24
  /**
16
- * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.
25
+ * Emits when an impression is recorded for the banner ad.
17
26
  */
18
27
  BannerAdPluginEvents["AdImpression"] = "bannerAdImpression";
28
+ /**
29
+ * Emits impression-level ad revenue data when a paid event is recorded.
30
+ */
31
+ BannerAdPluginEvents["AdPaid"] = "bannerAdPaid";
19
32
  })(BannerAdPluginEvents || (BannerAdPluginEvents = {}));
20
33
  //# sourceMappingURL=banner-ad-plugin-events.enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"banner-ad-plugin-events.enum.js","sourceRoot":"","sources":["../../../src/banner/banner-ad-plugin-events.enum.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,MAAM,CAAN,IAAY,oBAmBX;AAnBD,WAAY,oBAAoB;IAC9B,2DAAmC,CAAA;IACnC,iDAAyB,CAAA;IACzB,6DAAqC,CAAA;IAErC;;OAEG;IACH,iDAAyB,CAAA;IAEzB;;OAEG;IACH,iDAAyB,CAAA;IAEzB;;OAEG;IACH,2DAAmC,CAAA;AACrC,CAAC,EAnBW,oBAAoB,KAApB,oBAAoB,QAmB/B"}
1
+ {"version":3,"file":"banner-ad-plugin-events.enum.js","sourceRoot":"","sources":["../../../src/banner/banner-ad-plugin-events.enum.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,MAAM,CAAN,IAAY,oBAmCX;AAnCD,WAAY,oBAAoB;IAC9B;;OAEG;IACH,2DAAmC,CAAA;IAEnC;;OAEG;IACH,iDAAyB,CAAA;IAEzB;;OAEG;IACH,6DAAqC,CAAA;IAErC;;OAEG;IACH,iDAAyB,CAAA;IAEzB;;OAEG;IACH,iDAAyB,CAAA;IAEzB;;OAEG;IACH,2DAAmC,CAAA;IAEnC;;OAEG;IACH,+CAAuB,CAAA;AACzB,CAAC,EAnCW,oBAAoB,KAApB,oBAAoB,QAmC/B"}
@@ -3,15 +3,15 @@
3
3
  */
4
4
  export declare enum BannerAdPosition {
5
5
  /**
6
- * Banner position be top-center
6
+ * Positions the banner at the top center of the screen.
7
7
  */
8
8
  TOP_CENTER = "TOP_CENTER",
9
9
  /**
10
- * Banner position be center
10
+ * Positions the banner at the center of the screen.
11
11
  */
12
12
  CENTER = "CENTER",
13
13
  /**
14
- * Banner position be bottom-center(default)
14
+ * Positions the banner at the bottom center of the screen.
15
15
  */
16
16
  BOTTOM_CENTER = "BOTTOM_CENTER"
17
17
  }
@@ -4,15 +4,15 @@
4
4
  export var BannerAdPosition;
5
5
  (function (BannerAdPosition) {
6
6
  /**
7
- * Banner position be top-center
7
+ * Positions the banner at the top center of the screen.
8
8
  */
9
9
  BannerAdPosition["TOP_CENTER"] = "TOP_CENTER";
10
10
  /**
11
- * Banner position be center
11
+ * Positions the banner at the center of the screen.
12
12
  */
13
13
  BannerAdPosition["CENTER"] = "CENTER";
14
14
  /**
15
- * Banner position be bottom-center(default)
15
+ * Positions the banner at the bottom center of the screen.
16
16
  */
17
17
  BannerAdPosition["BOTTOM_CENTER"] = "BOTTOM_CENTER";
18
18
  })(BannerAdPosition || (BannerAdPosition = {}));
@@ -34,9 +34,10 @@ export declare enum BannerAdSize {
34
34
  */
35
35
  ADAPTIVE_BANNER = "ADAPTIVE_BANNER",
36
36
  /**
37
- * @deprecated
38
- * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`
39
- * Screen width x 32|50|90
37
+ * A legacy smart banner sized to the screen width.
38
+ * Retained for compatibility; use `ADAPTIVE_BANNER` for new integrations.
39
+ *
40
+ * @deprecated Use `ADAPTIVE_BANNER` instead.
40
41
  */
41
42
  SMART_BANNER = "SMART_BANNER"
42
43
  }
@@ -35,9 +35,10 @@ export var BannerAdSize;
35
35
  */
36
36
  BannerAdSize["ADAPTIVE_BANNER"] = "ADAPTIVE_BANNER";
37
37
  /**
38
- * @deprecated
39
- * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`
40
- * Screen width x 32|50|90
38
+ * A legacy smart banner sized to the screen width.
39
+ * Retained for compatibility; use `ADAPTIVE_BANNER` for new integrations.
40
+ *
41
+ * @deprecated Use `ADAPTIVE_BANNER` instead.
41
42
  */
42
43
  BannerAdSize["SMART_BANNER"] = "SMART_BANNER";
43
44
  })(BannerAdSize || (BannerAdSize = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"banner-ad-size.enum.js","sourceRoot":"","sources":["../../../src/banner/banner-ad-size.enum.ts"],"names":[],"mappings":"AAAA;;;;;KAKK;AACJ,MAAM,CAAN,IAAY,YA0CZ;AA1CA,WAAY,YAAY;IACvB;;;OAGG;IACH,iCAAiB,CAAA;IAEjB;;;OAGG;IACH,2CAA2B,CAAA;IAE3B;;OAEG;IACH,6CAA6B,CAAA;IAE7B;;;OAGG;IACF,qDAAqC,CAAA;IAEtC;;;OAGG;IACH,2CAA2B,CAAA;IAE3B;;OAEG;IACF,mDAAmC,CAAA;IAEnC;;;;OAIG;IACH,6CAA6B,CAAA;AAEhC,CAAC,EA1CY,YAAY,KAAZ,YAAY,QA0CxB"}
1
+ {"version":3,"file":"banner-ad-size.enum.js","sourceRoot":"","sources":["../../../src/banner/banner-ad-size.enum.ts"],"names":[],"mappings":"AAAA;;;;;KAKK;AACJ,MAAM,CAAN,IAAY,YA2CZ;AA3CA,WAAY,YAAY;IACvB;;;OAGG;IACH,iCAAiB,CAAA;IAEjB;;;OAGG;IACH,2CAA2B,CAAA;IAE3B;;OAEG;IACH,6CAA6B,CAAA;IAE7B;;;OAGG;IACF,qDAAqC,CAAA;IAEtC;;;OAGG;IACH,2CAA2B,CAAA;IAE3B;;OAEG;IACF,mDAAmC,CAAA;IAEnC;;;;;OAKG;IACH,6CAA6B,CAAA;AAEhC,CAAC,EA3CY,YAAY,KAAZ,YAAY,QA2CxB"}
@@ -1,13 +1,13 @@
1
1
  import type { PluginListenerHandle } from '@capacitor/core';
2
2
  import type { ValidateAllEventsEnumAreImplemented } from '../private/validate-all-events-implemented.type';
3
- import type { AdMobError } from '../shared';
3
+ import type { AdMobError, AdMobRevenueData } from '../shared';
4
4
  import type { BannerAdOptions } from './banner-ad-options.interface';
5
5
  import type { BannerAdPluginEvents } from './banner-ad-plugin-events.enum';
6
6
  import type { AdMobBannerSize } from './banner-size.interface';
7
7
  export type BannerDefinitionsHasAllEvents = ValidateAllEventsEnumAreImplemented<BannerAdPluginEvents, BannerDefinitions>;
8
8
  export interface BannerDefinitions {
9
9
  /**
10
- * Show a banner Ad
10
+ * Displays a banner ad.
11
11
  *
12
12
  * @group Banner
13
13
  * @param options AdOptions
@@ -15,27 +15,28 @@ export interface BannerDefinitions {
15
15
  */
16
16
  showBanner(options: BannerAdOptions): Promise<void>;
17
17
  /**
18
- * Hide the banner, remove it from screen, but can show it later
18
+ * Hides the current banner without destroying it.
19
19
  *
20
20
  * @group Banner
21
21
  * @since 1.1.2
22
22
  */
23
23
  hideBanner(): Promise<void>;
24
24
  /**
25
- * Resume the banner, show it after hide
25
+ * Shows a previously hidden banner.
26
26
  *
27
27
  * @group Banner
28
28
  * @since 1.1.2
29
29
  */
30
30
  resumeBanner(): Promise<void>;
31
31
  /**
32
- * Destroy the banner, remove it from screen.
32
+ * Destroys the current banner and removes it from the screen.
33
33
  *
34
34
  * @group Banner
35
35
  * @since 1.1.2
36
36
  */
37
37
  removeBanner(): Promise<void>;
38
38
  /**
39
+ * Listens for changes to the displayed banner dimensions.
39
40
  *
40
41
  * @group Banner
41
42
  * @param eventName bannerAdSizeChanged
@@ -44,7 +45,7 @@ export interface BannerDefinitions {
44
45
  */
45
46
  addListener(eventName: BannerAdPluginEvents.SizeChanged, listenerFunc: (info: AdMobBannerSize) => void): Promise<PluginListenerHandle>;
46
47
  /**
47
- * Notice: request loaded Banner ad
48
+ * Listens for banner ad load events.
48
49
  *
49
50
  * @group Banner
50
51
  * @param eventName bannerAdLoaded
@@ -53,7 +54,7 @@ export interface BannerDefinitions {
53
54
  */
54
55
  addListener(eventName: BannerAdPluginEvents.Loaded, listenerFunc: () => void): Promise<PluginListenerHandle>;
55
56
  /**
56
- * Notice: request failed Banner ad
57
+ * Listens for banner ad load failures.
57
58
  *
58
59
  * @group Banner
59
60
  * @param eventName bannerAdFailedToLoad
@@ -62,7 +63,7 @@ export interface BannerDefinitions {
62
63
  */
63
64
  addListener(eventName: BannerAdPluginEvents.FailedToLoad, listenerFunc: (info: AdMobError) => void): Promise<PluginListenerHandle>;
64
65
  /**
65
- * Notice: full-screen banner view will be presented in response to the user clicking on an ad.
66
+ * Listens for banner overlay opened events.
66
67
  *
67
68
  * @group Banner
68
69
  * @param eventName bannerAdOpened
@@ -71,7 +72,7 @@ export interface BannerDefinitions {
71
72
  */
72
73
  addListener(eventName: BannerAdPluginEvents.Opened, listenerFunc: () => void): Promise<PluginListenerHandle>;
73
74
  /**
74
- * Notice: The full-screen banner view will been dismissed.
75
+ * Listens for banner overlay closed events.
75
76
  *
76
77
  * @group Banner
77
78
  * @param eventName bannerAdClosed
@@ -80,7 +81,7 @@ export interface BannerDefinitions {
80
81
  */
81
82
  addListener(eventName: BannerAdPluginEvents.Closed, listenerFunc: () => void): Promise<PluginListenerHandle>;
82
83
  /**
83
- * Unimplemented
84
+ * Listens for banner impression events.
84
85
  *
85
86
  * @group Banner
86
87
  * @param eventName AdImpression
@@ -88,4 +89,10 @@ export interface BannerDefinitions {
88
89
  * @since 3.0.0
89
90
  */
90
91
  addListener(eventName: BannerAdPluginEvents.AdImpression, listenerFunc: () => void): Promise<PluginListenerHandle>;
92
+ /**
93
+ * Listens for banner impression-level ad revenue events.
94
+ *
95
+ * @group Banner
96
+ */
97
+ addListener(eventName: BannerAdPluginEvents.AdPaid, listenerFunc: (data: AdMobRevenueData) => void): Promise<PluginListenerHandle>;
91
98
  }
@@ -1,7 +1,14 @@
1
1
  /**
2
- * When notice listener of OnAdLoaded, you can get banner size.
2
+ * The displayed banner dimensions in logical display units (dp on Android and points on iOS).
3
+ * A hidden, removed, or failed banner can report both dimensions as `0`.
3
4
  */
4
5
  export interface AdMobBannerSize {
6
+ /**
7
+ * The displayed banner width.
8
+ */
5
9
  width: number;
10
+ /**
11
+ * The displayed banner height.
12
+ */
6
13
  height: number;
7
14
  }
@@ -1,60 +1,62 @@
1
+ import type { AppOpenAdPlugin } from './app-open';
1
2
  import type { BannerDefinitions } from './banner';
2
3
  import type { AdmobConsentDefinitions } from './consent';
3
4
  import type { InterstitialDefinitions } from './interstitial';
4
5
  import type { RewardDefinitions } from './reward';
5
6
  import type { RewardInterstitialDefinitions } from './reward-interstitial';
6
7
  import type { TrackingAuthorizationStatusInterface } from './shared/tracking-authorization-status.interface';
7
- type AdMobDefinitions = BannerDefinitions & RewardDefinitions & RewardInterstitialDefinitions & InterstitialDefinitions & AdmobConsentDefinitions;
8
+ type AdMobDefinitions = BannerDefinitions & RewardDefinitions & RewardInterstitialDefinitions & InterstitialDefinitions & AdmobConsentDefinitions & AppOpenAdPlugin;
8
9
  export interface AdMobPlugin extends AdMobDefinitions {
9
10
  /**
10
- * Initialize AdMob with AdMobInitializationOptions
11
+ * Initializes the Google Mobile Ads SDK.
11
12
  *
12
13
  * @group Initialize
13
- * @param options AdMobInitializationOptions
14
+ * @param options Optional SDK initialization settings.
14
15
  * @since 1.1.2
15
16
  */
16
17
  initialize(options?: AdMobInitializationOptions): Promise<void>;
17
18
  /**
18
- * Confirm requestTrackingAuthorization status (iOS >14)
19
+ * Returns the current App Tracking Transparency authorization status on iOS 14 and later.
20
+ * Returns `authorized` on earlier iOS versions, Android, and web.
19
21
  *
20
22
  * @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-trackingauthorizationstatus
21
23
  * @since 3.1.0
22
24
  */
23
25
  trackingAuthorizationStatus(): Promise<TrackingAuthorizationStatusInterface>;
24
26
  /**
25
- * request requestTrackingAuthorization (iOS >14).
27
+ * Requests App Tracking Transparency authorization on iOS 14 and later.
28
+ * Resolves without taking action on earlier iOS versions, Android, and web.
26
29
  *
27
- * @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-trackingauthorizationstatus
30
+ * @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-requesttrackingauthorization
28
31
  * @since 5.2.0
29
32
  */
30
33
  requestTrackingAuthorization(): Promise<void>;
31
34
  /**
32
- * Report application mute state to AdMob SDK
35
+ * Reports whether the application audio is muted to the Google Mobile Ads SDK.
33
36
  *
34
- * @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-trackingauthorizationstatus
37
+ * @see https://developers.google.com/admob/android/global-settings
35
38
  * @since 4.1.1
36
39
  */
37
40
  setApplicationMuted(options: ApplicationMutedOptions): Promise<void>;
38
41
  /**
39
- * Report application volume to AdMob SDK
42
+ * Reports the application audio volume to the Google Mobile Ads SDK.
40
43
  *
41
- * @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-trackingauthorizationstatus
44
+ * @see https://developers.google.com/admob/android/global-settings
42
45
  * @since 4.1.1
43
46
  */
44
47
  setApplicationVolume(options: ApplicationVolumeOptions): Promise<void>;
45
48
  }
46
49
  export interface AdMobInitializationOptions {
47
50
  /**
48
- * An Array of devices IDs that will be marked as tested devices if {@link AdMobInitializationOptions.initializeForTesting} is true
49
- * (Real Ads will be served to Testing devices, but they will not count as 'real').
51
+ * Device IDs to register as test devices when {@link AdMobInitializationOptions.initializeForTesting} is `true`.
52
+ * Requests from registered devices receive test ads and do not generate invalid traffic.
50
53
  *
51
54
  * @see https://developers.google.com/admob/android/test-ads#enable_test_devices
52
55
  * @since 1.2.0
53
56
  */
54
57
  testingDevices?: string[];
55
58
  /**
56
- * If set to true, the devices on {@link AdMobInitializationOptions.testingDevices} will
57
- * be registered to receive test production ads.
59
+ * Whether to register {@link AdMobInitializationOptions.testingDevices} as test devices.
58
60
  *
59
61
  * @see AdMobInitializationOptions.testingDevices
60
62
  * @default false
@@ -78,8 +80,8 @@ export interface AdMobInitializationOptions {
78
80
  */
79
81
  tagForUnderAgeOfConsent?: boolean;
80
82
  /**
81
- * As an app developer,
82
- * you can indicate whether you want Google to treat your content as child-directed when you make an ad request.
83
+ * The maximum ad content rating applied to all ad requests.
84
+ * Ads with a higher rating are excluded.
83
85
  *
84
86
  * @see https://developers.google.com/admob/android/targeting#child-directed_setting
85
87
  * @since 3.1.0
@@ -119,7 +121,7 @@ export interface ApplicationVolumeOptions {
119
121
  /**
120
122
  * If your app has its own volume controls (such as custom music or sound effect volumes),
121
123
  * disclosing app volume to the Google Mobile Ads SDK allows video ads to respect app volume settings.
122
- * enable set 0.0 - 1.0, any float allowed.
124
+ * Use a supported value from 0.0 (silent) to 1.0 (full volume).
123
125
  *
124
126
  * @see https://developers.google.com/admob/android/global-settings
125
127
  * @since 4.1.1
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AAwGA,MAAM,CAAN,IAAY,kBAoBX;AApBD,WAAY,kBAAkB;IAC5B;;OAEG;IACH,yCAAmB,CAAA;IAEnB;;OAEG;IACH,2DAAqC,CAAA;IAErC;;OAEG;IACH,mCAAa,CAAA;IAEb;;OAEG;IACH,uDAAiC,CAAA;AACnC,CAAC,EApBW,kBAAkB,KAAlB,kBAAkB,QAoB7B"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AA2GA,MAAM,CAAN,IAAY,kBAoBX;AApBD,WAAY,kBAAkB;IAC5B;;OAEG;IACH,yCAAmB,CAAA;IAEnB;;OAEG;IACH,2DAAqC,CAAA;IAErC;;OAEG;IACH,mCAAa,CAAA;IAEb;;OAEG;IACH,uDAAiC,CAAA;AACnC,CAAC,EApBW,kBAAkB,KAAlB,kBAAkB,QAoB7B"}
@@ -7,4 +7,5 @@ export * from './reward-interstitial/index';
7
7
  export * from './reward/index';
8
8
  export * from './consent/index';
9
9
  export * from './shared/index';
10
+ export * from './app-open/index';
10
11
  export { AdMob };
package/dist/esm/index.js CHANGED
@@ -9,5 +9,6 @@ export * from './reward-interstitial/index';
9
9
  export * from './reward/index';
10
10
  export * from './consent/index';
11
11
  export * from './shared/index';
12
+ export * from './app-open/index';
12
13
  export { AdMob };
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,MAAM,KAAK,GAAG,cAAc,CAAc,OAAO,EAAE;IACjD,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;CACzD,CAAC,CAAC;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,MAAM,KAAK,GAAG,cAAc,CAAc,OAAO,EAAE;IACjD,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;CACzD,CAAC,CAAC;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,22 +1,26 @@
1
1
  export declare enum InterstitialAdPluginEvents {
2
2
  /**
3
- * Emits after trying to prepare and Interstitial, when it is loaded and ready to be show
3
+ * Emits when an interstitial ad has loaded and is ready to show.
4
4
  */
5
5
  Loaded = "interstitialAdLoaded",
6
6
  /**
7
- * Emits after trying to prepare and Interstitial, when it could not be loaded
7
+ * Emits when an interstitial ad fails to load.
8
8
  */
9
9
  FailedToLoad = "interstitialAdFailedToLoad",
10
10
  /**
11
- * Emits when the Interstitial ad is visible to the user
11
+ * Emits when an interstitial ad is shown.
12
12
  */
13
13
  Showed = "interstitialAdShowed",
14
14
  /**
15
- * Emits when the Interstitial ad is failed to show
15
+ * Emits when a loaded interstitial ad fails to show.
16
16
  */
17
17
  FailedToShow = "interstitialAdFailedToShow",
18
18
  /**
19
- * Emits when the Interstitial ad is not visible to the user anymore.
19
+ * Emits when an interstitial ad is dismissed.
20
20
  */
21
- Dismissed = "interstitialAdDismissed"
21
+ Dismissed = "interstitialAdDismissed",
22
+ /**
23
+ * Emits impression-level ad revenue data when a paid event is recorded.
24
+ */
25
+ AdImpression = "interstitialAdImpression"
22
26
  }