@thealteroffice/react-native-adgeist 0.0.19 → 0.0.22

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 (142) hide show
  1. package/Adgeist.podspec +1 -1
  2. package/README.md +70 -521
  3. package/android/build.gradle +6 -3
  4. package/android/generated/java/com/adgeist/NativeAdgeistSpec.java +11 -11
  5. package/android/generated/java/com/facebook/react/viewmanagers/HTML5AdNativeComponentManagerDelegate.java +55 -0
  6. package/android/generated/java/com/facebook/react/viewmanagers/HTML5AdNativeComponentManagerInterface.java +24 -0
  7. package/android/generated/jni/RNAdgeistSpec-generated.cpp +12 -12
  8. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/ComponentDescriptors.cpp +22 -0
  9. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/ComponentDescriptors.h +24 -0
  10. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/EventEmitters.cpp +60 -0
  11. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/EventEmitters.h +49 -0
  12. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/Props.cpp +28 -0
  13. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/Props.h +52 -0
  14. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/RNAdgeistSpecJSI-generated.cpp +14 -22
  15. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/RNAdgeistSpecJSI.h +36 -36
  16. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/ShadowNodes.cpp +17 -0
  17. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/ShadowNodes.h +32 -0
  18. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/States.cpp +16 -0
  19. package/android/generated/jni/react/renderer/components/RNAdgeistSpec/States.h +29 -0
  20. package/android/src/main/java/com/adgeist/AdgeistPackage.kt +8 -7
  21. package/android/src/main/java/com/adgeist/components/HTML5AdViewManagerImpl.kt +125 -0
  22. package/android/src/main/java/com/adgeist/modules/AdgeistImpl.kt +114 -0
  23. package/android/src/main/java/com/adgeist/utils/CreativeExtensions.kt +151 -0
  24. package/android/src/newarch/java/com/Adgeist.kt +119 -0
  25. package/android/src/newarch/java/com/HTML5AdViewManager.kt +77 -0
  26. package/android/src/oldarch/java/com/Adgeist.kt +132 -0
  27. package/android/src/oldarch/java/com/HTML5AdViewManager.kt +63 -0
  28. package/ios/Adgeist-Bridging-Header.h +3 -0
  29. package/ios/Adgeist.h +1 -1
  30. package/ios/Adgeist.mm +154 -38
  31. package/ios/AdgeistImpl.swift +188 -53
  32. package/ios/NativeHTML5AdManager.h +9 -0
  33. package/ios/NativeHTML5AdManager.mm +178 -0
  34. package/ios/NativeHTML5AdView.swift +136 -0
  35. package/ios/generated/RNAdgeistSpec/ComponentDescriptors.cpp +22 -0
  36. package/ios/generated/RNAdgeistSpec/ComponentDescriptors.h +24 -0
  37. package/ios/generated/RNAdgeistSpec/EventEmitters.cpp +60 -0
  38. package/ios/generated/RNAdgeistSpec/EventEmitters.h +49 -0
  39. package/ios/generated/RNAdgeistSpec/Props.cpp +28 -0
  40. package/ios/generated/RNAdgeistSpec/Props.h +52 -0
  41. package/ios/generated/RNAdgeistSpec/RCTComponentViewHelpers.h +65 -0
  42. package/ios/generated/RNAdgeistSpec/RNAdgeistSpec-generated.mm +17 -17
  43. package/ios/generated/RNAdgeistSpec/RNAdgeistSpec.h +17 -25
  44. package/ios/generated/RNAdgeistSpec/ShadowNodes.cpp +17 -0
  45. package/ios/generated/RNAdgeistSpec/ShadowNodes.h +32 -0
  46. package/ios/generated/RNAdgeistSpec/States.cpp +16 -0
  47. package/ios/generated/RNAdgeistSpec/States.h +29 -0
  48. package/ios/generated/RNAdgeistSpecJSI-generated.cpp +14 -22
  49. package/ios/generated/RNAdgeistSpecJSI.h +36 -36
  50. package/lib/module/cdpclient/index.js +1 -25
  51. package/lib/module/cdpclient/index.js.map +1 -1
  52. package/lib/module/components/HTML5AdView.js +128 -0
  53. package/lib/module/components/HTML5AdView.js.map +1 -0
  54. package/lib/module/components/{BannerAd.js → deprecated/BannerAdView.js} +50 -79
  55. package/lib/module/components/deprecated/BannerAdView.js.map +1 -0
  56. package/lib/module/components/{ConsentModal.js → deprecated/ConsentModal.js} +2 -2
  57. package/lib/module/components/deprecated/ConsentModal.js.map +1 -0
  58. package/lib/module/constants.js +14 -0
  59. package/lib/module/constants.js.map +1 -0
  60. package/lib/module/index.js +3 -2
  61. package/lib/module/index.js.map +1 -1
  62. package/lib/module/{components → providers}/AdgeistProvider.js +10 -35
  63. package/lib/module/providers/AdgeistProvider.js.map +1 -0
  64. package/lib/module/specs/HTML5AdNativeComponent.ts +46 -0
  65. package/lib/module/specs/NativeAdgeist.js.map +1 -0
  66. package/lib/module/types/AdSize.js +2 -0
  67. package/lib/module/types/AdSize.js.map +1 -0
  68. package/lib/module/types/CPMAdResponse.js +2 -0
  69. package/lib/module/types/CPMAdResponse.js.map +1 -0
  70. package/lib/module/types/FixedAdResponse.js +2 -0
  71. package/lib/module/types/FixedAdResponse.js.map +1 -0
  72. package/lib/module/types/HTML5AdNativeComponentProps.js +4 -0
  73. package/lib/module/types/HTML5AdNativeComponentProps.js.map +1 -0
  74. package/lib/module/types/Provider.js +2 -0
  75. package/lib/module/types/Provider.js.map +1 -0
  76. package/lib/typescript/src/cdpclient/index.d.ts +1 -21
  77. package/lib/typescript/src/cdpclient/index.d.ts.map +1 -1
  78. package/lib/typescript/src/components/HTML5AdView.d.ts +3 -0
  79. package/lib/typescript/src/components/HTML5AdView.d.ts.map +1 -0
  80. package/lib/typescript/src/components/deprecated/BannerAdView.d.ts +17 -0
  81. package/lib/typescript/src/components/deprecated/BannerAdView.d.ts.map +1 -0
  82. package/lib/typescript/src/components/deprecated/ConsentModal.d.ts.map +1 -0
  83. package/lib/typescript/src/constants.d.ts +10 -0
  84. package/lib/typescript/src/constants.d.ts.map +1 -0
  85. package/lib/typescript/src/index.d.ts +3 -2
  86. package/lib/typescript/src/index.d.ts.map +1 -1
  87. package/lib/typescript/src/providers/AdgeistProvider.d.ts +9 -0
  88. package/lib/typescript/src/providers/AdgeistProvider.d.ts.map +1 -0
  89. package/lib/typescript/src/specs/HTML5AdNativeComponent.d.ts +29 -0
  90. package/lib/typescript/src/specs/HTML5AdNativeComponent.d.ts.map +1 -0
  91. package/lib/typescript/src/specs/NativeAdgeist.d.ts +28 -0
  92. package/lib/typescript/src/specs/NativeAdgeist.d.ts.map +1 -0
  93. package/lib/typescript/src/types/AdSize.d.ts +5 -0
  94. package/lib/typescript/src/types/AdSize.d.ts.map +1 -0
  95. package/lib/typescript/src/types/CPMAdResponse.d.ts +25 -0
  96. package/lib/typescript/src/types/CPMAdResponse.d.ts.map +1 -0
  97. package/lib/typescript/src/types/FixedAdResponse.d.ts +50 -0
  98. package/lib/typescript/src/types/FixedAdResponse.d.ts.map +1 -0
  99. package/lib/typescript/src/types/HTML5AdNativeComponentProps.d.ts +24 -0
  100. package/lib/typescript/src/types/HTML5AdNativeComponentProps.d.ts.map +1 -0
  101. package/lib/typescript/src/types/Provider.d.ts +16 -0
  102. package/lib/typescript/src/types/Provider.d.ts.map +1 -0
  103. package/package.json +8 -3
  104. package/plugin/build/android/withRNAdgeistMainApplication.d.ts +3 -0
  105. package/plugin/build/android/withRNAdgeistMainApplication.js +65 -0
  106. package/plugin/build/index.d.ts +3 -0
  107. package/plugin/build/index.js +25 -0
  108. package/plugin/build/ios/withRNAdgeistAppDelegate.d.ts +4 -0
  109. package/plugin/build/ios/withRNAdgeistAppDelegate.js +66 -0
  110. package/react-native.config.js +1 -1
  111. package/src/cdpclient/index.ts +1 -21
  112. package/src/components/HTML5AdView.tsx +161 -0
  113. package/src/components/{BannerAd.tsx → deprecated/BannerAdView.tsx} +80 -115
  114. package/src/components/{ConsentModal.tsx → deprecated/ConsentModal.tsx} +2 -2
  115. package/src/constants.ts +8 -0
  116. package/src/index.tsx +4 -2
  117. package/src/{components → providers}/AdgeistProvider.tsx +26 -60
  118. package/src/specs/HTML5AdNativeComponent.ts +46 -0
  119. package/src/{NativeAdgeist.ts → specs/NativeAdgeist.ts} +26 -25
  120. package/src/types/AdSize.ts +4 -0
  121. package/src/types/CPMAdResponse.ts +26 -0
  122. package/src/types/FixedAdResponse.ts +51 -0
  123. package/src/types/HTML5AdNativeComponentProps.ts +28 -0
  124. package/src/types/Provider.ts +16 -0
  125. package/android/src/main/AndroidManifestNew.xml +0 -2
  126. package/android/src/main/java/com/adgeist/implementation/AdgeistModuleImpl.kt +0 -252
  127. package/android/src/newarch/java/com/AdgeistModule.kt +0 -135
  128. package/android/src/oldarch/java/com/AdgeistModule.kt +0 -148
  129. package/ios/adgeist-Bridging-Header.h +0 -1
  130. package/lib/module/NativeAdgeist.js.map +0 -1
  131. package/lib/module/components/AdgeistProvider.js.map +0 -1
  132. package/lib/module/components/BannerAd.js.map +0 -1
  133. package/lib/module/components/ConsentModal.js.map +0 -1
  134. package/lib/typescript/src/NativeAdgeist.d.ts +0 -28
  135. package/lib/typescript/src/NativeAdgeist.d.ts.map +0 -1
  136. package/lib/typescript/src/components/AdgeistProvider.d.ts +0 -50
  137. package/lib/typescript/src/components/AdgeistProvider.d.ts.map +0 -1
  138. package/lib/typescript/src/components/BannerAd.d.ts +0 -64
  139. package/lib/typescript/src/components/BannerAd.d.ts.map +0 -1
  140. package/lib/typescript/src/components/ConsentModal.d.ts.map +0 -1
  141. /package/lib/module/{NativeAdgeist.js → specs/NativeAdgeist.js} +0 -0
  142. /package/lib/typescript/src/components/{ConsentModal.d.ts → deprecated/ConsentModal.d.ts} +0 -0
