@thealteroffice/react-native-adgeist 0.0.2 → 0.0.4

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 (33) hide show
  1. package/android/build.gradle +1 -1
  2. package/android/src/main/java/com/adgeist/AdgeistPackage.kt +15 -7
  3. package/android/src/main/java/com/adgeist/implementation/AdgeistModuleImpl.kt +37 -28
  4. package/android/src/newarch/java/com/AdgeistModule.kt +4 -4
  5. package/android/src/oldarch/java/com/AdgeistModule.kt +4 -4
  6. package/lib/module/NativeAdgeist.js +5 -0
  7. package/lib/module/NativeAdgeist.js.map +1 -0
  8. package/lib/module/components/AdgeistProvider.js +29 -0
  9. package/lib/module/components/AdgeistProvider.js.map +1 -0
  10. package/lib/module/components/BannerAd.js +69 -109
  11. package/lib/module/components/BannerAd.js.map +1 -1
  12. package/lib/module/index.js +1 -1
  13. package/lib/module/index.js.map +1 -1
  14. package/lib/typescript/src/NativeAdgeist.d.ts +2 -2
  15. package/lib/typescript/src/NativeAdgeist.d.ts.map +1 -1
  16. package/lib/typescript/src/components/AdgeistProvider.d.ts +18 -0
  17. package/lib/typescript/src/components/AdgeistProvider.d.ts.map +1 -0
  18. package/lib/typescript/src/components/BannerAd.d.ts +0 -1
  19. package/lib/typescript/src/components/BannerAd.d.ts.map +1 -1
  20. package/lib/typescript/src/index.d.ts +1 -1
  21. package/lib/typescript/src/index.d.ts.map +1 -1
  22. package/package.json +4 -4
  23. package/plugin/build/index.js +1 -1
  24. package/src/NativeAdgeist.ts +12 -2
  25. package/src/components/AdgeistProvider.tsx +41 -0
  26. package/src/components/BannerAd.tsx +105 -108
  27. package/src/index.tsx +1 -1
  28. package/lib/module/NativeAdgeist.ts +0 -14
  29. package/lib/module/components/BottomBannerAd.js +0 -150
  30. package/lib/module/components/BottomBannerAd.js.map +0 -1
  31. package/lib/typescript/src/components/BottomBannerAd.d.ts +0 -8
  32. package/lib/typescript/src/components/BottomBannerAd.d.ts.map +0 -1
  33. package/src/components/BottomBannerAd.tsx +0 -185
@@ -21,5 +21,5 @@ const withRNAdgeist = (config) => {
21
21
  withRNAdgeistAppDelegate_1.withRNAdgeistAppDelegate,
22
22
  ]);
23
23
  };
24
- const pak = require('react-native-adgeist/package.json');
24
+ const pak = require('@thealteroffice/react-native-adgeist/package.json');
25
25
  exports.default = (0, config_plugins_1.createRunOncePlugin)(withRNAdgeist, pak.name, pak.version);
@@ -2,12 +2,22 @@ import type { TurboModule } from 'react-native';
2
2
  import { TurboModuleRegistry } from 'react-native';
3
3
 
4
4
  export interface Spec extends TurboModule {
5
- fetchCreative(adSpaceId: string, publisherId: string): Promise<Object>;
5
+ fetchCreative(
6
+ apiKey: string,
7
+ origin: string,
8
+ adSpaceId: string,
9
+ publisherId: string,
10
+ isTestEnvironment: boolean
11
+ ): Promise<Object>;
6
12
  sendCreativeAnalytic(
7
13
  campaignId: string,
8
14
  adSpaceId: string,
9
15
  publisherId: string,
10
- eventType: string
16
+ eventType: string,
17
+ origin: string,
18
+ apiKey: string,
19
+ bidId: string,
20
+ isTestEnvironment: boolean
11
21
  ): Promise<Object>;
12
22
  }
13
23
 
