cloudx-react-native 2.0.0-beta.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/README.md +420 -1046
  2. package/android/src/main/AndroidManifest.xml +0 -4
  3. package/android/src/main/java/com/cloudxreactnative/CloudXAdEvents.kt +39 -0
  4. package/android/src/main/java/com/cloudxreactnative/CloudXAdInfo.kt +32 -0
  5. package/android/src/main/java/com/cloudxreactnative/CloudXModuleImpl.kt +694 -0
  6. package/android/src/{newarch/com/cloudxreactnative/CloudXReactNativePackage.kt → main/java/com/cloudxreactnative/CloudXPackage.kt} +14 -13
  7. package/android/src/newarch/com/cloudxreactnative/{CloudXReactNativeModule.kt → CloudXModule.kt} +31 -34
  8. package/android/src/oldarch/com/cloudxreactnative/{CloudXReactNativeModule.kt → CloudXModule.kt} +27 -32
  9. package/cloudx-react-native.podspec +1 -1
  10. package/ios/CloudX.h +47 -0
  11. package/ios/CloudX.mm +1406 -0
  12. package/lib/commonjs/AppTrackingTransparency.js +13 -13
  13. package/lib/commonjs/AppTrackingTransparency.js.map +1 -1
  14. package/lib/commonjs/CloudX.js +16 -12
  15. package/lib/commonjs/CloudX.js.map +1 -1
  16. package/lib/commonjs/CloudXAdPosition.js +23 -0
  17. package/lib/commonjs/CloudXAdPosition.js.map +1 -0
  18. package/lib/commonjs/{BannerAd.js → CloudXBannerAd.js} +42 -37
  19. package/lib/commonjs/CloudXBannerAd.js.map +1 -0
  20. package/lib/commonjs/CloudXErrorCode.js +116 -0
  21. package/lib/commonjs/CloudXErrorCode.js.map +1 -0
  22. package/lib/commonjs/{InterstitialAd.js → CloudXInterstitialAd.js} +10 -10
  23. package/lib/commonjs/CloudXInterstitialAd.js.map +1 -0
  24. package/lib/commonjs/{MRecAd.js → CloudXMRECAd.js} +42 -37
  25. package/lib/commonjs/CloudXMRECAd.js.map +1 -0
  26. package/lib/commonjs/{RewardedAd.js → CloudXRewardedAd.js} +10 -10
  27. package/lib/commonjs/CloudXRewardedAd.js.map +1 -0
  28. package/lib/commonjs/EventEmitter.js +3 -3
  29. package/lib/commonjs/EventEmitter.js.map +1 -1
  30. package/lib/commonjs/hooks.js +25 -26
  31. package/lib/commonjs/hooks.js.map +1 -1
  32. package/lib/commonjs/index.js +27 -41
  33. package/lib/commonjs/index.js.map +1 -1
  34. package/lib/commonjs/specs/{NativeCloudXModule.js → NativeCloudX.js} +2 -2
  35. package/lib/commonjs/specs/NativeCloudX.js.map +1 -0
  36. package/lib/commonjs/types/AdProps.js +6 -0
  37. package/lib/commonjs/types/AdProps.js.map +1 -0
  38. package/lib/commonjs/types/InterstitialAd.js +6 -0
  39. package/lib/commonjs/types/InterstitialAd.js.map +1 -0
  40. package/lib/commonjs/types/MRECAd.js +6 -0
  41. package/lib/commonjs/types/MRECAd.js.map +1 -0
  42. package/lib/commonjs/types/ViewAd.js +6 -0
  43. package/lib/commonjs/types/ViewAd.js.map +1 -0
  44. package/lib/module/AppTrackingTransparency.js +12 -12
  45. package/lib/module/AppTrackingTransparency.js.map +1 -1
  46. package/lib/module/CloudX.js +16 -12
  47. package/lib/module/CloudX.js.map +1 -1
  48. package/lib/module/CloudXAdPosition.js +17 -0
  49. package/lib/module/CloudXAdPosition.js.map +1 -0
  50. package/lib/module/{BannerAd.js → CloudXBannerAd.js} +41 -36
  51. package/lib/module/CloudXBannerAd.js.map +1 -0
  52. package/lib/module/CloudXErrorCode.js +110 -0
  53. package/lib/module/CloudXErrorCode.js.map +1 -0
  54. package/lib/module/{InterstitialAd.js → CloudXInterstitialAd.js} +9 -9
  55. package/lib/module/CloudXInterstitialAd.js.map +1 -0
  56. package/lib/module/{MRecAd.js → CloudXMRECAd.js} +41 -36
  57. package/lib/module/CloudXMRECAd.js.map +1 -0
  58. package/lib/module/{RewardedAd.js → CloudXRewardedAd.js} +9 -9
  59. package/lib/module/CloudXRewardedAd.js.map +1 -0
  60. package/lib/module/EventEmitter.js +2 -2
  61. package/lib/module/EventEmitter.js.map +1 -1
  62. package/lib/module/hooks.js +14 -15
  63. package/lib/module/hooks.js.map +1 -1
  64. package/lib/module/index.js +9 -10
  65. package/lib/module/index.js.map +1 -1
  66. package/lib/module/specs/{NativeCloudXModule.js → NativeCloudX.js} +2 -2
  67. package/lib/module/specs/NativeCloudX.js.map +1 -0
  68. package/lib/module/types/AdProps.js +2 -0
  69. package/lib/module/types/AdProps.js.map +1 -0
  70. package/lib/module/types/InterstitialAd.js +2 -0
  71. package/lib/module/types/InterstitialAd.js.map +1 -0
  72. package/lib/module/types/MRECAd.js +2 -0
  73. package/lib/module/types/MRECAd.js.map +1 -0
  74. package/lib/module/types/ViewAd.js +2 -0
  75. package/lib/module/types/ViewAd.js.map +1 -0
  76. package/lib/typescript/src/AppTrackingTransparency.d.ts +4 -4
  77. package/lib/typescript/src/AppTrackingTransparency.d.ts.map +1 -1
  78. package/lib/typescript/src/CloudX.d.ts.map +1 -1
  79. package/lib/typescript/src/CloudXAdPosition.d.ts +16 -0
  80. package/lib/typescript/src/CloudXAdPosition.d.ts.map +1 -0
  81. package/lib/typescript/src/CloudXBannerAd.d.ts +4 -0
  82. package/lib/typescript/src/CloudXBannerAd.d.ts.map +1 -0
  83. package/lib/typescript/src/{ErrorCode.d.ts → CloudXErrorCode.d.ts} +2 -2
  84. package/lib/typescript/src/CloudXErrorCode.d.ts.map +1 -0
  85. package/lib/typescript/src/CloudXInterstitialAd.d.ts +4 -0
  86. package/lib/typescript/src/CloudXInterstitialAd.d.ts.map +1 -0
  87. package/lib/typescript/src/CloudXMRECAd.d.ts +4 -0
  88. package/lib/typescript/src/CloudXMRECAd.d.ts.map +1 -0
  89. package/lib/typescript/src/CloudXRewardedAd.d.ts +4 -0
  90. package/lib/typescript/src/CloudXRewardedAd.d.ts.map +1 -0
  91. package/lib/typescript/src/EventEmitter.d.ts +4 -2
  92. package/lib/typescript/src/EventEmitter.d.ts.map +1 -1
  93. package/lib/typescript/src/hooks.d.ts +7 -8
  94. package/lib/typescript/src/hooks.d.ts.map +1 -1
  95. package/lib/typescript/src/index.d.ts +12 -13
  96. package/lib/typescript/src/index.d.ts.map +1 -1
  97. package/lib/typescript/src/specs/{NativeCloudXModule.d.ts → NativeCloudX.d.ts} +47 -64
  98. package/lib/typescript/src/specs/NativeCloudX.d.ts.map +1 -0
  99. package/lib/typescript/src/types/AdEvent.d.ts +3 -3
  100. package/lib/typescript/src/types/AdEvent.d.ts.map +1 -1
  101. package/lib/typescript/src/types/AdInfo.d.ts +7 -7
  102. package/lib/typescript/src/types/AdInfo.d.ts.map +1 -1
  103. package/lib/typescript/src/types/AdProps.d.ts +21 -0
  104. package/lib/typescript/src/types/AdProps.d.ts.map +1 -0
  105. package/lib/typescript/src/types/BannerAd.d.ts +8 -34
  106. package/lib/typescript/src/types/BannerAd.d.ts.map +1 -1
  107. package/lib/typescript/src/types/CloudX.d.ts +7 -4
  108. package/lib/typescript/src/types/CloudX.d.ts.map +1 -1
  109. package/lib/typescript/src/types/Configuration.d.ts +7 -3
  110. package/lib/typescript/src/types/Configuration.d.ts.map +1 -1
  111. package/lib/typescript/src/types/FullscreenAd.d.ts +10 -9
  112. package/lib/typescript/src/types/FullscreenAd.d.ts.map +1 -1
  113. package/lib/typescript/src/types/InterstitialAd.d.ts +8 -0
  114. package/lib/typescript/src/types/InterstitialAd.d.ts.map +1 -0
  115. package/lib/typescript/src/types/MRECAd.d.ts +13 -0
  116. package/lib/typescript/src/types/MRECAd.d.ts.map +1 -0
  117. package/lib/typescript/src/types/RewardedAd.d.ts +5 -4
  118. package/lib/typescript/src/types/RewardedAd.d.ts.map +1 -1
  119. package/lib/typescript/src/types/ViewAd.d.ts +29 -0
  120. package/lib/typescript/src/types/ViewAd.d.ts.map +1 -0
  121. package/lib/typescript/src/types/index.d.ts +11 -7
  122. package/lib/typescript/src/types/index.d.ts.map +1 -1
  123. package/package.json +8 -10
  124. package/src/AppTrackingTransparency.ts +10 -10
  125. package/src/CloudX.ts +21 -16
  126. package/src/CloudXAdPosition.ts +16 -0
  127. package/src/{BannerAd.ts → CloudXBannerAd.ts} +69 -47
  128. package/src/{ErrorCode.ts → CloudXErrorCode.ts} +1 -1
  129. package/src/{InterstitialAd.ts → CloudXInterstitialAd.ts} +17 -17
  130. package/src/{MRecAd.ts → CloudXMRECAd.ts} +69 -47
  131. package/src/{RewardedAd.ts → CloudXRewardedAd.ts} +18 -18
  132. package/src/EventEmitter.ts +4 -4
  133. package/src/hooks.ts +20 -22
  134. package/src/index.ts +27 -24
  135. package/src/specs/{NativeCloudXModule.ts → NativeCloudX.ts} +61 -82
  136. package/src/types/AdEvent.ts +3 -3
  137. package/src/types/AdInfo.ts +7 -7
  138. package/src/types/AdProps.ts +27 -0
  139. package/src/types/BannerAd.ts +8 -54
  140. package/src/types/CloudX.ts +10 -5
  141. package/src/types/Configuration.ts +8 -3
  142. package/src/types/FullscreenAd.ts +10 -9
  143. package/src/types/InterstitialAd.ts +8 -0
  144. package/src/types/MRECAd.ts +13 -0
  145. package/src/types/RewardedAd.ts +5 -4
  146. package/src/types/ViewAd.ts +38 -0
  147. package/src/types/index.ts +11 -7
  148. package/android/src/main/java/com/cloudxreactnative/CloudXAdViewEvent.kt +0 -15
  149. package/android/src/main/java/com/cloudxreactnative/CloudXBannerViewManagerImpl.kt +0 -472
  150. package/android/src/main/java/com/cloudxreactnative/CloudXReactNativeModuleImpl.kt +0 -861
  151. package/android/src/newarch/com/cloudxreactnative/CloudXBannerViewManager.kt +0 -90
  152. package/android/src/oldarch/com/cloudxreactnative/CloudXBannerViewManager.kt +0 -76
  153. package/android/src/oldarch/com/cloudxreactnative/CloudXReactNativePackage.kt +0 -16
  154. package/ios/RNCloudXBannerView.h +0 -51
  155. package/ios/RNCloudXBannerView.mm +0 -633
  156. package/ios/RNCloudXBannerViewManager.h +0 -11
  157. package/ios/RNCloudXBannerViewManager.mm +0 -60
  158. package/ios/RNCloudXModule.h +0 -30
  159. package/ios/RNCloudXModule.mm +0 -1088
  160. package/lib/commonjs/AdView.js +0 -151
  161. package/lib/commonjs/AdView.js.map +0 -1
  162. package/lib/commonjs/BannerAd.js.map +0 -1
  163. package/lib/commonjs/ErrorCode.js +0 -116
  164. package/lib/commonjs/ErrorCode.js.map +0 -1
  165. package/lib/commonjs/InterstitialAd.js.map +0 -1
  166. package/lib/commonjs/MRecAd.js.map +0 -1
  167. package/lib/commonjs/RewardedAd.js.map +0 -1
  168. package/lib/commonjs/specs/CloudXAdViewNativeComponent.js +0 -26
  169. package/lib/commonjs/specs/CloudXAdViewNativeComponent.js.map +0 -1
  170. package/lib/commonjs/specs/NativeCloudXModule.js.map +0 -1
  171. package/lib/module/AdView.js +0 -144
  172. package/lib/module/AdView.js.map +0 -1
  173. package/lib/module/BannerAd.js.map +0 -1
  174. package/lib/module/ErrorCode.js +0 -110
  175. package/lib/module/ErrorCode.js.map +0 -1
  176. package/lib/module/InterstitialAd.js.map +0 -1
  177. package/lib/module/MRecAd.js.map +0 -1
  178. package/lib/module/RewardedAd.js.map +0 -1
  179. package/lib/module/specs/CloudXAdViewNativeComponent.js +0 -20
  180. package/lib/module/specs/CloudXAdViewNativeComponent.js.map +0 -1
  181. package/lib/module/specs/NativeCloudXModule.js.map +0 -1
  182. package/lib/typescript/src/AdView.d.ts +0 -69
  183. package/lib/typescript/src/AdView.d.ts.map +0 -1
  184. package/lib/typescript/src/BannerAd.d.ts +0 -4
  185. package/lib/typescript/src/BannerAd.d.ts.map +0 -1
  186. package/lib/typescript/src/ErrorCode.d.ts.map +0 -1
  187. package/lib/typescript/src/InterstitialAd.d.ts +0 -4
  188. package/lib/typescript/src/InterstitialAd.d.ts.map +0 -1
  189. package/lib/typescript/src/MRecAd.d.ts +0 -4
  190. package/lib/typescript/src/MRecAd.d.ts.map +0 -1
  191. package/lib/typescript/src/RewardedAd.d.ts +0 -4
  192. package/lib/typescript/src/RewardedAd.d.ts.map +0 -1
  193. package/lib/typescript/src/specs/CloudXAdViewNativeComponent.d.ts +0 -61
  194. package/lib/typescript/src/specs/CloudXAdViewNativeComponent.d.ts.map +0 -1
  195. package/lib/typescript/src/specs/NativeCloudXModule.d.ts.map +0 -1
  196. package/src/AdView.tsx +0 -213
  197. package/src/specs/CloudXAdViewNativeComponent.ts +0 -82
