react-native-applovin-max 8.2.0 → 9.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.
- package/android/build.gradle +14 -3
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdView.java +34 -27
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewManagerImpl.java +110 -0
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewUiComponent.java +15 -13
- package/android/src/main/java/com/applovin/reactnative/{AppLovinMAXModule.java → AppLovinMAXModuleImpl.java} +108 -168
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdView.java +84 -56
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdViewManagerImpl.java +101 -0
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXPackage.java +44 -11
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXUtils.java +56 -0
- package/android/src/newarch/com/applovin/reactnative/AppLovinMAXAdViewManager.java +151 -0
- package/android/src/newarch/com/applovin/reactnative/AppLovinMAXModule.java +453 -0
- package/android/src/newarch/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +130 -0
- package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXAdViewManager.java +128 -0
- package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXModule.java +453 -0
- package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +93 -0
- package/ios/AppLovinMAX.h +8 -3
- package/ios/{AppLovinMAX.m → AppLovinMAX.mm} +67 -53
- package/ios/AppLovinMAXAdView.h +7 -2
- package/ios/AppLovinMAXAdView.mm +747 -0
- package/ios/{AppLovinMAXAdViewManager.m → AppLovinMAXAdViewManager.mm} +3 -2
- package/ios/{AppLovinMAXAdViewUIComponent.m → AppLovinMAXAdViewUIComponent.mm} +2 -1
- package/ios/AppLovinMAXNativeAdView.h +15 -4
- package/ios/AppLovinMAXNativeAdView.mm +745 -0
- package/ios/AppLovinMAXNativeAdViewManager.mm +116 -0
- package/lib/commonjs/AdView.js +102 -142
- package/lib/commonjs/AdView.js.map +1 -1
- package/lib/commonjs/AppLovinMAX.js +49 -34
- package/lib/commonjs/AppLovinMAX.js.map +1 -1
- package/lib/commonjs/AppOpenAd.js +8 -10
- package/lib/commonjs/AppOpenAd.js.map +1 -1
- package/lib/commonjs/BannerAd.js +19 -21
- package/lib/commonjs/BannerAd.js.map +1 -1
- package/lib/commonjs/ErrorCode.js +27 -36
- package/lib/commonjs/ErrorCode.js.map +1 -1
- package/lib/commonjs/EventEmitter.js +24 -5
- package/lib/commonjs/EventEmitter.js.map +1 -1
- package/lib/commonjs/InterstitialAd.js +8 -10
- package/lib/commonjs/InterstitialAd.js.map +1 -1
- package/lib/commonjs/MRecAd.js +14 -16
- package/lib/commonjs/MRecAd.js.map +1 -1
- package/lib/commonjs/Privacy.js +3 -5
- package/lib/commonjs/Privacy.js.map +1 -1
- package/lib/commonjs/RewardedAd.js +8 -10
- package/lib/commonjs/RewardedAd.js.map +1 -1
- package/lib/commonjs/Utils.js +43 -0
- package/lib/commonjs/Utils.js.map +1 -0
- package/lib/commonjs/nativeAd/NativeAdView.js +84 -50
- package/lib/commonjs/nativeAd/NativeAdView.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js +129 -82
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js +67 -8
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/commonjs/nativeAd/img/blank_icon.png +0 -0
- package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js +41 -0
- package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js +37 -0
- package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/NativeAppLovinMAXModule.js +16 -0
- package/lib/commonjs/specs/NativeAppLovinMAXModule.js.map +1 -0
- package/lib/commonjs/types/AdInfo.js +13 -16
- package/lib/commonjs/types/AdInfo.js.map +1 -1
- package/lib/module/AdView.js +98 -139
- package/lib/module/AdView.js.map +1 -1
- package/lib/module/AppLovinMAX.js +47 -32
- package/lib/module/AppLovinMAX.js.map +1 -1
- package/lib/module/AppOpenAd.js +1 -4
- package/lib/module/AppOpenAd.js.map +1 -1
- package/lib/module/BannerAd.js +1 -4
- package/lib/module/BannerAd.js.map +1 -1
- package/lib/module/ErrorCode.js +25 -35
- package/lib/module/ErrorCode.js.map +1 -1
- package/lib/module/EventEmitter.js +24 -5
- package/lib/module/EventEmitter.js.map +1 -1
- package/lib/module/InterstitialAd.js +2 -5
- package/lib/module/InterstitialAd.js.map +1 -1
- package/lib/module/MRecAd.js +1 -4
- package/lib/module/MRecAd.js.map +1 -1
- package/lib/module/Privacy.js +1 -4
- package/lib/module/Privacy.js.map +1 -1
- package/lib/module/RewardedAd.js +2 -5
- package/lib/module/RewardedAd.js.map +1 -1
- package/lib/module/Utils.js +35 -0
- package/lib/module/Utils.js.map +1 -0
- package/lib/module/nativeAd/NativeAdView.js +83 -47
- package/lib/module/nativeAd/NativeAdView.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewComponents.js +134 -83
- package/lib/module/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewProvider.js +69 -9
- package/lib/module/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/module/nativeAd/img/blank_icon.png +0 -0
- package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js +35 -0
- package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -0
- package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js +31 -0
- package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -0
- package/lib/module/specs/NativeAppLovinMAXModule.js +12 -0
- package/lib/module/specs/NativeAppLovinMAXModule.js.map +1 -0
- package/lib/module/types/AdInfo.js +13 -16
- package/lib/module/types/AdInfo.js.map +1 -1
- package/lib/typescript/src/AdView.d.ts +38 -32
- package/lib/typescript/src/AdView.d.ts.map +1 -1
- package/lib/typescript/src/AppLovinMAX.d.ts +22 -21
- package/lib/typescript/src/AppLovinMAX.d.ts.map +1 -1
- package/lib/typescript/src/AppOpenAd.d.ts.map +1 -1
- package/lib/typescript/src/BannerAd.d.ts.map +1 -1
- package/lib/typescript/src/ErrorCode.d.ts +24 -31
- package/lib/typescript/src/ErrorCode.d.ts.map +1 -1
- package/lib/typescript/src/EventEmitter.d.ts +16 -0
- package/lib/typescript/src/EventEmitter.d.ts.map +1 -1
- package/lib/typescript/src/InterstitialAd.d.ts.map +1 -1
- package/lib/typescript/src/MRecAd.d.ts.map +1 -1
- package/lib/typescript/src/Privacy.d.ts.map +1 -1
- package/lib/typescript/src/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/src/Utils.d.ts +31 -0
- package/lib/typescript/src/Utils.d.ts.map +1 -0
- package/lib/typescript/src/nativeAd/NativeAdView.d.ts +15 -7
- package/lib/typescript/src/nativeAd/NativeAdView.d.ts.map +1 -1
- package/lib/typescript/src/nativeAd/NativeAdViewComponents.d.ts +65 -1
- package/lib/typescript/src/nativeAd/NativeAdViewComponents.d.ts.map +1 -1
- package/lib/typescript/src/nativeAd/NativeAdViewProvider.d.ts +31 -5
- package/lib/typescript/src/nativeAd/NativeAdViewProvider.d.ts.map +1 -1
- package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts +130 -0
- package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts +131 -0
- package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts +142 -0
- package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts.map +1 -0
- package/lib/typescript/src/types/AdEvent.d.ts +10 -4
- package/lib/typescript/src/types/AdEvent.d.ts.map +1 -1
- package/lib/typescript/src/types/AdInfo.d.ts +79 -86
- package/lib/typescript/src/types/AdInfo.d.ts.map +1 -1
- package/lib/typescript/src/types/AdProps.d.ts +16 -17
- package/lib/typescript/src/types/AdProps.d.ts.map +1 -1
- package/lib/typescript/src/types/AdViewProps.d.ts +28 -29
- package/lib/typescript/src/types/AdViewProps.d.ts.map +1 -1
- package/lib/typescript/src/types/AppLovinMAX.d.ts +50 -53
- package/lib/typescript/src/types/AppLovinMAX.d.ts.map +1 -1
- package/lib/typescript/src/types/BannerAd.d.ts +22 -17
- package/lib/typescript/src/types/BannerAd.d.ts.map +1 -1
- package/lib/typescript/src/types/CMPError.d.ts +7 -4
- package/lib/typescript/src/types/CMPError.d.ts.map +1 -1
- package/lib/typescript/src/types/Configuration.d.ts +12 -14
- package/lib/typescript/src/types/Configuration.d.ts.map +1 -1
- package/lib/typescript/src/types/FullscreenAd.d.ts +39 -46
- package/lib/typescript/src/types/FullscreenAd.d.ts.map +1 -1
- package/lib/typescript/src/types/MRecAd.d.ts +7 -3
- package/lib/typescript/src/types/MRecAd.d.ts.map +1 -1
- package/lib/typescript/src/types/NativeAd.d.ts +15 -10
- package/lib/typescript/src/types/NativeAd.d.ts.map +1 -1
- package/lib/typescript/src/types/NativeAdViewProps.d.ts +4 -3
- package/lib/typescript/src/types/NativeAdViewProps.d.ts.map +1 -1
- package/lib/typescript/src/types/Privacy.d.ts +13 -6
- package/lib/typescript/src/types/Privacy.d.ts.map +1 -1
- package/lib/typescript/src/types/RewardedAd.d.ts +7 -5
- package/lib/typescript/src/types/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/src/types/ViewAd.d.ts +46 -50
- package/lib/typescript/src/types/ViewAd.d.ts.map +1 -1
- package/package.json +9 -1
- package/react-native-applovin-max.podspec +3 -3
- package/src/AdView.tsx +100 -183
- package/src/AppLovinMAX.ts +42 -33
- package/src/AppOpenAd.ts +1 -3
- package/src/BannerAd.ts +1 -3
- package/src/ErrorCode.ts +25 -34
- package/src/EventEmitter.ts +22 -5
- package/src/InterstitialAd.ts +2 -4
- package/src/MRecAd.ts +1 -3
- package/src/Privacy.ts +1 -3
- package/src/RewardedAd.ts +2 -4
- package/src/Utils.ts +45 -0
- package/src/nativeAd/NativeAdView.tsx +83 -73
- package/src/nativeAd/NativeAdViewComponents.tsx +120 -89
- package/src/nativeAd/NativeAdViewProvider.tsx +60 -12
- package/src/nativeAd/img/blank_icon.png +0 -0
- package/src/specs/AppLovinMAXAdViewNativeComponent.ts +157 -0
- package/src/specs/AppLovinMAXNativeAdViewNativeComponent.ts +153 -0
- package/src/specs/NativeAppLovinMAXModule.ts +228 -0
- package/src/types/AdEvent.ts +10 -4
- package/src/types/AdInfo.ts +79 -86
- package/src/types/AdProps.ts +16 -17
- package/src/types/AdViewProps.ts +28 -29
- package/src/types/AppLovinMAX.ts +50 -53
- package/src/types/BannerAd.ts +22 -17
- package/src/types/CMPError.ts +7 -4
- package/src/types/Configuration.ts +12 -14
- package/src/types/FullscreenAd.ts +39 -46
- package/src/types/MRecAd.ts +7 -3
- package/src/types/NativeAd.ts +16 -10
- package/src/types/NativeAdViewProps.ts +4 -3
- package/src/types/Privacy.ts +13 -6
- package/src/types/RewardedAd.ts +7 -5
- package/src/types/ViewAd.ts +46 -50
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewManager.java +0 -149
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +0 -163
- package/ios/AppLovinMAXAdView.m +0 -325
- package/ios/AppLovinMAXNativeAdView.m +0 -432
- package/ios/AppLovinMAXNativeAdViewManager.m +0 -64
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","forwardRef","useContext","useImperativeHandle","useRef","useState","useEffect","useCallback","
|
|
1
|
+
{"version":3,"names":["React","forwardRef","useContext","useImperativeHandle","useRef","useState","useEffect","useCallback","findNodeHandle","View","AppLovinMAX","NativeAdViewComponent","Commands","NativeAdViewContext","NativeAdViewProvider","makeExtraParametersArray","makeLocalExtraParametersArray","NativeAdView","props","ref","isInitialized","setIsInitialized","result","console","warn","createElement","NativeAdViewImpl","_extends","handleNativeAdViewEvent","event","callback","nativeEvent","adUnitId","placement","customData","extraParameters","localExtraParameters","onAdLoaded","onAdLoadFailed","onAdClicked","onAdRevenuePaid","children","style","otherProps","titleRef","advertiserRef","bodyRef","callToActionRef","imageRef","optionViewRef","mediaViewRef","setNativeAd","nativeAdViewRef","loadAd","current","updateAssetView","assetViewRef","type","node","onAdLoadedEvent","nativeAdImpl","title","advertiser","body","callToAction","url","image","imageSource","isOptionsViewAvailable","isMediaViewAvailable","renderNativeAd","onAdLoadFailedEvent","onAdClickedEvent","onAdRevenuePaidEvent","element","undefined","strLocalExtraParameters","boolLocalExtraParameters"],"sourceRoot":"../../../src","sources":["nativeAd/NativeAdView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,139 +1,190 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
/**
|
|
3
|
+
* Provides pre-styled React Native components for each native ad asset view:
|
|
4
|
+
*
|
|
5
|
+
* - TitleView
|
|
6
|
+
* - AdvertiserView
|
|
7
|
+
* - BodyView
|
|
8
|
+
* - CallToActionView
|
|
9
|
+
* - IconView
|
|
10
|
+
* - OptionsView
|
|
11
|
+
* - MediaView
|
|
12
|
+
* - StarRatingView
|
|
13
|
+
*
|
|
14
|
+
* Each component pulls ad content and view refs from NativeAdView context,
|
|
15
|
+
* and must be rendered inside a {@link NativeAdView}.
|
|
16
|
+
*/
|
|
17
|
+
|
|
2
18
|
import * as React from 'react';
|
|
3
|
-
import { useContext,
|
|
4
|
-
import {
|
|
19
|
+
import { useContext, useMemo } from 'react';
|
|
20
|
+
import { Text, Image, View, TouchableOpacity, StyleSheet, Platform } from 'react-native';
|
|
5
21
|
import { NativeAdViewContext } from './NativeAdViewProvider';
|
|
6
|
-
|
|
7
|
-
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Renders the native ad’s title.
|
|
25
|
+
*/
|
|
26
|
+
export const TitleView = props => {
|
|
8
27
|
const {
|
|
9
|
-
|
|
10
|
-
|
|
28
|
+
titleRef,
|
|
29
|
+
nativeAd
|
|
11
30
|
} = useContext(NativeAdViewContext);
|
|
12
|
-
const setNativeProps = useCallback(() => {
|
|
13
|
-
if (!nativeAd[nativeAdProp] || !ref.current) return;
|
|
14
|
-
nativeAdView === null || nativeAdView === void 0 || nativeAdView.setNativeProps({
|
|
15
|
-
[nativePropKey]: findNodeHandle(ref.current)
|
|
16
|
-
});
|
|
17
|
-
}, [nativeAd, nativeAdProp, nativeAdView, ref, nativePropKey]);
|
|
18
|
-
useEffect(() => {
|
|
19
|
-
setNativeProps();
|
|
20
|
-
}, [setNativeProps]);
|
|
21
|
-
return nativeAd;
|
|
22
|
-
};
|
|
23
|
-
export const TitleView = props => {
|
|
24
|
-
const titleRef = useRef(null);
|
|
25
|
-
const nativeAd = useNativeAdViewProps('title', titleRef, 'titleView');
|
|
26
31
|
return /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
27
32
|
ref: titleRef
|
|
28
|
-
}), nativeAd.title
|
|
33
|
+
}), nativeAd.title ?? '');
|
|
29
34
|
};
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Renders the advertiser name.
|
|
38
|
+
*/
|
|
30
39
|
export const AdvertiserView = props => {
|
|
31
|
-
const
|
|
32
|
-
|
|
40
|
+
const {
|
|
41
|
+
advertiserRef,
|
|
42
|
+
nativeAd
|
|
43
|
+
} = useContext(NativeAdViewContext);
|
|
33
44
|
return /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
34
45
|
ref: advertiserRef
|
|
35
|
-
}), nativeAd.advertiser
|
|
46
|
+
}), nativeAd.advertiser ?? '');
|
|
36
47
|
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Renders the ad’s body text (description).
|
|
51
|
+
*/
|
|
37
52
|
export const BodyView = props => {
|
|
38
|
-
const
|
|
39
|
-
|
|
53
|
+
const {
|
|
54
|
+
bodyRef,
|
|
55
|
+
nativeAd
|
|
56
|
+
} = useContext(NativeAdViewContext);
|
|
40
57
|
return /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
41
58
|
ref: bodyRef
|
|
42
|
-
}), nativeAd.body
|
|
59
|
+
}), nativeAd.body ?? '');
|
|
43
60
|
};
|
|
44
|
-
export const CallToActionView = props => {
|
|
45
|
-
const callToActionRef = useRef(null);
|
|
46
|
-
const nativeAd = useNativeAdViewProps('callToAction', callToActionRef, 'callToActionView');
|
|
47
61
|
|
|
48
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Renders the call-to-action label.
|
|
64
|
+
* On iOS, wraps the text with a TouchableOpacity for better click behavior.
|
|
65
|
+
*/
|
|
66
|
+
export const CallToActionView = props => {
|
|
67
|
+
const {
|
|
68
|
+
callToActionRef,
|
|
69
|
+
nativeAd
|
|
70
|
+
} = useContext(NativeAdViewContext);
|
|
49
71
|
if (Platform.OS === 'android') {
|
|
50
72
|
return /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
51
73
|
ref: callToActionRef
|
|
52
|
-
}), nativeAd.callToAction
|
|
53
|
-
} else {
|
|
54
|
-
return /*#__PURE__*/React.createElement(TouchableOpacity, null, /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
55
|
-
ref: callToActionRef
|
|
56
|
-
}), nativeAd.callToAction || null));
|
|
74
|
+
}), nativeAd.callToAction ?? '');
|
|
57
75
|
}
|
|
76
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, null, /*#__PURE__*/React.createElement(Text, _extends({}, props, {
|
|
77
|
+
ref: callToActionRef
|
|
78
|
+
}), nativeAd.callToAction ?? ''));
|
|
58
79
|
};
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Renders the icon image for the native ad.
|
|
83
|
+
* Falls back to a blank placeholder if not available.
|
|
84
|
+
*/
|
|
59
85
|
export const IconView = props => {
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
86
|
+
const {
|
|
87
|
+
imageRef,
|
|
88
|
+
nativeAd
|
|
89
|
+
} = useContext(NativeAdViewContext);
|
|
90
|
+
const defaultIcon = require('./img/blank_icon.png');
|
|
91
|
+
const imageSource = useMemo(() => {
|
|
92
|
+
if (nativeAd !== null && nativeAd !== void 0 && nativeAd.url) {
|
|
93
|
+
return {
|
|
94
|
+
uri: nativeAd.url
|
|
95
|
+
};
|
|
66
96
|
}
|
|
67
|
-
|
|
97
|
+
if (nativeAd !== null && nativeAd !== void 0 && nativeAd.imageSource) {
|
|
98
|
+
return {
|
|
99
|
+
uri: `data:image/jpeg;base64,${nativeAd.imageSource}`
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
return defaultIcon;
|
|
103
|
+
}, [nativeAd.url, nativeAd.imageSource, defaultIcon]);
|
|
104
|
+
return /*#__PURE__*/React.createElement(Image, _extends({}, props, {
|
|
68
105
|
ref: imageRef,
|
|
69
|
-
source:
|
|
70
|
-
}))
|
|
106
|
+
source: imageSource
|
|
107
|
+
}));
|
|
71
108
|
};
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Renders the native ad’s options view.
|
|
112
|
+
*/
|
|
72
113
|
export const OptionsView = props => {
|
|
73
|
-
const
|
|
74
|
-
|
|
114
|
+
const {
|
|
115
|
+
optionViewRef
|
|
116
|
+
} = useContext(NativeAdViewContext);
|
|
75
117
|
return /*#__PURE__*/React.createElement(View, _extends({}, props, {
|
|
76
|
-
ref:
|
|
118
|
+
ref: optionViewRef
|
|
77
119
|
}));
|
|
78
120
|
};
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Renders the native ad’s media content.
|
|
124
|
+
*/
|
|
79
125
|
export const MediaView = props => {
|
|
80
|
-
const
|
|
81
|
-
|
|
126
|
+
const {
|
|
127
|
+
mediaViewRef
|
|
128
|
+
} = useContext(NativeAdViewContext);
|
|
82
129
|
return /*#__PURE__*/React.createElement(View, _extends({}, props, {
|
|
83
|
-
ref:
|
|
130
|
+
ref: mediaViewRef
|
|
84
131
|
}));
|
|
85
132
|
};
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Props for the {@link StarRatingView} component, which displays a star rating
|
|
136
|
+
* using Unicode stars (★ and ☆) styled with color, shadow, and size.
|
|
137
|
+
*/
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Renders the star rating of the ad, using Unicode stars (★ and ☆).
|
|
141
|
+
* Filled stars are rendered over hollow stars using a clipped view.
|
|
142
|
+
*/
|
|
143
|
+
export const StarRatingView = ({
|
|
144
|
+
color = '#ffe234',
|
|
145
|
+
shadowColor = '#dedede',
|
|
146
|
+
size = 10,
|
|
147
|
+
style
|
|
148
|
+
}) => {
|
|
94
149
|
const {
|
|
95
150
|
nativeAd
|
|
96
151
|
} = useContext(NativeAdViewContext);
|
|
97
|
-
|
|
98
|
-
|
|
152
|
+
const maxStarCount = 5;
|
|
153
|
+
const containerStyle = useMemo(() => StyleSheet.flatten([style, styles.starRatingContainer]), [style]);
|
|
99
154
|
const stars = useMemo(() => {
|
|
100
|
-
|
|
101
|
-
return Array.from({
|
|
102
|
-
length: maxStarCount
|
|
103
|
-
}).map((_, index) => /*#__PURE__*/React.createElement(Text, {
|
|
104
|
-
key: index,
|
|
105
|
-
style: {
|
|
106
|
-
fontSize: starSize
|
|
107
|
-
}
|
|
108
|
-
}, ' '));
|
|
109
|
-
}
|
|
155
|
+
const starRating = Math.max(0, Math.min(maxStarCount, nativeAd.starRating ?? 0));
|
|
110
156
|
return Array.from({
|
|
111
157
|
length: maxStarCount
|
|
112
158
|
}).map((_, index) => {
|
|
113
|
-
const
|
|
114
|
-
const width = (starRating - index) *
|
|
159
|
+
const isFull = starRating > index;
|
|
160
|
+
const width = Math.min(size, Math.max(0, (starRating - index) * size));
|
|
115
161
|
return /*#__PURE__*/React.createElement(View, {
|
|
116
162
|
key: index
|
|
117
163
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
118
164
|
style: {
|
|
119
|
-
fontSize:
|
|
120
|
-
color:
|
|
165
|
+
fontSize: size,
|
|
166
|
+
color: isFull ? color : shadowColor
|
|
121
167
|
}
|
|
122
|
-
}, String.fromCodePoint(0x2606)),
|
|
168
|
+
}, String.fromCodePoint(0x2606)), isFull && /*#__PURE__*/React.createElement(View, {
|
|
123
169
|
style: [{
|
|
124
|
-
width
|
|
170
|
+
width
|
|
125
171
|
}, styles.starRating]
|
|
126
172
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
127
173
|
style: {
|
|
128
|
-
fontSize:
|
|
129
|
-
color
|
|
174
|
+
fontSize: size,
|
|
175
|
+
color
|
|
130
176
|
}
|
|
131
177
|
}, String.fromCodePoint(0x2605))));
|
|
132
178
|
});
|
|
133
|
-
}, [nativeAd.starRating,
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
179
|
+
}, [nativeAd.starRating, color, shadowColor, size]);
|
|
180
|
+
if (!nativeAd.starRating) {
|
|
181
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
182
|
+
style: containerStyle
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
186
|
+
style: containerStyle
|
|
187
|
+
}, stars);
|
|
137
188
|
};
|
|
138
189
|
const styles = StyleSheet.create({
|
|
139
190
|
starRatingContainer: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useContext","
|
|
1
|
+
{"version":3,"names":["React","useContext","useMemo","Text","Image","View","TouchableOpacity","StyleSheet","Platform","NativeAdViewContext","TitleView","props","titleRef","nativeAd","createElement","_extends","ref","title","AdvertiserView","advertiserRef","advertiser","BodyView","bodyRef","body","CallToActionView","callToActionRef","OS","callToAction","IconView","imageRef","defaultIcon","require","imageSource","url","uri","source","OptionsView","optionViewRef","MediaView","mediaViewRef","StarRatingView","color","shadowColor","size","style","maxStarCount","containerStyle","flatten","styles","starRatingContainer","stars","starRating","Math","max","min","Array","from","length","map","_","index","isFull","width","key","fontSize","String","fromCodePoint","create","flexDirection","alignItems","overflow","position"],"sourceRoot":"../../../src","sources":["nativeAd/NativeAdViewComponents.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,26 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provides context and state management for NativeAdView and its child asset views.
|
|
3
|
+
* Shares asset view refs and native ad data between internal components and the native SDK.
|
|
4
|
+
*/
|
|
5
|
+
|
|
1
6
|
import * as React from 'react';
|
|
2
|
-
import { useState, createContext } from 'react';
|
|
7
|
+
import { useState, createContext, useRef } from 'react';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Native component type for the rendered NativeAdView.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
// Ref types for native views
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Context type used internally by NativeAdView.
|
|
17
|
+
* Stores references to asset views and the current native ad data.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
// Default for an uninitialized native ad
|
|
3
21
|
const defaultNativeAd = {
|
|
4
22
|
isOptionsViewAvailable: false,
|
|
5
23
|
isMediaViewAvailable: false
|
|
6
24
|
};
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Internal context used by NativeAdView to provide access to asset view refs and native ad data.
|
|
28
|
+
*/
|
|
7
29
|
export const NativeAdViewContext = /*#__PURE__*/createContext({
|
|
30
|
+
titleRef: {
|
|
31
|
+
current: null
|
|
32
|
+
},
|
|
33
|
+
advertiserRef: {
|
|
34
|
+
current: null
|
|
35
|
+
},
|
|
36
|
+
bodyRef: {
|
|
37
|
+
current: null
|
|
38
|
+
},
|
|
39
|
+
callToActionRef: {
|
|
40
|
+
current: null
|
|
41
|
+
},
|
|
42
|
+
imageRef: {
|
|
43
|
+
current: null
|
|
44
|
+
},
|
|
45
|
+
optionViewRef: {
|
|
46
|
+
current: null
|
|
47
|
+
},
|
|
48
|
+
mediaViewRef: {
|
|
49
|
+
current: null
|
|
50
|
+
},
|
|
8
51
|
nativeAd: defaultNativeAd,
|
|
9
|
-
|
|
10
|
-
setNativeAd: () => {},
|
|
11
|
-
setNativeAdView: () => {}
|
|
52
|
+
setNativeAd: () => {}
|
|
12
53
|
});
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* React provider that wraps components requiring access to NativeAdViewContext.
|
|
57
|
+
*/
|
|
13
58
|
export const NativeAdViewProvider = ({
|
|
14
59
|
children
|
|
15
60
|
}) => {
|
|
61
|
+
const titleRef = useRef(null);
|
|
62
|
+
const advertiserRef = useRef(null);
|
|
63
|
+
const bodyRef = useRef(null);
|
|
64
|
+
const callToActionRef = useRef(null);
|
|
65
|
+
const imageRef = useRef(null);
|
|
66
|
+
const optionViewRef = useRef(null);
|
|
67
|
+
const mediaViewRef = useRef(null);
|
|
16
68
|
const [nativeAd, setNativeAd] = useState(defaultNativeAd);
|
|
17
|
-
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Memoized context value to avoid unnecessary renders.
|
|
72
|
+
*/
|
|
18
73
|
const providerValue = React.useMemo(() => ({
|
|
74
|
+
titleRef,
|
|
75
|
+
advertiserRef,
|
|
76
|
+
bodyRef,
|
|
77
|
+
callToActionRef,
|
|
78
|
+
imageRef,
|
|
79
|
+
optionViewRef,
|
|
80
|
+
mediaViewRef,
|
|
19
81
|
nativeAd,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
setNativeAdView
|
|
23
|
-
}), [nativeAd, nativeAdView]);
|
|
82
|
+
setNativeAd
|
|
83
|
+
}), [nativeAd]);
|
|
24
84
|
return /*#__PURE__*/React.createElement(NativeAdViewContext.Provider, {
|
|
25
85
|
value: providerValue
|
|
26
86
|
}, children);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","createContext","defaultNativeAd","isOptionsViewAvailable","isMediaViewAvailable","NativeAdViewContext","
|
|
1
|
+
{"version":3,"names":["React","useState","createContext","useRef","defaultNativeAd","isOptionsViewAvailable","isMediaViewAvailable","NativeAdViewContext","titleRef","current","advertiserRef","bodyRef","callToActionRef","imageRef","optionViewRef","mediaViewRef","nativeAd","setNativeAd","NativeAdViewProvider","children","providerValue","useMemo","createElement","Provider","value"],"sourceRoot":"../../../src","sources":["nativeAd/NativeAdViewProvider.tsx"],"mappings":"AAAA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,EAAEC,aAAa,EAAEC,MAAM,QAAQ,OAAO;;AAMvD;AACA;AACA;;AAGA;;AAKA;AACA;AACA;AACA;;AAaA;AACA,MAAMC,eAAyB,GAAG;EAC9BC,sBAAsB,EAAE,KAAK;EAC7BC,oBAAoB,EAAE;AAC1B,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,gBAAGL,aAAa,CAA0B;EACtEM,QAAQ,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC3BC,aAAa,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAChCE,OAAO,EAAE;IAAEF,OAAO,EAAE;EAAK,CAAC;EAC1BG,eAAe,EAAE;IAAEH,OAAO,EAAE;EAAK,CAAC;EAClCI,QAAQ,EAAE;IAAEJ,OAAO,EAAE;EAAK,CAAC;EAC3BK,aAAa,EAAE;IAAEL,OAAO,EAAE;EAAK,CAAC;EAChCM,YAAY,EAAE;IAAEN,OAAO,EAAE;EAAK,CAAC;EAC/BO,QAAQ,EAAEZ,eAAe;EACzBa,WAAW,EAAEA,CAAA,KAAM,CAAC;AACxB,CAAC,CAAC;;AAEF;AACA;AACA;AACA,OAAO,MAAMC,oBAAuD,GAAGA,CAAC;EAAEC;AAAS,CAAC,KAAK;EACrF,MAAMX,QAAQ,GAAGL,MAAM,CAAiB,IAAI,CAAC;EAC7C,MAAMO,aAAa,GAAGP,MAAM,CAAiB,IAAI,CAAC;EAClD,MAAMQ,OAAO,GAAGR,MAAM,CAAiB,IAAI,CAAC;EAC5C,MAAMS,eAAe,GAAGT,MAAM,CAAiB,IAAI,CAAC;EACpD,MAAMU,QAAQ,GAAGV,MAAM,CAAkB,IAAI,CAAC;EAC9C,MAAMW,aAAa,GAAGX,MAAM,CAAiB,IAAI,CAAC;EAClD,MAAMY,YAAY,GAAGZ,MAAM,CAAiB,IAAI,CAAC;EACjD,MAAM,CAACa,QAAQ,EAAEC,WAAW,CAAC,GAAGhB,QAAQ,CAAWG,eAAe,CAAC;;EAEnE;AACJ;AACA;EACI,MAAMgB,aAAa,GAAGpB,KAAK,CAACqB,OAAO,CAC/B,OAAO;IACHb,QAAQ;IACRE,aAAa;IACbC,OAAO;IACPC,eAAe;IACfC,QAAQ;IACRC,aAAa;IACbC,YAAY;IACZC,QAAQ;IACRC;EACJ,CAAC,CAAC,EACF,CAACD,QAAQ,CACb,CAAC;EAED,oBAAOhB,KAAA,CAAAsB,aAAA,CAACf,mBAAmB,CAACgB,QAAQ;IAACC,KAAK,EAAEJ;EAAc,GAAED,QAAuC,CAAC;AACxG,CAAC","ignoreList":[]}
|
|
Binary file
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
|
|
2
|
+
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Payload for ad lifecycle events (e.g. load, display, click).
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Payload for ad load failure events.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Payload for ad display failure events.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Props passed to the {@link AppLovinMAXAdView} native component.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Native commands callable from JS for managing {@link AppLovinMAXAdView}.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* JS interface to ad view commands for {@link AppLovinMAXAdView}.
|
|
26
|
+
*/
|
|
27
|
+
export const Commands = codegenNativeCommands({
|
|
28
|
+
supportedCommands: ['loadAd']
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Native view component for displaying a banner or MREC ad.
|
|
33
|
+
*/
|
|
34
|
+
export default codegenNativeComponent('AppLovinMAXAdView');
|
|
35
|
+
//# sourceMappingURL=AppLovinMAXAdViewNativeComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeCommands","codegenNativeComponent","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXAdViewNativeComponent.ts"],"mappings":"AAEA,OAAOA,qBAAqB,MAAM,wDAAwD;AAC1F,OAAOC,sBAAsB,MAAM,yDAAyD;;AAE5F;AACA;AACA;;AAmBA;AACA;AACA;;AAWA;AACA;AACA;;AAuBA;AACA;AACA;;AAoEA;AACA;AACA;;AAUA;AACA;AACA;AACA,OAAO,MAAMC,QAAwB,GAAGF,qBAAqB,CAAiB;EAC1EG,iBAAiB,EAAE,CAAC,QAAQ;AAChC,CAAC,CAAC;;AAEF;AACA;AACA;AACA,eAAeF,sBAAsB,CAAc,mBAAmB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
|
|
2
|
+
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Payload for native ad lifecycle events (e.g., load, click, revenue).
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Payload for native ad load failure events.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Props passed to the {@link AppLovinMAXNativeAdView} native component.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Native commands callable from JS for managing {@link NativeAdView}.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* JS interface to native ad view commands for {@link AppLovinMAXNativeAdView}.
|
|
22
|
+
*/
|
|
23
|
+
export const Commands = codegenNativeCommands({
|
|
24
|
+
supportedCommands: ['loadAd', 'updateAssetView', 'renderNativeAd']
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Native component for rendering a custom native ad layout using bound asset views.
|
|
29
|
+
*/
|
|
30
|
+
export default codegenNativeComponent('AppLovinMAXNativeAdView');
|
|
31
|
+
//# sourceMappingURL=AppLovinMAXNativeAdViewNativeComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeCommands","codegenNativeComponent","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXNativeAdViewNativeComponent.ts"],"mappings":"AAEA,OAAOA,qBAAqB,MAAM,wDAAwD;AAC1F,OAAOC,sBAAsB,MAAM,yDAAyD;;AAE5F;AACA;AACA;;AAiDA;AACA;AACA;;AAUA;AACA;AACA;;AA4CA;AACA;AACA;;AA0BA;AACA;AACA;AACA,OAAO,MAAMC,QAAwB,GAAGF,qBAAqB,CAAiB;EAC1EG,iBAAiB,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB;AACrE,CAAC,CAAC;;AAEF;AACA;AACA;AACA,eAAeF,sBAAsB,CAAc,yBAAyB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Native TurboModule interface for AppLovin MAX.
|
|
5
|
+
* Defines all methods and constants exposed to JavaScript.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Enforces use of the native AppLovinMAX TurboModule.
|
|
10
|
+
*/
|
|
11
|
+
export default TurboModuleRegistry.getEnforcing('AppLovinMAX');
|
|
12
|
+
//# sourceMappingURL=NativeAppLovinMAXModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeAppLovinMAXModule.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAAQ,cAAc;;AAOlD;AACA;AACA;AACA;;AAsNA;AACA;AACA;AACA,eAAeA,mBAAmB,CAACC,YAAY,CAAO,aAAa,CAAC","ignoreList":[]}
|
|
@@ -1,58 +1,55 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Represents
|
|
2
|
+
* Represents a successfully loaded ad served by AppLovin MAX.
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Represents a failure when attempting to load an ad.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* Represents an error that occurred when displaying an ad.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
|
-
* Represents a reward
|
|
14
|
+
* Represents a successful reward event from a rewarded ad.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* Describes metadata for a native ad, including asset availability.
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
23
|
-
* responses, etc.
|
|
22
|
+
* Contains metadata about the ad waterfall evaluated during an ad request.
|
|
24
23
|
*/
|
|
25
24
|
|
|
26
25
|
/**
|
|
27
|
-
*
|
|
28
|
-
* Each adapter response {@link AdNetworkResponseInfo} corresponds to one of these states.
|
|
26
|
+
* Enumeration of possible ad load states for each network in the waterfall.
|
|
29
27
|
*/
|
|
30
28
|
export let AdLoadState = /*#__PURE__*/function (AdLoadState) {
|
|
31
29
|
/**
|
|
32
|
-
*
|
|
33
|
-
* an ad higher in the waterfall loaded successfully.
|
|
30
|
+
* SDK did not attempt to load an ad from this network.
|
|
34
31
|
*/
|
|
35
32
|
AdLoadState[AdLoadState["LoadStateAdLoadNotAttempted"] = 0] = "LoadStateAdLoadNotAttempted";
|
|
36
33
|
/**
|
|
37
|
-
* An ad successfully loaded from this network.
|
|
34
|
+
* An ad was successfully loaded from this network.
|
|
38
35
|
*/
|
|
39
36
|
AdLoadState[AdLoadState["LoadStateAdLoaded"] = 1] = "LoadStateAdLoaded";
|
|
40
37
|
/**
|
|
41
|
-
*
|
|
38
|
+
* The network failed to load an ad.
|
|
42
39
|
*/
|
|
43
40
|
AdLoadState[AdLoadState["LoadStateAdFailedToLoad"] = 2] = "LoadStateAdFailedToLoad";
|
|
44
41
|
return AdLoadState;
|
|
45
42
|
}({});
|
|
46
43
|
|
|
47
44
|
/**
|
|
48
|
-
*
|
|
45
|
+
* General error info object used in waterfall response details.
|
|
49
46
|
*/
|
|
50
47
|
|
|
51
48
|
/**
|
|
52
|
-
*
|
|
49
|
+
* Contains information about a single mediated network response.
|
|
53
50
|
*/
|
|
54
51
|
|
|
55
52
|
/**
|
|
56
|
-
*
|
|
53
|
+
* Metadata about a mediated ad network.
|
|
57
54
|
*/
|
|
58
55
|
//# sourceMappingURL=AdInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AdLoadState"],"sourceRoot":"../../../src","sources":["types/AdInfo.ts"],"mappings":"AAGA;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["AdLoadState"],"sourceRoot":"../../../src","sources":["types/AdInfo.ts"],"mappings":"AAGA;AACA;AACA;;AAwFA;AACA;AACA;;AA2CA;AACA;AACA;;AAuBA;AACA;AACA;;AAaA;AACA;AACA;;AAgDA;AACA;AACA;;AAuBA;AACA;AACA;AACA,WAAYA,WAAW,0BAAXA,WAAW;EACnB;AACJ;AACA;EAHYA,WAAW,CAAXA,WAAW;EAMnB;AACJ;AACA;EARYA,WAAW,CAAXA,WAAW;EAWnB;AACJ;AACA;EAbYA,WAAW,CAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;;AAiBvB;AACA;AACA;;AAkBA;AACA;AACA;;AA+BA;AACA;AACA","ignoreList":[]}
|