react-native-applovin-max 9.0.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 +3 -3
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdView.java +1 -1
- package/android/src/main/java/com/applovin/reactnative/AppLovinMAXModuleImpl.java +2 -1
- package/ios/AppLovinMAX.mm +2 -1
- package/lib/commonjs/AdView.js +60 -76
- package/lib/commonjs/AdView.js.map +1 -1
- package/lib/commonjs/AppLovinMAX.js +43 -29
- package/lib/commonjs/AppLovinMAX.js.map +1 -1
- package/lib/commonjs/ErrorCode.js +24 -31
- package/lib/commonjs/ErrorCode.js.map +1 -1
- package/lib/commonjs/EventEmitter.js +22 -1
- package/lib/commonjs/EventEmitter.js.map +1 -1
- package/lib/commonjs/Utils.js +22 -4
- package/lib/commonjs/Utils.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdView.js +33 -22
- package/lib/commonjs/nativeAd/NativeAdView.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js +84 -41
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js +29 -0
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js +27 -0
- package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js +23 -0
- package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/NativeAppLovinMAXModule.js +7 -0
- package/lib/commonjs/specs/NativeAppLovinMAXModule.js.map +1 -1
- package/lib/commonjs/types/AdInfo.js +13 -16
- package/lib/commonjs/types/AdInfo.js.map +1 -1
- package/lib/module/AdView.js +60 -76
- package/lib/module/AdView.js.map +1 -1
- package/lib/module/AppLovinMAX.js +44 -29
- package/lib/module/AppLovinMAX.js.map +1 -1
- package/lib/module/ErrorCode.js +24 -31
- package/lib/module/ErrorCode.js.map +1 -1
- package/lib/module/EventEmitter.js +22 -1
- package/lib/module/EventEmitter.js.map +1 -1
- package/lib/module/Utils.js +22 -4
- package/lib/module/Utils.js.map +1 -1
- package/lib/module/nativeAd/NativeAdView.js +34 -21
- package/lib/module/nativeAd/NativeAdView.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewComponents.js +87 -40
- package/lib/module/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewProvider.js +30 -0
- package/lib/module/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js +28 -0
- package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -1
- package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js +24 -0
- package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -1
- package/lib/module/specs/NativeAppLovinMAXModule.js +9 -0
- package/lib/module/specs/NativeAppLovinMAXModule.js.map +1 -1
- package/lib/module/types/AdInfo.js +13 -16
- package/lib/module/types/AdInfo.js.map +1 -1
- package/lib/typescript/src/AdView.d.ts +27 -21
- 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/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/Utils.d.ts +15 -0
- package/lib/typescript/src/Utils.d.ts.map +1 -1
- 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 +17 -0
- package/lib/typescript/src/nativeAd/NativeAdViewProvider.d.ts.map +1 -1
- package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts +45 -1
- package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts +57 -6
- package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts +10 -0
- package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts.map +1 -1
- 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 +78 -85
- package/lib/typescript/src/types/AdInfo.d.ts.map +1 -1
- package/lib/typescript/src/types/AdProps.d.ts +14 -15
- 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 +12 -11
- 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 +1 -1
- package/react-native-applovin-max.podspec +2 -2
- package/src/AdView.tsx +62 -80
- package/src/AppLovinMAX.ts +39 -29
- package/src/ErrorCode.ts +24 -31
- package/src/EventEmitter.ts +20 -2
- package/src/Utils.ts +20 -1
- package/src/nativeAd/NativeAdView.tsx +31 -21
- package/src/nativeAd/NativeAdViewComponents.tsx +97 -38
- package/src/nativeAd/NativeAdViewProvider.tsx +23 -0
- package/src/specs/AppLovinMAXAdViewNativeComponent.ts +62 -1
- package/src/specs/AppLovinMAXNativeAdViewNativeComponent.ts +70 -6
- package/src/specs/NativeAppLovinMAXModule.ts +75 -55
- package/src/types/AdEvent.ts +10 -4
- package/src/types/AdInfo.ts +78 -85
- package/src/types/AdProps.ts +14 -15
- 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 +12 -11
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXAdViewNativeComponent.ts"],"mappings":";;;;;;AAEA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;
|
|
1
|
+
{"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXAdViewNativeComponent.ts"],"mappings":";;;;;;AAEA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7F;AACA;AACA;;AAmBA;AACA;AACA;;AAWA;AACA;AACA;;AAuBA;AACA;AACA;;AAoEA;AACA;AACA;;AAUA;AACA;AACA;AACO,MAAMG,QAAwB,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAAE,8BAAqB,EAAiB;EAC1EC,iBAAiB,EAAE,CAAC,QAAQ;AAChC,CAAC,CAAC;;AAEF;AACA;AACA;AAFA,IAAAC,QAAA,GAAAH,OAAA,CAAAF,OAAA,GAGe,IAAAM,+BAAsB,EAAc,mBAAmB,CAAC","ignoreList":[]}
|
|
@@ -7,8 +7,31 @@ exports.default = exports.Commands = void 0;
|
|
|
7
7
|
var _codegenNativeCommands = _interopRequireDefault(require("react-native/Libraries/Utilities/codegenNativeCommands"));
|
|
8
8
|
var _codegenNativeComponent = _interopRequireDefault(require("react-native/Libraries/Utilities/codegenNativeComponent"));
|
|
9
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
/**
|
|
11
|
+
* Payload for native ad lifecycle events (e.g., load, click, revenue).
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Payload for native ad load failure events.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Props passed to the {@link AppLovinMAXNativeAdView} native component.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Native commands callable from JS for managing {@link NativeAdView}.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* JS interface to native ad view commands for {@link AppLovinMAXNativeAdView}.
|
|
28
|
+
*/
|
|
10
29
|
const Commands = exports.Commands = (0, _codegenNativeCommands.default)({
|
|
11
30
|
supportedCommands: ['loadAd', 'updateAssetView', 'renderNativeAd']
|
|
12
31
|
});
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Native component for rendering a custom native ad layout using bound asset views.
|
|
35
|
+
*/
|
|
13
36
|
var _default = exports.default = (0, _codegenNativeComponent.default)('AppLovinMAXNativeAdView');
|
|
14
37
|
//# sourceMappingURL=AppLovinMAXNativeAdViewNativeComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXNativeAdViewNativeComponent.ts"],"mappings":";;;;;;AAEA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;
|
|
1
|
+
{"version":3,"names":["_codegenNativeCommands","_interopRequireDefault","require","_codegenNativeComponent","e","__esModule","default","Commands","exports","codegenNativeCommands","supportedCommands","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/AppLovinMAXNativeAdViewNativeComponent.ts"],"mappings":";;;;;;AAEA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7F;AACA;AACA;;AAiDA;AACA;AACA;;AAUA;AACA;AACA;;AA4CA;AACA;AACA;;AA0BA;AACA;AACA;AACO,MAAMG,QAAwB,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAAE,8BAAqB,EAAiB;EAC1EC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB;AACrE,CAAC,CAAC;;AAEF;AACA;AACA;AAFA,IAAAC,QAAA,GAAAH,OAAA,CAAAF,OAAA,GAGe,IAAAM,+BAAsB,EAAc,yBAAyB,CAAC","ignoreList":[]}
|
|
@@ -5,5 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
|
+
/**
|
|
9
|
+
* Native TurboModule interface for AppLovin MAX.
|
|
10
|
+
* Defines all methods and constants exposed to JavaScript.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Enforces use of the native AppLovinMAX TurboModule.
|
|
14
|
+
*/
|
|
8
15
|
var _default = exports.default = _reactNative.TurboModuleRegistry.getEnforcing('AppLovinMAX');
|
|
9
16
|
//# sourceMappingURL=NativeAppLovinMAXModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeAppLovinMAXModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeAppLovinMAXModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA;AACA;AACA;AACA;AAsNA;AACA;AACA;AAFA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGeC,gCAAmB,CAACC,YAAY,CAAO,aAAa,CAAC","ignoreList":[]}
|
|
@@ -5,51 +5,48 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.AdLoadState = void 0;
|
|
7
7
|
/**
|
|
8
|
-
* Represents
|
|
8
|
+
* Represents a successfully loaded ad served by AppLovin MAX.
|
|
9
9
|
*/
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
11
|
+
* Represents a failure when attempting to load an ad.
|
|
12
12
|
*/
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* Represents an error that occurred when displaying an ad.
|
|
15
15
|
*/
|
|
16
16
|
/**
|
|
17
|
-
* Represents a reward
|
|
17
|
+
* Represents a successful reward event from a rewarded ad.
|
|
18
18
|
*/
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* Describes metadata for a native ad, including asset availability.
|
|
21
21
|
*/
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
* responses, etc.
|
|
23
|
+
* Contains metadata about the ad waterfall evaluated during an ad request.
|
|
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
|
let AdLoadState = exports.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
|
+
* General error info object used in waterfall response details.
|
|
48
45
|
*/
|
|
49
46
|
/**
|
|
50
|
-
*
|
|
47
|
+
* Contains information about a single mediated network response.
|
|
51
48
|
*/
|
|
52
49
|
/**
|
|
53
|
-
*
|
|
50
|
+
* Metadata about a mediated ad network.
|
|
54
51
|
*/
|
|
55
52
|
//# sourceMappingURL=AdInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AdLoadState","exports"],"sourceRoot":"../../../src","sources":["types/AdInfo.ts"],"mappings":";;;;;;AAGA;AACA;AACA;
|
|
1
|
+
{"version":3,"names":["AdLoadState","exports"],"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;AAFA,IAGYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,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":[]}
|
package/lib/module/AdView.js
CHANGED
|
@@ -12,7 +12,7 @@ const {
|
|
|
12
12
|
} = AppLovinMAX.getConstants();
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
-
* Defines
|
|
15
|
+
* Defines the format of an ad.
|
|
16
16
|
*/
|
|
17
17
|
export let AdFormat = /*#__PURE__*/function (AdFormat) {
|
|
18
18
|
/**
|
|
@@ -27,7 +27,7 @@ export let AdFormat = /*#__PURE__*/function (AdFormat) {
|
|
|
27
27
|
}({});
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
|
-
* Defines
|
|
30
|
+
* Defines the position for rendering a banner or MREC ad within its container.
|
|
31
31
|
*/
|
|
32
32
|
export let AdViewPosition = /*#__PURE__*/function (AdViewPosition) {
|
|
33
33
|
AdViewPosition["TOP_CENTER"] = "top_center";
|
|
@@ -56,75 +56,52 @@ const ADVIEW_SIZE = {
|
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
58
|
|
|
59
|
-
//
|
|
59
|
+
// Extracts width and height from the style prop, defaulting to 'auto' when unspecified.
|
|
60
60
|
const getOutlineViewSize = style => {
|
|
61
61
|
const viewStyle = StyleSheet.flatten(style) || {};
|
|
62
62
|
return [viewStyle.width ?? 'auto', viewStyle.height ?? 'auto'];
|
|
63
63
|
};
|
|
64
|
-
const sizeBannerDimensions = async (sizeProps, adaptiveBannerEnabled, screenWidth, bannerFormatSize) => {
|
|
65
|
-
const width = sizeProps.width === 'auto' ? screenWidth : sizeProps.width;
|
|
66
|
-
let height;
|
|
67
|
-
if (sizeProps.height === 'auto') {
|
|
68
|
-
if (adaptiveBannerEnabled) {
|
|
69
|
-
try {
|
|
70
|
-
height = await AppLovinMAX.getAdaptiveBannerHeightForWidth(screenWidth);
|
|
71
|
-
} catch (error) {
|
|
72
|
-
console.error('Error getting adaptive banner height:', error);
|
|
73
|
-
height = bannerFormatSize.height;
|
|
74
|
-
}
|
|
75
|
-
} else {
|
|
76
|
-
height = bannerFormatSize.height;
|
|
77
|
-
}
|
|
78
|
-
} else {
|
|
79
|
-
height = sizeProps.height;
|
|
80
|
-
}
|
|
81
|
-
return {
|
|
82
|
-
width,
|
|
83
|
-
height
|
|
84
|
-
};
|
|
85
|
-
};
|
|
86
64
|
const handleAdViewEvent = (event, callback) => {
|
|
87
65
|
if (!callback) return;
|
|
88
|
-
|
|
89
|
-
...event.nativeEvent
|
|
90
|
-
};
|
|
91
|
-
if ('size' in event.nativeEvent) {
|
|
92
|
-
var _event$nativeEvent$si, _event$nativeEvent$si2;
|
|
93
|
-
adInfo.size = {
|
|
94
|
-
width: ((_event$nativeEvent$si = event.nativeEvent.size) === null || _event$nativeEvent$si === void 0 ? void 0 : _event$nativeEvent$si.width) ?? 0,
|
|
95
|
-
height: ((_event$nativeEvent$si2 = event.nativeEvent.size) === null || _event$nativeEvent$si2 === void 0 ? void 0 : _event$nativeEvent$si2.height) ?? 0
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
callback(adInfo);
|
|
66
|
+
callback(event.nativeEvent);
|
|
99
67
|
};
|
|
100
68
|
|
|
101
69
|
/**
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
* - **
|
|
70
|
+
* Renders a banner or MREC ad using a native view, with adaptive or responsive sizing.
|
|
71
|
+
*
|
|
72
|
+
* - **Banners**: 320×50 on phones, 728×90 on tablets.
|
|
73
|
+
* - **MRECs**: Fixed size of 300×250 on all devices.
|
|
105
74
|
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
75
|
+
* Internally uses {@link AppLovinMAX.isTablet()} to determine banner size on tablets.
|
|
76
|
+
* You can also use this method externally to assist with layout decisions.
|
|
77
|
+
*
|
|
78
|
+
* For adaptive banners, use {@link BannerAd.getAdaptiveHeightForWidth()} to determine the appropriate height.
|
|
108
79
|
*
|
|
109
80
|
* **Preloading**:
|
|
110
|
-
*
|
|
111
|
-
* the returned {@link AdViewId}
|
|
81
|
+
* If you preload an ad for AdView using {@link preloadNativeUIComponentAdView},
|
|
82
|
+
* pass the returned {@link AdViewId} to this component to display the preloaded instance.
|
|
83
|
+
*
|
|
84
|
+
* **Note:** The AppLovin SDK must be initialized before using this component.
|
|
112
85
|
*
|
|
113
86
|
* ### Example:
|
|
114
|
-
* ```
|
|
87
|
+
* ```tsx
|
|
115
88
|
* <AdView
|
|
116
89
|
* adUnitId={adUnitId}
|
|
117
90
|
* adFormat={AdFormat.BANNER}
|
|
118
91
|
* placement="my_placement"
|
|
119
92
|
* customData="my_customData"
|
|
120
|
-
* extraParameters={{
|
|
121
|
-
* localExtraParameters={{
|
|
93
|
+
* extraParameters={{ key1: "value1", key2: "value2" }}
|
|
94
|
+
* localExtraParameters={{ key1: "value1", key2: true }}
|
|
122
95
|
* adaptiveBannerEnabled={false}
|
|
123
96
|
* autoRefresh={false}
|
|
124
97
|
* style={styles.banner}
|
|
125
98
|
* onAdLoaded={(adInfo: AdInfo) => { ... }}
|
|
126
99
|
* />
|
|
127
100
|
* ```
|
|
101
|
+
*
|
|
102
|
+
* For complete implementation examples, see:
|
|
103
|
+
* - https://github.com/AppLovin/AppLovin-MAX-React-Native/blob/master/example/src/NativeBannerExample.tsx
|
|
104
|
+
* - https://github.com/AppLovin/AppLovin-MAX-React-Native/blob/master/example/src/NativeMRecExample.tsx
|
|
128
105
|
*/
|
|
129
106
|
export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
130
107
|
adUnitId,
|
|
@@ -154,11 +131,13 @@ export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
|
154
131
|
const [, forceUpdate] = useReducer(x => x + 1, 0);
|
|
155
132
|
const adViewRef = useRef();
|
|
156
133
|
const [isInitialized, setIsInitialized] = useState(false);
|
|
157
|
-
const sizeProps = useRef({});
|
|
158
134
|
const dimensions = useRef({});
|
|
135
|
+
const loadAd = useCallback(() => {
|
|
136
|
+
adViewRef.current && Commands.loadAd(adViewRef.current);
|
|
137
|
+
}, []);
|
|
159
138
|
useImperativeHandle(ref, () => ({
|
|
160
|
-
loadAd
|
|
161
|
-
}), []);
|
|
139
|
+
loadAd
|
|
140
|
+
}), [loadAd]);
|
|
162
141
|
useEffect(() => {
|
|
163
142
|
(async () => {
|
|
164
143
|
const isTablet = adFormat === AdFormat.BANNER ? await AppLovinMAX.isTablet() : false;
|
|
@@ -166,29 +145,37 @@ export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
|
166
145
|
const initialized = await AppLovinMAX.isInitialized();
|
|
167
146
|
setIsInitialized(initialized);
|
|
168
147
|
if (!initialized) {
|
|
169
|
-
console.warn('AdView
|
|
148
|
+
console.warn('AdView was mounted before the AppLovin MAX React Native module was initialized.');
|
|
170
149
|
}
|
|
171
150
|
})();
|
|
172
151
|
}, [adFormat]);
|
|
173
152
|
useEffect(() => {
|
|
174
153
|
const [width, height] = getOutlineViewSize(style);
|
|
175
|
-
if (
|
|
176
|
-
sizeProps.current = {
|
|
177
|
-
width,
|
|
178
|
-
height
|
|
179
|
-
};
|
|
154
|
+
if (dimensions.current.width === width && dimensions.current.height === height) return;
|
|
180
155
|
(async () => {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
156
|
+
const isBanner = adFormat === AdFormat.BANNER;
|
|
157
|
+
const isWidthAuto = width === 'auto';
|
|
158
|
+
const isHeightAuto = height === 'auto';
|
|
159
|
+
const resolvedWidth = isWidthAuto ? isBanner ? screenWidth : adFormatSize.current.width : width;
|
|
160
|
+
let resolvedHeight = height;
|
|
161
|
+
if (isHeightAuto) {
|
|
162
|
+
if (isBanner && adaptiveBannerEnabled) {
|
|
163
|
+
try {
|
|
164
|
+
resolvedHeight = await AppLovinMAX.getAdaptiveBannerHeightForWidth(screenWidth);
|
|
165
|
+
} catch (error) {
|
|
166
|
+
console.error('Error getting adaptive banner height:', error);
|
|
167
|
+
resolvedHeight = adFormatSize.current.height;
|
|
168
|
+
}
|
|
169
|
+
} else {
|
|
170
|
+
resolvedHeight = adFormatSize.current.height;
|
|
186
171
|
}
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
172
|
+
}
|
|
173
|
+
const newSize = {
|
|
174
|
+
width: resolvedWidth,
|
|
175
|
+
height: resolvedHeight
|
|
176
|
+
};
|
|
177
|
+
if (dimensions.current.width !== newSize.width || dimensions.current.height !== newSize.height) {
|
|
178
|
+
dimensions.current = newSize;
|
|
192
179
|
forceUpdate();
|
|
193
180
|
}
|
|
194
181
|
})();
|
|
@@ -203,7 +190,7 @@ export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
|
203
190
|
if (!isInitialized || Object.keys(dimensions.current).length === 0) {
|
|
204
191
|
// Early return if not initialized or dimensions are not set
|
|
205
192
|
return /*#__PURE__*/React.createElement(View, _extends({
|
|
206
|
-
style:
|
|
193
|
+
style: style
|
|
207
194
|
}, otherProps));
|
|
208
195
|
}
|
|
209
196
|
return /*#__PURE__*/React.createElement(AdViewComponent, _extends({
|
|
@@ -226,7 +213,7 @@ export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
|
226
213
|
onAdExpandedEvent: onAdExpandedEvent,
|
|
227
214
|
onAdCollapsedEvent: onAdCollapsedEvent,
|
|
228
215
|
onAdRevenuePaidEvent: onAdRevenuePaidEvent,
|
|
229
|
-
style:
|
|
216
|
+
style: [style, dimensions.current]
|
|
230
217
|
}, otherProps));
|
|
231
218
|
});
|
|
232
219
|
|
|
@@ -237,10 +224,10 @@ export const AdView = /*#__PURE__*/forwardRef(function AdView({
|
|
|
237
224
|
* - Unmounting {@link AdView} does not destroy the preloaded component—it will be reused on the next mount.
|
|
238
225
|
* - You must manually destroy the preloaded component when it is no longer needed using {@link destroyNativeUIComponentAdView}.
|
|
239
226
|
*
|
|
240
|
-
* @param adUnitId - The Ad Unit ID for which
|
|
227
|
+
* @param adUnitId - The Ad Unit ID for which ads should be preloaded.
|
|
241
228
|
* @param adFormat - The ad format to preload. Must be either {@link AdFormat.BANNER} or {@link AdFormat.MREC}.
|
|
242
229
|
* @param options - Optional properties to configure the native UI component (e.g., placement, custom data).
|
|
243
|
-
* @returns A promise
|
|
230
|
+
* @returns A promise that resolves to an {@link AdViewId}, uniquely identifying the preloaded component instance.
|
|
244
231
|
* @throws An error if the preload request fails.
|
|
245
232
|
*/
|
|
246
233
|
export const preloadNativeUIComponentAdView = async (adUnitId, adFormat, options = {}) => {
|
|
@@ -270,8 +257,7 @@ export const destroyNativeUIComponentAdView = async adViewId => {
|
|
|
270
257
|
};
|
|
271
258
|
|
|
272
259
|
/**
|
|
273
|
-
* Adds the specified event listener to receive {@link AdInfo} when a native UI component loads a
|
|
274
|
-
* new ad.
|
|
260
|
+
* Adds the specified event listener to receive {@link AdInfo} when a native UI component loads a new ad.
|
|
275
261
|
*
|
|
276
262
|
* @param listener Listener to be notified.
|
|
277
263
|
*/
|
|
@@ -280,15 +266,14 @@ export const addNativeUIComponentAdViewAdLoadedEventListener = listener => {
|
|
|
280
266
|
};
|
|
281
267
|
|
|
282
268
|
/**
|
|
283
|
-
* Removes the event listener to receive {@link AdInfo} when a native UI component loads a new ad.
|
|
269
|
+
* Removes the event listener registered to receive {@link AdInfo} when a native UI component loads a new ad.
|
|
284
270
|
*/
|
|
285
271
|
export const removeNativeUIComponentAdViewAdLoadedEventListener = () => {
|
|
286
272
|
removeEventListener(ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT);
|
|
287
273
|
};
|
|
288
274
|
|
|
289
275
|
/**
|
|
290
|
-
* Adds the specified event listener to receive {@link AdLoadFailedInfo} when a native UI component
|
|
291
|
-
* could not load a new ad.
|
|
276
|
+
* Adds the specified event listener to receive {@link AdLoadFailedInfo} when a native UI component could not load a new ad.
|
|
292
277
|
*
|
|
293
278
|
* @param listener Listener to be notified.
|
|
294
279
|
*/
|
|
@@ -297,8 +282,7 @@ export const addNativeUIComponentAdViewAdLoadFailedEventListener = listener => {
|
|
|
297
282
|
};
|
|
298
283
|
|
|
299
284
|
/**
|
|
300
|
-
* Removes the event listener to receive {@link AdLoadFailedInfo} when a native UI component could
|
|
301
|
-
* not load a new ad.
|
|
285
|
+
* Removes the event listener registered to receive {@link AdLoadFailedInfo} when a native UI component could not load a new ad.
|
|
302
286
|
*/
|
|
303
287
|
export const removeNativeUIComponentAdViewAdLoadFailedEventListener = () => {
|
|
304
288
|
removeEventListener(ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT);
|
package/lib/module/AdView.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useState","useRef","useCallback","useImperativeHandle","useReducer","forwardRef","StyleSheet","useWindowDimensions","View","AppLovinMAX","AdViewComponent","Commands","addEventListener","removeEventListener","makeExtraParametersArray","makeLocalExtraParametersArray","ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT","ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT","getConstants","AdFormat","AdViewPosition","ADVIEW_SIZE","banner","width","height","leader","mrec","getOutlineViewSize","style","viewStyle","flatten","
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","useRef","useCallback","useImperativeHandle","useReducer","forwardRef","StyleSheet","useWindowDimensions","View","AppLovinMAX","AdViewComponent","Commands","addEventListener","removeEventListener","makeExtraParametersArray","makeLocalExtraParametersArray","ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT","ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT","getConstants","AdFormat","AdViewPosition","ADVIEW_SIZE","banner","width","height","leader","mrec","getOutlineViewSize","style","viewStyle","flatten","handleAdViewEvent","event","callback","nativeEvent","AdView","adUnitId","adFormat","adViewId","placement","customData","adaptiveBannerEnabled","autoRefresh","loadOnMount","extraParameters","localExtraParameters","onAdLoaded","onAdLoadFailed","onAdDisplayFailed","onAdClicked","onAdExpanded","onAdCollapsed","onAdRevenuePaid","otherProps","ref","screenWidth","adFormatSize","forceUpdate","x","adViewRef","isInitialized","setIsInitialized","dimensions","loadAd","current","isTablet","BANNER","initialized","console","warn","isBanner","isWidthAuto","isHeightAuto","resolvedWidth","resolvedHeight","getAdaptiveBannerHeightForWidth","error","newSize","onAdLoadedEvent","onAdLoadFailedEvent","onAdDisplayFailedEvent","onAdClickedEvent","onAdExpandedEvent","onAdCollapsedEvent","onAdRevenuePaidEvent","Object","keys","length","createElement","_extends","element","undefined","strLocalExtraParameters","boolLocalExtraParameters","preloadNativeUIComponentAdView","options","destroyNativeUIComponentAdView","Promise","reject","Error","addNativeUIComponentAdViewAdLoadedEventListener","listener","removeNativeUIComponentAdViewAdLoadedEventListener","addNativeUIComponentAdViewAdLoadFailedEventListener","removeNativeUIComponentAdViewAdLoadFailedEventListener"],"sourceRoot":"../../src","sources":["AdView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,100 +1,115 @@
|
|
|
1
1
|
import NativeAppLovinMAX from './specs/NativeAppLovinMAXModule';
|
|
2
|
-
const VERSION = '9.
|
|
2
|
+
const VERSION = '9.1.0';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
* user.
|
|
5
|
+
* Represents the user's geography, used to determine which type of consent flow to display.
|
|
7
6
|
*/
|
|
8
7
|
export let ConsentFlowUserGeography = /*#__PURE__*/function (ConsentFlowUserGeography) {
|
|
9
8
|
/**
|
|
10
|
-
*
|
|
9
|
+
* The user's geography could not be determined.
|
|
11
10
|
*/
|
|
12
11
|
ConsentFlowUserGeography["UNKNOWN"] = "U";
|
|
13
12
|
/**
|
|
14
|
-
* The user is in GDPR region.
|
|
13
|
+
* The user is located in a GDPR region.
|
|
15
14
|
*/
|
|
16
15
|
ConsentFlowUserGeography["GDPR"] = "G";
|
|
17
16
|
/**
|
|
18
|
-
* The user is in a
|
|
17
|
+
* The user is not in a GDPR region.
|
|
19
18
|
*/
|
|
20
19
|
ConsentFlowUserGeography["OTHER"] = "O";
|
|
21
20
|
return ConsentFlowUserGeography;
|
|
22
21
|
}({});
|
|
23
22
|
|
|
24
23
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
24
|
+
* App tracking transparency status values as defined by the AppLovin SDK.
|
|
25
|
+
*
|
|
26
|
+
* These values are based on Apple's AppTrackingTransparency framework (iOS 14+).
|
|
27
27
|
*/
|
|
28
28
|
export let AppTrackingStatus = /*#__PURE__*/function (AppTrackingStatus) {
|
|
29
29
|
/**
|
|
30
|
-
* Device is
|
|
30
|
+
* Device is running an iOS version prior to iOS 14.
|
|
31
|
+
* AppTrackingTransparency is not available.
|
|
31
32
|
*/
|
|
32
33
|
AppTrackingStatus["UNAVAILABLE"] = "U";
|
|
33
34
|
/**
|
|
34
|
-
* The user has not yet
|
|
35
|
-
* data that can be used for tracking the user or the device.
|
|
35
|
+
* The user has not yet responded to the tracking authorization prompt.
|
|
36
36
|
*/
|
|
37
37
|
AppTrackingStatus["NOT_DETERMINED"] = "N";
|
|
38
38
|
/**
|
|
39
|
-
*
|
|
40
|
-
* is restricted.
|
|
39
|
+
* Tracking is restricted (e.g. due to parental controls).
|
|
41
40
|
*/
|
|
42
41
|
AppTrackingStatus["RESTRICTED"] = "R";
|
|
43
42
|
/**
|
|
44
|
-
* The user
|
|
45
|
-
* user or the device.
|
|
43
|
+
* The user denied authorization for tracking.
|
|
46
44
|
*/
|
|
47
45
|
AppTrackingStatus["DENIED"] = "D";
|
|
48
46
|
/**
|
|
49
|
-
* The user
|
|
50
|
-
* device.
|
|
47
|
+
* The user authorized tracking access.
|
|
51
48
|
*/
|
|
52
49
|
AppTrackingStatus["AUTHORIZED"] = "A";
|
|
53
50
|
return AppTrackingStatus;
|
|
54
51
|
}({});
|
|
55
52
|
|
|
56
53
|
/**
|
|
57
|
-
*
|
|
54
|
+
* Error codes returned from the Consent Management Platform (CMP) flow.
|
|
58
55
|
*/
|
|
59
56
|
export let CMPErrorCode = /*#__PURE__*/function (CMPErrorCode) {
|
|
60
57
|
/**
|
|
61
|
-
*
|
|
58
|
+
* An unspecified error occurred.
|
|
62
59
|
*/
|
|
63
60
|
CMPErrorCode[CMPErrorCode["UNSPECIFIED"] = -1] = "UNSPECIFIED";
|
|
64
61
|
/**
|
|
65
|
-
*
|
|
62
|
+
* The CMP was not integrated correctly.
|
|
66
63
|
*/
|
|
67
64
|
CMPErrorCode[CMPErrorCode["INTEGRATION_ERROR"] = 1] = "INTEGRATION_ERROR";
|
|
68
65
|
/**
|
|
69
|
-
*
|
|
66
|
+
* The CMP form is unavailable.
|
|
70
67
|
*/
|
|
71
68
|
CMPErrorCode[CMPErrorCode["FORM_UNAVAILABLE"] = 2] = "FORM_UNAVAILABLE";
|
|
72
69
|
/**
|
|
73
|
-
*
|
|
70
|
+
* The CMP form is not required for this user.
|
|
74
71
|
*/
|
|
75
72
|
CMPErrorCode[CMPErrorCode["FORM_NOT_REQUIRED"] = 3] = "FORM_NOT_REQUIRED";
|
|
76
73
|
return CMPErrorCode;
|
|
77
74
|
}({});
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Initializes the AppLovin MAX SDK with the provided SDK key.
|
|
78
|
+
*
|
|
79
|
+
* @param sdkKey - Your AppLovin SDK key.
|
|
80
|
+
* @returns A promise that resolves with the SDK configuration.
|
|
81
|
+
*/
|
|
82
|
+
const initialize = sdkKey => NativeAppLovinMAX.initialize(VERSION, sdkKey);
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Retrieves the user segments.
|
|
86
|
+
*
|
|
87
|
+
* @returns A promise resolving to a Map of segment IDs to arrays of group IDs,
|
|
88
|
+
* or `null` if no segments are available.
|
|
89
|
+
*/
|
|
81
90
|
const getSegments = async () => {
|
|
82
91
|
const segments = await NativeAppLovinMAX.getSegments();
|
|
83
92
|
if (!segments) {
|
|
84
93
|
return null;
|
|
85
94
|
}
|
|
86
95
|
const map = new Map();
|
|
87
|
-
for (const key
|
|
88
|
-
//
|
|
89
|
-
// integer as a key, but the Map object can have keys of any data type.
|
|
90
|
-
const value = segments[key];
|
|
96
|
+
for (const [key, value] of Object.entries(segments)) {
|
|
97
|
+
// In JavaScript, object keys are always strings, so we convert them to numbers for the Map.
|
|
91
98
|
if (value) {
|
|
92
99
|
map.set(Number(key), value);
|
|
93
100
|
}
|
|
94
101
|
}
|
|
95
102
|
return map;
|
|
96
103
|
};
|
|
104
|
+
|
|
105
|
+
// All native methods except those overridden here
|
|
106
|
+
|
|
97
107
|
const nativeMethods = NativeAppLovinMAX;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Main AppLovin MAX module interface exposed to JavaScript.
|
|
111
|
+
* Wraps the native module and overrides `initialize()` and `getSegments()` for custom handling.
|
|
112
|
+
*/
|
|
98
113
|
export const AppLovinMAX = Object.create(nativeMethods, {
|
|
99
114
|
initialize: {
|
|
100
115
|
value: initialize,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeAppLovinMAX","VERSION","ConsentFlowUserGeography","AppTrackingStatus","CMPErrorCode","initialize","sdkKey","getSegments","segments","map","Map","key","value","set","Number","nativeMethods","AppLovinMAX","
|
|
1
|
+
{"version":3,"names":["NativeAppLovinMAX","VERSION","ConsentFlowUserGeography","AppTrackingStatus","CMPErrorCode","initialize","sdkKey","getSegments","segments","map","Map","key","value","Object","entries","set","Number","nativeMethods","AppLovinMAX","create","enumerable"],"sourceRoot":"../../src","sources":["AppLovinMAX.ts"],"mappings":"AAEA,OAAOA,iBAAiB,MAAM,iCAAiC;AAE/D,MAAMC,OAAO,GAAG,OAAO;;AAEvB;AACA;AACA;AACA,WAAYC,wBAAwB,0BAAxBA,wBAAwB;EAChC;AACJ;AACA;EAHYA,wBAAwB;EAMhC;AACJ;AACA;EARYA,wBAAwB;EAWhC;AACJ;AACA;EAbYA,wBAAwB;EAAA,OAAxBA,wBAAwB;AAAA;;AAiBpC;AACA;AACA;AACA;AACA;AACA,WAAYC,iBAAiB,0BAAjBA,iBAAiB;EACzB;AACJ;AACA;AACA;EAJYA,iBAAiB;EAOzB;AACJ;AACA;EATYA,iBAAiB;EAYzB;AACJ;AACA;EAdYA,iBAAiB;EAiBzB;AACJ;AACA;EAnBYA,iBAAiB;EAsBzB;AACJ;AACA;EAxBYA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;;AA4B7B;AACA;AACA;AACA,WAAYC,YAAY,0BAAZA,YAAY;EACpB;AACJ;AACA;EAHYA,YAAY,CAAZA,YAAY;EAMpB;AACJ;AACA;EARYA,YAAY,CAAZA,YAAY;EAWpB;AACJ;AACA;EAbYA,YAAY,CAAZA,YAAY;EAgBpB;AACJ;AACA;EAlBYA,YAAY,CAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;;AAsBxB;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,UAAU,GAAIC,MAAc,IAA6BN,iBAAiB,CAACK,UAAU,CAACJ,OAAO,EAAEK,MAAM,CAAC;;AAE5G;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,MAAAA,CAAA,KAAmD;EACnE,MAAMC,QAAQ,GAAG,MAAMR,iBAAiB,CAACO,WAAW,CAAC,CAAC;EAEtD,IAAI,CAACC,QAAQ,EAAE;IACX,OAAO,IAAI;EACf;EAEA,MAAMC,GAAG,GAAG,IAAIC,GAAG,CAAmB,CAAC;EAEvC,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACN,QAAQ,CAAC,EAAE;IACjD;IACA,IAAII,KAAK,EAAE;MACPH,GAAG,CAACM,GAAG,CAACC,MAAM,CAACL,GAAG,CAAC,EAAEC,KAAK,CAAC;IAC/B;EACJ;EAEA,OAAOH,GAAG;AACd,CAAC;;AAED;;AAGA,MAAMQ,aAAoC,GAAGjB,iBAAiB;;AAE9D;AACA;AACA;AACA;AACA,OAAO,MAAMkB,WAA4B,GAAGL,MAAM,CAACM,MAAM,CAACF,aAAa,EAAE;EACrEZ,UAAU,EAAE;IACRO,KAAK,EAAEP,UAAU;IACjBe,UAAU,EAAE;EAChB,CAAC;EACDb,WAAW,EAAE;IACTK,KAAK,EAAEL,WAAW;IAClBa,UAAU,EAAE;EAChB;AACJ,CAAC,CAAC;AAEF,eAAeF,WAAW","ignoreList":[]}
|