@@ -0,0 +1,26 @@
1
+ export interface CPMADRESPONSE {
2
+ id: string;
3
+ bidId: string;
4
+ cur: string;
5
+ seatBid: SeatBid[];
6
+ }
7
+
8
+ interface SeatBid {
9
+ bidId: string;
10
+ bid: Bid[];
11
+ }
12
+
13
+ interface Bid {
14
+ id: string;
15
+ impId: string;
16
+ price: number;
17
+ ext: BidExtension;
18
+ }
19
+
20
+ interface BidExtension {
21
+ creativeUrl: string;
22
+ ctaUrl: string;
23
+ creativeTitle: string;
24
+ creativeDescription: string;
25
+ creativeBrandName?: string;
26
+ }
@@ -0,0 +1,51 @@
1
+ export interface FIXEDADRESPONSE {
2
+ metaData: string;
3
+ id: string;
4
+ generatedAt: string;
5
+ signature: string;
6
+ campaignId: string;
7
+ advertiser: Advertiser;
8
+ type: 'FIXED' | string;
9
+ loadType: 'QUICK' | string;
10
+ displayOptions: DisplayOptions;
11
+ campaignValidity: {
12
+ startTime: string;
13
+ endTime: string;
14
+ };
15
+ creatives: Creative[];
16
+ frontendCacheDurationSeconds: number;
17
+ impressionRequirements: {
18
+ impressionType: ('VIEW' | 'CLICK')[];
19
+ minViewDurationSeconds: number;
20
+ };
21
+ }
22
+
23
+ interface Advertiser {
24
+ id: string;
25
+ name: string;
26
+ logoUrl: string;
27
+ }
28
+
29
+ interface DisplayOptions {
30
+ isResponsive: boolean;
31
+ dimensions: {
32
+ width: number;
33
+ height: number;
34
+ };
35
+ styleOptions: {
36
+ fontFamily: string;
37
+ fontColor: string;
38
+ };
39
+ allowedFormats: string[];
40
+ }
41
+
42
+ interface Creative {
43
+ ctaUrl: string;
44
+ title: string;
45
+ description: string;
46
+ type: 'image' | string;
47
+ fileName: string;
48
+ fileSize: number;
49
+ fileUrl: string;
50
+ thumbnailUrl: string;
51
+ }
@@ -0,0 +1,28 @@
1
+ import type { NativeSyntheticEvent } from 'react-native';
2
+ import type { AdSize } from './AdSize';
3
+
4
+ export interface HTML5AdNativeComponentProps {
5
+ adUnitID: string;
6
+ adIsResponsive?: boolean;
7
+ adSize?: AdSize;
8
+ adType: string;
9
+
10
+ onAdLoaded?: () => void;
11
+ onAdFailedToLoad?: (event: NativeSyntheticEvent<AdFailedToLoadEvent>) => void;
12
+ onAdOpened?: () => void;
13
+ onAdClosed?: () => void;
14
+ onAdClicked?: () => void;
15
+ }
16
+
17
+ export interface AdFailedToLoadEvent {
18
+ error: string;
19
+ }
20
+
21
+ export interface HTML5AdRequest {
22
+ isTestMode?: boolean;
23
+ }
24
+
25
+ export interface HTML5AdViewRef {
26
+ loadAd: (adRequest?: HTML5AdRequest) => void;
27
+ destroy: () => void;
28
+ }
@@ -0,0 +1,16 @@
1
+ export interface AdgeistContextType {
2
+ isTestEnvironment: boolean;
3
+ isInitialized: boolean;
4
+ initializationError?: Error;
5
+ setAdgeistConsentModal: (value: boolean) => void;
6
+ }
7
+
8
+ export interface AdgeistProviderProps {
9
+ children: React.ReactNode;
10
+ customBidRequestBackendDomain?: string;
11
+ customPackageOrBundleID?: string;
12
+ customAdgeistAppID?: string;
13
+ isTestEnvironment?: boolean;
14
+ onInitializationError?: (error: Error) => void;
15
+ onInitializationSuccess?: () => void;
16
+ }
@@ -1,2 +0,0 @@
1
- <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
- </manifest>
@@ -1,252 +0,0 @@
1
- package com.adgeist.implementation
2
-
3
- import com.facebook.react.bridge.Promise
4
- import com.facebook.react.bridge.ReactApplicationContext
5
- import com.facebook.react.bridge.Arguments
6
- import com.facebook.react.bridge.WritableMap
7
- import com.adgeistkit.AdgeistCore
8
- import com.adgeistkit.FetchCreative
9
- import com.adgeistkit.CreativeAnalytics
10
- import com.adgeistkit.CreativeDataModel
11
- import com.adgeistkit.BidResponseData
12
- import com.adgeistkit.SeatBid
13
- import com.adgeistkit.Bid
14
- import com.adgeistkit.BidExtension
15
- import com.adgeistkit.UserDetails
16
- import com.adgeistkit.Event
17
- import com.facebook.react.bridge.ReadableMap
18
-
19
- class AdgeistModuleImpl internal constructor(private val context: ReactApplicationContext) {
20
-
21
- private var adgeistInstance: AdgeistCore? = null
22
- private var getAd: FetchCreative? = null
23
- private var postCreativeAnalytic: CreativeAnalytics? = null
24
-
25
- fun initializeSdk(customDomain: String?, promise: Promise) {
26
- try {
27
- adgeistInstance = AdgeistCore.initialize(context.applicationContext, customDomain)
28
- getAd = adgeistInstance?.getCreative()
29
- postCreativeAnalytic = adgeistInstance?.postCreativeAnalytics()
30
- promise.resolve("SDK initialized with domain: ${customDomain ?: "default"}")
31
- } catch (e: Exception) {
32
- promise.reject("INIT_FAILED", "SDK initialization failed", e)
33
- }
34
- }
35
-
36
- fun fetchCreative(apiKey: String, origin: String, adSpaceId: String, publisherId: String, isTestEnvironment: Boolean, promise: Promise) {
37
- getAd?.fetchCreative(apiKey, origin, adSpaceId, publisherId, isTestEnvironment) { adData ->
38
- if (adData != null) {
39
- promise.resolve(adData.toWritableMap())
40
- } else {
41
- promise.reject("NO_AD", "Ad data not available")
42
- }
43
- } ?: promise.reject("NOT_INITIALIZED", "SDK not initialized")
44
- }
45
-
46
-
47
- fun setUserDetails(userDetailsMap: ReadableMap) {
48
- val userDetails = UserDetails(
49
- userId = userDetailsMap.getStringSafe("userId"),
50
- userName = userDetailsMap.getStringSafe("userName"),
51
- email = userDetailsMap.getStringSafe("email"),
52
- phone = userDetailsMap.getStringSafe("phone")
53
- )
54
- adgeistInstance?.setUserDetails(userDetails)
55
- }
56
-
57
- fun logEvent(eventMap: ReadableMap) {
58
- val eventType = eventMap.getStringSafe("eventType")
59
-
60
- if (eventType.isNullOrEmpty()) {
61
- throw IllegalArgumentException("Event must have a non-empty eventType")
62
- }
63
-
64
- val props = if (eventMap.hasKey("eventProperties")) eventMap.getMap("eventProperties") else null
65
- val eventProps = props?.toHashMap() ?: emptyMap<String, Any>()
66
-
67
- val event = Event(
68
- eventType = eventType,
69
- eventProperties = eventProps
70
- )
71
- adgeistInstance?.logEvent(event)
72
- }
73
-
74
- fun getConsentStatus(promise: Promise) {
75
- try {
76
- val consent = adgeistInstance?.getConsentStatus() ?: false
77
- promise.resolve(consent)
78
- } catch (e: Exception) {
79
- promise.reject("CONSENT_ERROR", "Failed to get consent status", e)
80
- }
81
- }
82
-
83
- fun updateConsentStatus(consent: Boolean) {
84
- adgeistInstance?.updateConsentStatus(consent)
85
- }
86
-
87
- fun trackImpression(
88
- campaignId: String,
89
- adSpaceId: String,
90
- publisherId: String,
91
- apiKey: String,
92
- bidId: String,
93
- isTestEnvironment: Boolean,
94
- renderTime: Float,
95
- promise: Promise
96
- ) {
97
- postCreativeAnalytic?.trackImpression(
98
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, renderTime
99
- )
100
- promise.resolve("Impression event sent")
101
- }
102
-
103
- fun trackView(
104
- campaignId: String,
105
- adSpaceId: String,
106
- publisherId: String,
107
- apiKey: String,
108
- bidId: String,
109
- isTestEnvironment: Boolean,
110
- viewTime: Float,
111
- visibilityRatio: Float,
112
- scrollDepth: Float,
113
- timeToVisible: Float,
114
- promise: Promise
115
- ) {
116
- postCreativeAnalytic?.trackView(
117
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
118
- viewTime, visibilityRatio, scrollDepth, timeToVisible
119
- )
120
- promise.resolve("View event sent")
121
- }
122
-
123
- fun trackTotalView(
124
- campaignId: String,
125
- adSpaceId: String,
126
- publisherId: String,
127
- apiKey: String,
128
- bidId: String,
129
- isTestEnvironment: Boolean,
130
- totalViewTime: Float,
131
- visibilityRatio: Float,
132
- promise: Promise
133
- ) {
134
- postCreativeAnalytic?.trackTotalView(
135
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
136
- totalViewTime, visibilityRatio
137
- )
138
- promise.resolve("Total view event sent")
139
- }
140
-
141
- fun trackClick(
142
- campaignId: String,
143
- adSpaceId: String,
144
- publisherId: String,
145
- apiKey: String,
146
- bidId: String,
147
- isTestEnvironment: Boolean,
148
- promise: Promise
149
- ) {
150
- postCreativeAnalytic?.trackClick(
151
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment
152
- )
153
- promise.resolve("Click event sent")
154
- }
155
-
156
- fun trackVideoPlayback(
157
- campaignId: String,
158
- adSpaceId: String,
159
- publisherId: String,
160
- apiKey: String,
161
- bidId: String,
162
- isTestEnvironment: Boolean,
163
- totalPlaybackTime: Float,
164
- promise: Promise
165
- ) {
166
- postCreativeAnalytic?.trackVideoPlayback(
167
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, totalPlaybackTime
168
- )
169
- promise.resolve("Video playback event sent")
170
- }
171
-
172
- fun trackVideoQuartile(
173
- campaignId: String,
174
- adSpaceId: String,
175
- publisherId: String,
176
- apiKey: String,
177
- bidId: String,
178
- isTestEnvironment: Boolean,
179
- quartile: String,
180
- promise: Promise
181
- ) {
182
- postCreativeAnalytic?.trackVideoQuartile(
183
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, quartile
184
- )
185
- promise.resolve("Video quartile event sent")
186
- }
187
-
188
- companion object {
189
- const val NAME = "Adgeist"
190
- }
191
- }
192
-
193
- fun ReadableMap.getStringSafe(key: String): String? =
194
- if (this.hasKey(key) && !this.isNull(key)) this.getString(key) else null
195
-
196
-
197
- // Extension function to convert CreativeDataModel to WritableMap
198
- fun CreativeDataModel.toWritableMap(): WritableMap {
199
- val map = Arguments.createMap()
200
-
201
- map.putBoolean("success", this.success)
202
- map.putString("message", this.message)
203
-
204
- // Handle null data - store in local variable for smart casting
205
- val dataValue = this.data
206
- if (dataValue != null) {
207
- val dataMap = Arguments.createMap()
208
- dataMap.putString("id", dataValue.id)
209
- dataMap.putString("bidId", dataValue.bidId)
210
- dataMap.putString("cur", dataValue.cur)
211
-
212
- // Handle null seatBid list - store in local variable
213
- val seatBidArray = Arguments.createArray()
214
- val seatBidList = dataValue.seatBid
215
- if (seatBidList != null) {
216
- for (seatBid in seatBidList) {
217
- val seatBidMap = Arguments.createMap()
218
- seatBidMap.putString("bidId", seatBid.bidId)
219
-
220
- // Handle null bid list - store in local variable
221
- val bidArray = Arguments.createArray()
222
- val bidList = seatBid.bid
223
- if (bidList != null) {
224
- for (bid in bidList) {
225
- val bidMap = Arguments.createMap()
226
- bidMap.putString("id", bid.id)
227
- bidMap.putString("impId", bid.impId)
228
- bidMap.putDouble("price", bid.price)
229
-
230
- // Handle extension
231
- val extMap = Arguments.createMap()
232
- extMap.putString("creativeUrl", bid.ext.creativeUrl)
233
- extMap.putString("ctaUrl", bid.ext.ctaUrl)
234
- extMap.putString("creativeTitle", bid.ext.creativeTitle)
235
- extMap.putString("creativeDescription", bid.ext.creativeDescription)
236
-
237
- bidMap.putMap("ext", extMap)
238
- bidArray.pushMap(bidMap)
239
- }
240
- }
241
- seatBidMap.putArray("bid", bidArray)
242
- seatBidArray.pushMap(seatBidMap)
243
- }
244
- }
245
- dataMap.putArray("seatBid", seatBidArray)
246
- map.putMap("data", dataMap)
247
- } else {
248
- map.putNull("data")
249
- }
250
-
251
- return map
252
- }
@@ -1,135 +0,0 @@
1
- package com.adgeist
2
-
3
- import com.facebook.react.bridge.Promise
4
- import com.facebook.react.bridge.ReactApplicationContext
5
- import com.adgeist.implementation.AdgeistModuleImpl
6
- import com.adgeistkit.UserDetails
7
- import com.adgeistkit.Event
8
- import com.facebook.react.bridge.ReadableMap
9
-
10
- class AdgeistModule internal constructor(reactContext: ReactApplicationContext) :
11
- NativeAdgeistSpec(reactContext) {
12
-
13
- private var implementation: AdgeistModuleImpl = AdgeistModuleImpl(reactContext)
14
-
15
- override fun getName(): String = AdgeistModuleImpl.NAME
16
-
17
- override fun initializeSdk(customDomain: String, promise: Promise) {
18
- implementation.initializeSdk(customDomain, promise)
19
- }
20
-
21
- override fun fetchCreative(apiKey: String, origin: String, adSpaceId: String, publisherId: String, isTestEnvironment: Boolean, promise: Promise) {
22
- implementation.fetchCreative(apiKey, origin, adSpaceId, publisherId, isTestEnvironment, promise)
23
- }
24
-
25
- override fun trackImpression(
26
- campaignId: String,
27
- adSpaceId: String,
28
- publisherId: String,
29
- apiKey: String,
30
- bidId: String,
31
- isTestEnvironment: Boolean,
32
- renderTime: Double,
33
- promise: Promise
34
- ) {
35
- implementation.trackImpression(
36
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, renderTime.toFloat(), promise
37
- )
38
- }
39
-
40
- override fun trackView(
41
- campaignId: String,
42
- adSpaceId: String,
43
- publisherId: String,
44
- apiKey: String,
45
- bidId: String,
46
- isTestEnvironment: Boolean,
47
- viewTime: Double,
48
- visibilityRatio: Double,
49
- scrollDepth: Double,
50
- timeToVisible: Double,
51
- promise: Promise
52
- ) {
53
- implementation.trackView(
54
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
55
- viewTime.toFloat(), visibilityRatio.toFloat(), scrollDepth.toFloat(), timeToVisible.toFloat(), promise
56
- )
57
- }
58
-
59
- override fun trackTotalView(
60
- campaignId: String,
61
- adSpaceId: String,
62
- publisherId: String,
63
- apiKey: String,
64
- bidId: String,
65
- isTestEnvironment: Boolean,
66
- totalViewTime: Double,
67
- visibilityRatio: Double,
68
- promise: Promise
69
- ) {
70
- implementation.trackTotalView(
71
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
72
- totalViewTime.toFloat(), visibilityRatio.toFloat(), promise
73
- )
74
- }
75
-
76
- override fun trackClick(
77
- campaignId: String,
78
- adSpaceId: String,
79
- publisherId: String,
80
- apiKey: String,
81
- bidId: String,
82
- isTestEnvironment: Boolean,
83
- promise: Promise
84
- ) {
85
- implementation.trackClick(
86
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, promise
87
- )
88
- }
89
-
90
- override fun trackVideoPlayback(
91
- campaignId: String,
92
- adSpaceId: String,
93
- publisherId: String,
94
- apiKey: String,
95
- bidId: String,
96
- isTestEnvironment: Boolean,
97
- totalPlaybackTime: Double,
98
- promise: Promise
99
- ) {
100
- implementation.trackVideoPlayback(
101
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, totalPlaybackTime.toFloat(), promise
102
- )
103
- }
104
-
105
- override fun trackVideoQuartile(
106
- campaignId: String,
107
- adSpaceId: String,
108
- publisherId: String,
109
- apiKey: String,
110
- bidId: String,
111
- isTestEnvironment: Boolean,
112
- quartile: String,
113
- promise: Promise
114
- ) {
115
- implementation.trackVideoQuartile(
116
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, quartile, promise
117
- )
118
- }
119
-
120
- override fun setUserDetails(userDetails: ReadableMap) {
121
- implementation.setUserDetails(userDetails)
122
- }
123
-
124
- override fun logEvent(event: ReadableMap) {
125
- implementation.logEvent(event)
126
- }
127
-
128
- override fun getConsentStatus(promise: Promise) {
129
- implementation.getConsentStatus(promise)
130
- }
131
-
132
- override fun updateConsentStatus(consent: Boolean) {
133
- implementation.updateConsentStatus(consent)
134
- }
135
- }
@@ -1,148 +0,0 @@
1
- package com.adgeist
2
-
3
- import com.facebook.react.bridge.Promise
4
- import com.facebook.react.bridge.ReactApplicationContext
5
- import com.facebook.react.bridge.ReactContextBaseJavaModule
6
- import com.facebook.react.bridge.ReactMethod
7
- import com.adgeist.implementation.AdgeistModuleImpl
8
- import com.facebook.react.bridge.ReadableMap
9
-
10
- class AdgeistModule internal constructor(reactContext: ReactApplicationContext) :
11
- ReactContextBaseJavaModule(reactContext) {
12
-
13
- private var implementation: AdgeistModuleImpl = AdgeistModuleImpl(reactContext)
14
-
15
- override fun getName(): String = AdgeistModuleImpl.NAME
16
-
17
- @ReactMethod
18
- fun initializeSdk(customDomain: String, promise: Promise) {
19
- implementation.initializeSdk(customDomain, promise)
20
- }
21
-
22
- @ReactMethod
23
- fun fetchCreative(apiKey: String, origin: String, adSpaceId: String, publisherId: String, isTestEnvironment: Boolean, promise: Promise) {
24
- implementation.fetchCreative(apiKey, origin, adSpaceId, publisherId, isTestEnvironment, promise)
25
- }
26
-
27
-
28
- @ReactMethod
29
- fun setUserDetails(userDetails: ReadableMap) {
30
- implementation.setUserDetails(userDetails)
31
- }
32
-
33
- @ReactMethod
34
- fun logEvent(event: ReadableMap) {
35
- implementation.logEvent(event)
36
- }
37
-
38
- @ReactMethod
39
- fun getConsentStatus(promise: Promise) {
40
- implementation.getConsentStatus(promise)
41
- }
42
-
43
- @ReactMethod
44
- fun updateConsentStatus(consent: Boolean) {
45
- implementation.updateConsentStatus(consent)
46
- }
47
-
48
- @ReactMethod
49
- fun trackImpression(
50
- campaignId: String,
51
- adSpaceId: String,
52
- publisherId: String,
53
- apiKey: String,
54
- bidId: String,
55
- isTestEnvironment: Boolean,
56
- renderTime: Double,
57
- promise: Promise
58
- ) {
59
- implementation.trackImpression(
60
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, renderTime.toFloat(), promise
61
- )
62
- }
63
-
64
- @ReactMethod
65
- fun trackView(
66
- campaignId: String,
67
- adSpaceId: String,
68
- publisherId: String,
69
- apiKey: String,
70
- bidId: String,
71
- isTestEnvironment: Boolean,
72
- viewTime: Double,
73
- visibilityRatio: Double,
74
- scrollDepth: Double,
75
- timeToVisible: Double,
76
- promise: Promise
77
- ) {
78
- implementation.trackView(
79
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
80
- viewTime.toFloat(), visibilityRatio.toFloat(), scrollDepth.toFloat(), timeToVisible.toFloat(), promise
81
- )
82
- }
83
-
84
- @ReactMethod
85
- fun trackTotalView(
86
- campaignId: String,
87
- adSpaceId: String,
88
- publisherId: String,
89
- apiKey: String,
90
- bidId: String,
91
- isTestEnvironment: Boolean,
92
- totalViewTime: Double,
93
- visibilityRatio: Double,
94
- promise: Promise
95
- ) {
96
- implementation.trackTotalView(
97
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment,
98
- totalViewTime.toFloat(), visibilityRatio.toFloat(), promise
99
- )
100
- }
101
-
102
- @ReactMethod
103
- fun trackClick(
104
- campaignId: String,
105
- adSpaceId: String,
106
- publisherId: String,
107
- apiKey: String,
108
- bidId: String,
109
- isTestEnvironment: Boolean,
110
- promise: Promise
111
- ) {
112
- implementation.trackClick(
113
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, promise
114
- )
115
- }
116
-
117
- @ReactMethod
118
- fun trackVideoPlayback(
119
- campaignId: String,
120
- adSpaceId: String,
121
- publisherId: String,
122
- apiKey: String,
123
- bidId: String,
124
- isTestEnvironment: Boolean,
125
- totalPlaybackTime: Double,
126
- promise: Promise
127
- ) {
128
- implementation.trackVideoPlayback(
129
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, totalPlaybackTime.toFloat(), promise
130
- )
131
- }
132
-
133
- @ReactMethod
134
- fun trackVideoQuartile(
135
- campaignId: String,
136
- adSpaceId: String,
137
- publisherId: String,
138
- apiKey: String,
139
- bidId: String,
140
- isTestEnvironment: Boolean,
141
- quartile: String,
142
- promise: Promise
143
- ) {
144
- implementation.trackVideoQuartile(
145
- campaignId, adSpaceId, publisherId, apiKey, bidId, isTestEnvironment, quartile, promise
146
- )
147
- }
148
- }
@@ -1 +0,0 @@
1
- #import "React/RCTBridgeModule.h"
@@ -1 +0,0 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeAdgeist.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAgGlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,SAAS,CAAC","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","createContext","useContext","useEffect","useState","useCallback","Adgeist","ConsentModal","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","AdgeistContext","publisherId","apiKey","domain","isTestEnvironment","isInitialized","setAdgeistConsentModal","AdgeistProvider","children","customAdgeistApiOrigin","onInitializationError","onInitializationSuccess","setIsInitialized","initializationError","setInitializationError","adgeistConsentModal","initializeAdgeist","undefined","initializeSdk","error","err","Error","Provider","value","useAdgeistContext","context"],"sourceRoot":"../../../src","sources":["components/AdgeistProvider.tsx"],"mappings":"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","ignoreList":[]}