@@ -0,0 +1,41 @@
1
+ import React, { createContext, useContext } from 'react';
2
+
3
+ interface AdgeistContextType {
4
+ publisherId: string;
5
+ apiKey: string;
6
+ domain: string;
7
+ isTestEnvironment: boolean;
8
+ }
9
+
10
+ interface AdgeistProviderPropsType {
11
+ children: React.ReactNode;
12
+ publisherId: string;
13
+ apiKey: string;
14
+ domain: string;
15
+ isTestEnvironment: boolean;
16
+ }
17
+
18
+ const AdgeistContext = createContext<AdgeistContextType>({
19
+ publisherId: '',
20
+ apiKey: '',
21
+ domain: '',
22
+ isTestEnvironment: true,
23
+ });
24
+
25
+ export const AdgeistProvider: React.FC<AdgeistProviderPropsType> = ({
26
+ children,
27
+ publisherId = '',
28
+ apiKey = '',
29
+ domain = '',
30
+ isTestEnvironment = true,
31
+ }) => {
32
+ return (
33
+ <AdgeistContext.Provider
34
+ value={{ publisherId, apiKey, domain, isTestEnvironment }}
35
+ >
36
+ {children}
37
+ </AdgeistContext.Provider>
38
+ );
39
+ };
40
+
41
+ export const useAdgeistContext = () => useContext(AdgeistContext);
@@ -9,111 +9,141 @@ import {
9
9
  TouchableWithoutFeedback,
10
10
  } from 'react-native';
11
11
  import Adgeist from '../NativeAdgeist';
12
+ import { useAdgeistContext } from './AdgeistProvider';
12
13
 