@@ -1,133 +1,155 @@
1
1
  import { addEventListener, removeEventListener } from './EventEmitter';
2
- import type { AdInfo, AdLoadFailedInfo } from './types/AdInfo';
3
- import type { MRecAdType, AdViewPositionType } from './types/BannerAd';
4
- import NativeCloudXModule from './specs/NativeCloudXModule';
2
+ import type { CloudXAdPosition } from './CloudXAdPosition';
3
+ import type { CloudXAdInfo, CloudXAdLoadFailedInfo } from './types/AdInfo';
4
+ import type { CloudXMRECAdType } from './types/MRECAd';
5
+ import NativeCloudX from './specs/NativeCloudX';
5
6
 
6
7
  const {
7
8
  ON_MREC_AD_LOADED_EVENT,
8
9
  ON_MREC_AD_LOAD_FAILED_EVENT,
9
10
  ON_MREC_AD_CLICKED_EVENT,
10
- ON_MREC_AD_EXPANDED_EVENT,
11
11
  ON_MREC_AD_COLLAPSED_EVENT,
12
+ ON_MREC_AD_EXPANDED_EVENT,
12
13
  ON_MREC_AD_REVENUE_PAID,
13
- } = NativeCloudXModule.getConstants();
14
+ } = NativeCloudX.getConstants();
14
15
 
