@capacitor-community/admob 3.0.1 → 3.3.0-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.
- package/CapacitorCommunityAdmob.podspec +1 -1
- package/LICENSE +1 -1
- package/README.md +137 -80
- package/android/build.gradle +11 -9
- package/android/src/main/java/com/getcapacitor/community/admob/AdMob.java +68 -15
- package/android/src/main/java/com/getcapacitor/community/admob/helpers/AuthorizationStatusEnum.kt +5 -0
- package/android/src/main/java/com/getcapacitor/community/admob/models/AdOptions.java +16 -2
- package/android/src/main/java/com/getcapacitor/community/admob/rewarded/AdRewardExecutor.java +1 -1
- package/android/src/main/java/com/getcapacitor/community/admob/rewarded/RewardedAdCallbackAndListeners.kt +14 -1
- package/android/src/main/java/com/getcapacitor/community/admob/rewarded/models/SsvInfo.kt +20 -0
- package/dist/docs.json +781 -92
- package/dist/esm/definitions.d.ts +50 -0
- package/dist/esm/definitions.js +19 -1
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/reward/index.d.ts +1 -0
- package/dist/esm/reward/index.js +1 -0
- package/dist/esm/reward/index.js.map +1 -1
- package/dist/esm/reward/reward-ad-options.interface.d.ts +25 -0
- package/dist/esm/reward/reward-ad-options.interface.js +2 -0
- package/dist/esm/reward/reward-ad-options.interface.js.map +1 -0
- package/dist/esm/reward/reward-definitions.interface.d.ts +4 -3
- package/dist/esm/shared/tracking-authorization-status.interface.d.ts +6 -0
- package/dist/esm/shared/tracking-authorization-status.interface.js +2 -0
- package/dist/esm/shared/tracking-authorization-status.interface.js.map +1 -0
- package/dist/esm/web.d.ts +3 -0
- package/dist/esm/web.js +8 -0
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +28 -0
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +29 -1
- package/dist/plugin.js.map +1 -1
- package/ios/Plugin/Banner/BannerExecutor.swift +1 -0
- package/ios/Plugin/Helper/AuthorizationStatusEnum.swift +6 -0
- package/ios/Plugin/Plugin.m +1 -0
- package/ios/Plugin/Plugin.swift +64 -3
- package/ios/Plugin/Rewarded/AdRewardExecutor.swift +17 -0
- package/package.json +4 -5
- package/ios/Plugin/.DS_Store +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { BannerDefinitions } from './banner';
|
|
2
2
|
import type { InterstitialDefinitions } from './interstitial';
|
|
3
3
|
import type { RewardDefinitions } from './reward';
|
|
4
|
+
import type { TrackingAuthorizationStatusInterface } from './shared/tracking-authorization-status.interface';
|
|
4
5
|
declare type AdMobDefinitions = BannerDefinitions & RewardDefinitions & InterstitialDefinitions;
|
|
5
6
|
export interface AdMobPlugin extends AdMobDefinitions {
|
|
6
7
|
/**
|
|
@@ -11,6 +12,13 @@ export interface AdMobPlugin extends AdMobDefinitions {
|
|
|
11
12
|
* @since 1.1.2
|
|
12
13
|
*/
|
|
13
14
|
initialize(options: AdMobInitializationOptions): Promise<void>;
|
|
15
|
+
/**
|
|
16
|
+
* Confirm requestTrackingAuthorization status (iOS >14)
|
|
17
|
+
*
|
|
18
|
+
* @see https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547038-trackingauthorizationstatus
|
|
19
|
+
* @since 3.1.0
|
|
20
|
+
*/
|
|
21
|
+
trackingAuthorizationStatus(): Promise<TrackingAuthorizationStatusInterface>;
|
|
14
22
|
}
|
|
15
23
|
export interface AdMobInitializationOptions {
|
|
16
24
|
/**
|
|
@@ -37,5 +45,47 @@ export interface AdMobInitializationOptions {
|
|
|
37
45
|
* @since 1.2.0
|
|
38
46
|
*/
|
|
39
47
|
initializeForTesting?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* For purposes of the Children's Online Privacy Protection Act (COPPA),
|
|
50
|
+
* there is a setting called tagForChildDirectedTreatment.
|
|
51
|
+
*
|
|
52
|
+
* @see https://developers.google.com/admob/android/targeting#child-directed_setting
|
|
53
|
+
* @since 3.1.0
|
|
54
|
+
*/
|
|
55
|
+
tagForChildDirectedTreatment?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* When using this feature,
|
|
58
|
+
* a Tag For Users under the Age of Consent in Europe (TFUA) parameter will be included in all future ad requests.
|
|
59
|
+
*
|
|
60
|
+
* @see https://developers.google.com/admob/android/targeting#users_under_the_age_of_consent
|
|
61
|
+
* @since 3.1.0
|
|
62
|
+
*/
|
|
63
|
+
tagForUnderAgeOfConsent?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* WAs an app developer,
|
|
66
|
+
* you can indicate whether you want Google to treat your content as child-directed when you make an ad request.
|
|
67
|
+
*
|
|
68
|
+
* @see https://developers.google.com/admob/android/targeting#child-directed_setting
|
|
69
|
+
* @since 3.1.0
|
|
70
|
+
*/
|
|
71
|
+
maxAdContentRating?: MaxAdContentRating;
|
|
72
|
+
}
|
|
73
|
+
export declare enum MaxAdContentRating {
|
|
74
|
+
/**
|
|
75
|
+
* Content suitable for general audiences, including families.
|
|
76
|
+
*/
|
|
77
|
+
General = "General",
|
|
78
|
+
/**
|
|
79
|
+
* Content suitable for most audiences with parental guidance.
|
|
80
|
+
*/
|
|
81
|
+
ParentalGuidance = "ParentalGuidance",
|
|
82
|
+
/**
|
|
83
|
+
* Content suitable for teen and older audiences.
|
|
84
|
+
*/
|
|
85
|
+
Teen = "Teen",
|
|
86
|
+
/**
|
|
87
|
+
* Content suitable only for mature audiences.
|
|
88
|
+
*/
|
|
89
|
+
MatureAudience = "MatureAudience"
|
|
40
90
|
}
|
|
41
91
|
export {};
|
package/dist/esm/definitions.js
CHANGED
|
@@ -1,2 +1,20 @@
|
|
|
1
|
-
export
|
|
1
|
+
export var MaxAdContentRating;
|
|
2
|
+
(function (MaxAdContentRating) {
|
|
3
|
+
/**
|
|
4
|
+
* Content suitable for general audiences, including families.
|
|
5
|
+
*/
|
|
6
|
+
MaxAdContentRating["General"] = "General";
|
|
7
|
+
/**
|
|
8
|
+
* Content suitable for most audiences with parental guidance.
|
|
9
|
+
*/
|
|
10
|
+
MaxAdContentRating["ParentalGuidance"] = "ParentalGuidance";
|
|
11
|
+
/**
|
|
12
|
+
* Content suitable for teen and older audiences.
|
|
13
|
+
*/
|
|
14
|
+
MaxAdContentRating["Teen"] = "Teen";
|
|
15
|
+
/**
|
|
16
|
+
* Content suitable only for mature audiences.
|
|
17
|
+
*/
|
|
18
|
+
MaxAdContentRating["MatureAudience"] = "MatureAudience";
|
|
19
|
+
})(MaxAdContentRating || (MaxAdContentRating = {}));
|
|
2
20
|
//# sourceMappingURL=definitions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"AAoFA,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"}
|
package/dist/esm/reward/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reward/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/reward/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { AdOptions } from '../shared/ad-options.interface';
|
|
2
|
+
declare type AtLeastOne<T> = {
|
|
3
|
+
[K in keyof T]: Pick<T, K>;
|
|
4
|
+
}[keyof T];
|
|
5
|
+
export interface RewardAdOptions extends AdOptions {
|
|
6
|
+
/**
|
|
7
|
+
* If you have enabled SSV in your AdMob Application. You can provide customData or
|
|
8
|
+
* a userId be passed to your callback to do further processing on.
|
|
9
|
+
*
|
|
10
|
+
* *Important* You *HAVE* to define one of them.
|
|
11
|
+
*
|
|
12
|
+
* @see https://support.google.com/admob/answer/9603226?hl=en-GB
|
|
13
|
+
*/
|
|
14
|
+
ssv?: AtLeastOne<{
|
|
15
|
+
/**
|
|
16
|
+
* An optional UserId to pass to your SSV callback function.
|
|
17
|
+
*/
|
|
18
|
+
userId: string;
|
|
19
|
+
/**
|
|
20
|
+
* An optional custom set of data to pass to your SSV callback function.
|
|
21
|
+
*/
|
|
22
|
+
customData: string;
|
|
23
|
+
}>;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reward-ad-options.interface.js","sourceRoot":"","sources":["../../../src/reward/reward-ad-options.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PluginListenerHandle } from '@capacitor/core';
|
|
2
2
|
import type { ValidateAllEventsEnumAreImplemented } from '../private/validate-all-events-implemented.type';
|
|
3
|
-
import type { AdLoadInfo, AdMobError
|
|
3
|
+
import type { AdLoadInfo, AdMobError } from '../shared';
|
|
4
|
+
import type { RewardAdOptions } from './reward-ad-options.interface';
|
|
4
5
|
import type { RewardAdPluginEvents } from './reward-ad-plugin-events.enum';
|
|
5
6
|
import type { AdMobRewardItem } from './reward-item.interface';
|
|
6
7
|
export declare type RewardDefinitionsHasAllEvents = ValidateAllEventsEnumAreImplemented<RewardAdPluginEvents, RewardDefinitions>;
|
|
@@ -9,10 +10,10 @@ export interface RewardDefinitions {
|
|
|
9
10
|
* Prepare a reward video ad
|
|
10
11
|
*
|
|
11
12
|
* @group RewardVideo
|
|
12
|
-
* @param options
|
|
13
|
+
* @param options RewardAdOptions
|
|
13
14
|
* @since 1.1.2
|
|
14
15
|
*/
|
|
15
|
-
prepareRewardVideoAd(options:
|
|
16
|
+
prepareRewardVideoAd(options: RewardAdOptions): Promise<AdLoadInfo>;
|
|
16
17
|
/**
|
|
17
18
|
* Show a reward video ad
|
|
18
19
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracking-authorization-status.interface.js","sourceRoot":"","sources":["../../../src/shared/tracking-authorization-status.interface.ts"],"names":[],"mappings":""}
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -2,9 +2,12 @@ import { WebPlugin } from '@capacitor/core';
|
|
|
2
2
|
import type { AdMobPlugin } from '.';
|
|
3
3
|
import type { AdMobRewardItem } from './reward';
|
|
4
4
|
import type { AdOptions, AdLoadInfo } from './shared';
|
|
5
|
+
import type { TrackingAuthorizationStatusInterface } from './shared/tracking-authorization-status.interface';
|
|
5
6
|
export declare class AdMobWeb extends WebPlugin implements AdMobPlugin {
|
|
6
7
|
constructor();
|
|
7
8
|
initialize(): Promise<void>;
|
|
9
|
+
targetSettings(): Promise<void>;
|
|
10
|
+
trackingAuthorizationStatus(): Promise<TrackingAuthorizationStatusInterface>;
|
|
8
11
|
showBanner(options: AdOptions): Promise<void>;
|
|
9
12
|
hideBanner(): Promise<void>;
|
|
10
13
|
resumeBanner(): Promise<void>;
|
package/dist/esm/web.js
CHANGED
|
@@ -9,6 +9,14 @@ export class AdMobWeb extends WebPlugin {
|
|
|
9
9
|
async initialize() {
|
|
10
10
|
console.log('initialize');
|
|
11
11
|
}
|
|
12
|
+
async targetSettings() {
|
|
13
|
+
console.log('targetSettings');
|
|
14
|
+
}
|
|
15
|
+
async trackingAuthorizationStatus() {
|
|
16
|
+
return {
|
|
17
|
+
status: 'authorized',
|
|
18
|
+
};
|
|
19
|
+
}
|
|
12
20
|
async showBanner(options) {
|
|
13
21
|
console.log('showBanner', options);
|
|
14
22
|
}
|
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAO5C,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC;QACE,KAAK,CAAC;YACJ,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,CAAC,KAAK,CAAC;SACnB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,2BAA2B;QAC/B,OAAO;YACL,MAAM,EAAE,YAAY;SACrB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAkB;QACjC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,UAAU;QACd,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,YAAY;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC9B,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,YAAY;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAkB;QAC1C,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,OAAkB;QAC3C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC;SACV,CAAC;IACJ,CAAC;CACF"}
|
package/dist/plugin.cjs.js
CHANGED
|
@@ -4,6 +4,26 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var core = require('@capacitor/core');
|
|
6
6
|
|
|
7
|
+
exports.MaxAdContentRating = void 0;
|
|
8
|
+
(function (MaxAdContentRating) {
|
|
9
|
+
/**
|
|
10
|
+
* Content suitable for general audiences, including families.
|
|
11
|
+
*/
|
|
12
|
+
MaxAdContentRating["General"] = "General";
|
|
13
|
+
/**
|
|
14
|
+
* Content suitable for most audiences with parental guidance.
|
|
15
|
+
*/
|
|
16
|
+
MaxAdContentRating["ParentalGuidance"] = "ParentalGuidance";
|
|
17
|
+
/**
|
|
18
|
+
* Content suitable for teen and older audiences.
|
|
19
|
+
*/
|
|
20
|
+
MaxAdContentRating["Teen"] = "Teen";
|
|
21
|
+
/**
|
|
22
|
+
* Content suitable only for mature audiences.
|
|
23
|
+
*/
|
|
24
|
+
MaxAdContentRating["MatureAudience"] = "MatureAudience";
|
|
25
|
+
})(exports.MaxAdContentRating || (exports.MaxAdContentRating = {}));
|
|
26
|
+
|
|
7
27
|
// This enum should be keep in sync with their native equivalents with the same name
|
|
8
28
|
exports.BannerAdPluginEvents = void 0;
|
|
9
29
|
(function (BannerAdPluginEvents) {
|
|
@@ -161,6 +181,14 @@ class AdMobWeb extends core.WebPlugin {
|
|
|
161
181
|
async initialize() {
|
|
162
182
|
console.log('initialize');
|
|
163
183
|
}
|
|
184
|
+
async targetSettings() {
|
|
185
|
+
console.log('targetSettings');
|
|
186
|
+
}
|
|
187
|
+
async trackingAuthorizationStatus() {
|
|
188
|
+
return {
|
|
189
|
+
status: 'authorized',
|
|
190
|
+
};
|
|
191
|
+
}
|
|
164
192
|
async showBanner(options) {
|
|
165
193
|
console.log('showBanner', options);
|
|
166
194
|
}
|
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/banner/banner-ad-plugin-events.enum.js","esm/banner/banner-ad-position.enum.js","esm/banner/banner-ad-size.enum.js","esm/interstitial/interstitial-ad-plugin-events.enum.js","esm/reward/reward-ad-plugin-events.enum.js","esm/index.js","esm/web.js"],"sourcesContent":["// This enum should be keep in sync with their native equivalents with the same name\nexport var BannerAdPluginEvents;\n(function (BannerAdPluginEvents) {\n BannerAdPluginEvents[\"SizeChanged\"] = \"bannerAdSizeChanged\";\n BannerAdPluginEvents[\"Loaded\"] = \"bannerAdLoaded\";\n BannerAdPluginEvents[\"FailedToLoad\"] = \"bannerAdFailedToLoad\";\n /**\n * Open \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Opened\"] = \"bannerAdOpened\";\n /**\n * Close \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Closed\"] = \"bannerAdClosed\";\n /**\n * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.\n */\n BannerAdPluginEvents[\"AdImpression\"] = \"bannerAdImpression\";\n})(BannerAdPluginEvents || (BannerAdPluginEvents = {}));\n//# sourceMappingURL=banner-ad-plugin-events.enum.js.map","/**\n * @see https://developer.android.com/reference/android/widget/LinearLayout#attr_android:gravity\n */\nexport var BannerAdPosition;\n(function (BannerAdPosition) {\n /**\n * Banner position be top-center\n */\n BannerAdPosition[\"TOP_CENTER\"] = \"TOP_CENTER\";\n /**\n * Banner position be center\n */\n BannerAdPosition[\"CENTER\"] = \"CENTER\";\n /**\n * Banner position be bottom-center(default)\n */\n BannerAdPosition[\"BOTTOM_CENTER\"] = \"BOTTOM_CENTER\";\n})(BannerAdPosition || (BannerAdPosition = {}));\n//# sourceMappingURL=banner-ad-position.enum.js.map","/**\n * For more information:\n * https://developers.google.com/admob/ios/banner#banner_sizes\n * https://developers.google.com/android/reference/com/google/android/gms/ads/AdSize\n *\n * */\nexport var BannerAdSize;\n(function (BannerAdSize) {\n /**\n * Mobile Marketing Association (MMA)\n * banner ad size (320x50 density-independent pixels).\n */\n BannerAdSize[\"BANNER\"] = \"BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * full banner ad size (468x60 density-independent pixels).\n */\n BannerAdSize[\"FULL_BANNER\"] = \"FULL_BANNER\";\n /**\n * Large banner ad size (320x100 density-independent pixels).\n */\n BannerAdSize[\"LARGE_BANNER\"] = \"LARGE_BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * medium rectangle ad size (300x250 density-independent pixels).\n */\n BannerAdSize[\"MEDIUM_RECTANGLE\"] = \"MEDIUM_RECTANGLE\";\n /**\n * Interactive Advertising Bureau (IAB)\n * leaderboard ad size (728x90 density-independent pixels).\n */\n BannerAdSize[\"LEADERBOARD\"] = \"LEADERBOARD\";\n /**\n * A dynamically sized banner that is full-width and auto-height.\n */\n BannerAdSize[\"ADAPTIVE_BANNER\"] = \"ADAPTIVE_BANNER\";\n /**\n * @deprecated\n * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`\n * Screen width x 32|50|90\n */\n BannerAdSize[\"SMART_BANNER\"] = \"SMART_BANNER\";\n})(BannerAdSize || (BannerAdSize = {}));\n//# sourceMappingURL=banner-ad-size.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var InterstitialAdPluginEvents;\n(function (InterstitialAdPluginEvents) {\n /**\n * Emits after trying to prepare and Interstitial, when it is loaded and ready to be show\n */\n InterstitialAdPluginEvents[\"Loaded\"] = \"interstitialAdLoaded\";\n /**\n * Emits after trying to prepare and Interstitial, when it could not be loaded\n */\n InterstitialAdPluginEvents[\"FailedToLoad\"] = \"interstitialAdFailedToLoad\";\n /**\n * Emits when the Interstitial ad is visible to the user\n */\n InterstitialAdPluginEvents[\"Showed\"] = \"interstitialAdShowed\";\n /**\n * Emits when the Interstitial ad is failed to show\n */\n InterstitialAdPluginEvents[\"FailedToShow\"] = \"interstitialAdFailedToShow\";\n /**\n * Emits when the Interstitial ad is not visible to the user anymore.\n */\n InterstitialAdPluginEvents[\"Dismissed\"] = \"interstitialAdDismissed\";\n})(InterstitialAdPluginEvents || (InterstitialAdPluginEvents = {}));\n//# sourceMappingURL=interstitial-ad-plugin-events.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var RewardAdPluginEvents;\n(function (RewardAdPluginEvents) {\n /**\n * Emits after trying to prepare a RewardAd and the Video is loaded and ready to be show\n */\n RewardAdPluginEvents[\"Loaded\"] = \"onRewardedVideoAdLoaded\";\n /**\n * Emits after trying to prepare a RewardAd when it could not be loaded\n */\n RewardAdPluginEvents[\"FailedToLoad\"] = \"onRewardedVideoAdFailedToLoad\";\n /**\n * Emits when the AdReward video is visible to the user\n */\n RewardAdPluginEvents[\"Showed\"] = \"onRewardedVideoAdShowed\";\n /**\n * Emits when the AdReward video is failed to show\n */\n RewardAdPluginEvents[\"FailedToShow\"] = \"onRewardedVideoAdFailedToShow\";\n /**\n * Emits when the AdReward video is not visible to the user anymore.\n *\n * **Important**: This has nothing to do with the reward it self. This event\n * will emits in this two cases:\n * 1. The user starts the video ad but close it before the reward emit.\n * 2. The user start the video and see it until end, then gets the reward\n * and after that the ad is closed.\n */\n RewardAdPluginEvents[\"Dismissed\"] = \"onRewardedVideoAdDismissed\";\n /**\n * Emits when user get rewarded from AdReward\n */\n RewardAdPluginEvents[\"Rewarded\"] = \"onRewardedVideoAdReward\";\n})(RewardAdPluginEvents || (RewardAdPluginEvents = {}));\n//# sourceMappingURL=reward-ad-plugin-events.enum.js.map","import { registerPlugin } from '@capacitor/core';\nconst AdMob = registerPlugin('AdMob', {\n web: () => import('./web').then(m => new m.AdMobWeb()),\n});\nexport * from './definitions';\nexport * from './banner/index';\nexport * from './interstitial/index';\nexport * from './reward/index';\nexport * from './shared/index';\nexport { AdMob };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AdMobWeb extends WebPlugin {\n constructor() {\n super({\n name: 'AdMob',\n platforms: ['web'],\n });\n }\n async initialize() {\n console.log('initialize');\n }\n async showBanner(options) {\n console.log('showBanner', options);\n }\n // Hide the banner, remove it from screen, but can show it later\n async hideBanner() {\n console.log('hideBanner');\n }\n // Resume the banner, show it after hide\n async resumeBanner() {\n console.log('resumeBanner');\n }\n // Destroy the banner, remove it from screen.\n async removeBanner() {\n console.log('removeBanner');\n }\n async prepareInterstitial(options) {\n console.log('prepareInterstitial', options);\n return {\n adUnitId: options.adId,\n };\n }\n async showInterstitial() {\n console.log('showInterstitial');\n }\n async prepareRewardVideoAd(options) {\n console.log(options);\n return {\n adUnitId: options.adId,\n };\n }\n async showRewardVideoAd() {\n return {\n type: '',\n amount: 0,\n };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["BannerAdPluginEvents","BannerAdPosition","BannerAdSize","InterstitialAdPluginEvents","RewardAdPluginEvents","registerPlugin","WebPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/definitions.js","esm/banner/banner-ad-plugin-events.enum.js","esm/banner/banner-ad-position.enum.js","esm/banner/banner-ad-size.enum.js","esm/interstitial/interstitial-ad-plugin-events.enum.js","esm/reward/reward-ad-plugin-events.enum.js","esm/index.js","esm/web.js"],"sourcesContent":["export var MaxAdContentRating;\n(function (MaxAdContentRating) {\n /**\n * Content suitable for general audiences, including families.\n */\n MaxAdContentRating[\"General\"] = \"General\";\n /**\n * Content suitable for most audiences with parental guidance.\n */\n MaxAdContentRating[\"ParentalGuidance\"] = \"ParentalGuidance\";\n /**\n * Content suitable for teen and older audiences.\n */\n MaxAdContentRating[\"Teen\"] = \"Teen\";\n /**\n * Content suitable only for mature audiences.\n */\n MaxAdContentRating[\"MatureAudience\"] = \"MatureAudience\";\n})(MaxAdContentRating || (MaxAdContentRating = {}));\n//# sourceMappingURL=definitions.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var BannerAdPluginEvents;\n(function (BannerAdPluginEvents) {\n BannerAdPluginEvents[\"SizeChanged\"] = \"bannerAdSizeChanged\";\n BannerAdPluginEvents[\"Loaded\"] = \"bannerAdLoaded\";\n BannerAdPluginEvents[\"FailedToLoad\"] = \"bannerAdFailedToLoad\";\n /**\n * Open \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Opened\"] = \"bannerAdOpened\";\n /**\n * Close \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Closed\"] = \"bannerAdClosed\";\n /**\n * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.\n */\n BannerAdPluginEvents[\"AdImpression\"] = \"bannerAdImpression\";\n})(BannerAdPluginEvents || (BannerAdPluginEvents = {}));\n//# sourceMappingURL=banner-ad-plugin-events.enum.js.map","/**\n * @see https://developer.android.com/reference/android/widget/LinearLayout#attr_android:gravity\n */\nexport var BannerAdPosition;\n(function (BannerAdPosition) {\n /**\n * Banner position be top-center\n */\n BannerAdPosition[\"TOP_CENTER\"] = \"TOP_CENTER\";\n /**\n * Banner position be center\n */\n BannerAdPosition[\"CENTER\"] = \"CENTER\";\n /**\n * Banner position be bottom-center(default)\n */\n BannerAdPosition[\"BOTTOM_CENTER\"] = \"BOTTOM_CENTER\";\n})(BannerAdPosition || (BannerAdPosition = {}));\n//# sourceMappingURL=banner-ad-position.enum.js.map","/**\n * For more information:\n * https://developers.google.com/admob/ios/banner#banner_sizes\n * https://developers.google.com/android/reference/com/google/android/gms/ads/AdSize\n *\n * */\nexport var BannerAdSize;\n(function (BannerAdSize) {\n /**\n * Mobile Marketing Association (MMA)\n * banner ad size (320x50 density-independent pixels).\n */\n BannerAdSize[\"BANNER\"] = \"BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * full banner ad size (468x60 density-independent pixels).\n */\n BannerAdSize[\"FULL_BANNER\"] = \"FULL_BANNER\";\n /**\n * Large banner ad size (320x100 density-independent pixels).\n */\n BannerAdSize[\"LARGE_BANNER\"] = \"LARGE_BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * medium rectangle ad size (300x250 density-independent pixels).\n */\n BannerAdSize[\"MEDIUM_RECTANGLE\"] = \"MEDIUM_RECTANGLE\";\n /**\n * Interactive Advertising Bureau (IAB)\n * leaderboard ad size (728x90 density-independent pixels).\n */\n BannerAdSize[\"LEADERBOARD\"] = \"LEADERBOARD\";\n /**\n * A dynamically sized banner that is full-width and auto-height.\n */\n BannerAdSize[\"ADAPTIVE_BANNER\"] = \"ADAPTIVE_BANNER\";\n /**\n * @deprecated\n * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`\n * Screen width x 32|50|90\n */\n BannerAdSize[\"SMART_BANNER\"] = \"SMART_BANNER\";\n})(BannerAdSize || (BannerAdSize = {}));\n//# sourceMappingURL=banner-ad-size.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var InterstitialAdPluginEvents;\n(function (InterstitialAdPluginEvents) {\n /**\n * Emits after trying to prepare and Interstitial, when it is loaded and ready to be show\n */\n InterstitialAdPluginEvents[\"Loaded\"] = \"interstitialAdLoaded\";\n /**\n * Emits after trying to prepare and Interstitial, when it could not be loaded\n */\n InterstitialAdPluginEvents[\"FailedToLoad\"] = \"interstitialAdFailedToLoad\";\n /**\n * Emits when the Interstitial ad is visible to the user\n */\n InterstitialAdPluginEvents[\"Showed\"] = \"interstitialAdShowed\";\n /**\n * Emits when the Interstitial ad is failed to show\n */\n InterstitialAdPluginEvents[\"FailedToShow\"] = \"interstitialAdFailedToShow\";\n /**\n * Emits when the Interstitial ad is not visible to the user anymore.\n */\n InterstitialAdPluginEvents[\"Dismissed\"] = \"interstitialAdDismissed\";\n})(InterstitialAdPluginEvents || (InterstitialAdPluginEvents = {}));\n//# sourceMappingURL=interstitial-ad-plugin-events.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var RewardAdPluginEvents;\n(function (RewardAdPluginEvents) {\n /**\n * Emits after trying to prepare a RewardAd and the Video is loaded and ready to be show\n */\n RewardAdPluginEvents[\"Loaded\"] = \"onRewardedVideoAdLoaded\";\n /**\n * Emits after trying to prepare a RewardAd when it could not be loaded\n */\n RewardAdPluginEvents[\"FailedToLoad\"] = \"onRewardedVideoAdFailedToLoad\";\n /**\n * Emits when the AdReward video is visible to the user\n */\n RewardAdPluginEvents[\"Showed\"] = \"onRewardedVideoAdShowed\";\n /**\n * Emits when the AdReward video is failed to show\n */\n RewardAdPluginEvents[\"FailedToShow\"] = \"onRewardedVideoAdFailedToShow\";\n /**\n * Emits when the AdReward video is not visible to the user anymore.\n *\n * **Important**: This has nothing to do with the reward it self. This event\n * will emits in this two cases:\n * 1. The user starts the video ad but close it before the reward emit.\n * 2. The user start the video and see it until end, then gets the reward\n * and after that the ad is closed.\n */\n RewardAdPluginEvents[\"Dismissed\"] = \"onRewardedVideoAdDismissed\";\n /**\n * Emits when user get rewarded from AdReward\n */\n RewardAdPluginEvents[\"Rewarded\"] = \"onRewardedVideoAdReward\";\n})(RewardAdPluginEvents || (RewardAdPluginEvents = {}));\n//# sourceMappingURL=reward-ad-plugin-events.enum.js.map","import { registerPlugin } from '@capacitor/core';\nconst AdMob = registerPlugin('AdMob', {\n web: () => import('./web').then(m => new m.AdMobWeb()),\n});\nexport * from './definitions';\nexport * from './banner/index';\nexport * from './interstitial/index';\nexport * from './reward/index';\nexport * from './shared/index';\nexport { AdMob };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AdMobWeb extends WebPlugin {\n constructor() {\n super({\n name: 'AdMob',\n platforms: ['web'],\n });\n }\n async initialize() {\n console.log('initialize');\n }\n async targetSettings() {\n console.log('targetSettings');\n }\n async trackingAuthorizationStatus() {\n return {\n status: 'authorized',\n };\n }\n async showBanner(options) {\n console.log('showBanner', options);\n }\n // Hide the banner, remove it from screen, but can show it later\n async hideBanner() {\n console.log('hideBanner');\n }\n // Resume the banner, show it after hide\n async resumeBanner() {\n console.log('resumeBanner');\n }\n // Destroy the banner, remove it from screen.\n async removeBanner() {\n console.log('removeBanner');\n }\n async prepareInterstitial(options) {\n console.log('prepareInterstitial', options);\n return {\n adUnitId: options.adId,\n };\n }\n async showInterstitial() {\n console.log('showInterstitial');\n }\n async prepareRewardVideoAd(options) {\n console.log(options);\n return {\n adUnitId: options.adId,\n };\n }\n async showRewardVideoAd() {\n return {\n type: '',\n amount: 0,\n };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["MaxAdContentRating","BannerAdPluginEvents","BannerAdPosition","BannerAdSize","InterstitialAdPluginEvents","RewardAdPluginEvents","registerPlugin","WebPlugin"],"mappings":"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"}
|
package/dist/plugin.js
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
var AdMobPlugin = (function (exports, core) {
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
+
exports.MaxAdContentRating = void 0;
|
|
5
|
+
(function (MaxAdContentRating) {
|
|
6
|
+
/**
|
|
7
|
+
* Content suitable for general audiences, including families.
|
|
8
|
+
*/
|
|
9
|
+
MaxAdContentRating["General"] = "General";
|
|
10
|
+
/**
|
|
11
|
+
* Content suitable for most audiences with parental guidance.
|
|
12
|
+
*/
|
|
13
|
+
MaxAdContentRating["ParentalGuidance"] = "ParentalGuidance";
|
|
14
|
+
/**
|
|
15
|
+
* Content suitable for teen and older audiences.
|
|
16
|
+
*/
|
|
17
|
+
MaxAdContentRating["Teen"] = "Teen";
|
|
18
|
+
/**
|
|
19
|
+
* Content suitable only for mature audiences.
|
|
20
|
+
*/
|
|
21
|
+
MaxAdContentRating["MatureAudience"] = "MatureAudience";
|
|
22
|
+
})(exports.MaxAdContentRating || (exports.MaxAdContentRating = {}));
|
|
23
|
+
|
|
4
24
|
// This enum should be keep in sync with their native equivalents with the same name
|
|
5
25
|
exports.BannerAdPluginEvents = void 0;
|
|
6
26
|
(function (BannerAdPluginEvents) {
|
|
@@ -158,6 +178,14 @@ var AdMobPlugin = (function (exports, core) {
|
|
|
158
178
|
async initialize() {
|
|
159
179
|
console.log('initialize');
|
|
160
180
|
}
|
|
181
|
+
async targetSettings() {
|
|
182
|
+
console.log('targetSettings');
|
|
183
|
+
}
|
|
184
|
+
async trackingAuthorizationStatus() {
|
|
185
|
+
return {
|
|
186
|
+
status: 'authorized',
|
|
187
|
+
};
|
|
188
|
+
}
|
|
161
189
|
async showBanner(options) {
|
|
162
190
|
console.log('showBanner', options);
|
|
163
191
|
}
|
|
@@ -207,5 +235,5 @@ var AdMobPlugin = (function (exports, core) {
|
|
|
207
235
|
|
|
208
236
|
return exports;
|
|
209
237
|
|
|
210
|
-
}({}, capacitorExports)
|
|
238
|
+
})({}, capacitorExports);
|
|
211
239
|
//# sourceMappingURL=plugin.js.map
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/banner/banner-ad-plugin-events.enum.js","esm/banner/banner-ad-position.enum.js","esm/banner/banner-ad-size.enum.js","esm/interstitial/interstitial-ad-plugin-events.enum.js","esm/reward/reward-ad-plugin-events.enum.js","esm/index.js","esm/web.js"],"sourcesContent":["// This enum should be keep in sync with their native equivalents with the same name\nexport var BannerAdPluginEvents;\n(function (BannerAdPluginEvents) {\n BannerAdPluginEvents[\"SizeChanged\"] = \"bannerAdSizeChanged\";\n BannerAdPluginEvents[\"Loaded\"] = \"bannerAdLoaded\";\n BannerAdPluginEvents[\"FailedToLoad\"] = \"bannerAdFailedToLoad\";\n /**\n * Open \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Opened\"] = \"bannerAdOpened\";\n /**\n * Close \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Closed\"] = \"bannerAdClosed\";\n /**\n * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.\n */\n BannerAdPluginEvents[\"AdImpression\"] = \"bannerAdImpression\";\n})(BannerAdPluginEvents || (BannerAdPluginEvents = {}));\n//# sourceMappingURL=banner-ad-plugin-events.enum.js.map","/**\n * @see https://developer.android.com/reference/android/widget/LinearLayout#attr_android:gravity\n */\nexport var BannerAdPosition;\n(function (BannerAdPosition) {\n /**\n * Banner position be top-center\n */\n BannerAdPosition[\"TOP_CENTER\"] = \"TOP_CENTER\";\n /**\n * Banner position be center\n */\n BannerAdPosition[\"CENTER\"] = \"CENTER\";\n /**\n * Banner position be bottom-center(default)\n */\n BannerAdPosition[\"BOTTOM_CENTER\"] = \"BOTTOM_CENTER\";\n})(BannerAdPosition || (BannerAdPosition = {}));\n//# sourceMappingURL=banner-ad-position.enum.js.map","/**\n * For more information:\n * https://developers.google.com/admob/ios/banner#banner_sizes\n * https://developers.google.com/android/reference/com/google/android/gms/ads/AdSize\n *\n * */\nexport var BannerAdSize;\n(function (BannerAdSize) {\n /**\n * Mobile Marketing Association (MMA)\n * banner ad size (320x50 density-independent pixels).\n */\n BannerAdSize[\"BANNER\"] = \"BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * full banner ad size (468x60 density-independent pixels).\n */\n BannerAdSize[\"FULL_BANNER\"] = \"FULL_BANNER\";\n /**\n * Large banner ad size (320x100 density-independent pixels).\n */\n BannerAdSize[\"LARGE_BANNER\"] = \"LARGE_BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * medium rectangle ad size (300x250 density-independent pixels).\n */\n BannerAdSize[\"MEDIUM_RECTANGLE\"] = \"MEDIUM_RECTANGLE\";\n /**\n * Interactive Advertising Bureau (IAB)\n * leaderboard ad size (728x90 density-independent pixels).\n */\n BannerAdSize[\"LEADERBOARD\"] = \"LEADERBOARD\";\n /**\n * A dynamically sized banner that is full-width and auto-height.\n */\n BannerAdSize[\"ADAPTIVE_BANNER\"] = \"ADAPTIVE_BANNER\";\n /**\n * @deprecated\n * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`\n * Screen width x 32|50|90\n */\n BannerAdSize[\"SMART_BANNER\"] = \"SMART_BANNER\";\n})(BannerAdSize || (BannerAdSize = {}));\n//# sourceMappingURL=banner-ad-size.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var InterstitialAdPluginEvents;\n(function (InterstitialAdPluginEvents) {\n /**\n * Emits after trying to prepare and Interstitial, when it is loaded and ready to be show\n */\n InterstitialAdPluginEvents[\"Loaded\"] = \"interstitialAdLoaded\";\n /**\n * Emits after trying to prepare and Interstitial, when it could not be loaded\n */\n InterstitialAdPluginEvents[\"FailedToLoad\"] = \"interstitialAdFailedToLoad\";\n /**\n * Emits when the Interstitial ad is visible to the user\n */\n InterstitialAdPluginEvents[\"Showed\"] = \"interstitialAdShowed\";\n /**\n * Emits when the Interstitial ad is failed to show\n */\n InterstitialAdPluginEvents[\"FailedToShow\"] = \"interstitialAdFailedToShow\";\n /**\n * Emits when the Interstitial ad is not visible to the user anymore.\n */\n InterstitialAdPluginEvents[\"Dismissed\"] = \"interstitialAdDismissed\";\n})(InterstitialAdPluginEvents || (InterstitialAdPluginEvents = {}));\n//# sourceMappingURL=interstitial-ad-plugin-events.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var RewardAdPluginEvents;\n(function (RewardAdPluginEvents) {\n /**\n * Emits after trying to prepare a RewardAd and the Video is loaded and ready to be show\n */\n RewardAdPluginEvents[\"Loaded\"] = \"onRewardedVideoAdLoaded\";\n /**\n * Emits after trying to prepare a RewardAd when it could not be loaded\n */\n RewardAdPluginEvents[\"FailedToLoad\"] = \"onRewardedVideoAdFailedToLoad\";\n /**\n * Emits when the AdReward video is visible to the user\n */\n RewardAdPluginEvents[\"Showed\"] = \"onRewardedVideoAdShowed\";\n /**\n * Emits when the AdReward video is failed to show\n */\n RewardAdPluginEvents[\"FailedToShow\"] = \"onRewardedVideoAdFailedToShow\";\n /**\n * Emits when the AdReward video is not visible to the user anymore.\n *\n * **Important**: This has nothing to do with the reward it self. This event\n * will emits in this two cases:\n * 1. The user starts the video ad but close it before the reward emit.\n * 2. The user start the video and see it until end, then gets the reward\n * and after that the ad is closed.\n */\n RewardAdPluginEvents[\"Dismissed\"] = \"onRewardedVideoAdDismissed\";\n /**\n * Emits when user get rewarded from AdReward\n */\n RewardAdPluginEvents[\"Rewarded\"] = \"onRewardedVideoAdReward\";\n})(RewardAdPluginEvents || (RewardAdPluginEvents = {}));\n//# sourceMappingURL=reward-ad-plugin-events.enum.js.map","import { registerPlugin } from '@capacitor/core';\nconst AdMob = registerPlugin('AdMob', {\n web: () => import('./web').then(m => new m.AdMobWeb()),\n});\nexport * from './definitions';\nexport * from './banner/index';\nexport * from './interstitial/index';\nexport * from './reward/index';\nexport * from './shared/index';\nexport { AdMob };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AdMobWeb extends WebPlugin {\n constructor() {\n super({\n name: 'AdMob',\n platforms: ['web'],\n });\n }\n async initialize() {\n console.log('initialize');\n }\n async showBanner(options) {\n console.log('showBanner', options);\n }\n // Hide the banner, remove it from screen, but can show it later\n async hideBanner() {\n console.log('hideBanner');\n }\n // Resume the banner, show it after hide\n async resumeBanner() {\n console.log('resumeBanner');\n }\n // Destroy the banner, remove it from screen.\n async removeBanner() {\n console.log('removeBanner');\n }\n async prepareInterstitial(options) {\n console.log('prepareInterstitial', options);\n return {\n adUnitId: options.adId,\n };\n }\n async showInterstitial() {\n console.log('showInterstitial');\n }\n async prepareRewardVideoAd(options) {\n console.log(options);\n return {\n adUnitId: options.adId,\n };\n }\n async showRewardVideoAd() {\n return {\n type: '',\n amount: 0,\n };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["BannerAdPluginEvents","BannerAdPosition","BannerAdSize","InterstitialAdPluginEvents","RewardAdPluginEvents","registerPlugin","WebPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/definitions.js","esm/banner/banner-ad-plugin-events.enum.js","esm/banner/banner-ad-position.enum.js","esm/banner/banner-ad-size.enum.js","esm/interstitial/interstitial-ad-plugin-events.enum.js","esm/reward/reward-ad-plugin-events.enum.js","esm/index.js","esm/web.js"],"sourcesContent":["export var MaxAdContentRating;\n(function (MaxAdContentRating) {\n /**\n * Content suitable for general audiences, including families.\n */\n MaxAdContentRating[\"General\"] = \"General\";\n /**\n * Content suitable for most audiences with parental guidance.\n */\n MaxAdContentRating[\"ParentalGuidance\"] = \"ParentalGuidance\";\n /**\n * Content suitable for teen and older audiences.\n */\n MaxAdContentRating[\"Teen\"] = \"Teen\";\n /**\n * Content suitable only for mature audiences.\n */\n MaxAdContentRating[\"MatureAudience\"] = \"MatureAudience\";\n})(MaxAdContentRating || (MaxAdContentRating = {}));\n//# sourceMappingURL=definitions.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var BannerAdPluginEvents;\n(function (BannerAdPluginEvents) {\n BannerAdPluginEvents[\"SizeChanged\"] = \"bannerAdSizeChanged\";\n BannerAdPluginEvents[\"Loaded\"] = \"bannerAdLoaded\";\n BannerAdPluginEvents[\"FailedToLoad\"] = \"bannerAdFailedToLoad\";\n /**\n * Open \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Opened\"] = \"bannerAdOpened\";\n /**\n * Close \"Adsense\" Event after user click banner\n */\n BannerAdPluginEvents[\"Closed\"] = \"bannerAdClosed\";\n /**\n * Similarly, this method should be called when an impression is recorded for the ad by the mediated SDK.\n */\n BannerAdPluginEvents[\"AdImpression\"] = \"bannerAdImpression\";\n})(BannerAdPluginEvents || (BannerAdPluginEvents = {}));\n//# sourceMappingURL=banner-ad-plugin-events.enum.js.map","/**\n * @see https://developer.android.com/reference/android/widget/LinearLayout#attr_android:gravity\n */\nexport var BannerAdPosition;\n(function (BannerAdPosition) {\n /**\n * Banner position be top-center\n */\n BannerAdPosition[\"TOP_CENTER\"] = \"TOP_CENTER\";\n /**\n * Banner position be center\n */\n BannerAdPosition[\"CENTER\"] = \"CENTER\";\n /**\n * Banner position be bottom-center(default)\n */\n BannerAdPosition[\"BOTTOM_CENTER\"] = \"BOTTOM_CENTER\";\n})(BannerAdPosition || (BannerAdPosition = {}));\n//# sourceMappingURL=banner-ad-position.enum.js.map","/**\n * For more information:\n * https://developers.google.com/admob/ios/banner#banner_sizes\n * https://developers.google.com/android/reference/com/google/android/gms/ads/AdSize\n *\n * */\nexport var BannerAdSize;\n(function (BannerAdSize) {\n /**\n * Mobile Marketing Association (MMA)\n * banner ad size (320x50 density-independent pixels).\n */\n BannerAdSize[\"BANNER\"] = \"BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * full banner ad size (468x60 density-independent pixels).\n */\n BannerAdSize[\"FULL_BANNER\"] = \"FULL_BANNER\";\n /**\n * Large banner ad size (320x100 density-independent pixels).\n */\n BannerAdSize[\"LARGE_BANNER\"] = \"LARGE_BANNER\";\n /**\n * Interactive Advertising Bureau (IAB)\n * medium rectangle ad size (300x250 density-independent pixels).\n */\n BannerAdSize[\"MEDIUM_RECTANGLE\"] = \"MEDIUM_RECTANGLE\";\n /**\n * Interactive Advertising Bureau (IAB)\n * leaderboard ad size (728x90 density-independent pixels).\n */\n BannerAdSize[\"LEADERBOARD\"] = \"LEADERBOARD\";\n /**\n * A dynamically sized banner that is full-width and auto-height.\n */\n BannerAdSize[\"ADAPTIVE_BANNER\"] = \"ADAPTIVE_BANNER\";\n /**\n * @deprecated\n * Will be removed in next AdMob versions use `ADAPTIVE_BANNER`\n * Screen width x 32|50|90\n */\n BannerAdSize[\"SMART_BANNER\"] = \"SMART_BANNER\";\n})(BannerAdSize || (BannerAdSize = {}));\n//# sourceMappingURL=banner-ad-size.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var InterstitialAdPluginEvents;\n(function (InterstitialAdPluginEvents) {\n /**\n * Emits after trying to prepare and Interstitial, when it is loaded and ready to be show\n */\n InterstitialAdPluginEvents[\"Loaded\"] = \"interstitialAdLoaded\";\n /**\n * Emits after trying to prepare and Interstitial, when it could not be loaded\n */\n InterstitialAdPluginEvents[\"FailedToLoad\"] = \"interstitialAdFailedToLoad\";\n /**\n * Emits when the Interstitial ad is visible to the user\n */\n InterstitialAdPluginEvents[\"Showed\"] = \"interstitialAdShowed\";\n /**\n * Emits when the Interstitial ad is failed to show\n */\n InterstitialAdPluginEvents[\"FailedToShow\"] = \"interstitialAdFailedToShow\";\n /**\n * Emits when the Interstitial ad is not visible to the user anymore.\n */\n InterstitialAdPluginEvents[\"Dismissed\"] = \"interstitialAdDismissed\";\n})(InterstitialAdPluginEvents || (InterstitialAdPluginEvents = {}));\n//# sourceMappingURL=interstitial-ad-plugin-events.enum.js.map","// This enum should be keep in sync with their native equivalents with the same name\nexport var RewardAdPluginEvents;\n(function (RewardAdPluginEvents) {\n /**\n * Emits after trying to prepare a RewardAd and the Video is loaded and ready to be show\n */\n RewardAdPluginEvents[\"Loaded\"] = \"onRewardedVideoAdLoaded\";\n /**\n * Emits after trying to prepare a RewardAd when it could not be loaded\n */\n RewardAdPluginEvents[\"FailedToLoad\"] = \"onRewardedVideoAdFailedToLoad\";\n /**\n * Emits when the AdReward video is visible to the user\n */\n RewardAdPluginEvents[\"Showed\"] = \"onRewardedVideoAdShowed\";\n /**\n * Emits when the AdReward video is failed to show\n */\n RewardAdPluginEvents[\"FailedToShow\"] = \"onRewardedVideoAdFailedToShow\";\n /**\n * Emits when the AdReward video is not visible to the user anymore.\n *\n * **Important**: This has nothing to do with the reward it self. This event\n * will emits in this two cases:\n * 1. The user starts the video ad but close it before the reward emit.\n * 2. The user start the video and see it until end, then gets the reward\n * and after that the ad is closed.\n */\n RewardAdPluginEvents[\"Dismissed\"] = \"onRewardedVideoAdDismissed\";\n /**\n * Emits when user get rewarded from AdReward\n */\n RewardAdPluginEvents[\"Rewarded\"] = \"onRewardedVideoAdReward\";\n})(RewardAdPluginEvents || (RewardAdPluginEvents = {}));\n//# sourceMappingURL=reward-ad-plugin-events.enum.js.map","import { registerPlugin } from '@capacitor/core';\nconst AdMob = registerPlugin('AdMob', {\n web: () => import('./web').then(m => new m.AdMobWeb()),\n});\nexport * from './definitions';\nexport * from './banner/index';\nexport * from './interstitial/index';\nexport * from './reward/index';\nexport * from './shared/index';\nexport { AdMob };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AdMobWeb extends WebPlugin {\n constructor() {\n super({\n name: 'AdMob',\n platforms: ['web'],\n });\n }\n async initialize() {\n console.log('initialize');\n }\n async targetSettings() {\n console.log('targetSettings');\n }\n async trackingAuthorizationStatus() {\n return {\n status: 'authorized',\n };\n }\n async showBanner(options) {\n console.log('showBanner', options);\n }\n // Hide the banner, remove it from screen, but can show it later\n async hideBanner() {\n console.log('hideBanner');\n }\n // Resume the banner, show it after hide\n async resumeBanner() {\n console.log('resumeBanner');\n }\n // Destroy the banner, remove it from screen.\n async removeBanner() {\n console.log('removeBanner');\n }\n async prepareInterstitial(options) {\n console.log('prepareInterstitial', options);\n return {\n adUnitId: options.adId,\n };\n }\n async showInterstitial() {\n console.log('showInterstitial');\n }\n async prepareRewardVideoAd(options) {\n console.log(options);\n return {\n adUnitId: options.adId,\n };\n }\n async showRewardVideoAd() {\n return {\n type: '',\n amount: 0,\n };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["MaxAdContentRating","BannerAdPluginEvents","BannerAdPosition","BannerAdSize","InterstitialAdPluginEvents","RewardAdPluginEvents","registerPlugin","WebPlugin"],"mappings":"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"}
|
|
@@ -136,6 +136,7 @@ class BannerExecutor: NSObject, GADBannerViewDelegate {
|
|
|
136
136
|
private func removeBannerViewToView() {
|
|
137
137
|
if let rootViewController = UIApplication.shared.keyWindow?.rootViewController {
|
|
138
138
|
if let subView = rootViewController.view.viewWithTag(2743243288699) {
|
|
139
|
+
bannerView.delegate = nil
|
|
139
140
|
NSLog("AdMob: find subView")
|
|
140
141
|
subView.removeFromSuperview()
|
|
141
142
|
}
|
package/ios/Plugin/Plugin.m
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
// each method the plugin supports using the CAP_PLUGIN_METHOD macro.
|
|
6
6
|
CAP_PLUGIN(AdMob, "AdMob",
|
|
7
7
|
CAP_PLUGIN_METHOD(initialize, CAPPluginReturnPromise);
|
|
8
|
+
CAP_PLUGIN_METHOD(trackingAuthorizationStatus, CAPPluginReturnPromise);
|
|
8
9
|
CAP_PLUGIN_METHOD(showBanner, CAPPluginReturnPromise);
|
|
9
10
|
CAP_PLUGIN_METHOD(resumeBanner, CAPPluginReturnPromise);
|
|
10
11
|
CAP_PLUGIN_METHOD(hideBanner, CAPPluginReturnPromise);
|
package/ios/Plugin/Plugin.swift
CHANGED
|
@@ -25,9 +25,7 @@ public class AdMob: CAPPlugin {
|
|
|
25
25
|
|
|
26
26
|
let isTrack = call.getBool("requestTrackingAuthorization") ?? true
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
GADMobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers = call.getArray("testingDevices", String.self) ?? []
|
|
30
|
-
}
|
|
28
|
+
self.setRequestConfiguration(call)
|
|
31
29
|
|
|
32
30
|
if !isTrack {
|
|
33
31
|
GADMobileAds.sharedInstance().start(completionHandler: nil)
|
|
@@ -120,6 +118,31 @@ public class AdMob: CAPPlugin {
|
|
|
120
118
|
}
|
|
121
119
|
}
|
|
122
120
|
|
|
121
|
+
@objc func trackingAuthorizationStatus(_ call: CAPPluginCall) {
|
|
122
|
+
DispatchQueue.main.async {
|
|
123
|
+
if #available(iOS 14, *) {
|
|
124
|
+
switch ATTrackingManager.trackingAuthorizationStatus {
|
|
125
|
+
case .authorized:
|
|
126
|
+
call.resolve(["status": AuthorizationStatusEnum.Authorized.rawValue])
|
|
127
|
+
break
|
|
128
|
+
case .denied:
|
|
129
|
+
call.resolve(["status": AuthorizationStatusEnum.Denied.rawValue])
|
|
130
|
+
break
|
|
131
|
+
case .restricted:
|
|
132
|
+
call.resolve(["status": AuthorizationStatusEnum.Restricted.rawValue])
|
|
133
|
+
break
|
|
134
|
+
case .notDetermined:
|
|
135
|
+
call.resolve(["status": AuthorizationStatusEnum.NotDetermined.rawValue])
|
|
136
|
+
break
|
|
137
|
+
@unknown default:
|
|
138
|
+
call.reject("trackingAuthorizationStatus can't get status")
|
|
139
|
+
}
|
|
140
|
+
} else {
|
|
141
|
+
call.resolve(["status": AuthorizationStatusEnum.Authorized])
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
123
146
|
private func getAdId(_ call: CAPPluginCall, _ testingID: String) -> String {
|
|
124
147
|
let adUnitID = call.getString("adId") ?? testingID
|
|
125
148
|
let isTest = call.getBool("isTesting") ?? false
|
|
@@ -140,4 +163,42 @@ public class AdMob: CAPPlugin {
|
|
|
140
163
|
|
|
141
164
|
return request
|
|
142
165
|
}
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* https://developers.google.com/admob/ios/targeting?hl=ja
|
|
169
|
+
*/
|
|
170
|
+
private func setRequestConfiguration(_ call: CAPPluginCall) {
|
|
171
|
+
|
|
172
|
+
if call.getBool("initializeForTesting") ?? false {
|
|
173
|
+
GADMobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers = call.getArray("testingDevices", String.self) ?? []
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
if call.getBool("tagForChildDirectedTreatment") != nil {
|
|
177
|
+
GADMobileAds.sharedInstance().requestConfiguration.tag(forChildDirectedTreatment: call.getBool("tagForChildDirectedTreatment")!)
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
if call.getBool("tagForUnderAgeOfConsent") != nil {
|
|
181
|
+
GADMobileAds.sharedInstance().requestConfiguration.tagForUnderAge(ofConsent: call.getBool("tagForUnderAgeOfConsent")!)
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
if call.getString("maxAdContentRating") != nil {
|
|
185
|
+
switch call.getString("maxAdContentRating") {
|
|
186
|
+
case "General":
|
|
187
|
+
GADMobileAds.sharedInstance().requestConfiguration.maxAdContentRating =
|
|
188
|
+
GADMaxAdContentRating.general
|
|
189
|
+
case "ParentalGuidance":
|
|
190
|
+
GADMobileAds.sharedInstance().requestConfiguration.maxAdContentRating =
|
|
191
|
+
GADMaxAdContentRating.parentalGuidance
|
|
192
|
+
case "Teen":
|
|
193
|
+
GADMobileAds.sharedInstance().requestConfiguration.maxAdContentRating =
|
|
194
|
+
GADMaxAdContentRating.teen
|
|
195
|
+
case "MatureAudience":
|
|
196
|
+
GADMobileAds.sharedInstance().requestConfiguration.maxAdContentRating =
|
|
197
|
+
GADMaxAdContentRating.matureAudience
|
|
198
|
+
default:
|
|
199
|
+
print("maxAdContentRating can't find value")
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
}
|
|
143
204
|
}
|
|
@@ -22,6 +22,23 @@ class AdRewardExecutor: NSObject, GADFullScreenContentDelegate {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
self.rewardedAd = ad
|
|
25
|
+
|
|
26
|
+
if let providedOptions = call.getObject("ssv") {
|
|
27
|
+
let ssvOptions = GADServerSideVerificationOptions()
|
|
28
|
+
|
|
29
|
+
if let customData = providedOptions["customData"] as? String {
|
|
30
|
+
NSLog("Sending Custom Data: \(customData) to SSV callback")
|
|
31
|
+
ssvOptions.customRewardString = customData
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if let userId = providedOptions["userId"] as? String {
|
|
35
|
+
NSLog("Sending UserId: \(userId) to SSV callback")
|
|
36
|
+
ssvOptions.userIdentifier = userId
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
self.rewardedAd?.serverSideVerificationOptions = ssvOptions
|
|
40
|
+
}
|
|
41
|
+
|
|
25
42
|
self.rewardedAd?.fullScreenContentDelegate = self
|
|
26
43
|
self.plugin?.notifyListeners(RewardAdPluginEvents.Loaded.rawValue, data: [
|
|
27
44
|
"adUnitId": adUnitID
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@capacitor-community/admob",
|
|
3
|
-
"version": "3.0
|
|
3
|
+
"version": "3.3.0-0",
|
|
4
4
|
"description": "A native plugin for AdMob",
|
|
5
5
|
"main": "dist/plugin.cjs.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"clean": "rimraf ./dist",
|
|
38
38
|
"watch": "tsc --watch",
|
|
39
39
|
"prepublishOnly": "npm run build",
|
|
40
|
-
"release": "np"
|
|
40
|
+
"release": "np --no-tests"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@capacitor/android": "^3.0.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@ionic/prettier-config": "^1.0.1",
|
|
49
49
|
"@ionic/swiftlint-config": "^1.1.2",
|
|
50
50
|
"eslint": "^7.11.0",
|
|
51
|
-
"husky": "^4.
|
|
51
|
+
"husky": "^4.3.8",
|
|
52
52
|
"lint-staged": "^11.0.0",
|
|
53
53
|
"np": "^7.4.0",
|
|
54
54
|
"pre-commit": "^1.2.2",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"typescript": "~4.0.3"
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@capacitor/core": "3.0.0"
|
|
63
|
+
"@capacitor/core": "^3.0.0"
|
|
64
64
|
},
|
|
65
65
|
"husky": {
|
|
66
66
|
"hooks": {
|
|
@@ -69,7 +69,6 @@
|
|
|
69
69
|
},
|
|
70
70
|
"lint-staged": {
|
|
71
71
|
"*.{ts}": [
|
|
72
|
-
"npm run eslint -- --fix",
|
|
73
72
|
"npm run prettier -- --write",
|
|
74
73
|
"git add"
|
|
75
74
|
],
|
package/ios/Plugin/.DS_Store
DELETED
|
Binary file
|