13
- interface Creative {
14
- fileUrl: string;
15
- title: string;
16
- description: string;
17
- ctaUrl?: string;
14
+ interface AdData {
15
+ id: string;
16
+ bidId: string;
17
+ cur: string;
18
+ seatBid: SeatBid[];
18
19
  }
19
20
 
20
- interface AdData {
21
- _id: string;
22
- creative: Creative;
21
+ interface SeatBid {
22
+ bidId: string;
23
+ bid: Bid[];
23
24
  }
24
25
 
26
+ interface Bid {
27
+ id: string;
28
+ impId: string;
29
+ price: number;
30
+ ext: BidExtension;
31
+ }
32
+
33
+ interface BidExtension {
34
+ creativeUrl: string;
35
+ ctaUrl: string;
36
+ creativeTitle: string;
37
+ creativeDescription: string;
38
+ creativeBrandName?: string;
39
+ }
25
40
  interface AdBannerTypes {
26
- dataPublisherId: string;
27
41
  dataAdSlot: string;
28
42
  width: number;
29
43
  height: number;
30
44
  }
31
45
 
32
- export const BannerAd: React.FC<AdBannerTypes> = ({
33
- dataPublisherId,
34
- dataAdSlot,
35
- width,
36
- height,
37
- }) => {
46
+ export const BannerAd: React.FC<AdBannerTypes> = ({ dataAdSlot }) => {
38
47
  const [adData, setAdData] = useState<AdData | null>(null);
48
+ const { publisherId, apiKey, domain, isTestEnvironment } =
49
+ useAdgeistContext();
50
+
51
+ const creativeData = adData?.seatBid?.[0]?.bid?.[0]?.ext as BidExtension;
39
52
 
40
53
  useEffect(() => {
41
54
  (async () => {
42
55
  try {
43
56
  const response: Object = await Adgeist.fetchCreative(
57
+ apiKey,
58
+ domain,
44
59
  dataAdSlot,
45
- dataPublisherId
60
+ publisherId,
61
+ isTestEnvironment
46
62
  );
63
+
47
64
  const creative: { data: AdData } = response as { data: AdData };
48
65
  setAdData(creative.data);
49
66
 
50
- await Adgeist.sendCreativeAnalytic(
51
- creative.data._id,
52
- dataAdSlot,
53
- dataPublisherId,
54
- 'impression'
55
- );
67
+ if (creative.data.seatBid.length > 0) {
68
+ await Adgeist.sendCreativeAnalytic(
69
+ creative.data.seatBid?.[0]?.bid?.[0]?.id || '',
70
+ dataAdSlot,
71
+ publisherId,
72
+ 'IMPRESSION',
73
+ domain,
74
+ apiKey,
75
+ creative.data.id,
76
+ isTestEnvironment
77
+ );
78
+ }
56
79
  } catch (error) {
57
80
  console.error('Ad load failed:', error);
58
81
  }
59
82
  })();
60
- }, [dataPublisherId, dataAdSlot]);
83
+ }, [publisherId, dataAdSlot, apiKey, domain, isTestEnvironment]);
61
84
 
62
85
  const handleClick = async () => {
63
- if (adData?.creative?.ctaUrl) {
86
+ if (adData && adData?.seatBid.length > 0) {
64
87
  await Adgeist.sendCreativeAnalytic(
65
- adData._id,
88
+ adData?.seatBid?.[0]?.bid?.[0]?.id || '',
66
89
  dataAdSlot,
67
- dataPublisherId,
68
- 'click'
90
+ publisherId,
91
+ 'CLICK',
92
+ domain,
93
+ apiKey,
94
+ adData.id,
95
+ isTestEnvironment
69
96
  );
70
- Linking.openURL(adData.creative.ctaUrl).catch((err) =>
97
+ Linking.openURL(creativeData.ctaUrl).catch((err) =>
71
98
  console.error('Failed to open URL:', err)
72
99
  );
73
100
  }
74
101
  };
75
102
 
76
- if (!adData?.creative?.fileUrl) return null;
103
+ if (!creativeData?.creativeUrl) return null;
77
104
 
78
105
  return (
79
106
  <TouchableWithoutFeedback accessible accessibilityLabel="Ad Banner">
80
- <View style={styles.container}>
107
+ <View style={styles.adContainer}>
81
108
  <Image
82
- style={[styles.creative, { width, height }]}
83
- source={{ uri: adData.creative.fileUrl }}
109
+ style={[styles.creative, { width: '100%', height: 300 }]}
110
+ source={{ uri: creativeData.creativeUrl }}
84
111
  />
85
- <View style={styles.options}>
86
- <Text style={styles.option}>x</Text>
87
- <Text style={styles.option}>i</Text>
88
- </View>
89
112
  <View style={styles.adContent}>
90
- <Image
91
- style={styles.logo}
92
- source={{ uri: adData.creative.fileUrl }}
93
- />
94
- <View style={styles.textContainer}>
95
- <View style={styles.titleRow}>
96
- <Text style={styles.adBadge}>AD</Text>
97
- <Text style={styles.title} numberOfLines={1} ellipsizeMode="tail">
98
- {adData.creative.title}
99
- </Text>
100
- </View>
113
+ <View style={styles.contentContainer}>
114
+ <Text style={styles.title} numberOfLines={1} ellipsizeMode="tail">
115
+ {creativeData.creativeTitle}
116
+ </Text>
117
+
101
118
  <Text
102
119
  style={styles.description}
103
120
  numberOfLines={1}
104
121
  ellipsizeMode="tail"
105
122
  >
106
- {adData.creative.description}
123
+ {creativeData.creativeDescription}
124
+ </Text>
125
+
126
+ <Text
127
+ style={styles.brandName}
128
+ numberOfLines={1}
129
+ ellipsizeMode="tail"
130
+ >
131
+ {creativeData?.creativeBrandName || 'Brand Name'}
107
132
  </Text>
108
133
  </View>
109
134
  <TouchableWithoutFeedback
110
- onPress={handleClick}
135
+ onPress={() => {
136
+ handleClick();
137
+ }}
111
138
  accessible
112
139
  accessibilityLabel="Visit Site Button"
113
140
  >
114
- <View style={styles.button}>
115
- <Text style={styles.buttonText}>Visit Site</Text>
116
- </View>
141
+ <Image
142
+ style={[styles.linkButton]}
143
+ source={{
144
+ uri: 'https://d2cfeg6k9cklz9.cloudfront.net/onboarding-icons/Button.png',
145
+ }}
146
+ />
117
147
  </TouchableWithoutFeedback>
118
148
  </View>
119
149
  </View>
@@ -122,81 +152,48 @@ export const BannerAd: React.FC<AdBannerTypes> = ({
122
152
  };
123
153
 
124
154
  const styles = StyleSheet.create({
125
- container: {
155
+ adContainer: {
156
+ width: Dimensions.get('window').width,
126
157
  backgroundColor: 'white',
127
- borderRadius: 10,
158
+ borderRadius: 5,
128
159
  },
129
160
  creative: {
130
- resizeMode: 'contain',
131
- borderTopLeftRadius: 10,
132
- borderTopRightRadius: 10,
133
- },
134
- options: {
135
- flexDirection: 'row',
136
- gap: 2,
137
- position: 'absolute',
138
- top: 5,
139
- left: 5,
140
- },
141
- option: {
142
- color: 'green',
143
- backgroundColor: '#00000022',
144
- width: 20,
145
- height: 20,
146
- textAlign: 'center',
161
+ resizeMode: 'cover',
162
+ borderTopLeftRadius: 5,
163
+ borderTopRightRadius: 5,
147
164
  },
148
165
  adContent: {
149
166
  width: '100%',
150
167
  backgroundColor: 'white',
151
168
  flexDirection: 'row',
152
169
  justifyContent: 'space-between',
153
- paddingHorizontal: 10,
154
170
  paddingVertical: 10,
171
+ paddingHorizontal: 20,
155
172
  alignItems: 'center',
156
- borderBottomLeftRadius: 10,
157
- borderBottomRightRadius: 10,
158
- borderTopColor: '#00000022',
159
- borderTopWidth: 1,
173
+ borderBottomLeftRadius: 5,
174
+ borderBottomRightRadius: 5,
160
175
  },
161
- logo: {
162
- width: 35,
163
- height: 35,
164
- resizeMode: 'contain',
165
- borderRadius: 2,
166
- },
167
- textContainer: {
168
- width: Dimensions.get('window').width - 150,
169
- },
170
- titleRow: {
171
- flexDirection: 'row',
172
- alignItems: 'center',
173
- gap: 5,
174
- width: Dimensions.get('window').width - 200,
175
- },
176
- adBadge: {
177
- color: 'white',
178
- backgroundColor: 'green',
179
- width: 40,
180
- borderRadius: 4,
181
- textAlign: 'center',
176
+ contentContainer: {
177
+ width: Dimensions.get('window').width - 100,
182
178
  },
183
179
  title: {
184
180
  color: 'black',
181
+ fontSize: 18,
182
+ fontWeight: 'bold',
185
183
  },
186
184
  description: {
187
185
  color: 'black',
186
+ fontSize: 16,
188
187
  },
189
- button: {
190
- paddingHorizontal: 10,
191
- paddingVertical: 5,
192
- borderWidth: 1,
193
- borderColor: 'green',
194
- borderRadius: 5,
195
- alignItems: 'center',
196
- justifyContent: 'center',
197
- height: 40,
188
+ brandName: {
189
+ color: 'black',
190
+ fontSize: 16,
191
+ opacity: 0.6,
192
+ marginTop: 5,
193
+ fontWeight: 'semibold',
198
194
  },
199
- buttonText: {
200
- color: 'green',
195
+ linkButton: {
196
+ width: 40,
197
+ height: 40,
201
198
  },
202
199
  });
package/src/index.tsx CHANGED
@@ -1,2 +1,2 @@
1
1
  export * from './components/BannerAd';
2
- export * from './components/BottomBannerAd';
2
+ export * from './components/AdgeistProvider';
@@ -1,14 +0,0 @@
1
- import type { TurboModule } from 'react-native';
2
- import { TurboModuleRegistry } from 'react-native';
3
-
4
- export interface Spec extends TurboModule {
5
- fetchCreative(adSpaceId: string, publisherId: string): Promise<Object>;
6
- sendCreativeAnalytic(
7
- campaignId: string,
8
- adSpaceId: string,
9
- publisherId: string,
10
- eventType: string
11
- ): Promise<Object>;
12
- }
13
-
14
- export default TurboModuleRegistry.getEnforcing<Spec>('Adgeist');
@@ -1,150 +0,0 @@
1
- "use strict";
2
-
3
- import React, { useEffect, useState } from 'react';
4
- import { Dimensions, Image, Linking, StyleSheet, Text, View, TouchableOpacity, TouchableWithoutFeedback } from 'react-native';
5
- import Adgeist from '../NativeAdgeist';
6
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
- export const BottomBannerAd = ({
8
- dataPublisherId,
9
- dataAdSlot
10
- }) => {
11
- const [adData, setAdData] = useState(null);
12
- useEffect(() => {
13
- (async () => {
14
- try {
15
- const response = await Adgeist.fetchCreative(dataAdSlot, dataPublisherId);
16
- const creative = response;
17
- setAdData(creative.data);
18
- await Adgeist.sendCreativeAnalytic(creative.data._id, dataAdSlot, dataPublisherId, 'impression');
19
- } catch (error) {
20
- console.error('Ad load failed:', error);
21
- }
22
- })();
23
- }, [dataPublisherId, dataAdSlot]);
24
- const handleClick = async () => {
25
- if (adData?.creative?.ctaUrl) {
26
- await Adgeist.sendCreativeAnalytic(adData._id, dataAdSlot, dataPublisherId, 'click');
27
- Linking.openURL(adData.creative.ctaUrl).catch(err => console.error('Failed to open URL:', err));
28
- }
29
- };
30
- if (!adData?.creative?.fileUrl) return null;
31
- return /*#__PURE__*/_jsx(TouchableWithoutFeedback, {
32
- style: styles.container,
33
- onPress: handleClick,
34
- accessible: true,
35
- accessibilityLabel: "Ad Banner",
36
- children: /*#__PURE__*/_jsxs(View, {
37
- style: styles.adContent,
38
- children: [/*#__PURE__*/_jsx(Image, {
39
- style: styles.logo,
40
- source: {
41
- uri: adData.creative.fileUrl
42
- }
43
- }), /*#__PURE__*/_jsxs(View, {
44
- style: styles.textContainer,
45
- children: [/*#__PURE__*/_jsxs(View, {
46
- style: styles.titleRow,
47
- children: [/*#__PURE__*/_jsx(Text, {
48
- style: styles.adBadge,
49
- children: "AD"
50
- }), /*#__PURE__*/_jsx(Text, {
51
- style: styles.title,
52
- numberOfLines: 1,
53
- ellipsizeMode: "tail",
54
- children: adData.creative.title
55
- })]
56
- }), /*#__PURE__*/_jsx(Text, {
57
- style: styles.description,
58
- numberOfLines: 1,
59
- ellipsizeMode: "tail",
60
- children: adData.creative.description
61
- })]
62
- }), /*#__PURE__*/_jsx(TouchableOpacity, {
63
- style: styles.button,
64
- onPress: handleClick,
65
- accessible: true,
66
- accessibilityLabel: "Visit Site Button",
67
- children: /*#__PURE__*/_jsx(Text, {
68
- style: styles.buttonText,
69
- children: "Visit Site"
70
- })
71
- })]
72
- })
73
- });
74
- };
75
- const styles = StyleSheet.create({
76
- container: {
77
- backgroundColor: 'white',
78
- borderRadius: 10
79
- },
80
- creative: {
81
- resizeMode: 'contain',
82
- borderTopLeftRadius: 10,
83
- borderTopRightRadius: 10
84
- },
85
- options: {
86
- flexDirection: 'row',
87
- gap: 2,
88
- position: 'absolute',
89
- top: 5,
90
- left: 5
91
- },
92
- option: {
93
- color: 'green',
94
- backgroundColor: '#00000022',
95
- width: 20,
96
- height: 20,
97
- textAlign: 'center'
98
- },
99
- adContent: {
100
- width: '100%',
101
- backgroundColor: 'white',
102
- flexDirection: 'row',
103
- justifyContent: 'space-between',
104
- paddingHorizontal: 10,
105
- paddingVertical: 10,
106
- alignItems: 'center'
107
- },
108
- logo: {
109
- width: 35,
110
- height: 35,
111
- resizeMode: 'contain',
112
- borderRadius: 2
113
- },
114
- textContainer: {
115
- width: Dimensions.get('window').width - 150
116
- },
117
- titleRow: {
118
- flexDirection: 'row',
119
- alignItems: 'center',
120
- gap: 5,
121
- width: Dimensions.get('window').width - 200
122
- },
123
- adBadge: {
124
- color: 'white',
125
- backgroundColor: 'green',
126
- width: 40,
127
- borderRadius: 4,
128
- textAlign: 'center'
129
- },
130
- title: {
131
- color: 'black'
132
- },
133
- description: {
134
- color: 'black'
135
- },
136
- button: {
137
- paddingHorizontal: 10,
138
- paddingVertical: 5,
139
- borderWidth: 1,
140
- borderColor: 'green',
141
- borderRadius: 5,
142
- alignItems: 'center',
143
- justifyContent: 'center',
144
- height: 40
145
- },
146
- buttonText: {
147
- color: 'green'
148
- }
149
- });
150
- //# sourceMappingURL=BottomBannerAd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","useEffect","useState","Dimensions","Image","Linking","StyleSheet","Text","View","TouchableOpacity","TouchableWithoutFeedback","Adgeist","jsx","_jsx","jsxs","_jsxs","BottomBannerAd","dataPublisherId","dataAdSlot","adData","setAdData","response","fetchCreative","creative","data","sendCreativeAnalytic","_id","error","console","handleClick","ctaUrl","openURL","catch","err","fileUrl","style","styles","container","onPress","accessible","accessibilityLabel","children","adContent","logo","source","uri","textContainer","titleRow","adBadge","title","numberOfLines","ellipsizeMode","description","button","buttonText","create","backgroundColor","borderRadius","resizeMode","borderTopLeftRadius","borderTopRightRadius","options","flexDirection","gap","position","top","left","option","color","width","height","textAlign","justifyContent","paddingHorizontal","paddingVertical","alignItems","get","borderWidth","borderColor"],"sourceRoot":"../../../src","sources":["components/BottomBannerAd.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- interface AdBannerTypes {
3
- dataPublisherId: string;
4
- dataAdSlot: string;
5
- }
6
- export declare const BottomBannerAd: React.FC<AdBannerTypes>;
7
- export {};
8
- //# sourceMappingURL=BottomBannerAd.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BottomBannerAd.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomBannerAd.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAyBnD,UAAU,aAAa;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA8ElD,CAAC"}