15
- const createAd = (adUnitId: string, position: AdViewPositionType): void => {
16
- NativeCloudXModule.createMRec(adUnitId, position);
16
+ const createAd = (adUnitId: string, position: CloudXAdPosition): void => {
17
+ NativeCloudX.createMREC(adUnitId, position);
17
18
  };
18
19
 
19
- const createAdWithOffsets = (adUnitId: string, position: AdViewPositionType, xOffset: number, yOffset: number): void => {
20
- NativeCloudXModule.createMRecWithOffsets(adUnitId, position, xOffset, yOffset);
20
+ const createAdWithOffsets = (adUnitId: string, position: CloudXAdPosition, xOffset: number, yOffset: number): void => {
21
+ NativeCloudX.createMRECWithOffsets(adUnitId, position, xOffset, yOffset);
21
22
  };
22
23
 
23
24
  const destroyAd = (adUnitId: string): void => {
24
- NativeCloudXModule.destroyMRec(adUnitId);
25
+ NativeCloudX.destroyMREC(adUnitId);
25
26
  };
26
27
 
27
28
  const showAd = (adUnitId: string): void => {
28
- NativeCloudXModule.showMRec(adUnitId);
29
+ NativeCloudX.showMREC(adUnitId);
29
30
  };
30
31
 
31
32
  const hideAd = (adUnitId: string): void => {
32
- NativeCloudXModule.hideMRec(adUnitId);
33
+ NativeCloudX.hideMREC(adUnitId);
33
34
  };
34
35
 
35
36
  const setPlacement = (adUnitId: string, placement: string | null): void => {
36
- NativeCloudXModule.setMRecPlacement(adUnitId, placement);
37
+ NativeCloudX.setMRECPlacement(adUnitId, placement);
37
38
  };
38
39
 
39
40
  const setCustomData = (adUnitId: string, customData: string | null): void => {
40
- NativeCloudXModule.setMRecCustomData(adUnitId, customData);
41
- };
42
-
43
- const startAutoRefresh = (adUnitId: string): void => {
44
- NativeCloudXModule.startMRecAutoRefresh(adUnitId);
45
- };
46
-
47
- const stopAutoRefresh = (adUnitId: string): void => {
48
- NativeCloudXModule.stopMRecAutoRefresh(adUnitId);
41
+ NativeCloudX.setMRECCustomData(adUnitId, customData);
49
42
  };
50
43
 
51
- const updatePosition = (adUnitId: string, position: AdViewPositionType): void => {
52
- NativeCloudXModule.updateMRecPosition(adUnitId, position);
44
+ const updatePosition = (adUnitId: string, bannerPosition: CloudXAdPosition): void => {
45
+ NativeCloudX.updateMRECPosition(adUnitId, bannerPosition);
53
46
  };
54
47
 
55
- const updateOffsets = (adUnitId: string, xOffset: number, yOffset: number): void => {
56
- NativeCloudXModule.updateMRecOffsets(adUnitId, xOffset, yOffset);
48
+ const startAutoRefresh = (adUnitId: string): void => {
49
+ NativeCloudX.startMRECAutoRefresh(adUnitId);
57
50
  };
58
51
 
59
- const setBackgroundColor = (adUnitId: string, hexColorString: string): void => {
60
- NativeCloudXModule.setMRecBackgroundColor(adUnitId, hexColorString);
52
+ const stopAutoRefresh = (adUnitId: string): void => {
53
+ NativeCloudX.stopMRECAutoRefresh(adUnitId);
61
54
  };
62
55
 
63
- const addAdLoadedEventListener = (listener: (adInfo: AdInfo) => void): void => {
56
+ const addAdLoadedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
64
57
  addEventListener(ON_MREC_AD_LOADED_EVENT, listener);
65
58
  };
59
+
66
60
  const removeAdLoadedEventListener = (): void => {
67
61
  removeEventListener(ON_MREC_AD_LOADED_EVENT);
68
62
  };
69
63
 
70
- const addAdLoadFailedEventListener = (listener: (errorInfo: AdLoadFailedInfo) => void): void => {
64
+ const addAdLoadFailedEventListener = (listener: (errorInfo: CloudXAdLoadFailedInfo) => void): void => {
71
65
  addEventListener(ON_MREC_AD_LOAD_FAILED_EVENT, listener);
72
66
  };
67
+
73
68
  const removeAdLoadFailedEventListener = (): void => {
74
69
  removeEventListener(ON_MREC_AD_LOAD_FAILED_EVENT);
75
70
  };
76
71
 
77
- const addAdClickedEventListener = (listener: (adInfo: AdInfo) => void): void => {
72
+ const addAdClickedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
78
73
  addEventListener(ON_MREC_AD_CLICKED_EVENT, listener);
79
74
  };
75
+
80
76
  const removeAdClickedEventListener = (): void => {
81
77
  removeEventListener(ON_MREC_AD_CLICKED_EVENT);
82
78
  };
83
79
 
84
- const addAdExpandedEventListener = (listener: (adInfo: AdInfo) => void): void => {
85
- addEventListener(ON_MREC_AD_EXPANDED_EVENT, listener);
86
- };
87
- const removeAdExpandedEventListener = (): void => {
88
- removeEventListener(ON_MREC_AD_EXPANDED_EVENT);
89
- };
90
-
91
- const addAdCollapsedEventListener = (listener: (adInfo: AdInfo) => void): void => {
80
+ const addAdCollapsedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
92
81
  addEventListener(ON_MREC_AD_COLLAPSED_EVENT, listener);
93
82
  };
83
+
94
84
  const removeAdCollapsedEventListener = (): void => {
95
85
  removeEventListener(ON_MREC_AD_COLLAPSED_EVENT);
96
86
  };
97
87
 
98
- const addAdRevenuePaidListener = (listener: (adInfo: AdInfo) => void): void => {
88
+ const addAdExpandedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
89
+ addEventListener(ON_MREC_AD_EXPANDED_EVENT, listener);
90
+ };
91
+
92
+ const removeAdExpandedEventListener = (): void => {
93
+ removeEventListener(ON_MREC_AD_EXPANDED_EVENT);
94
+ };
95
+
96
+ const addAdRevenuePaidListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
99
97
  addEventListener(ON_MREC_AD_REVENUE_PAID, listener);
100
98
  };
99
+
101
100
  const removeAdRevenuePaidListener = (): void => {
102
101
  removeEventListener(ON_MREC_AD_REVENUE_PAID);
103
102
  };
104
103
 
105
- export const MRecAd: MRecAdType = {
104
+ // MREC specific APIs
105
+
106
+ const setBackgroundColor = (adUnitId: string, hexColorCode: string): void => {
107
+ NativeCloudX.setMRECBackgroundColor(adUnitId, hexColorCode);
108
+ };
109
+
110
+ const updateOffsets = (adUnitId: string, xOffset: number, yOffset: number): void => {
111
+ NativeCloudX.updateMRECOffsets(adUnitId, xOffset, yOffset);
112
+ };
113
+
114
+ export const CloudXMRECAd: CloudXMRECAdType = {
106
115
  createAd,
107
116
  createAdWithOffsets,
108
117
  destroyAd,
118
+
109
119
  showAd,
110
120
  hideAd,
111
- updatePosition,
112
- updateOffsets,
113
- setBackgroundColor,
121
+
114
122
  setPlacement,
115
123
  setCustomData,
124
+
125
+ updatePosition,
126
+
116
127
  startAutoRefresh,
117
128
  stopAutoRefresh,
118
129
 
119
130
  addAdLoadedEventListener,
120
131
  removeAdLoadedEventListener,
132
+
121
133
  addAdLoadFailedEventListener,
122
134
  removeAdLoadFailedEventListener,
135
+
123
136
  addAdClickedEventListener,
124
137
  removeAdClickedEventListener,
125
- addAdExpandedEventListener,
126
- removeAdExpandedEventListener,
138
+
127
139
  addAdCollapsedEventListener,
128
140
  removeAdCollapsedEventListener,
141
+
142
+ addAdExpandedEventListener,
143
+ removeAdExpandedEventListener,
144
+
129
145
  addAdRevenuePaidListener,
130
146
  removeAdRevenuePaidListener,
147
+
148
+ // MREC specific APIs
149
+
150
+ setBackgroundColor,
151
+
152
+ updateOffsets,
131
153
  };
132
154
 
133
- export default MRecAd;
155
+ export default CloudXMRECAd;
@@ -1,7 +1,7 @@
1
1
  import { addEventListener, removeEventListener } from './EventEmitter';
2
- import type { AdDisplayFailedInfo, AdInfo, AdLoadFailedInfo, AdRewardInfo } from './types/AdInfo';
3
- import type { RewardedAdType } from './types/RewardedAd';
4
- import NativeCloudXModule from './specs/NativeCloudXModule';
2
+ import type { CloudXAdDisplayFailedInfo, CloudXAdInfo, CloudXAdLoadFailedInfo, CloudXAdRewardInfo } from './types/AdInfo';
3
+ import type { CloudXRewardedAdType } from './types/RewardedAd';
4
+ import NativeCloudX from './specs/NativeCloudX';
5
5
 
6
6
  const {
7
7
  ON_REWARDED_AD_LOADED_EVENT,
@@ -12,81 +12,81 @@ const {
12
12
  ON_REWARDED_AD_HIDDEN_EVENT,
13
13
  ON_REWARDED_AD_RECEIVED_REWARD_EVENT,
14
14
  ON_REWARDED_AD_REVENUE_PAID,
15
- } = NativeCloudXModule.getConstants();
15
+ } = NativeCloudX.getConstants();
16
16
 
17
17
  const isAdReady = (adUnitId: string): Promise<boolean> => {
18
- return NativeCloudXModule.isRewardedReady(adUnitId);
18
+ return NativeCloudX.isRewardedReady(adUnitId);
19
19
  };
20
20
 
21
21
  const loadAd = (adUnitId: string): void => {
22
- NativeCloudXModule.loadRewarded(adUnitId);
22
+ NativeCloudX.loadRewarded(adUnitId);
23
23
  };
24
24
 
25
25
  const showAd = (adUnitId: string, placement?: string | null, customData?: string | null): void => {
26
- NativeCloudXModule.showRewarded(adUnitId, placement ?? undefined, customData ?? undefined);
26
+ NativeCloudX.showRewarded(adUnitId, placement ?? undefined, customData ?? undefined);
27
27
  };
28
28
 
29
29
  const destroyAd = (adUnitId: string): void => {
30
- NativeCloudXModule.destroyRewarded(adUnitId);
30
+ NativeCloudX.destroyRewarded(adUnitId);
31
31
  };
32
32
 
33
- const addAdLoadedEventListener = (listener: (adInfo: AdInfo) => void): void => {
33
+ const addAdLoadedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
34
34
  addEventListener(ON_REWARDED_AD_LOADED_EVENT, listener);
35
35
  };
36
36
  const removeAdLoadedEventListener = (): void => {
37
37
  removeEventListener(ON_REWARDED_AD_LOADED_EVENT);
38
38
  };
39
39
 
40
- const addAdLoadFailedEventListener = (listener: (errorInfo: AdLoadFailedInfo) => void): void => {
40
+ const addAdLoadFailedEventListener = (listener: (errorInfo: CloudXAdLoadFailedInfo) => void): void => {
41
41
  addEventListener(ON_REWARDED_AD_LOAD_FAILED_EVENT, listener);
42
42
  };
43
43
  const removeAdLoadFailedEventListener = (): void => {
44
44
  removeEventListener(ON_REWARDED_AD_LOAD_FAILED_EVENT);
45
45
  };
46
46
 
47
- const addAdClickedEventListener = (listener: (adInfo: AdInfo) => void): void => {
47
+ const addAdClickedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
48
48
  addEventListener(ON_REWARDED_AD_CLICKED_EVENT, listener);
49
49
  };
50
50
  const removeAdClickedEventListener = (): void => {
51
51
  removeEventListener(ON_REWARDED_AD_CLICKED_EVENT);
52
52
  };
53
53
 
54
- const addAdDisplayedEventListener = (listener: (adInfo: AdInfo) => void): void => {
54
+ const addAdDisplayedEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
55
55
  addEventListener(ON_REWARDED_AD_DISPLAYED_EVENT, listener);
56
56
  };
57
57
  const removeAdDisplayedEventListener = (): void => {
58
58
  removeEventListener(ON_REWARDED_AD_DISPLAYED_EVENT);
59
59
  };
60
60
 
61
- const addAdFailedToDisplayEventListener = (listener: (errorInfo: AdDisplayFailedInfo) => void): void => {
61
+ const addAdFailedToDisplayEventListener = (listener: (errorInfo: CloudXAdDisplayFailedInfo) => void): void => {
62
62
  addEventListener(ON_REWARDED_AD_DISPLAY_FAILED_EVENT, listener);
63
63
  };
64
64
  const removeAdFailedToDisplayEventListener = (): void => {
65
65
  removeEventListener(ON_REWARDED_AD_DISPLAY_FAILED_EVENT);
66
66
  };
67
67
 
68
- const addAdHiddenEventListener = (listener: (adInfo: AdInfo) => void): void => {
68
+ const addAdHiddenEventListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
69
69
  addEventListener(ON_REWARDED_AD_HIDDEN_EVENT, listener);
70
70
  };
71
71
  const removeAdHiddenEventListener = (): void => {
72
72
  removeEventListener(ON_REWARDED_AD_HIDDEN_EVENT);
73
73
  };
74
74
 
75
- const addAdReceivedRewardEventListener = (listener: (rewardInfo: AdRewardInfo) => void): void => {
75
+ const addAdReceivedRewardEventListener = (listener: (rewardInfo: CloudXAdRewardInfo) => void): void => {
76
76
  addEventListener(ON_REWARDED_AD_RECEIVED_REWARD_EVENT, listener);
77
77
  };
78
78
  const removeAdReceivedRewardEventListener = (): void => {
79
79
  removeEventListener(ON_REWARDED_AD_RECEIVED_REWARD_EVENT);
80
80
  };
81
81
 
82
- const addAdRevenuePaidListener = (listener: (adInfo: AdInfo) => void): void => {
82
+ const addAdRevenuePaidListener = (listener: (adInfo: CloudXAdInfo) => void): void => {
83
83
  addEventListener(ON_REWARDED_AD_REVENUE_PAID, listener);
84
84
  };
85
85
  const removeAdRevenuePaidListener = (): void => {
86
86
  removeEventListener(ON_REWARDED_AD_REVENUE_PAID);
87
87
  };
88
88
 
89
- export const RewardedAd: RewardedAdType = {
89
+ export const CloudXRewardedAd: CloudXRewardedAdType = {
90
90
  isAdReady,
91
91
  loadAd,
92
92
  showAd,
@@ -110,4 +110,4 @@ export const RewardedAd: RewardedAdType = {
110
110
  removeAdRevenuePaidListener,
111
111
  };
112
112
 
113
- export default RewardedAd;
113
+ export default CloudXRewardedAd;
@@ -6,10 +6,10 @@
6
6
 
7
7
  import { NativeEventEmitter } from 'react-native';
8
8
  import type { EventSubscription } from 'react-native';
9
- import type { AdEventObject, AdEventListener } from './types/AdEvent';
10
- import NativeCloudXModule from './specs/NativeCloudXModule';
9
+ import type { CloudXAdEventObject, CloudXAdEventListener } from './types/AdEvent';
10
+ import NativeCloudX from './specs/NativeCloudX';
11
11
 
12
- const emitter = new NativeEventEmitter(NativeCloudXModule);
12
+ export const emitter = new NativeEventEmitter(NativeCloudX);
13
13
 
14
14
  const subscriptions: Record<string, EventSubscription> = {};
15
15
 
@@ -17,7 +17,7 @@ const subscriptions: Record<string, EventSubscription> = {};
17
17
  * Subscribes to a specific ad event.
18
18
  * If a listener already exists for the event, it will be replaced.
19
19
  */
20
- export const addEventListener = <T extends AdEventObject>(event: string, handler: AdEventListener<T>): void => {
20
+ export const addEventListener = <T extends CloudXAdEventObject>(event: string, handler: CloudXAdEventListener<T>): void => {
21
21
  const subscription = emitter.addListener(event, handler);
22
22
  const currentSubscription = subscriptions[event];
23
23
  if (currentSubscription) {
package/src/hooks.ts CHANGED
@@ -6,11 +6,9 @@
6
6
  */
7
7
 
8
8
  import { useEffect, useState, useCallback, useRef } from 'react';
9
- import { NativeEventEmitter } from 'react-native';
10
9
  import type { EventSubscription } from 'react-native';
11
- import NativeCloudXModule from './specs/NativeCloudXModule';
12
-
13
- const emitter = new NativeEventEmitter(NativeCloudXModule);
10
+ import NativeCloudX from './specs/NativeCloudX';
11
+ import { emitter } from './EventEmitter';
14
12
 
15
13
  const {
16
14
  ON_INTERSTITIAL_LOADED_EVENT,
@@ -24,13 +22,13 @@ const {
24
22
  ON_REWARDED_AD_RECEIVED_REWARD_EVENT,
25
23
  ON_BANNER_AD_LOADED_EVENT,
26
24
  ON_BANNER_AD_LOAD_FAILED_EVENT,
27
- } = NativeCloudXModule.getConstants();
25
+ } = NativeCloudX.getConstants();
28
26
 
29
27
  // ---------------------------------------------------------------------------
30
28
  // useCloudXInterstitial
31
29
  // ---------------------------------------------------------------------------
32
30
 
33
- export type InterstitialHookResult = {
31
+ export type CloudXInterstitialHookResult = {
34
32
  isLoaded: boolean;
35
33
  isLoading: boolean;
36
34
  error: string | null;
@@ -44,7 +42,7 @@ export type InterstitialHookResult = {
44
42
  *
45
43
  * @param adUnitId - The ad unit identifier.
46
44
  */
47
- export function useCloudXInterstitial(adUnitId: string): InterstitialHookResult {
45
+ export function useCloudXInterstitial(adUnitId: string): CloudXInterstitialHookResult {
48
46
  const [isLoaded, setIsLoaded] = useState(false);
49
47
  const [isLoading, setIsLoading] = useState(false);
50
48
  const [error, setError] = useState<string | null>(null);
@@ -94,14 +92,14 @@ export function useCloudXInterstitial(adUnitId: string): InterstitialHookResult
94
92
  return () => {
95
93
  mountedRef.current = false;
96
94
  subs.forEach((s) => s.remove());
97
- NativeCloudXModule.destroyInterstitial(adUnitId);
95
+ NativeCloudX.destroyInterstitial(adUnitId);
98
96
  };
99
97
  }, [adUnitId]);
100
98
 
101
99
  const load = useCallback(() => {
102
100
  setIsLoading(true);
103
101
  setError(null);
104
- NativeCloudXModule.loadInterstitial(adUnitId);
102
+ NativeCloudX.loadInterstitial(adUnitId);
105
103
  }, [adUnitId]);
106
104
 
107
105
  const show = useCallback(
@@ -110,13 +108,13 @@ export function useCloudXInterstitial(adUnitId: string): InterstitialHookResult
110
108
  setError('Ad not loaded');
111
109
  return;
112
110
  }
113
- NativeCloudXModule.showInterstitial(adUnitId, placement ?? undefined, customData ?? undefined);
111
+ NativeCloudX.showInterstitial(adUnitId, placement ?? undefined, customData ?? undefined);
114
112
  },
115
113
  [adUnitId, isLoaded],
116
114
  );
117
115
 
118
116
  const destroy = useCallback(() => {
119
- NativeCloudXModule.destroyInterstitial(adUnitId);
117
+ NativeCloudX.destroyInterstitial(adUnitId);
120
118
  setIsLoaded(false);
121
119
  setIsLoading(false);
122
120
  setError(null);
@@ -129,7 +127,7 @@ export function useCloudXInterstitial(adUnitId: string): InterstitialHookResult
129
127
  // useCloudXRewarded
130
128
  // ---------------------------------------------------------------------------
131
129
 
132
- export type RewardedHookResult = {
130
+ export type CloudXRewardedHookResult = {
133
131
  isLoaded: boolean;
134
132
  isLoading: boolean;
135
133
  error: string | null;
@@ -144,7 +142,7 @@ export type RewardedHookResult = {
144
142
  *
145
143
  * @param adUnitId - The ad unit identifier.
146
144
  */
147
- export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
145
+ export function useCloudXRewarded(adUnitId: string): CloudXRewardedHookResult {
148
146
  const [isLoaded, setIsLoaded] = useState(false);
149
147
  const [isLoading, setIsLoading] = useState(false);
150
148
  const [error, setError] = useState<string | null>(null);
@@ -188,6 +186,7 @@ export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
188
186
  emitter.addListener(ON_REWARDED_AD_HIDDEN_EVENT, (event: { adUnitId: string }) => {
189
187
  if (event.adUnitId === adUnitId && mountedRef.current) {
190
188
  setIsLoaded(false);
189
+ setRewardEarned(false);
191
190
  }
192
191
  }),
193
192
  );
@@ -203,7 +202,7 @@ export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
203
202
  return () => {
204
203
  mountedRef.current = false;
205
204
  subs.forEach((s) => s.remove());
206
- NativeCloudXModule.destroyRewarded(adUnitId);
205
+ NativeCloudX.destroyRewarded(adUnitId);
207
206
  };
208
207
  }, [adUnitId]);
209
208
 
@@ -211,7 +210,7 @@ export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
211
210
  setIsLoading(true);
212
211
  setError(null);
213
212
  setRewardEarned(false);
214
- NativeCloudXModule.loadRewarded(adUnitId);
213
+ NativeCloudX.loadRewarded(adUnitId);
215
214
  }, [adUnitId]);
216
215
 
217
216
  const show = useCallback(
@@ -220,13 +219,13 @@ export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
220
219
  setError('Ad not loaded');
221
220
  return;
222
221
  }
223
- NativeCloudXModule.showRewarded(adUnitId, placement ?? undefined, customData ?? undefined);
222
+ NativeCloudX.showRewarded(adUnitId, placement ?? undefined, customData ?? undefined);
224
223
  },
225
224
  [adUnitId, isLoaded],
226
225
  );
227
226
 
228
227
  const destroy = useCallback(() => {
229
- NativeCloudXModule.destroyRewarded(adUnitId);
228
+ NativeCloudX.destroyRewarded(adUnitId);
230
229
  setIsLoaded(false);
231
230
  setIsLoading(false);
232
231
  setError(null);
@@ -240,7 +239,7 @@ export function useCloudXRewarded(adUnitId: string): RewardedHookResult {
240
239
  // useCloudXBanner
241
240
  // ---------------------------------------------------------------------------
242
241
 
243
- export type BannerHookResult = {
242
+ export type CloudXBannerHookResult = {
244
243
  isLoaded: boolean;
245
244
  error: string | null;
246
245
  };
@@ -249,12 +248,11 @@ export type BannerHookResult = {
249
248
  * Hook for listening to programmatic banner ad state.
250
249
  *
251
250
  * Subscribes to module-level banner events for a given adUnitId.
252
- * Use with the programmatic BannerAd.createAd() API.
253
- * For the <AdView> component, use its callback props (onAdLoaded, etc.) directly.
251
+ * Use with the programmatic CloudXBannerAd.createAd() API.
254
252
  *
255
253
  * @param adUnitId - The ad unit identifier.
256
254
  */
257
- export function useCloudXBanner(adUnitId: string): BannerHookResult {
255
+ export function useCloudXBanner(adUnitId: string): CloudXBannerHookResult {
258
256
  const [isLoaded, setIsLoaded] = useState(false);
259
257
  const [error, setError] = useState<string | null>(null);
260
258
  const mountedRef = useRef(true);
@@ -284,7 +282,7 @@ export function useCloudXBanner(adUnitId: string): BannerHookResult {
284
282
  return () => {
285
283
  mountedRef.current = false;
286
284
  subs.forEach((s) => s.remove());
287
- NativeCloudXModule.destroyBanner(adUnitId);
285
+ NativeCloudX.destroyBanner(adUnitId);
288
286
  };
289
287
  }, [adUnitId]);
290
288
 
package/src/index.ts CHANGED
@@ -1,44 +1,47 @@
1
1
  // Core SDK
2
2
  export { default, CloudX } from './CloudX';
3
- export { default as NativeCloudXModule } from './specs/NativeCloudXModule';
3
+ export { default as NativeCloudX } from './specs/NativeCloudX';
4
4
 
5
5
  // Ad Modules
6
- export { InterstitialAd } from './InterstitialAd';
7
- export { RewardedAd } from './RewardedAd';
8
- export { BannerAd } from './BannerAd';
9
- export { MRecAd } from './MRecAd';
10
-
11
- // AdView Component
12
- export { AdView, AdFormat, AdViewPosition } from './AdView';
13
- export type { AdViewProps, AdViewHandler } from './AdView';
6
+ export { CloudXInterstitialAd } from './CloudXInterstitialAd';
7
+ export { CloudXRewardedAd } from './CloudXRewardedAd';
8
+ export { CloudXBannerAd } from './CloudXBannerAd';
9
+ export { CloudXMRECAd } from './CloudXMRECAd';
10
+ export { CloudXAdPosition } from './CloudXAdPosition';
14
11
 
15
12
  // Error Codes
16
- export { ErrorCode } from './ErrorCode';
13
+ export { CloudXErrorCode } from './CloudXErrorCode';
17
14
 
18
15
  // App Tracking Transparency (iOS)
19
- export { requestTrackingAuthorization, getTrackingAuthorizationStatus, ATTStatus } from './AppTrackingTransparency';
16
+ export { requestTrackingAuthorization, getTrackingAuthorizationStatus, CloudXATTStatus } from './AppTrackingTransparency';
20
17
 
21
18
  // Hooks
22
19
  export { useCloudXInterstitial, useCloudXRewarded, useCloudXBanner } from './hooks';
23
- export type { InterstitialHookResult, RewardedHookResult, BannerHookResult } from './hooks';
20
+ export type { CloudXInterstitialHookResult, CloudXRewardedHookResult, CloudXBannerHookResult } from './hooks';
24
21
 
25
22
  // Types
26
23
  export type {
27
- AdInfo,
28
- AdLoadFailedInfo,
29
- AdDisplayFailedInfo,
30
- AdRewardInfo,
31
- Configuration,
24
+ CloudXAdInfo,
25
+ CloudXAdLoadFailedInfo,
26
+ CloudXAdDisplayFailedInfo,
27
+ CloudXAdRewardInfo,
28
+ CloudXInitializationResult,
29
+ CloudXConfiguration,
32
30
  CloudXType,
33
- FullscreenAdType,
34
- RewardedAdType,
35
- BannerAdType,
36
- MRecAdType,
37
- AdViewPositionType,
31
+ CloudXLogLevelValue,
32
+ CloudXFullscreenAdType,
33
+ CloudXInterstitialAdType,
34
+ CloudXRewardedAdType,
35
+ CloudXViewAdType,
36
+ CloudXBannerAdType,
37
+ CloudXMRECAdType,
38
+ CloudXAdProps,
39
+ CloudXAdEventObject,
40
+ CloudXAdEventListener,
38
41
  } from './types';
39
42
 
40
43
  // Log level constants
41
- export const LogLevel = {
44
+ export const CloudXLogLevel = {
42
45
  VERBOSE: 'verbose',
43
46
  DEBUG: 'debug',
44
47
  INFO: 'info',
@@ -47,4 +50,4 @@ export const LogLevel = {
47
50
  NONE: 'none',
48
51
  } as const;
49
52
 
50
- export type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];
53
+ export type CloudXLogLevel = (typeof CloudXLogLevel)[keyof typeof CloudXLogLevel];