react-native-daro 1.0.13 → 1.0.16
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/LICENSE +1 -1
- package/README.md +30 -30
- package/android/build.gradle +52 -59
- package/android/src/admob/java/com/daro/reactnative/DaroSdkBridge.kt +23 -0
- package/android/src/main/AndroidManifest.xml +1 -2
- package/android/src/main/java/com/{darom → daro/reactnative}/DaroMAdBannerViewManager.kt +38 -15
- package/android/src/main/java/com/daro/reactnative/DaroMAdNativeViewManager.kt +167 -0
- package/android/src/main/java/com/daro/reactnative/DaroMModule.kt +257 -0
- package/android/src/main/java/com/daro/reactnative/DaroMPackage.kt +45 -0
- package/android/src/main/java/com/daro/reactnative/DaroMediaViewManager.kt +25 -0
- package/android/src/main/java/com/{darom → daro/reactnative}/constants/InternalDaroMBannerSize.kt +1 -1
- package/android/src/main/java/com/{darom → daro/reactnative}/event/DaroMEvent.kt +19 -8
- package/android/src/main/java/com/{darom → daro/reactnative}/impl/DaroMBannerViewModuleImpl.kt +2 -2
- package/android/src/main/java/com/{darom → daro/reactnative}/impl/DaroMInterstitialModuleImpl.kt +26 -26
- package/android/src/main/java/com/{darom → daro/reactnative}/impl/DaroMLightPopupModuleImpl.kt +30 -29
- package/android/src/main/java/com/{darom → daro/reactnative}/impl/DaroMRewardedAdModuleImpl.kt +27 -27
- package/android/src/main/java/com/{darom → daro/reactnative}/util/AdInfoUtil.kt +25 -1
- package/android/src/main/java/com/daro/reactnative/util/EventEmitterUtil.kt +37 -0
- package/android/src/main/java/com/daro/reactnative/view/DaroMAdBannerViewContainer.kt +417 -0
- package/android/src/main/java/com/daro/reactnative/view/DaroMAdNativeViewContainer.kt +624 -0
- package/android/src/main/java/com/daro/reactnative/view/DaroMediaView.kt +123 -0
- package/android/src/newarch/java/com/daro/reactnative/DaroMModuleSpec.kt +6 -0
- package/android/src/oldarch/java/com/daro/reactnative/DaroMModuleSpec.kt +90 -0
- package/app.plugin.js +1 -0
- package/ios/DaroMModule+AppOpen.swift +38 -32
- package/ios/DaroMModule+Interstitial.swift +32 -26
- package/ios/DaroMModule+LightPopup.swift +43 -33
- package/ios/DaroMModule+Rewarded.swift +38 -27
- package/ios/DaroMModule.mm +45 -17
- package/ios/DaroMModule.swift +24 -17
- package/ios/Fabric/DaroMAdBannerComponentView.mm +207 -0
- package/ios/Fabric/DaroMFabricEventSink.mm +31 -0
- package/ios/Fabric/DaroMFabricPropApplier.mm +123 -0
- package/ios/Fabric/DaroMNativeAdComponentView.mm +294 -0
- package/ios/{DaroMAdBannerViewManager.m → Paper/DaroMAdBannerViewManager.m} +3 -1
- package/ios/Paper/DaroMAdBannerViewManager.swift +21 -0
- package/ios/{DaroMNativeAdViewManager.m → Paper/DaroMNativeAdViewManager.m} +2 -1
- package/ios/Paper/DaroMNativeAdViewManager.swift +22 -0
- package/ios/Shared/DaroMAdEventSink.swift +24 -0
- package/ios/Shared/DaroMBannerAdView.swift +188 -0
- package/ios/Shared/DaroMNativeAdLoadCoordinator.swift +49 -0
- package/ios/Shared/DaroMNativeAdView.swift +575 -0
- package/ios/Shared/DaroMNativeAssetResolver.swift +53 -0
- package/ios/mediation/admob/DaroMediationDebugger.swift +11 -0
- package/ios/mediation/admob/DaroMediationTypes.swift +23 -0
- package/lib/commonjs/AdBannerView.js +21 -35
- package/lib/commonjs/AdBannerView.js.map +1 -1
- package/lib/commonjs/AppOpenAd.js +80 -21
- package/lib/commonjs/AppOpenAd.js.map +1 -1
- package/lib/commonjs/DaroMAdBannerViewNativeComponent.ts +47 -0
- package/lib/commonjs/DaroMNativeAdViewNativeComponent.ts +62 -0
- package/lib/commonjs/DaroMediaViewNativeComponent.ts +9 -0
- package/lib/commonjs/ErrorCode.js.map +1 -1
- package/lib/commonjs/EventEmitter.js +4 -5
- package/lib/commonjs/EventEmitter.js.map +1 -1
- package/lib/commonjs/InterstitialAd.js +48 -22
- package/lib/commonjs/InterstitialAd.js.map +1 -1
- package/lib/commonjs/LightPopupAd.js +64 -46
- package/lib/commonjs/LightPopupAd.js.map +1 -1
- package/lib/commonjs/NativeDaroModule.js +9 -0
- package/lib/commonjs/NativeDaroModule.js.map +1 -0
- package/lib/commonjs/RewardedAd.js +47 -23
- package/lib/commonjs/RewardedAd.js.map +1 -1
- package/lib/commonjs/codegen-env.d.js +2 -0
- package/lib/commonjs/codegen-env.d.js.map +1 -0
- package/lib/commonjs/hooks/useInterstitialAd.js +110 -0
- package/lib/commonjs/hooks/useInterstitialAd.js.map +1 -0
- package/lib/commonjs/hooks/useLightPopupAd.js +114 -0
- package/lib/commonjs/hooks/useLightPopupAd.js.map +1 -0
- package/lib/commonjs/hooks/useRewardedAd.js +113 -0
- package/lib/commonjs/hooks/useRewardedAd.js.map +1 -0
- package/lib/commonjs/index.js +29 -13
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdView.js +23 -18
- package/lib/commonjs/nativeAd/NativeAdView.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js +43 -31
- package/lib/commonjs/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js +34 -7
- package/lib/commonjs/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/module/AdBannerView.js +20 -36
- package/lib/module/AdBannerView.js.map +1 -1
- package/lib/module/AppOpenAd.js +80 -22
- package/lib/module/AppOpenAd.js.map +1 -1
- package/lib/module/DaroMAdBannerViewNativeComponent.ts +47 -0
- package/lib/module/DaroMNativeAdViewNativeComponent.ts +62 -0
- package/lib/module/DaroMediaViewNativeComponent.ts +9 -0
- package/lib/module/ErrorCode.js.map +1 -1
- package/lib/module/EventEmitter.js +4 -6
- package/lib/module/EventEmitter.js.map +1 -1
- package/lib/module/InterstitialAd.js +47 -22
- package/lib/module/InterstitialAd.js.map +1 -1
- package/lib/module/LightPopupAd.js +65 -47
- package/lib/module/LightPopupAd.js.map +1 -1
- package/lib/module/NativeDaroModule.js +5 -0
- package/lib/module/NativeDaroModule.js.map +1 -0
- package/lib/module/RewardedAd.js +46 -23
- package/lib/module/RewardedAd.js.map +1 -1
- package/lib/module/codegen-env.d.js +2 -0
- package/lib/module/codegen-env.d.js.map +1 -0
- package/lib/module/hooks/useInterstitialAd.js +106 -0
- package/lib/module/hooks/useInterstitialAd.js.map +1 -0
- package/lib/module/hooks/useLightPopupAd.js +110 -0
- package/lib/module/hooks/useLightPopupAd.js.map +1 -0
- package/lib/module/hooks/useRewardedAd.js +109 -0
- package/lib/module/hooks/useRewardedAd.js.map +1 -0
- package/lib/module/index.js +7 -13
- package/lib/module/index.js.map +1 -1
- package/lib/module/nativeAd/NativeAdView.js +22 -19
- package/lib/module/nativeAd/NativeAdView.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewComponents.js +45 -34
- package/lib/module/nativeAd/NativeAdViewComponents.js.map +1 -1
- package/lib/module/nativeAd/NativeAdViewProvider.js +35 -8
- package/lib/module/nativeAd/NativeAdViewProvider.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/typescript/commonjs/plugin/src/index.d.ts +19 -0
- package/lib/typescript/commonjs/plugin/src/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugin/src/skAdNetworkIds.d.ts +6 -0
- package/lib/typescript/commonjs/plugin/src/skAdNetworkIds.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugin/src/withAndroid.d.ts +8 -0
- package/lib/typescript/commonjs/plugin/src/withAndroid.d.ts.map +1 -0
- package/lib/typescript/commonjs/plugin/src/withIos.d.ts +8 -0
- package/lib/typescript/commonjs/plugin/src/withIos.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/AdBannerView.d.ts +126 -4
- package/lib/typescript/commonjs/src/AdBannerView.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/AppOpenAd.d.ts +6 -0
- package/lib/typescript/commonjs/src/AppOpenAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/DaroMAdBannerViewNativeComponent.d.ts +32 -0
- package/lib/typescript/commonjs/src/DaroMAdBannerViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DaroMNativeAdViewNativeComponent.d.ts +42 -0
- package/lib/typescript/commonjs/src/DaroMNativeAdViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DaroMediaViewNativeComponent.d.ts +6 -0
- package/lib/typescript/commonjs/src/DaroMediaViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/ErrorCode.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/EventEmitter.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/InterstitialAd.d.ts +6 -0
- package/lib/typescript/commonjs/src/InterstitialAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/LightPopupAd.d.ts +6 -0
- package/lib/typescript/commonjs/src/LightPopupAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/NativeDaroModule.d.ts +61 -0
- package/lib/typescript/commonjs/src/NativeDaroModule.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/RewardedAd.d.ts +6 -0
- package/lib/typescript/commonjs/src/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/hooks/useInterstitialAd.d.ts +19 -0
- package/lib/typescript/commonjs/src/hooks/useInterstitialAd.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hooks/useLightPopupAd.d.ts +23 -0
- package/lib/typescript/commonjs/src/hooks/useLightPopupAd.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/hooks/useRewardedAd.d.ts +20 -0
- package/lib/typescript/commonjs/src/hooks/useRewardedAd.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +7 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/nativeAd/NativeAdView.d.ts +125 -2
- package/lib/typescript/commonjs/src/nativeAd/NativeAdView.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/nativeAd/NativeAdViewComponents.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/nativeAd/NativeAdViewProvider.d.ts +11 -5
- package/lib/typescript/commonjs/src/nativeAd/NativeAdViewProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/AdBannerViewProps.d.ts +2 -2
- package/lib/typescript/commonjs/src/types/AdBannerViewProps.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/AdInfo.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/AdProps.d.ts +2 -2
- package/lib/typescript/commonjs/src/types/AdProps.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/DaroMMobileAds.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/NativeAdViewProps.d.ts +2 -0
- package/lib/typescript/commonjs/src/types/NativeAdViewProps.d.ts.map +1 -1
- package/lib/typescript/module/plugin/src/index.d.ts +19 -0
- package/lib/typescript/module/plugin/src/index.d.ts.map +1 -0
- package/lib/typescript/module/plugin/src/skAdNetworkIds.d.ts +6 -0
- package/lib/typescript/module/plugin/src/skAdNetworkIds.d.ts.map +1 -0
- package/lib/typescript/module/plugin/src/withAndroid.d.ts +8 -0
- package/lib/typescript/module/plugin/src/withAndroid.d.ts.map +1 -0
- package/lib/typescript/module/plugin/src/withIos.d.ts +8 -0
- package/lib/typescript/module/plugin/src/withIos.d.ts.map +1 -0
- package/lib/typescript/module/src/AdBannerView.d.ts +126 -4
- package/lib/typescript/module/src/AdBannerView.d.ts.map +1 -1
- package/lib/typescript/module/src/AppOpenAd.d.ts +6 -0
- package/lib/typescript/module/src/AppOpenAd.d.ts.map +1 -1
- package/lib/typescript/module/src/DaroMAdBannerViewNativeComponent.d.ts +32 -0
- package/lib/typescript/module/src/DaroMAdBannerViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/DaroMNativeAdViewNativeComponent.d.ts +42 -0
- package/lib/typescript/module/src/DaroMNativeAdViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/DaroMediaViewNativeComponent.d.ts +6 -0
- package/lib/typescript/module/src/DaroMediaViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/module/src/ErrorCode.d.ts.map +1 -1
- package/lib/typescript/module/src/EventEmitter.d.ts.map +1 -1
- package/lib/typescript/module/src/InterstitialAd.d.ts +6 -0
- package/lib/typescript/module/src/InterstitialAd.d.ts.map +1 -1
- package/lib/typescript/module/src/LightPopupAd.d.ts +6 -0
- package/lib/typescript/module/src/LightPopupAd.d.ts.map +1 -1
- package/lib/typescript/module/src/NativeDaroModule.d.ts +61 -0
- package/lib/typescript/module/src/NativeDaroModule.d.ts.map +1 -0
- package/lib/typescript/module/src/RewardedAd.d.ts +6 -0
- package/lib/typescript/module/src/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/module/src/hooks/useInterstitialAd.d.ts +19 -0
- package/lib/typescript/module/src/hooks/useInterstitialAd.d.ts.map +1 -0
- package/lib/typescript/module/src/hooks/useLightPopupAd.d.ts +23 -0
- package/lib/typescript/module/src/hooks/useLightPopupAd.d.ts.map +1 -0
- package/lib/typescript/module/src/hooks/useRewardedAd.d.ts +20 -0
- package/lib/typescript/module/src/hooks/useRewardedAd.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +7 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/nativeAd/NativeAdView.d.ts +125 -2
- package/lib/typescript/module/src/nativeAd/NativeAdView.d.ts.map +1 -1
- package/lib/typescript/module/src/nativeAd/NativeAdViewComponents.d.ts.map +1 -1
- package/lib/typescript/module/src/nativeAd/NativeAdViewProvider.d.ts +11 -5
- package/lib/typescript/module/src/nativeAd/NativeAdViewProvider.d.ts.map +1 -1
- package/lib/typescript/module/src/types/AdBannerViewProps.d.ts +2 -2
- package/lib/typescript/module/src/types/AdBannerViewProps.d.ts.map +1 -1
- package/lib/typescript/module/src/types/AdInfo.d.ts.map +1 -1
- package/lib/typescript/module/src/types/AdProps.d.ts +2 -2
- package/lib/typescript/module/src/types/AdProps.d.ts.map +1 -1
- package/lib/typescript/module/src/types/DaroMMobileAds.d.ts.map +1 -1
- package/lib/typescript/module/src/types/NativeAdViewProps.d.ts +2 -0
- package/lib/typescript/module/src/types/NativeAdViewProps.d.ts.map +1 -1
- package/package.json +95 -105
- package/plugin/build/index.d.ts +18 -0
- package/plugin/build/index.js +71 -0
- package/plugin/build/skAdNetworkIds.d.ts +5 -0
- package/plugin/build/skAdNetworkIds.js +205 -0
- package/plugin/build/withAndroid.d.ts +7 -0
- package/plugin/build/withAndroid.js +222 -0
- package/plugin/build/withIos.d.ts +7 -0
- package/plugin/build/withIos.js +82 -0
- package/react-native-daro.podspec +28 -0
- package/src/AdBannerView.tsx +48 -48
- package/src/AppOpenAd.ts +101 -20
- package/src/DaroMAdBannerViewNativeComponent.ts +47 -0
- package/src/DaroMNativeAdViewNativeComponent.ts +62 -0
- package/src/DaroMediaViewNativeComponent.ts +9 -0
- package/src/ErrorCode.ts +1 -2
- package/src/EventEmitter.ts +9 -7
- package/src/InterstitialAd.ts +75 -21
- package/src/LightPopupAd.ts +90 -51
- package/src/NativeDaroModule.ts +91 -0
- package/src/RewardedAd.ts +72 -22
- package/src/codegen-env.d.ts +45 -0
- package/src/hooks/useInterstitialAd.ts +117 -0
- package/src/hooks/useLightPopupAd.ts +132 -0
- package/src/hooks/useRewardedAd.ts +122 -0
- package/src/index.tsx +21 -22
- package/src/nativeAd/NativeAdView.tsx +83 -45
- package/src/nativeAd/NativeAdViewComponents.tsx +129 -64
- package/src/nativeAd/NativeAdViewProvider.tsx +84 -16
- package/src/types/AdBannerViewProps.ts +11 -11
- package/src/types/AdInfo.ts +17 -17
- package/src/types/AdProps.ts +8 -9
- package/src/types/DaroMMobileAds.ts +3 -6
- package/src/types/NativeAdViewProps.ts +12 -5
- package/src/types/index.ts +1 -1
- package/android/gradle.properties +0 -5
- package/android/src/main/AndroidManifestNew.xml +0 -7
- package/android/src/main/java/com/darom/DaroMAdNativeViewManager.kt +0 -136
- package/android/src/main/java/com/darom/DaroMModule.kt +0 -203
- package/android/src/main/java/com/darom/DaroMPackage.kt +0 -21
- package/android/src/main/java/com/darom/util/EventEmitterUtil.kt +0 -24
- package/android/src/main/java/com/darom/view/DaroMAdBannerViewContainer.kt +0 -163
- package/android/src/main/java/com/darom/view/DaroMAdNativeViewContainer.kt +0 -375
- package/android/src/main/res/layout/layout_activity_transparent.xml +0 -7
- package/android/src/main/res/values/styles.xml +0 -11
- package/ios/DaroM-Bridging-Header.h +0 -6
- package/ios/DaroMAdBannerViewManager.swift +0 -91
- package/ios/DaroMNativeAdViewManager.swift +0 -291
- package/react-native-daro-m.podspec +0 -44
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2026 Delightroom
|
|
4
4
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
5
5
|
of this software and associated documentation files (the "Software"), to deal
|
|
6
6
|
in the Software without restriction, including without limitation the rights
|
package/README.md
CHANGED
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
# react-native-daro
|
|
1
|
+
# react-native-daro
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
React Native module for the Daro SDK on Android and iOS.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
7
7
|
```sh
|
|
8
|
-
|
|
8
|
+
npm install react-native-daro
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## Usage
|
|
12
12
|
|
|
13
|
-
|
|
14
13
|
```js
|
|
15
|
-
import {
|
|
16
|
-
|
|
17
|
-
// ...
|
|
18
|
-
|
|
19
|
-
<DaroMView color="tomato" />
|
|
20
|
-
```
|
|
14
|
+
import { initialize, InterstitialAd } from 'react-native-daro';
|
|
21
15
|
|
|
22
|
-
|
|
16
|
+
await initialize();
|
|
23
17
|
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
const interstitialAd = InterstitialAd.createForAdRequest('AD_UNIT_ID');
|
|
19
|
+
interstitialAd.load();
|
|
26
20
|
```
|
|
27
21
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
```sh
|
|
31
|
-
yarn run android
|
|
32
|
-
```
|
|
22
|
+
## Expo Config Plugin
|
|
33
23
|
|
|
34
|
-
|
|
24
|
+
For Expo apps, add `react-native-daro` to `plugins`.
|
|
35
25
|
|
|
36
|
-
```
|
|
37
|
-
|
|
26
|
+
```js
|
|
27
|
+
module.exports = {
|
|
28
|
+
expo: {
|
|
29
|
+
plugins: [
|
|
30
|
+
[
|
|
31
|
+
'react-native-daro',
|
|
32
|
+
{
|
|
33
|
+
ios: {
|
|
34
|
+
daroAppKey: 'DARO_IOS_APP_KEY',
|
|
35
|
+
daroKeyFile: './ios-daro-key.txt',
|
|
36
|
+
admobAppId: 'ca-app-pub-0000000000000000~0000000000',
|
|
37
|
+
},
|
|
38
|
+
android: {
|
|
39
|
+
daroAppKey: 'DARO_ANDROID_APP_KEY',
|
|
40
|
+
daroKeyFile: './android-daro-key.txt',
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
};
|
|
38
47
|
```
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
## License
|
|
42
|
-
|
|
43
|
-
MIT
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
Made with [create-react-native-library](https://github.com/callstack/react-native-builder-bob)
|
package/android/build.gradle
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
|
+
import groovy.json.JsonSlurper
|
|
2
|
+
|
|
1
3
|
buildscript {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
+
ext.DaroReactNative = [
|
|
5
|
+
kotlinVersion: "2.0.21",
|
|
6
|
+
minSdkVersion: 23,
|
|
7
|
+
compileSdkVersion: 36,
|
|
8
|
+
targetSdkVersion: 36
|
|
9
|
+
]
|
|
10
|
+
|
|
11
|
+
ext.getExtOrDefault = { prop ->
|
|
12
|
+
if (rootProject.ext.has(prop)) {
|
|
13
|
+
return rootProject.ext.get(prop)
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return DaroReactNative[prop]
|
|
17
|
+
}
|
|
4
18
|
|
|
5
19
|
repositories {
|
|
6
20
|
google()
|
|
@@ -8,62 +22,46 @@ buildscript {
|
|
|
8
22
|
}
|
|
9
23
|
|
|
10
24
|
dependencies {
|
|
11
|
-
classpath "com.android.tools.build:gradle:8.2
|
|
25
|
+
classpath "com.android.tools.build:gradle:8.7.2"
|
|
12
26
|
// noinspection DifferentKotlinGradleVersion
|
|
13
|
-
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$
|
|
27
|
+
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${getExtOrDefault('kotlinVersion')}"
|
|
14
28
|
}
|
|
15
29
|
}
|
|
16
30
|
|
|
17
|
-
def reactNativeArchitectures() {
|
|
18
|
-
def value = rootProject.getProperties().get("reactNativeArchitectures")
|
|
19
|
-
return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
def isNewArchitectureEnabled() {
|
|
23
|
-
return rootProject.hasProperty("newArchEnabled") && rootProject.getProperty("newArchEnabled") == "true"
|
|
24
|
-
}
|
|
25
31
|
|
|
26
32
|
apply plugin: "com.android.library"
|
|
27
33
|
apply plugin: "kotlin-android"
|
|
28
34
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
def
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
// Namespace support was added in 7.3.0
|
|
47
|
-
return (major == 7 && minor >= 3) || major >= 8
|
|
48
|
-
}
|
|
35
|
+
apply plugin: "com.facebook.react"
|
|
36
|
+
|
|
37
|
+
def packageJson = new JsonSlurper().parse(file("$projectDir/../package.json"))
|
|
38
|
+
def packageName = packageJson.name
|
|
39
|
+
def localMediation = (
|
|
40
|
+
project.findProperty("daroMediation") ?: System.getenv("DARO_MEDIATION")
|
|
41
|
+
)?.toString()?.toLowerCase()
|
|
42
|
+
def mediation =
|
|
43
|
+
packageName == "react-native-daro-m" ? "max" :
|
|
44
|
+
packageName == "react-native-daro" ? "admob" :
|
|
45
|
+
localMediation == "max" ? "max" : "admob"
|
|
46
|
+
def daroSdkDependency = mediation == "max" ? "so.daro:daro-m:1.3.8" : "so.daro:daro-a:1.5.5"
|
|
47
|
+
def isNewArchitectureEnabled =
|
|
48
|
+
(project.hasProperty("newArchEnabled") && project.property("newArchEnabled").toString().toBoolean()) ||
|
|
49
|
+
(project.hasProperty("react.newArchEnabled") && project.property("react.newArchEnabled").toString().toBoolean())
|
|
50
|
+
def architectureSourceSet = isNewArchitectureEnabled ? "newarch" : "oldarch"
|
|
49
51
|
|
|
50
52
|
android {
|
|
51
|
-
|
|
52
|
-
namespace "com.darom"
|
|
53
|
+
namespace "com.daro.reactnative"
|
|
53
54
|
|
|
54
|
-
|
|
55
|
-
main {
|
|
56
|
-
manifest.srcFile "src/main/AndroidManifestNew.xml"
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
55
|
+
compileSdkVersion getExtOrDefault("compileSdkVersion")
|
|
60
56
|
|
|
61
|
-
|
|
57
|
+
buildFeatures {
|
|
58
|
+
buildConfig true
|
|
59
|
+
}
|
|
62
60
|
|
|
63
61
|
defaultConfig {
|
|
64
|
-
minSdkVersion
|
|
65
|
-
targetSdkVersion
|
|
66
|
-
|
|
62
|
+
minSdkVersion getExtOrDefault("minSdkVersion")
|
|
63
|
+
targetSdkVersion getExtOrDefault("targetSdkVersion")
|
|
64
|
+
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled.toString()
|
|
67
65
|
}
|
|
68
66
|
|
|
69
67
|
buildTypes {
|
|
@@ -72,7 +70,14 @@ android {
|
|
|
72
70
|
}
|
|
73
71
|
}
|
|
74
72
|
|
|
75
|
-
|
|
73
|
+
sourceSets {
|
|
74
|
+
main {
|
|
75
|
+
java.srcDirs += "src/${mediation}/java"
|
|
76
|
+
java.srcDirs += "src/${architectureSourceSet}/java"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
lint {
|
|
76
81
|
disable "GradleCompatible"
|
|
77
82
|
}
|
|
78
83
|
|
|
@@ -82,19 +87,7 @@ android {
|
|
|
82
87
|
}
|
|
83
88
|
}
|
|
84
89
|
|
|
85
|
-
repositories {
|
|
86
|
-
mavenCentral()
|
|
87
|
-
google()
|
|
88
|
-
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
def kotlin_version = getExtOrDefault("kotlinVersion")
|
|
92
|
-
|
|
93
90
|
dependencies {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
//noinspection GradleDynamicVersion
|
|
97
|
-
implementation "com.facebook.react:react-android:+"
|
|
98
|
-
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
99
|
-
compileOnly "so.daro:daro-a:1.5.5"
|
|
91
|
+
implementation "com.facebook.react:react-android"
|
|
92
|
+
compileOnly daroSdkDependency
|
|
100
93
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
package com.daro.reactnative
|
|
2
|
+
|
|
3
|
+
import android.app.Application
|
|
4
|
+
import android.content.Context
|
|
5
|
+
import droom.daro.SDKConfig
|
|
6
|
+
import droom.daro.a.Daro
|
|
7
|
+
|
|
8
|
+
internal object DaroSdkBridge {
|
|
9
|
+
fun initialize(application: Application, sdkConfig: SDKConfig) {
|
|
10
|
+
Daro.init(
|
|
11
|
+
application = application,
|
|
12
|
+
sdkConfig = sdkConfig,
|
|
13
|
+
)
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
fun openDebugger(context: Context) {
|
|
17
|
+
Daro.openDebugger(context)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
fun setUserId(context: Context, userId: String) {
|
|
21
|
+
Daro.setUserId(context, userId)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -1,16 +1,25 @@
|
|
|
1
|
-
package com.
|
|
1
|
+
package com.daro.reactnative
|
|
2
2
|
|
|
3
|
-
import com.
|
|
4
|
-
import com.
|
|
5
|
-
import com.
|
|
3
|
+
import com.daro.reactnative.constants.InternalDaroMBannerSize
|
|
4
|
+
import com.daro.reactnative.event.AdViewEvent
|
|
5
|
+
import com.daro.reactnative.view.DaroMAdBannerViewContainer
|
|
6
6
|
import com.facebook.react.bridge.ReadableArray
|
|
7
7
|
import com.facebook.react.uimanager.ReactStylesDiffMap
|
|
8
8
|
import com.facebook.react.uimanager.SimpleViewManager
|
|
9
9
|
import com.facebook.react.uimanager.StateWrapper
|
|
10
10
|
import com.facebook.react.uimanager.ThemedReactContext
|
|
11
|
+
import com.facebook.react.uimanager.ViewManagerDelegate
|
|
11
12
|
import com.facebook.react.uimanager.annotations.ReactProp
|
|
13
|
+
import com.facebook.react.viewmanagers.DaroMAdBannerViewManagerDelegate
|
|
14
|
+
import com.facebook.react.viewmanagers.DaroMAdBannerViewManagerInterface
|
|
12
15
|
|
|
13
|
-
class DaroMAdBannerViewManager : SimpleViewManager<DaroMAdBannerViewContainer>()
|
|
16
|
+
class DaroMAdBannerViewManager : SimpleViewManager<DaroMAdBannerViewContainer>(),
|
|
17
|
+
DaroMAdBannerViewManagerInterface<DaroMAdBannerViewContainer> {
|
|
18
|
+
|
|
19
|
+
private val delegate: ViewManagerDelegate<DaroMAdBannerViewContainer> =
|
|
20
|
+
DaroMAdBannerViewManagerDelegate(this)
|
|
21
|
+
|
|
22
|
+
override fun getDelegate(): ViewManagerDelegate<DaroMAdBannerViewContainer> = delegate
|
|
14
23
|
|
|
15
24
|
override fun getName(): String {
|
|
16
25
|
return "DaroMAdBannerView"
|
|
@@ -46,7 +55,7 @@ class DaroMAdBannerViewManager : SimpleViewManager<DaroMAdBannerViewContainer>()
|
|
|
46
55
|
viewCache[cacheKey].let { cachedView ->
|
|
47
56
|
cachedView?.id = reactTag
|
|
48
57
|
|
|
49
|
-
if(cachedView?.parent == null) {
|
|
58
|
+
if (cachedView?.parent == null) {
|
|
50
59
|
cachedView?.resumeAd()
|
|
51
60
|
cachedView
|
|
52
61
|
} else {
|
|
@@ -99,34 +108,48 @@ class DaroMAdBannerViewManager : SimpleViewManager<DaroMAdBannerViewContainer>()
|
|
|
99
108
|
}
|
|
100
109
|
}
|
|
101
110
|
|
|
111
|
+
override fun receiveCommand(
|
|
112
|
+
root: DaroMAdBannerViewContainer,
|
|
113
|
+
commandId: String,
|
|
114
|
+
args: ReadableArray?,
|
|
115
|
+
) {
|
|
116
|
+
when (commandId) {
|
|
117
|
+
"loadAd" -> root.loadAd()
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
102
121
|
@ReactProp(name = "isVisible")
|
|
103
|
-
fun setIsVisible(view: DaroMAdBannerViewContainer, isVisible: Boolean) {
|
|
122
|
+
override fun setIsVisible(view: DaroMAdBannerViewContainer, isVisible: Boolean) {
|
|
104
123
|
view.setAdVisibility(isVisible)
|
|
105
124
|
}
|
|
106
125
|
|
|
107
126
|
@ReactProp(name = "adUnitId")
|
|
108
|
-
fun setAdUnitId(view: DaroMAdBannerViewContainer, adUnitId: String) {
|
|
109
|
-
view.adUnitId = adUnitId
|
|
127
|
+
override fun setAdUnitId(view: DaroMAdBannerViewContainer, adUnitId: String?) {
|
|
128
|
+
view.adUnitId = adUnitId.orEmpty()
|
|
110
129
|
}
|
|
111
130
|
|
|
112
131
|
@ReactProp(name = "adFormat")
|
|
113
|
-
fun setAdFormat(view: DaroMAdBannerViewContainer, adFormat: String) {
|
|
114
|
-
view.adSize = InternalDaroMBannerSize.fromName(
|
|
132
|
+
override fun setAdFormat(view: DaroMAdBannerViewContainer, adFormat: String?) {
|
|
133
|
+
view.adSize = adFormat?.let { InternalDaroMBannerSize.fromName(it).toBannerSize() }
|
|
115
134
|
}
|
|
116
135
|
|
|
117
136
|
@ReactProp(name = "loadOnMount")
|
|
118
|
-
fun setLoadOnMount(view: DaroMAdBannerViewContainer, loadOnMount: Boolean) {
|
|
137
|
+
override fun setLoadOnMount(view: DaroMAdBannerViewContainer, loadOnMount: Boolean) {
|
|
119
138
|
view.loadOnMount = loadOnMount
|
|
120
139
|
}
|
|
121
140
|
|
|
122
141
|
@ReactProp(name = "placement")
|
|
123
|
-
fun setPlacement(view: DaroMAdBannerViewContainer, placement: String) {
|
|
142
|
+
override fun setPlacement(view: DaroMAdBannerViewContainer, placement: String?) {
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
override fun loadAd(view: DaroMAdBannerViewContainer) {
|
|
146
|
+
view.loadAd()
|
|
124
147
|
}
|
|
125
148
|
|
|
126
149
|
@OptIn(ExperimentalStdlibApi::class)
|
|
127
|
-
override fun
|
|
150
|
+
override fun getExportedCustomDirectEventTypeConstants(): MutableMap<String, Any> {
|
|
128
151
|
return AdViewEvent.entries.associate {
|
|
129
|
-
it.value to mutableMapOf("
|
|
152
|
+
it.value to mutableMapOf("registrationName" to it.registrationName)
|
|
130
153
|
}.toMutableMap()
|
|
131
154
|
}
|
|
132
155
|
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
package com.daro.reactnative
|
|
2
|
+
|
|
3
|
+
import android.view.View
|
|
4
|
+
import com.daro.reactnative.event.AdViewEvent
|
|
5
|
+
import com.daro.reactnative.view.DaroMAdNativeViewContainer
|
|
6
|
+
import com.facebook.react.bridge.Dynamic
|
|
7
|
+
import com.facebook.react.bridge.ReadableArray
|
|
8
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
9
|
+
import com.facebook.react.uimanager.ViewManagerDelegate
|
|
10
|
+
import com.facebook.react.uimanager.ViewGroupManager
|
|
11
|
+
import com.facebook.react.uimanager.annotations.ReactProp
|
|
12
|
+
import com.facebook.react.viewmanagers.DaroMNativeAdViewManagerDelegate
|
|
13
|
+
import com.facebook.react.viewmanagers.DaroMNativeAdViewManagerInterface
|
|
14
|
+
|
|
15
|
+
class DaroMAdNativeViewManager : ViewGroupManager<DaroMAdNativeViewContainer>(),
|
|
16
|
+
DaroMNativeAdViewManagerInterface<DaroMAdNativeViewContainer> {
|
|
17
|
+
|
|
18
|
+
private val delegate: ViewManagerDelegate<DaroMAdNativeViewContainer> =
|
|
19
|
+
DaroMNativeAdViewManagerDelegate(this)
|
|
20
|
+
|
|
21
|
+
override fun getDelegate(): ViewManagerDelegate<DaroMAdNativeViewContainer> = delegate
|
|
22
|
+
|
|
23
|
+
override fun getName(): String {
|
|
24
|
+
return "DaroMNativeAdView"
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
override fun createViewInstance(context: ThemedReactContext): DaroMAdNativeViewContainer {
|
|
28
|
+
return DaroMAdNativeViewContainer(context)
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
override fun addView(parent: DaroMAdNativeViewContainer, child: View, index: Int) {
|
|
32
|
+
parent.addReactSubview(child, index)
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
override fun getChildCount(parent: DaroMAdNativeViewContainer): Int {
|
|
36
|
+
return parent.getReactSubviewCount()
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
override fun getChildAt(parent: DaroMAdNativeViewContainer, index: Int): View {
|
|
40
|
+
return parent.getReactSubviewAt(index)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
override fun removeViewAt(parent: DaroMAdNativeViewContainer, index: Int) {
|
|
44
|
+
parent.removeReactSubviewAt(index)
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
override fun removeAllViews(parent: DaroMAdNativeViewContainer) {
|
|
48
|
+
parent.removeAllReactSubviews()
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
companion object {
|
|
52
|
+
private const val COMMAND_LOAD_AD: Int = 1
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
override fun getExportedCustomDirectEventTypeConstants(): MutableMap<String, Any> {
|
|
56
|
+
return AdViewEvent.entries.associate {
|
|
57
|
+
it.value to mutableMapOf("registrationName" to it.registrationName)
|
|
58
|
+
}.toMutableMap()
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
override fun getCommandsMap(): MutableMap<String, Int> {
|
|
62
|
+
return mutableMapOf(
|
|
63
|
+
"loadAd" to COMMAND_LOAD_AD,
|
|
64
|
+
)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@Deprecated("")
|
|
68
|
+
override fun receiveCommand(
|
|
69
|
+
root: DaroMAdNativeViewContainer,
|
|
70
|
+
commandId: Int,
|
|
71
|
+
args: ReadableArray?,
|
|
72
|
+
) {
|
|
73
|
+
when (commandId) {
|
|
74
|
+
COMMAND_LOAD_AD -> {
|
|
75
|
+
root.loadAd()
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
override fun receiveCommand(
|
|
81
|
+
root: DaroMAdNativeViewContainer,
|
|
82
|
+
commandId: String,
|
|
83
|
+
args: ReadableArray?,
|
|
84
|
+
) {
|
|
85
|
+
when (commandId) {
|
|
86
|
+
"loadAd" -> root.loadAd()
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
@ReactProp(name = "adUnitId")
|
|
91
|
+
override fun setAdUnitId(view: DaroMAdNativeViewContainer, adUnitId: String?) {
|
|
92
|
+
view.adUnitId = adUnitId.orEmpty()
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
@ReactProp(name = "loadOnMount")
|
|
96
|
+
override fun setLoadOnMount(view: DaroMAdNativeViewContainer, loadOnMount: Boolean) {
|
|
97
|
+
view.loadOnMount = loadOnMount
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
@ReactProp(name = "adChoicesPosition")
|
|
101
|
+
override fun setAdChoicesPosition(view: DaroMAdNativeViewContainer, value: String?) {
|
|
102
|
+
view.setAdChoicesPosition(value)
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@ReactProp(name = "titleView")
|
|
106
|
+
override fun setTitleView(view: DaroMAdNativeViewContainer, value: Int) {
|
|
107
|
+
view.setTitleView(value)
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
@ReactProp(name = "bodyView")
|
|
111
|
+
override fun setBodyView(view: DaroMAdNativeViewContainer, value: Int) {
|
|
112
|
+
view.setBodyView(value)
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
@ReactProp(name = "callToActionView")
|
|
116
|
+
override fun setCallToActionView(view: DaroMAdNativeViewContainer, value: Int) {
|
|
117
|
+
view.setCallToActionView(value)
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
@ReactProp(name = "iconView")
|
|
121
|
+
override fun setIconView(view: DaroMAdNativeViewContainer, value: Int) {
|
|
122
|
+
view.setIconView(value)
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
@ReactProp(name = "mediaView")
|
|
126
|
+
override fun setMediaView(view: DaroMAdNativeViewContainer, value: Int) {
|
|
127
|
+
view.setMediaView(value)
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
@ReactProp(name = "placement")
|
|
131
|
+
override fun setPlacement(view: DaroMAdNativeViewContainer, placement: String?) {
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
@ReactProp(name = "titleViewStyleProps")
|
|
135
|
+
override fun setTitleViewStyleProps(view: DaroMAdNativeViewContainer, value: Dynamic) {
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
@ReactProp(name = "bodyViewStyleProps")
|
|
139
|
+
override fun setBodyViewStyleProps(view: DaroMAdNativeViewContainer, value: Dynamic) {
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
@ReactProp(name = "callToActionViewStyleProps")
|
|
143
|
+
override fun setCallToActionViewStyleProps(view: DaroMAdNativeViewContainer, value: Dynamic) {
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
@ReactProp(name = "iconViewStyleProps")
|
|
147
|
+
override fun setIconViewStyleProps(view: DaroMAdNativeViewContainer, value: Dynamic) {
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
@ReactProp(name = "mediaViewStyleProps")
|
|
151
|
+
override fun setMediaViewStyleProps(view: DaroMAdNativeViewContainer, value: Dynamic) {
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
override fun loadAd(view: DaroMAdNativeViewContainer) {
|
|
155
|
+
view.loadAd()
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
override fun onAfterUpdateTransaction(view: DaroMAdNativeViewContainer) {
|
|
159
|
+
super.onAfterUpdateTransaction(view)
|
|
160
|
+
view.onSetProps()
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
override fun onDropViewInstance(view: DaroMAdNativeViewContainer) {
|
|
164
|
+
super.onDropViewInstance(view)
|
|
165
|
+
view.destroy()
|
|
166
|
+
}
|
|
167
|
+
}
|