react-native-google-mobile-ads 6.2.4 → 6.2.5
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/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsModule.java +2 -1
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsModule.m +2 -1
- package/lib/commonjs/ads/MobileAd.js +1 -1
- package/lib/commonjs/ads/MobileAd.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/ads/MobileAd.js +1 -1
- package/lib/module/ads/MobileAd.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/ads/MobileAd.ts +2 -1
- package/src/version.ts +1 -1
package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsModule.java
CHANGED
|
@@ -179,8 +179,9 @@ public class ReactNativeGoogleMobileAdsModule extends ReactNativeModule {
|
|
|
179
179
|
}
|
|
180
180
|
rejectPromiseWithCodeAndMessage(
|
|
181
181
|
promise, code, adInspectorError.getMessage());
|
|
182
|
+
} else {
|
|
183
|
+
promise.resolve(null);
|
|
182
184
|
}
|
|
183
|
-
promise.resolve(null);
|
|
184
185
|
}
|
|
185
186
|
});
|
|
186
187
|
});
|
|
@@ -116,7 +116,7 @@ class MobileAd {
|
|
|
116
116
|
}
|
|
117
117
|
|
|
118
118
|
_addAdEventListener(type, listener) {
|
|
119
|
-
if (!((0, _common.isOneOf)(type, Object.values(_AdEventType.AdEventType)) || (0, _common.isOneOf)(type, Object.values(_RewardedAdEventType.RewardedAdEventType)) && this._type === 'rewarded')) {
|
|
119
|
+
if (!((0, _common.isOneOf)(type, Object.values(_AdEventType.AdEventType)) || (0, _common.isOneOf)(type, Object.values(_RewardedAdEventType.RewardedAdEventType)) && (this._type === 'rewarded' || this._type === 'rewarded_interstitial'))) {
|
|
120
120
|
throw new Error(`${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`);
|
|
121
121
|
}
|
|
122
122
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MobileAd.ts"],"names":["MobileAd","constructor","type","googleMobileAds","requestId","adUnitId","requestOptions","_type","_googleMobileAds","_requestId","_adUnitId","_requestOptions","_loaded","_isLoadCalled","_adEventsListeners","Map","_adEventListenersMap","Object","values","AdEventType","RewardedAdEventType","GAMAdEventType","_","LOADED","forEach","set","_adEventListenerId","_adEventsListenerId","_nativeListener","emitter","addListener","_handleAdEvent","bind","event","error","data","body","CLOSED","payload","NativeError","fromEvent","listener","_getAdEventListeners","_addAdEventsListener","Error","_className","id","delete","_addAdEventListener","get","name","_camelCaseType","load","native","show","showOptions","options","e","message","removeAllListeners","clear","map","loaded"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { EmitterSubscription } from 'react-native';\nimport { isFunction, isOneOf } from '../common';\nimport { NativeError } from '../internal/NativeError';\nimport { AdEventType } from '../AdEventType';\nimport { RewardedAdEventType } from '../RewardedAdEventType';\nimport { AdEventListener, AdEventPayload } from '../types/AdEventListener';\nimport { AdEventsListener } from '../types/AdEventsListener';\nimport { AdShowOptions } from '../types/AdShowOptions';\nimport { RequestOptions } from '../types/RequestOptions';\nimport { MobileAdInterface } from '../types/MobileAd.interface';\nimport { MobileAdsModuleInterface } from '../types/MobileAdsModule.interface';\nimport { RewardedAdReward } from '../types/RewardedAdReward';\nimport { GAMAdEventType } from '../GAMAdEventType';\nimport { AppEvent } from '../types/AppEvent';\nimport { validateAdShowOptions } from '../validateAdShowOptions';\n\ntype EventType = AdEventType | RewardedAdEventType | GAMAdEventType;\n\nexport abstract class MobileAd implements MobileAdInterface {\n protected _type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial';\n protected _googleMobileAds: MobileAdsModuleInterface;\n protected _requestId: number;\n protected _adUnitId: string;\n protected _requestOptions: RequestOptions;\n protected _loaded: boolean;\n protected _isLoadCalled: boolean;\n protected _adEventsListeners: Map<number, AdEventsListener<EventType>>;\n protected _adEventListenersMap: Map<EventType, Map<number, AdEventListener<EventType>>>;\n protected _adEventsListenerId: number;\n protected _adEventListenerId: number;\n protected _nativeListener: EmitterSubscription;\n\n protected constructor(\n type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial',\n googleMobileAds: MobileAdsModuleInterface,\n requestId: number,\n adUnitId: string,\n requestOptions: RequestOptions,\n ) {\n this._type = type;\n this._googleMobileAds = googleMobileAds;\n this._requestId = requestId;\n this._adUnitId = adUnitId;\n this._requestOptions = requestOptions;\n\n this._loaded = false;\n this._isLoadCalled = false;\n this._adEventsListeners = new Map();\n this._adEventListenersMap = new Map();\n Object.values({\n ...AdEventType,\n ...RewardedAdEventType,\n ...GAMAdEventType,\n _: AdEventType.LOADED, // since AdEventType.LOADED is overwritten by RewardedAdEventType.LOADED\n }).forEach(type => {\n this._adEventListenersMap.set(type as EventType, new Map());\n });\n this._adEventListenerId = 0;\n this._adEventsListenerId = 0;\n\n this._nativeListener = googleMobileAds.emitter.addListener(\n `google_mobile_ads_${type}_event:${adUnitId}:${requestId}`,\n this._handleAdEvent.bind(this),\n );\n }\n\n protected _handleAdEvent(event: {\n body: {\n type: EventType;\n error?: { code: string; message: string };\n data?: RewardedAdReward | AppEvent;\n };\n }) {\n const { type, error, data } = event.body;\n\n if (type === AdEventType.LOADED || type === RewardedAdEventType.LOADED) {\n this._loaded = true;\n }\n\n if (type === AdEventType.CLOSED) {\n this._loaded = false;\n this._isLoadCalled = false;\n }\n\n let payload: AdEventPayload<EventType> = data;\n if (error) {\n payload = NativeError.fromEvent(error, 'googleMobileAds');\n }\n this._adEventsListeners.forEach(listener => {\n listener({\n type,\n payload,\n });\n });\n this._getAdEventListeners(type).forEach(listener => {\n listener(payload);\n });\n }\n\n protected _addAdEventsListener<T extends EventType>(listener: AdEventsListener<T>) {\n if (!isFunction(listener)) {\n throw new Error(`${this._className}.addAdEventsListener(*) 'listener' expected a function.`);\n }\n\n const id = this._adEventsListenerId++;\n this._adEventsListeners.set(id, listener as AdEventsListener<EventType>);\n return () => {\n this._adEventsListeners.delete(id);\n };\n }\n\n protected _addAdEventListener<T extends EventType>(type: T, listener: AdEventListener<T>) {\n if (\n !(\n isOneOf(type, Object.values(AdEventType)) ||\n (isOneOf(type, Object.values(RewardedAdEventType)) && this._type === 'rewarded')\n )\n ) {\n throw new Error(\n `${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`,\n );\n }\n if (!isFunction(listener)) {\n throw new Error(\n `${this._className}.addAdEventListener(_, *) 'listener' expected a function.`,\n );\n }\n\n const id = this._adEventListenerId++;\n this._getAdEventListeners(type).set(id, listener);\n return () => {\n this._getAdEventListeners(type).delete(id);\n };\n }\n\n protected _getAdEventListeners<T extends EventType>(type: T) {\n return this._adEventListenersMap.get(type) as Map<number, AdEventListener<T>>;\n }\n\n protected get _className() {\n return this.constructor.name;\n }\n\n protected get _camelCaseType() {\n let type: 'appOpen' | 'interstitial' | 'rewarded' | 'rewardedInterstitial';\n if (this._type === 'app_open') {\n type = 'appOpen';\n } else if (this._type === 'rewarded_interstitial') {\n type = 'rewardedInterstitial';\n } else {\n type = this._type;\n }\n return type;\n }\n\n public load() {\n // Prevent multiple load calls\n if (this._loaded || this._isLoadCalled) {\n return;\n }\n\n this._isLoadCalled = true;\n const load = this._googleMobileAds.native[`${this._camelCaseType}Load`];\n load(this._requestId, this._adUnitId, this._requestOptions);\n }\n\n public show(showOptions?: AdShowOptions) {\n if (!this._loaded) {\n throw new Error(\n `${this._className}.show() The requested ${this._className} has not loaded and could not be shown.`,\n );\n }\n\n let options;\n try {\n options = validateAdShowOptions(showOptions);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`${this._className}.show(*) ${e.message}.`);\n } else {\n throw e;\n }\n }\n\n const show = this._googleMobileAds.native[`${this._camelCaseType}Show`];\n return show(this._requestId, this._adUnitId, options);\n }\n\n public abstract addAdEventsListener<T extends never>(listener: AdEventsListener<T>): () => void;\n\n public abstract addAdEventListener<T extends never>(type: T, listener: AdEventListener<T>): void;\n\n public removeAllListeners() {\n this._adEventsListeners.clear();\n this._adEventListenersMap.forEach((_, type, map) => {\n map.set(type, new Map());\n });\n }\n\n public get adUnitId() {\n return this._adUnitId;\n }\n\n public get loaded() {\n return this._loaded;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["MobileAd.ts"],"names":["MobileAd","constructor","type","googleMobileAds","requestId","adUnitId","requestOptions","_type","_googleMobileAds","_requestId","_adUnitId","_requestOptions","_loaded","_isLoadCalled","_adEventsListeners","Map","_adEventListenersMap","Object","values","AdEventType","RewardedAdEventType","GAMAdEventType","_","LOADED","forEach","set","_adEventListenerId","_adEventsListenerId","_nativeListener","emitter","addListener","_handleAdEvent","bind","event","error","data","body","CLOSED","payload","NativeError","fromEvent","listener","_getAdEventListeners","_addAdEventsListener","Error","_className","id","delete","_addAdEventListener","get","name","_camelCaseType","load","native","show","showOptions","options","e","message","removeAllListeners","clear","map","loaded"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { EmitterSubscription } from 'react-native';\nimport { isFunction, isOneOf } from '../common';\nimport { NativeError } from '../internal/NativeError';\nimport { AdEventType } from '../AdEventType';\nimport { RewardedAdEventType } from '../RewardedAdEventType';\nimport { AdEventListener, AdEventPayload } from '../types/AdEventListener';\nimport { AdEventsListener } from '../types/AdEventsListener';\nimport { AdShowOptions } from '../types/AdShowOptions';\nimport { RequestOptions } from '../types/RequestOptions';\nimport { MobileAdInterface } from '../types/MobileAd.interface';\nimport { MobileAdsModuleInterface } from '../types/MobileAdsModule.interface';\nimport { RewardedAdReward } from '../types/RewardedAdReward';\nimport { GAMAdEventType } from '../GAMAdEventType';\nimport { AppEvent } from '../types/AppEvent';\nimport { validateAdShowOptions } from '../validateAdShowOptions';\n\ntype EventType = AdEventType | RewardedAdEventType | GAMAdEventType;\n\nexport abstract class MobileAd implements MobileAdInterface {\n protected _type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial';\n protected _googleMobileAds: MobileAdsModuleInterface;\n protected _requestId: number;\n protected _adUnitId: string;\n protected _requestOptions: RequestOptions;\n protected _loaded: boolean;\n protected _isLoadCalled: boolean;\n protected _adEventsListeners: Map<number, AdEventsListener<EventType>>;\n protected _adEventListenersMap: Map<EventType, Map<number, AdEventListener<EventType>>>;\n protected _adEventsListenerId: number;\n protected _adEventListenerId: number;\n protected _nativeListener: EmitterSubscription;\n\n protected constructor(\n type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial',\n googleMobileAds: MobileAdsModuleInterface,\n requestId: number,\n adUnitId: string,\n requestOptions: RequestOptions,\n ) {\n this._type = type;\n this._googleMobileAds = googleMobileAds;\n this._requestId = requestId;\n this._adUnitId = adUnitId;\n this._requestOptions = requestOptions;\n\n this._loaded = false;\n this._isLoadCalled = false;\n this._adEventsListeners = new Map();\n this._adEventListenersMap = new Map();\n Object.values({\n ...AdEventType,\n ...RewardedAdEventType,\n ...GAMAdEventType,\n _: AdEventType.LOADED, // since AdEventType.LOADED is overwritten by RewardedAdEventType.LOADED\n }).forEach(type => {\n this._adEventListenersMap.set(type as EventType, new Map());\n });\n this._adEventListenerId = 0;\n this._adEventsListenerId = 0;\n\n this._nativeListener = googleMobileAds.emitter.addListener(\n `google_mobile_ads_${type}_event:${adUnitId}:${requestId}`,\n this._handleAdEvent.bind(this),\n );\n }\n\n protected _handleAdEvent(event: {\n body: {\n type: EventType;\n error?: { code: string; message: string };\n data?: RewardedAdReward | AppEvent;\n };\n }) {\n const { type, error, data } = event.body;\n\n if (type === AdEventType.LOADED || type === RewardedAdEventType.LOADED) {\n this._loaded = true;\n }\n\n if (type === AdEventType.CLOSED) {\n this._loaded = false;\n this._isLoadCalled = false;\n }\n\n let payload: AdEventPayload<EventType> = data;\n if (error) {\n payload = NativeError.fromEvent(error, 'googleMobileAds');\n }\n this._adEventsListeners.forEach(listener => {\n listener({\n type,\n payload,\n });\n });\n this._getAdEventListeners(type).forEach(listener => {\n listener(payload);\n });\n }\n\n protected _addAdEventsListener<T extends EventType>(listener: AdEventsListener<T>) {\n if (!isFunction(listener)) {\n throw new Error(`${this._className}.addAdEventsListener(*) 'listener' expected a function.`);\n }\n\n const id = this._adEventsListenerId++;\n this._adEventsListeners.set(id, listener as AdEventsListener<EventType>);\n return () => {\n this._adEventsListeners.delete(id);\n };\n }\n\n protected _addAdEventListener<T extends EventType>(type: T, listener: AdEventListener<T>) {\n if (\n !(\n isOneOf(type, Object.values(AdEventType)) ||\n (isOneOf(type, Object.values(RewardedAdEventType)) &&\n (this._type === 'rewarded' || this._type === 'rewarded_interstitial'))\n )\n ) {\n throw new Error(\n `${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`,\n );\n }\n if (!isFunction(listener)) {\n throw new Error(\n `${this._className}.addAdEventListener(_, *) 'listener' expected a function.`,\n );\n }\n\n const id = this._adEventListenerId++;\n this._getAdEventListeners(type).set(id, listener);\n return () => {\n this._getAdEventListeners(type).delete(id);\n };\n }\n\n protected _getAdEventListeners<T extends EventType>(type: T) {\n return this._adEventListenersMap.get(type) as Map<number, AdEventListener<T>>;\n }\n\n protected get _className() {\n return this.constructor.name;\n }\n\n protected get _camelCaseType() {\n let type: 'appOpen' | 'interstitial' | 'rewarded' | 'rewardedInterstitial';\n if (this._type === 'app_open') {\n type = 'appOpen';\n } else if (this._type === 'rewarded_interstitial') {\n type = 'rewardedInterstitial';\n } else {\n type = this._type;\n }\n return type;\n }\n\n public load() {\n // Prevent multiple load calls\n if (this._loaded || this._isLoadCalled) {\n return;\n }\n\n this._isLoadCalled = true;\n const load = this._googleMobileAds.native[`${this._camelCaseType}Load`];\n load(this._requestId, this._adUnitId, this._requestOptions);\n }\n\n public show(showOptions?: AdShowOptions) {\n if (!this._loaded) {\n throw new Error(\n `${this._className}.show() The requested ${this._className} has not loaded and could not be shown.`,\n );\n }\n\n let options;\n try {\n options = validateAdShowOptions(showOptions);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`${this._className}.show(*) ${e.message}.`);\n } else {\n throw e;\n }\n }\n\n const show = this._googleMobileAds.native[`${this._camelCaseType}Show`];\n return show(this._requestId, this._adUnitId, options);\n }\n\n public abstract addAdEventsListener<T extends never>(listener: AdEventsListener<T>): () => void;\n\n public abstract addAdEventListener<T extends never>(type: T, listener: AdEventListener<T>): void;\n\n public removeAllListeners() {\n this._adEventsListeners.clear();\n this._adEventListenersMap.forEach((_, type, map) => {\n map.set(type, new Map());\n });\n }\n\n public get adUnitId() {\n return this._adUnitId;\n }\n\n public get loaded() {\n return this._loaded;\n }\n}\n"]}
|
package/lib/commonjs/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["version.ts"],"names":["version"],"mappings":";;;;;;AAAA;AACO,MAAMA,OAAO,GAAG,OAAhB","sourcesContent":["// Generated by genversion.\nexport const version = '6.2.
|
|
1
|
+
{"version":3,"sources":["version.ts"],"names":["version"],"mappings":";;;;;;AAAA;AACO,MAAMA,OAAO,GAAG,OAAhB","sourcesContent":["// Generated by genversion.\nexport const version = '6.2.5';\n"]}
|
|
@@ -119,7 +119,7 @@ export class MobileAd {
|
|
|
119
119
|
}
|
|
120
120
|
|
|
121
121
|
_addAdEventListener(type, listener) {
|
|
122
|
-
if (!(isOneOf(type, Object.values(AdEventType)) || isOneOf(type, Object.values(RewardedAdEventType)) && this._type === 'rewarded')) {
|
|
122
|
+
if (!(isOneOf(type, Object.values(AdEventType)) || isOneOf(type, Object.values(RewardedAdEventType)) && (this._type === 'rewarded' || this._type === 'rewarded_interstitial'))) {
|
|
123
123
|
throw new Error(`${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`);
|
|
124
124
|
}
|
|
125
125
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MobileAd.ts"],"names":["isFunction","isOneOf","NativeError","AdEventType","RewardedAdEventType","GAMAdEventType","validateAdShowOptions","MobileAd","constructor","type","googleMobileAds","requestId","adUnitId","requestOptions","_type","_googleMobileAds","_requestId","_adUnitId","_requestOptions","_loaded","_isLoadCalled","_adEventsListeners","Map","_adEventListenersMap","Object","values","_","LOADED","forEach","set","_adEventListenerId","_adEventsListenerId","_nativeListener","emitter","addListener","_handleAdEvent","bind","event","error","data","body","CLOSED","payload","fromEvent","listener","_getAdEventListeners","_addAdEventsListener","Error","_className","id","delete","_addAdEventListener","get","name","_camelCaseType","load","native","show","showOptions","options","e","message","removeAllListeners","clear","map","loaded"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { EmitterSubscription } from 'react-native';\nimport { isFunction, isOneOf } from '../common';\nimport { NativeError } from '../internal/NativeError';\nimport { AdEventType } from '../AdEventType';\nimport { RewardedAdEventType } from '../RewardedAdEventType';\nimport { AdEventListener, AdEventPayload } from '../types/AdEventListener';\nimport { AdEventsListener } from '../types/AdEventsListener';\nimport { AdShowOptions } from '../types/AdShowOptions';\nimport { RequestOptions } from '../types/RequestOptions';\nimport { MobileAdInterface } from '../types/MobileAd.interface';\nimport { MobileAdsModuleInterface } from '../types/MobileAdsModule.interface';\nimport { RewardedAdReward } from '../types/RewardedAdReward';\nimport { GAMAdEventType } from '../GAMAdEventType';\nimport { AppEvent } from '../types/AppEvent';\nimport { validateAdShowOptions } from '../validateAdShowOptions';\n\ntype EventType = AdEventType | RewardedAdEventType | GAMAdEventType;\n\nexport abstract class MobileAd implements MobileAdInterface {\n protected _type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial';\n protected _googleMobileAds: MobileAdsModuleInterface;\n protected _requestId: number;\n protected _adUnitId: string;\n protected _requestOptions: RequestOptions;\n protected _loaded: boolean;\n protected _isLoadCalled: boolean;\n protected _adEventsListeners: Map<number, AdEventsListener<EventType>>;\n protected _adEventListenersMap: Map<EventType, Map<number, AdEventListener<EventType>>>;\n protected _adEventsListenerId: number;\n protected _adEventListenerId: number;\n protected _nativeListener: EmitterSubscription;\n\n protected constructor(\n type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial',\n googleMobileAds: MobileAdsModuleInterface,\n requestId: number,\n adUnitId: string,\n requestOptions: RequestOptions,\n ) {\n this._type = type;\n this._googleMobileAds = googleMobileAds;\n this._requestId = requestId;\n this._adUnitId = adUnitId;\n this._requestOptions = requestOptions;\n\n this._loaded = false;\n this._isLoadCalled = false;\n this._adEventsListeners = new Map();\n this._adEventListenersMap = new Map();\n Object.values({\n ...AdEventType,\n ...RewardedAdEventType,\n ...GAMAdEventType,\n _: AdEventType.LOADED, // since AdEventType.LOADED is overwritten by RewardedAdEventType.LOADED\n }).forEach(type => {\n this._adEventListenersMap.set(type as EventType, new Map());\n });\n this._adEventListenerId = 0;\n this._adEventsListenerId = 0;\n\n this._nativeListener = googleMobileAds.emitter.addListener(\n `google_mobile_ads_${type}_event:${adUnitId}:${requestId}`,\n this._handleAdEvent.bind(this),\n );\n }\n\n protected _handleAdEvent(event: {\n body: {\n type: EventType;\n error?: { code: string; message: string };\n data?: RewardedAdReward | AppEvent;\n };\n }) {\n const { type, error, data } = event.body;\n\n if (type === AdEventType.LOADED || type === RewardedAdEventType.LOADED) {\n this._loaded = true;\n }\n\n if (type === AdEventType.CLOSED) {\n this._loaded = false;\n this._isLoadCalled = false;\n }\n\n let payload: AdEventPayload<EventType> = data;\n if (error) {\n payload = NativeError.fromEvent(error, 'googleMobileAds');\n }\n this._adEventsListeners.forEach(listener => {\n listener({\n type,\n payload,\n });\n });\n this._getAdEventListeners(type).forEach(listener => {\n listener(payload);\n });\n }\n\n protected _addAdEventsListener<T extends EventType>(listener: AdEventsListener<T>) {\n if (!isFunction(listener)) {\n throw new Error(`${this._className}.addAdEventsListener(*) 'listener' expected a function.`);\n }\n\n const id = this._adEventsListenerId++;\n this._adEventsListeners.set(id, listener as AdEventsListener<EventType>);\n return () => {\n this._adEventsListeners.delete(id);\n };\n }\n\n protected _addAdEventListener<T extends EventType>(type: T, listener: AdEventListener<T>) {\n if (\n !(\n isOneOf(type, Object.values(AdEventType)) ||\n (isOneOf(type, Object.values(RewardedAdEventType)) && this._type === 'rewarded')\n )\n ) {\n throw new Error(\n `${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`,\n );\n }\n if (!isFunction(listener)) {\n throw new Error(\n `${this._className}.addAdEventListener(_, *) 'listener' expected a function.`,\n );\n }\n\n const id = this._adEventListenerId++;\n this._getAdEventListeners(type).set(id, listener);\n return () => {\n this._getAdEventListeners(type).delete(id);\n };\n }\n\n protected _getAdEventListeners<T extends EventType>(type: T) {\n return this._adEventListenersMap.get(type) as Map<number, AdEventListener<T>>;\n }\n\n protected get _className() {\n return this.constructor.name;\n }\n\n protected get _camelCaseType() {\n let type: 'appOpen' | 'interstitial' | 'rewarded' | 'rewardedInterstitial';\n if (this._type === 'app_open') {\n type = 'appOpen';\n } else if (this._type === 'rewarded_interstitial') {\n type = 'rewardedInterstitial';\n } else {\n type = this._type;\n }\n return type;\n }\n\n public load() {\n // Prevent multiple load calls\n if (this._loaded || this._isLoadCalled) {\n return;\n }\n\n this._isLoadCalled = true;\n const load = this._googleMobileAds.native[`${this._camelCaseType}Load`];\n load(this._requestId, this._adUnitId, this._requestOptions);\n }\n\n public show(showOptions?: AdShowOptions) {\n if (!this._loaded) {\n throw new Error(\n `${this._className}.show() The requested ${this._className} has not loaded and could not be shown.`,\n );\n }\n\n let options;\n try {\n options = validateAdShowOptions(showOptions);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`${this._className}.show(*) ${e.message}.`);\n } else {\n throw e;\n }\n }\n\n const show = this._googleMobileAds.native[`${this._camelCaseType}Show`];\n return show(this._requestId, this._adUnitId, options);\n }\n\n public abstract addAdEventsListener<T extends never>(listener: AdEventsListener<T>): () => void;\n\n public abstract addAdEventListener<T extends never>(type: T, listener: AdEventListener<T>): void;\n\n public removeAllListeners() {\n this._adEventsListeners.clear();\n this._adEventListenersMap.forEach((_, type, map) => {\n map.set(type, new Map());\n });\n }\n\n public get adUnitId() {\n return this._adUnitId;\n }\n\n public get loaded() {\n return this._loaded;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["MobileAd.ts"],"names":["isFunction","isOneOf","NativeError","AdEventType","RewardedAdEventType","GAMAdEventType","validateAdShowOptions","MobileAd","constructor","type","googleMobileAds","requestId","adUnitId","requestOptions","_type","_googleMobileAds","_requestId","_adUnitId","_requestOptions","_loaded","_isLoadCalled","_adEventsListeners","Map","_adEventListenersMap","Object","values","_","LOADED","forEach","set","_adEventListenerId","_adEventsListenerId","_nativeListener","emitter","addListener","_handleAdEvent","bind","event","error","data","body","CLOSED","payload","fromEvent","listener","_getAdEventListeners","_addAdEventsListener","Error","_className","id","delete","_addAdEventListener","get","name","_camelCaseType","load","native","show","showOptions","options","e","message","removeAllListeners","clear","map","loaded"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { EmitterSubscription } from 'react-native';\nimport { isFunction, isOneOf } from '../common';\nimport { NativeError } from '../internal/NativeError';\nimport { AdEventType } from '../AdEventType';\nimport { RewardedAdEventType } from '../RewardedAdEventType';\nimport { AdEventListener, AdEventPayload } from '../types/AdEventListener';\nimport { AdEventsListener } from '../types/AdEventsListener';\nimport { AdShowOptions } from '../types/AdShowOptions';\nimport { RequestOptions } from '../types/RequestOptions';\nimport { MobileAdInterface } from '../types/MobileAd.interface';\nimport { MobileAdsModuleInterface } from '../types/MobileAdsModule.interface';\nimport { RewardedAdReward } from '../types/RewardedAdReward';\nimport { GAMAdEventType } from '../GAMAdEventType';\nimport { AppEvent } from '../types/AppEvent';\nimport { validateAdShowOptions } from '../validateAdShowOptions';\n\ntype EventType = AdEventType | RewardedAdEventType | GAMAdEventType;\n\nexport abstract class MobileAd implements MobileAdInterface {\n protected _type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial';\n protected _googleMobileAds: MobileAdsModuleInterface;\n protected _requestId: number;\n protected _adUnitId: string;\n protected _requestOptions: RequestOptions;\n protected _loaded: boolean;\n protected _isLoadCalled: boolean;\n protected _adEventsListeners: Map<number, AdEventsListener<EventType>>;\n protected _adEventListenersMap: Map<EventType, Map<number, AdEventListener<EventType>>>;\n protected _adEventsListenerId: number;\n protected _adEventListenerId: number;\n protected _nativeListener: EmitterSubscription;\n\n protected constructor(\n type: 'app_open' | 'interstitial' | 'rewarded' | 'rewarded_interstitial',\n googleMobileAds: MobileAdsModuleInterface,\n requestId: number,\n adUnitId: string,\n requestOptions: RequestOptions,\n ) {\n this._type = type;\n this._googleMobileAds = googleMobileAds;\n this._requestId = requestId;\n this._adUnitId = adUnitId;\n this._requestOptions = requestOptions;\n\n this._loaded = false;\n this._isLoadCalled = false;\n this._adEventsListeners = new Map();\n this._adEventListenersMap = new Map();\n Object.values({\n ...AdEventType,\n ...RewardedAdEventType,\n ...GAMAdEventType,\n _: AdEventType.LOADED, // since AdEventType.LOADED is overwritten by RewardedAdEventType.LOADED\n }).forEach(type => {\n this._adEventListenersMap.set(type as EventType, new Map());\n });\n this._adEventListenerId = 0;\n this._adEventsListenerId = 0;\n\n this._nativeListener = googleMobileAds.emitter.addListener(\n `google_mobile_ads_${type}_event:${adUnitId}:${requestId}`,\n this._handleAdEvent.bind(this),\n );\n }\n\n protected _handleAdEvent(event: {\n body: {\n type: EventType;\n error?: { code: string; message: string };\n data?: RewardedAdReward | AppEvent;\n };\n }) {\n const { type, error, data } = event.body;\n\n if (type === AdEventType.LOADED || type === RewardedAdEventType.LOADED) {\n this._loaded = true;\n }\n\n if (type === AdEventType.CLOSED) {\n this._loaded = false;\n this._isLoadCalled = false;\n }\n\n let payload: AdEventPayload<EventType> = data;\n if (error) {\n payload = NativeError.fromEvent(error, 'googleMobileAds');\n }\n this._adEventsListeners.forEach(listener => {\n listener({\n type,\n payload,\n });\n });\n this._getAdEventListeners(type).forEach(listener => {\n listener(payload);\n });\n }\n\n protected _addAdEventsListener<T extends EventType>(listener: AdEventsListener<T>) {\n if (!isFunction(listener)) {\n throw new Error(`${this._className}.addAdEventsListener(*) 'listener' expected a function.`);\n }\n\n const id = this._adEventsListenerId++;\n this._adEventsListeners.set(id, listener as AdEventsListener<EventType>);\n return () => {\n this._adEventsListeners.delete(id);\n };\n }\n\n protected _addAdEventListener<T extends EventType>(type: T, listener: AdEventListener<T>) {\n if (\n !(\n isOneOf(type, Object.values(AdEventType)) ||\n (isOneOf(type, Object.values(RewardedAdEventType)) &&\n (this._type === 'rewarded' || this._type === 'rewarded_interstitial'))\n )\n ) {\n throw new Error(\n `${this._className}.addAdEventListener(*) 'type' expected a valid event type value.`,\n );\n }\n if (!isFunction(listener)) {\n throw new Error(\n `${this._className}.addAdEventListener(_, *) 'listener' expected a function.`,\n );\n }\n\n const id = this._adEventListenerId++;\n this._getAdEventListeners(type).set(id, listener);\n return () => {\n this._getAdEventListeners(type).delete(id);\n };\n }\n\n protected _getAdEventListeners<T extends EventType>(type: T) {\n return this._adEventListenersMap.get(type) as Map<number, AdEventListener<T>>;\n }\n\n protected get _className() {\n return this.constructor.name;\n }\n\n protected get _camelCaseType() {\n let type: 'appOpen' | 'interstitial' | 'rewarded' | 'rewardedInterstitial';\n if (this._type === 'app_open') {\n type = 'appOpen';\n } else if (this._type === 'rewarded_interstitial') {\n type = 'rewardedInterstitial';\n } else {\n type = this._type;\n }\n return type;\n }\n\n public load() {\n // Prevent multiple load calls\n if (this._loaded || this._isLoadCalled) {\n return;\n }\n\n this._isLoadCalled = true;\n const load = this._googleMobileAds.native[`${this._camelCaseType}Load`];\n load(this._requestId, this._adUnitId, this._requestOptions);\n }\n\n public show(showOptions?: AdShowOptions) {\n if (!this._loaded) {\n throw new Error(\n `${this._className}.show() The requested ${this._className} has not loaded and could not be shown.`,\n );\n }\n\n let options;\n try {\n options = validateAdShowOptions(showOptions);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`${this._className}.show(*) ${e.message}.`);\n } else {\n throw e;\n }\n }\n\n const show = this._googleMobileAds.native[`${this._camelCaseType}Show`];\n return show(this._requestId, this._adUnitId, options);\n }\n\n public abstract addAdEventsListener<T extends never>(listener: AdEventsListener<T>): () => void;\n\n public abstract addAdEventListener<T extends never>(type: T, listener: AdEventListener<T>): void;\n\n public removeAllListeners() {\n this._adEventsListeners.clear();\n this._adEventListenersMap.forEach((_, type, map) => {\n map.set(type, new Map());\n });\n }\n\n public get adUnitId() {\n return this._adUnitId;\n }\n\n public get loaded() {\n return this._loaded;\n }\n}\n"]}
|
package/lib/module/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["version.ts"],"names":["version"],"mappings":"AAAA;AACA,OAAO,MAAMA,OAAO,GAAG,OAAhB","sourcesContent":["// Generated by genversion.\nexport const version = '6.2.
|
|
1
|
+
{"version":3,"sources":["version.ts"],"names":["version"],"mappings":"AAAA;AACA,OAAO,MAAMA,OAAO,GAAG,OAAhB","sourcesContent":["// Generated by genversion.\nexport const version = '6.2.5';\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "6.2.
|
|
1
|
+
export declare const SDK_VERSION = "6.2.5";
|
|
2
2
|
export { default, MobileAds } from './MobileAds';
|
|
3
3
|
export { AdsConsentDebugGeography } from './AdsConsentDebugGeography';
|
|
4
4
|
export { AdsConsentPurposes } from './AdsConsentPurposes';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "6.2.
|
|
1
|
+
export declare const version = "6.2.5";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-google-mobile-ads",
|
|
3
|
-
"version": "6.2.
|
|
3
|
+
"version": "6.2.5",
|
|
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",
|
package/src/ads/MobileAd.ts
CHANGED
|
@@ -130,7 +130,8 @@ export abstract class MobileAd implements MobileAdInterface {
|
|
|
130
130
|
if (
|
|
131
131
|
!(
|
|
132
132
|
isOneOf(type, Object.values(AdEventType)) ||
|
|
133
|
-
(isOneOf(type, Object.values(RewardedAdEventType)) &&
|
|
133
|
+
(isOneOf(type, Object.values(RewardedAdEventType)) &&
|
|
134
|
+
(this._type === 'rewarded' || this._type === 'rewarded_interstitial'))
|
|
134
135
|
)
|
|
135
136
|
) {
|
|
136
137
|
throw new Error(
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Generated by genversion.
|
|
2
|
-
export const version = '6.2.
|
|
2
|
+
export const version = '6.2.5';
|