@adadapted/react-native-sdk 3.1.6 → 3.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/.project +18 -1
- package/android/.settings/org.eclipse.buildship.core.prefs +4 -4
- package/android/bin/.project +34 -0
- package/android/bin/.settings/org.eclipse.buildship.core.prefs +13 -0
- package/android/bin/build.gradle +130 -0
- package/android/bin/gradle.properties +4 -0
- package/android/bin/src/main/AndroidManifest.xml +4 -0
- package/android/bin/src/main/java/com/adadaptedreactnativesdk/AdadaptedReactNativeSdkModule.kt +115 -0
- package/android/bin/src/main/java/com/adadaptedreactnativesdk/AdadaptedReactNativeSdkPackage.kt +20 -0
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/adadaptedreactnativesdk/AdadaptedReactNativeSdkModule.kt +1 -1
- package/lib/commonjs/api/adadaptedApiRequests.mock.js +0 -20
- package/lib/commonjs/api/adadaptedApiRequests.mock.js.map +1 -1
- package/lib/commonjs/api/adadaptedApiTypes.js +0 -5
- package/lib/commonjs/api/adadaptedApiTypes.js.map +1 -1
- package/lib/commonjs/components/AdZone.js +11 -41
- package/lib/commonjs/components/AdZone.js.map +1 -1
- package/lib/commonjs/index.js +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/api/adadaptedApiRequests.mock.js +0 -20
- package/lib/module/api/adadaptedApiRequests.mock.js.map +1 -1
- package/lib/module/api/adadaptedApiTypes.js +0 -5
- package/lib/module/api/adadaptedApiTypes.js.map +1 -1
- package/lib/module/components/AdZone.js +11 -40
- package/lib/module/components/AdZone.js.map +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/api/adadaptedApiTypes.d.ts +0 -47
- package/lib/typescript/src/components/AdZone.d.ts +0 -4
- package/lib/typescript/src/index.d.ts +1 -1
- package/package.json +12 -13
- package/src/api/adadaptedApiRequests.mock.ts +0 -20
- package/src/api/adadaptedApiTypes.ts +0 -48
- package/src/components/AdZone.tsx +14 -57
- package/src/index.tsx +1 -1
- package/lib/commonjs/components/AdPopup.js +0 -352
- package/lib/commonjs/components/AdPopup.js.map +0 -1
- package/lib/commonjs/components/AdPopup.test.js +0 -60
- package/lib/commonjs/components/AdPopup.test.js.map +0 -1
- package/lib/module/components/AdPopup.js +0 -339
- package/lib/module/components/AdPopup.js.map +0 -1
- package/lib/module/components/AdPopup.test.js +0 -50
- package/lib/module/components/AdPopup.test.js.map +0 -1
- package/lib/typescript/src/components/AdPopup.d.ts +0 -75
- package/lib/typescript/src/components/AdPopup.test.d.ts +0 -1
- package/src/components/AdPopup.test.tsx +0 -60
- package/src/components/AdPopup.tsx +0 -471
package/android/.project
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<projectDescription>
|
|
3
|
-
<name>
|
|
3
|
+
<name>adadaptedreactnativesdk</name>
|
|
4
4
|
<comment>Project android_ created by Buildship.</comment>
|
|
5
5
|
<projects>
|
|
6
6
|
</projects>
|
|
7
7
|
<buildSpec>
|
|
8
|
+
<buildCommand>
|
|
9
|
+
<name>org.eclipse.jdt.core.javabuilder</name>
|
|
10
|
+
<arguments>
|
|
11
|
+
</arguments>
|
|
12
|
+
</buildCommand>
|
|
8
13
|
<buildCommand>
|
|
9
14
|
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
|
10
15
|
<arguments>
|
|
@@ -12,6 +17,18 @@
|
|
|
12
17
|
</buildCommand>
|
|
13
18
|
</buildSpec>
|
|
14
19
|
<natures>
|
|
20
|
+
<nature>org.eclipse.jdt.core.javanature</nature>
|
|
15
21
|
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
|
16
22
|
</natures>
|
|
23
|
+
<filteredResources>
|
|
24
|
+
<filter>
|
|
25
|
+
<id>0</id>
|
|
26
|
+
<name></name>
|
|
27
|
+
<type>30</type>
|
|
28
|
+
<matcher>
|
|
29
|
+
<id>org.eclipse.core.resources.regexFilterMatcher</id>
|
|
30
|
+
<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
|
|
31
|
+
</matcher>
|
|
32
|
+
</filter>
|
|
33
|
+
</filteredResources>
|
|
17
34
|
</projectDescription>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
arguments
|
|
1
|
+
arguments=--init-script /var/folders/vw/1yz06gyj201f5y15zm_xv9gr0000gn/T/d146c9752a26f79b52047fb6dc6ed385d064e120494f96f08ca63a317c41f94c.gradle --init-script /var/folders/vw/1yz06gyj201f5y15zm_xv9gr0000gn/T/52cde0cfcf3e28b8b7510e992210d9614505e0911af0c190bd590d7158574963.gradle
|
|
2
2
|
auto.sync=false
|
|
3
3
|
build.scans.enabled=false
|
|
4
|
-
connection.gradle.distribution=GRADLE_DISTRIBUTION(VERSION(
|
|
5
|
-
connection.project.dir
|
|
4
|
+
connection.gradle.distribution=GRADLE_DISTRIBUTION(VERSION(7.4.2))
|
|
5
|
+
connection.project.dir=../example/android
|
|
6
6
|
eclipse.preferences.version=1
|
|
7
7
|
gradle.user.home=
|
|
8
|
-
java.home=/Library/Java/JavaVirtualMachines/
|
|
8
|
+
java.home=/Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
|
|
9
9
|
jvm.arguments=
|
|
10
10
|
offline.mode=false
|
|
11
11
|
override.workspace.settings=true
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<projectDescription>
|
|
3
|
+
<name>adadaptedreactnativesdk</name>
|
|
4
|
+
<comment>Project android_ created by Buildship.</comment>
|
|
5
|
+
<projects>
|
|
6
|
+
</projects>
|
|
7
|
+
<buildSpec>
|
|
8
|
+
<buildCommand>
|
|
9
|
+
<name>org.eclipse.jdt.core.javabuilder</name>
|
|
10
|
+
<arguments>
|
|
11
|
+
</arguments>
|
|
12
|
+
</buildCommand>
|
|
13
|
+
<buildCommand>
|
|
14
|
+
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
|
15
|
+
<arguments>
|
|
16
|
+
</arguments>
|
|
17
|
+
</buildCommand>
|
|
18
|
+
</buildSpec>
|
|
19
|
+
<natures>
|
|
20
|
+
<nature>org.eclipse.jdt.core.javanature</nature>
|
|
21
|
+
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
|
22
|
+
</natures>
|
|
23
|
+
<filteredResources>
|
|
24
|
+
<filter>
|
|
25
|
+
<id>0</id>
|
|
26
|
+
<name></name>
|
|
27
|
+
<type>30</type>
|
|
28
|
+
<matcher>
|
|
29
|
+
<id>org.eclipse.core.resources.regexFilterMatcher</id>
|
|
30
|
+
<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
|
|
31
|
+
</matcher>
|
|
32
|
+
</filter>
|
|
33
|
+
</filteredResources>
|
|
34
|
+
</projectDescription>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
arguments=--init-script /var/folders/vw/1yz06gyj201f5y15zm_xv9gr0000gn/T/d146c9752a26f79b52047fb6dc6ed385d064e120494f96f08ca63a317c41f94c.gradle --init-script /var/folders/vw/1yz06gyj201f5y15zm_xv9gr0000gn/T/52cde0cfcf3e28b8b7510e992210d9614505e0911af0c190bd590d7158574963.gradle
|
|
2
|
+
auto.sync=false
|
|
3
|
+
build.scans.enabled=false
|
|
4
|
+
connection.gradle.distribution=GRADLE_DISTRIBUTION(VERSION(7.4.2))
|
|
5
|
+
connection.project.dir=../example/android
|
|
6
|
+
eclipse.preferences.version=1
|
|
7
|
+
gradle.user.home=
|
|
8
|
+
java.home=/Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
|
|
9
|
+
jvm.arguments=
|
|
10
|
+
offline.mode=false
|
|
11
|
+
override.workspace.settings=true
|
|
12
|
+
show.console.view=true
|
|
13
|
+
show.executions.view=true
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
buildscript {
|
|
2
|
+
// Buildscript is evaluated before everything else so we can't use getExtOrDefault
|
|
3
|
+
def kotlin_version = rootProject.ext.has('kotlinVersion') ? rootProject.ext.get('kotlinVersion') : project.properties['AdadaptedReactNativeSdk_kotlinVersion']
|
|
4
|
+
|
|
5
|
+
repositories {
|
|
6
|
+
google()
|
|
7
|
+
jcenter()
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
dependencies {
|
|
11
|
+
classpath 'com.android.tools.build:gradle:3.2.1'
|
|
12
|
+
// noinspection DifferentKotlinGradleVersion
|
|
13
|
+
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
apply plugin: 'com.android.library'
|
|
18
|
+
apply plugin: 'kotlin-android'
|
|
19
|
+
|
|
20
|
+
def getExtOrDefault(name) {
|
|
21
|
+
return rootProject.ext.has(name) ? rootProject.ext.get(name) : project.properties['AdadaptedReactNativeSdk_' + name]
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
def getExtOrIntegerDefault(name) {
|
|
25
|
+
return rootProject.ext.has(name) ? rootProject.ext.get(name) : (project.properties['AdadaptedReactNativeSdk_' + name]).toInteger()
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
android {
|
|
29
|
+
compileSdkVersion getExtOrIntegerDefault('compileSdkVersion')
|
|
30
|
+
buildToolsVersion getExtOrDefault('buildToolsVersion')
|
|
31
|
+
defaultConfig {
|
|
32
|
+
minSdkVersion 21
|
|
33
|
+
targetSdkVersion getExtOrIntegerDefault('targetSdkVersion')
|
|
34
|
+
versionCode 1
|
|
35
|
+
versionName "1.0"
|
|
36
|
+
}
|
|
37
|
+
buildTypes {
|
|
38
|
+
release {
|
|
39
|
+
minifyEnabled false
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
lintOptions {
|
|
43
|
+
disable 'GradleCompatible'
|
|
44
|
+
}
|
|
45
|
+
compileOptions {
|
|
46
|
+
sourceCompatibility JavaVersion.VERSION_1_8
|
|
47
|
+
targetCompatibility JavaVersion.VERSION_1_8
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
repositories {
|
|
52
|
+
mavenCentral()
|
|
53
|
+
jcenter()
|
|
54
|
+
google()
|
|
55
|
+
|
|
56
|
+
def found = false
|
|
57
|
+
def defaultDir = null
|
|
58
|
+
def androidSourcesName = 'React Native sources'
|
|
59
|
+
|
|
60
|
+
if (rootProject.ext.has('reactNativeAndroidRoot')) {
|
|
61
|
+
defaultDir = rootProject.ext.get('reactNativeAndroidRoot')
|
|
62
|
+
} else {
|
|
63
|
+
defaultDir = new File(
|
|
64
|
+
projectDir,
|
|
65
|
+
'/../../../node_modules/react-native/android'
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
if (defaultDir.exists()) {
|
|
70
|
+
maven {
|
|
71
|
+
url defaultDir.toString()
|
|
72
|
+
name androidSourcesName
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
logger.info(":${project.name}:reactNativeAndroidRoot ${defaultDir.canonicalPath}")
|
|
76
|
+
found = true
|
|
77
|
+
} else {
|
|
78
|
+
def parentDir = rootProject.projectDir
|
|
79
|
+
|
|
80
|
+
1.upto(5, {
|
|
81
|
+
if (found) return true
|
|
82
|
+
parentDir = parentDir.parentFile
|
|
83
|
+
|
|
84
|
+
def androidSourcesDir = new File(
|
|
85
|
+
parentDir,
|
|
86
|
+
'node_modules/react-native'
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
def androidPrebuiltBinaryDir = new File(
|
|
90
|
+
parentDir,
|
|
91
|
+
'node_modules/react-native/android'
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
if (androidPrebuiltBinaryDir.exists()) {
|
|
95
|
+
maven {
|
|
96
|
+
url androidPrebuiltBinaryDir.toString()
|
|
97
|
+
name androidSourcesName
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
logger.info(":${project.name}:reactNativeAndroidRoot ${androidPrebuiltBinaryDir.canonicalPath}")
|
|
101
|
+
found = true
|
|
102
|
+
} else if (androidSourcesDir.exists()) {
|
|
103
|
+
maven {
|
|
104
|
+
url androidSourcesDir.toString()
|
|
105
|
+
name androidSourcesName
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
logger.info(":${project.name}:reactNativeAndroidRoot ${androidSourcesDir.canonicalPath}")
|
|
109
|
+
found = true
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (!found) {
|
|
115
|
+
throw new GradleException(
|
|
116
|
+
"${project.name}: unable to locate React Native android sources. " +
|
|
117
|
+
"Ensure you have you installed React Native as a dependency in your project and try again."
|
|
118
|
+
)
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
def kotlin_version = getExtOrDefault('kotlinVersion')
|
|
123
|
+
|
|
124
|
+
dependencies {
|
|
125
|
+
// noinspection GradleDynamicVersion
|
|
126
|
+
api 'com.facebook.react:react-native:+'
|
|
127
|
+
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
128
|
+
|
|
129
|
+
implementation 'com.google.android.gms:play-services-ads:12.0.1'
|
|
130
|
+
}
|
package/android/bin/src/main/java/com/adadaptedreactnativesdk/AdadaptedReactNativeSdkModule.kt
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// See https://facebook.github.io/react-native/docs/native-modules-android
|
|
2
|
+
package com.adadaptedreactnativesdk;
|
|
3
|
+
|
|
4
|
+
import android.content.pm.PackageInfo;
|
|
5
|
+
import android.content.pm.PackageManager;
|
|
6
|
+
import android.util.DisplayMetrics;
|
|
7
|
+
import android.util.Log;
|
|
8
|
+
import org.json.*;
|
|
9
|
+
import java.io.IOException;
|
|
10
|
+
import java.util.Locale;
|
|
11
|
+
import java.util.TimeZone;
|
|
12
|
+
import com.facebook.react.bridge.ReactApplicationContext;
|
|
13
|
+
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
14
|
+
import com.facebook.react.bridge.ReactMethod;
|
|
15
|
+
import com.facebook.react.bridge.Promise;
|
|
16
|
+
import com.google.android.gms.ads.identifier.AdvertisingIdClient;
|
|
17
|
+
import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
|
|
18
|
+
import com.google.android.gms.common.GooglePlayServicesRepairableException;
|
|
19
|
+
import android.telephony.TelephonyManager;
|
|
20
|
+
import android.content.Context;
|
|
21
|
+
|
|
22
|
+
class AdadaptedReactNativeSdkModule(val _reactContext: ReactApplicationContext) : ReactContextBaseJavaModule(_reactContext) {
|
|
23
|
+
val reactContext = _reactContext;
|
|
24
|
+
|
|
25
|
+
val TAG: String = "ReactNative";
|
|
26
|
+
val UNKNOWN_VALUE: String = "Unknown";
|
|
27
|
+
|
|
28
|
+
override fun getName(): String {
|
|
29
|
+
return "AdadaptedReactNativeSdk";
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
@ReactMethod
|
|
33
|
+
fun getDeviceInfo(promise: Promise) {
|
|
34
|
+
val deviceDisplayMetrics: DisplayMetrics = reactContext.getResources().getDisplayMetrics();
|
|
35
|
+
var gaidInfo: AdvertisingIdClient.Info? = null;
|
|
36
|
+
var bundleVersion: String = UNKNOWN_VALUE;
|
|
37
|
+
var deviceCarrier: String = "n/a";
|
|
38
|
+
var deviceWidth: Int = 0;
|
|
39
|
+
var deviceHeight: Int = 0;
|
|
40
|
+
var deviceDensity: String = "";
|
|
41
|
+
var gaid: String = "";
|
|
42
|
+
var adTrackingEnabled: Boolean = false;
|
|
43
|
+
|
|
44
|
+
val mTelephonyMgr: TelephonyManager = reactContext.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager;
|
|
45
|
+
|
|
46
|
+
if (mTelephonyMgr != null && mTelephonyMgr.getNetworkOperatorName() != null) {
|
|
47
|
+
deviceCarrier = mTelephonyMgr.getNetworkOperatorName();
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
try {
|
|
51
|
+
gaidInfo = AdvertisingIdClient.getAdvertisingIdInfo(reactContext);
|
|
52
|
+
}
|
|
53
|
+
catch (ex: GooglePlayServicesNotAvailableException) {
|
|
54
|
+
logGaidException();
|
|
55
|
+
}
|
|
56
|
+
catch (ex: GooglePlayServicesRepairableException) {
|
|
57
|
+
logGaidException();
|
|
58
|
+
}
|
|
59
|
+
catch (ex: IOException) {
|
|
60
|
+
logGaidException();
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
try {
|
|
64
|
+
val packageInfo: PackageInfo = reactContext.getPackageManager().getPackageInfo(reactContext.getPackageName(), 0);
|
|
65
|
+
|
|
66
|
+
if (packageInfo != null) {
|
|
67
|
+
bundleVersion = packageInfo.versionName;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
catch(ex: PackageManager.NameNotFoundException) {
|
|
71
|
+
bundleVersion = UNKNOWN_VALUE;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if (gaidInfo != null) {
|
|
75
|
+
gaid = gaidInfo.getId();
|
|
76
|
+
adTrackingEnabled = !gaidInfo.isLimitAdTrackingEnabled();
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (deviceDisplayMetrics != null) {
|
|
80
|
+
deviceWidth = deviceDisplayMetrics.widthPixels;
|
|
81
|
+
deviceHeight = deviceDisplayMetrics.heightPixels;
|
|
82
|
+
deviceDensity = deviceDisplayMetrics.density.toString();
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Create the HashMap that will be turned into a final JSON result.
|
|
86
|
+
var finalDeviceData: HashMap<String, Any> = HashMap<String, Any>();
|
|
87
|
+
|
|
88
|
+
finalDeviceData.put("udid", gaid);
|
|
89
|
+
finalDeviceData.put("deviceName", android.os.Build.DEVICE);
|
|
90
|
+
finalDeviceData.put("systemName", "android");
|
|
91
|
+
finalDeviceData.put("systemVersion", android.os.Build.VERSION.RELEASE);
|
|
92
|
+
finalDeviceData.put("deviceCarrier", deviceCarrier);
|
|
93
|
+
finalDeviceData.put("deviceModel", android.os.Build.MODEL);
|
|
94
|
+
finalDeviceData.put("deviceWidth", deviceWidth);
|
|
95
|
+
finalDeviceData.put("deviceHeight", deviceHeight);
|
|
96
|
+
finalDeviceData.put("deviceScreenDensity", deviceDensity);
|
|
97
|
+
finalDeviceData.put("deviceLocale", Locale.getDefault().toString());
|
|
98
|
+
finalDeviceData.put("bundleId", reactContext.getPackageName());
|
|
99
|
+
finalDeviceData.put("bundleVersion", bundleVersion);
|
|
100
|
+
finalDeviceData.put("deviceTimezone", TimeZone.getDefault().getID());
|
|
101
|
+
finalDeviceData.put("isAdTrackingEnabled", adTrackingEnabled);
|
|
102
|
+
|
|
103
|
+
promise.resolve(JSONObject(finalDeviceData as Map<*, *>?).toString());
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
fun logGaidException() {
|
|
107
|
+
Log.w(TAG, "Problem retrieving Google Play Advertiser Info");
|
|
108
|
+
Log.w(TAG, "GAID_UNAVAILABLE");
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
@ReactMethod
|
|
112
|
+
fun storeCurrentSessionId(sessionId: String) {
|
|
113
|
+
// noop
|
|
114
|
+
}
|
|
115
|
+
}
|
package/android/bin/src/main/java/com/adadaptedreactnativesdk/AdadaptedReactNativeSdkPackage.kt
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
package com.adadaptedreactnativesdk
|
|
2
|
+
|
|
3
|
+
import java.util.Arrays
|
|
4
|
+
import java.util.Collections
|
|
5
|
+
|
|
6
|
+
import com.facebook.react.ReactPackage
|
|
7
|
+
import com.facebook.react.bridge.NativeModule
|
|
8
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
9
|
+
import com.facebook.react.uimanager.ViewManager
|
|
10
|
+
import com.facebook.react.bridge.JavaScriptModule
|
|
11
|
+
|
|
12
|
+
class AdadaptedReactNativeSdkPackage : ReactPackage {
|
|
13
|
+
override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> {
|
|
14
|
+
return Arrays.asList<NativeModule>(AdadaptedReactNativeSdkModule(reactContext))
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
|
|
18
|
+
return emptyList<ViewManager<*, *>>()
|
|
19
|
+
}
|
|
20
|
+
}
|
package/android/build.gradle
CHANGED
|
@@ -29,7 +29,7 @@ android {
|
|
|
29
29
|
compileSdkVersion getExtOrIntegerDefault('compileSdkVersion')
|
|
30
30
|
buildToolsVersion getExtOrDefault('buildToolsVersion')
|
|
31
31
|
defaultConfig {
|
|
32
|
-
minSdkVersion
|
|
32
|
+
minSdkVersion 21
|
|
33
33
|
targetSdkVersion getExtOrIntegerDefault('targetSdkVersion')
|
|
34
34
|
versionCode 1
|
|
35
35
|
versionName "1.0"
|
|
@@ -100,7 +100,7 @@ class AdadaptedReactNativeSdkModule(val _reactContext: ReactApplicationContext)
|
|
|
100
100
|
finalDeviceData.put("deviceTimezone", TimeZone.getDefault().getID());
|
|
101
101
|
finalDeviceData.put("isAdTrackingEnabled", adTrackingEnabled);
|
|
102
102
|
|
|
103
|
-
promise.resolve(JSONObject(finalDeviceData).toString());
|
|
103
|
+
promise.resolve(JSONObject(finalDeviceData as Map<*, *>?).toString());
|
|
104
104
|
}
|
|
105
105
|
|
|
106
106
|
fun logGaidException() {
|
|
@@ -215,16 +215,6 @@ const AD_SESSION_DATA = {
|
|
|
215
215
|
product_sku: "",
|
|
216
216
|
product_title: "Sample Product"
|
|
217
217
|
}]
|
|
218
|
-
},
|
|
219
|
-
popup: {
|
|
220
|
-
title_text: "",
|
|
221
|
-
background_color: "",
|
|
222
|
-
text_color: "",
|
|
223
|
-
alt_close_btn: "",
|
|
224
|
-
type: "",
|
|
225
|
-
hide_banner: false,
|
|
226
|
-
hide_close_btn: false,
|
|
227
|
-
hide_browser_nav: false
|
|
228
218
|
}
|
|
229
219
|
}]
|
|
230
220
|
}
|
|
@@ -267,16 +257,6 @@ const REFRESHED_AD_SESSION_DATA = {
|
|
|
267
257
|
product_sku: "",
|
|
268
258
|
product_title: "Sample Product"
|
|
269
259
|
}]
|
|
270
|
-
},
|
|
271
|
-
popup: {
|
|
272
|
-
title_text: "",
|
|
273
|
-
background_color: "",
|
|
274
|
-
text_color: "",
|
|
275
|
-
alt_close_btn: "",
|
|
276
|
-
type: "",
|
|
277
|
-
hide_banner: false,
|
|
278
|
-
hide_close_btn: false,
|
|
279
|
-
hide_browser_nav: false
|
|
280
260
|
}
|
|
281
261
|
}]
|
|
282
262
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["adadaptedApiRequests.mock.ts"],"names":["initializeSession","Promise","resolve","data","AD_SESSION_DATA","then","undefined","config","headers","status","statusText","refreshSessionData","REFRESHED_AD_SESSION_DATA","reportAdEvent","results","getKeywordIntercepts","KEYWORD_INTERCEPT_DATA","reportInterceptEvent","reportListManagerEvents","reportPayloadContentStatus","retrievePayloadContent","payloads","payload_id","detailed_list_items","product_title","product_barcode","product_sku","product_image","product_discount","product_brand","product_category","session_id","will_serve_ads","active_campaigns","session_expires_at","polling_interval_ms","zones","id","port_height","port_width","land_height","land_width","ads","ad_id","impression_id","refresh_time","hide_after_interaction","type","creative_url","tracking_html","action_type","AdActionType","CONTENT","action_path","payload","popup","title_text","background_color","text_color","alt_close_btn","hide_banner","hide_close_btn","hide_browser_nav","search_id","min_match_length","terms","term_id","term","replacement","priority"],"mappings":"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","sourcesContent":["/**\n * Contains all API request mocks for the Rewards API.\n */\nimport { AxiosResponse } from \"axios\";\nimport {\n AdActionType,\n AdSession,\n InitializeSessionResponse,\n KeywordIntercepts,\n KeywordInterceptsResponse,\n RefreshSessionDataResponse,\n ReportAdEventResponse,\n ReportInterceptEventResponse,\n RetrievePayloadItemDataResponse,\n} from \"./adadaptedApiTypes\";\n\n/**\n * Mocks the API call for initializing a session.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function initializeSession(): Promise<\n AxiosResponse<InitializeSessionResponse>\n> {\n return new Promise<AxiosResponse<InitializeSessionResponse>>((resolve) => {\n resolve({\n data: AD_SESSION_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for refreshing session data.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function refreshSessionData(): Promise<\n AxiosResponse<RefreshSessionDataResponse>\n> {\n return new Promise<AxiosResponse<RefreshSessionDataResponse>>((resolve) => {\n resolve({\n data: REFRESHED_AD_SESSION_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting an ad event.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportAdEvent(): Promise<AxiosResponse<ReportAdEventResponse>> {\n return new Promise<AxiosResponse<ReportAdEventResponse>>((resolve) => {\n resolve({\n data: {\n results: [\"Ok\"],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for getting keyword intercepts.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function getKeywordIntercepts(): Promise<\n AxiosResponse<KeywordInterceptsResponse>\n> {\n return new Promise<AxiosResponse<KeywordInterceptsResponse>>((resolve) => {\n resolve({\n data: KEYWORD_INTERCEPT_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting an ad event.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportInterceptEvent(): Promise<\n AxiosResponse<ReportInterceptEventResponse>\n> {\n return new Promise<AxiosResponse<ReportInterceptEventResponse>>(\n (resolve) => {\n resolve({\n data: {\n results: [\"Ok\"],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n }\n );\n}\n\n/**\n * Mocks the API call for reporting List Manager events.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportListManagerEvents(): Promise<AxiosResponse<void>> {\n return new Promise<AxiosResponse<void>>((resolve) => {\n resolve({\n data: undefined,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting Payload content status.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportPayloadContentStatus(): Promise<AxiosResponse<void>> {\n return new Promise<AxiosResponse<void>>((resolve) => {\n resolve({\n data: undefined,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting Payload content status.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function retrievePayloadContent(): Promise<\n AxiosResponse<RetrievePayloadItemDataResponse>\n> {\n return new Promise<AxiosResponse<RetrievePayloadItemDataResponse>>(\n (resolve) => {\n resolve({\n data: {\n payloads: [\n {\n payload_id: \"TEST_PAYLOAD_1\",\n detailed_list_items: [\n {\n product_title: \"Test Product 1\",\n product_barcode: \"\",\n product_sku: \"\",\n product_image: \"\",\n product_discount: \"\",\n product_brand: \"\",\n product_category: \"\",\n },\n ],\n },\n ],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n }\n );\n}\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst AD_SESSION_DATA: AdSession = {\n session_id: \"TEST_SESSION_ID\",\n will_serve_ads: true,\n active_campaigns: true,\n session_expires_at: 1587684561,\n polling_interval_ms: 1000,\n zones: {\n 100838: {\n id: \"100838\",\n port_height: 250,\n port_width: 320,\n land_height: 250,\n land_width: 320,\n ads: [\n {\n ad_id: \"1815\",\n impression_id: \"100838::C4D792785EA1EC91\",\n refresh_time: 60,\n hide_after_interaction: false,\n type: \"html\",\n creative_url:\n \"https://testurl.com/a/NTLKNZKYMMI2NTM1;100838;1815?session_id=TEST_SESSION_ID&udid=00000000-0000-0000-0000-000000000000\",\n tracking_html: \"<html></html>\",\n action_type: AdActionType.CONTENT,\n action_path: \"\",\n payload: {\n detailed_list_items: [\n {\n product_barcode: \"0\",\n product_brand: \"Brand\",\n product_category: \"\",\n product_discount: \"\",\n product_image: \"\",\n product_sku: \"\",\n product_title: \"Sample Product\",\n },\n ],\n },\n popup: {\n title_text: \"\",\n background_color: \"\",\n text_color: \"\",\n alt_close_btn: \"\",\n type: \"\",\n hide_banner: false,\n hide_close_btn: false,\n hide_browser_nav: false,\n },\n },\n ],\n },\n },\n};\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst REFRESHED_AD_SESSION_DATA: AdSession = {\n session_id: \"TEST_SESSION_ID\",\n will_serve_ads: true,\n active_campaigns: true,\n session_expires_at: 1587684561,\n polling_interval_ms: 1000,\n zones: {\n 100838: {\n id: \"100838\",\n port_height: 250,\n port_width: 320,\n land_height: 250,\n land_width: 320,\n ads: [\n {\n ad_id: \"1816\",\n impression_id: \"100838::C4D792785EA1EC91\",\n refresh_time: 30,\n hide_after_interaction: false,\n type: \"html\",\n creative_url:\n \"https://testurl.com/a/NTLKNZKYMMI2NTM1;100838;1815?session_id=TEST_SESSION_ID&udid=00000000-0000-0000-0000-000000000000\",\n tracking_html: \"<html></html>\",\n action_type: AdActionType.CONTENT,\n action_path: \"\",\n payload: {\n detailed_list_items: [\n {\n product_barcode: \"0\",\n product_brand: \"Brand\",\n product_category: \"\",\n product_discount: \"\",\n product_image: \"\",\n product_sku: \"\",\n product_title: \"Sample Product\",\n },\n ],\n },\n popup: {\n title_text: \"\",\n background_color: \"\",\n text_color: \"\",\n alt_close_btn: \"\",\n type: \"\",\n hide_banner: false,\n hide_close_btn: false,\n hide_browser_nav: false,\n },\n },\n ],\n },\n },\n};\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst KEYWORD_INTERCEPT_DATA: KeywordIntercepts = {\n search_id: \"test-search-id\",\n min_match_length: 3,\n terms: [\n {\n term_id: \"test-term-id-1\",\n term: \"Milk\",\n replacement: \"Fairlife Milk\",\n priority: 1,\n },\n {\n term_id: \"test-term-id-2\",\n term: \"milk\",\n replacement: \"A2 Milk\",\n priority: 0,\n },\n {\n term_id: \"test-term-id-3\",\n term: \"CHEESE\",\n replacement: \"Kraft Singles\",\n priority: 0,\n },\n {\n term_id: \"test-term-id-4\",\n term: \"cOfFeE\",\n replacement: \"Folgers Instant Coffee\",\n priority: 0,\n },\n ],\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["adadaptedApiRequests.mock.ts"],"names":["initializeSession","Promise","resolve","data","AD_SESSION_DATA","then","undefined","config","headers","status","statusText","refreshSessionData","REFRESHED_AD_SESSION_DATA","reportAdEvent","results","getKeywordIntercepts","KEYWORD_INTERCEPT_DATA","reportInterceptEvent","reportListManagerEvents","reportPayloadContentStatus","retrievePayloadContent","payloads","payload_id","detailed_list_items","product_title","product_barcode","product_sku","product_image","product_discount","product_brand","product_category","session_id","will_serve_ads","active_campaigns","session_expires_at","polling_interval_ms","zones","id","port_height","port_width","land_height","land_width","ads","ad_id","impression_id","refresh_time","hide_after_interaction","type","creative_url","tracking_html","action_type","AdActionType","CONTENT","action_path","payload","search_id","min_match_length","terms","term_id","term","replacement","priority"],"mappings":"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","sourcesContent":["/**\n * Contains all API request mocks for the Rewards API.\n */\nimport { AxiosResponse } from \"axios\";\nimport {\n AdActionType,\n AdSession,\n InitializeSessionResponse,\n KeywordIntercepts,\n KeywordInterceptsResponse,\n RefreshSessionDataResponse,\n ReportAdEventResponse,\n ReportInterceptEventResponse,\n RetrievePayloadItemDataResponse,\n} from \"./adadaptedApiTypes\";\n\n/**\n * Mocks the API call for initializing a session.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function initializeSession(): Promise<\n AxiosResponse<InitializeSessionResponse>\n> {\n return new Promise<AxiosResponse<InitializeSessionResponse>>((resolve) => {\n resolve({\n data: AD_SESSION_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for refreshing session data.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function refreshSessionData(): Promise<\n AxiosResponse<RefreshSessionDataResponse>\n> {\n return new Promise<AxiosResponse<RefreshSessionDataResponse>>((resolve) => {\n resolve({\n data: REFRESHED_AD_SESSION_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting an ad event.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportAdEvent(): Promise<AxiosResponse<ReportAdEventResponse>> {\n return new Promise<AxiosResponse<ReportAdEventResponse>>((resolve) => {\n resolve({\n data: {\n results: [\"Ok\"],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for getting keyword intercepts.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function getKeywordIntercepts(): Promise<\n AxiosResponse<KeywordInterceptsResponse>\n> {\n return new Promise<AxiosResponse<KeywordInterceptsResponse>>((resolve) => {\n resolve({\n data: KEYWORD_INTERCEPT_DATA,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting an ad event.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportInterceptEvent(): Promise<\n AxiosResponse<ReportInterceptEventResponse>\n> {\n return new Promise<AxiosResponse<ReportInterceptEventResponse>>(\n (resolve) => {\n resolve({\n data: {\n results: [\"Ok\"],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n }\n );\n}\n\n/**\n * Mocks the API call for reporting List Manager events.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportListManagerEvents(): Promise<AxiosResponse<void>> {\n return new Promise<AxiosResponse<void>>((resolve) => {\n resolve({\n data: undefined,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting Payload content status.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function reportPayloadContentStatus(): Promise<AxiosResponse<void>> {\n return new Promise<AxiosResponse<void>>((resolve) => {\n resolve({\n data: undefined,\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n });\n}\n\n/**\n * Mocks the API call for reporting Payload content status.\n * @returns a promise of an {@link AxiosResponse} of the mocked data.\n */\nexport function retrievePayloadContent(): Promise<\n AxiosResponse<RetrievePayloadItemDataResponse>\n> {\n return new Promise<AxiosResponse<RetrievePayloadItemDataResponse>>(\n (resolve) => {\n resolve({\n data: {\n payloads: [\n {\n payload_id: \"TEST_PAYLOAD_1\",\n detailed_list_items: [\n {\n product_title: \"Test Product 1\",\n product_barcode: \"\",\n product_sku: \"\",\n product_image: \"\",\n product_discount: \"\",\n product_brand: \"\",\n product_category: \"\",\n },\n ],\n },\n ],\n },\n then: undefined,\n config: {},\n headers: {},\n status: 200,\n statusText: \"200\",\n });\n }\n );\n}\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst AD_SESSION_DATA: AdSession = {\n session_id: \"TEST_SESSION_ID\",\n will_serve_ads: true,\n active_campaigns: true,\n session_expires_at: 1587684561,\n polling_interval_ms: 1000,\n zones: {\n 100838: {\n id: \"100838\",\n port_height: 250,\n port_width: 320,\n land_height: 250,\n land_width: 320,\n ads: [\n {\n ad_id: \"1815\",\n impression_id: \"100838::C4D792785EA1EC91\",\n refresh_time: 60,\n hide_after_interaction: false,\n type: \"html\",\n creative_url:\n \"https://testurl.com/a/NTLKNZKYMMI2NTM1;100838;1815?session_id=TEST_SESSION_ID&udid=00000000-0000-0000-0000-000000000000\",\n tracking_html: \"<html></html>\",\n action_type: AdActionType.CONTENT,\n action_path: \"\",\n payload: {\n detailed_list_items: [\n {\n product_barcode: \"0\",\n product_brand: \"Brand\",\n product_category: \"\",\n product_discount: \"\",\n product_image: \"\",\n product_sku: \"\",\n product_title: \"Sample Product\",\n },\n ],\n },\n },\n ],\n },\n },\n};\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst REFRESHED_AD_SESSION_DATA: AdSession = {\n session_id: \"TEST_SESSION_ID\",\n will_serve_ads: true,\n active_campaigns: true,\n session_expires_at: 1587684561,\n polling_interval_ms: 1000,\n zones: {\n 100838: {\n id: \"100838\",\n port_height: 250,\n port_width: 320,\n land_height: 250,\n land_width: 320,\n ads: [\n {\n ad_id: \"1816\",\n impression_id: \"100838::C4D792785EA1EC91\",\n refresh_time: 30,\n hide_after_interaction: false,\n type: \"html\",\n creative_url:\n \"https://testurl.com/a/NTLKNZKYMMI2NTM1;100838;1815?session_id=TEST_SESSION_ID&udid=00000000-0000-0000-0000-000000000000\",\n tracking_html: \"<html></html>\",\n action_type: AdActionType.CONTENT,\n action_path: \"\",\n payload: {\n detailed_list_items: [\n {\n product_barcode: \"0\",\n product_brand: \"Brand\",\n product_category: \"\",\n product_discount: \"\",\n product_image: \"\",\n product_sku: \"\",\n product_title: \"Sample Product\",\n },\n ],\n },\n },\n ],\n },\n },\n};\n\n/**\n * Mock data for an {@link AdSession} object.\n */\nconst KEYWORD_INTERCEPT_DATA: KeywordIntercepts = {\n search_id: \"test-search-id\",\n min_match_length: 3,\n terms: [\n {\n term_id: \"test-term-id-1\",\n term: \"Milk\",\n replacement: \"Fairlife Milk\",\n priority: 1,\n },\n {\n term_id: \"test-term-id-2\",\n term: \"milk\",\n replacement: \"A2 Milk\",\n priority: 0,\n },\n {\n term_id: \"test-term-id-3\",\n term: \"CHEESE\",\n replacement: \"Kraft Singles\",\n priority: 0,\n },\n {\n term_id: \"test-term-id-4\",\n term: \"cOfFeE\",\n replacement: \"Folgers Instant Coffee\",\n priority: 0,\n },\n ],\n};\n"]}
|
|
@@ -32,10 +32,6 @@ exports.PayloadStatus = exports.ReportedEventType = exports.AdActionType = expor
|
|
|
32
32
|
* The definition of a Detailed List Item.
|
|
33
33
|
*/
|
|
34
34
|
|
|
35
|
-
/**
|
|
36
|
-
* The definition of an Ad Popup.
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
35
|
/**
|
|
40
36
|
* The definition of a Keyword Intercepts object.
|
|
41
37
|
*/
|
|
@@ -102,7 +98,6 @@ exports.AdActionType = AdActionType;
|
|
|
102
98
|
AdActionType["CONTENT"] = "c";
|
|
103
99
|
AdActionType["EXTERNAL"] = "e";
|
|
104
100
|
AdActionType["LINK"] = "l";
|
|
105
|
-
AdActionType["POPUP"] = "p";
|
|
106
101
|
AdActionType["APP"] = "a";
|
|
107
102
|
AdActionType["NONE"] = "n";
|
|
108
103
|
})(AdActionType || (exports.AdActionType = AdActionType = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["adadaptedApiTypes.ts"],"names":["ListManagerEventSource","ListManagerEventName","AdActionType","ReportedEventType","PayloadStatus"],"mappings":";;;;;;AAAA;AACA;AACA;;AACA;AACA;AACA;;AA4BA;AACA;AACA;;AA4BA;AACA;AACA;;AAiDA;AACA;AACA;;AAQA;AACA;AACA;;AAgCA;AACA;AACA;;AAoCA;AACA;AACA;;AAoCA;AACA;AACA;;AAkBA;AACA;AACA;;AAuBA;AACA;AACA;;AAoBA;AACA;AACA;;AA6BA;AACA;AACA;;AAoBA;AACA;AACA;;AAgBA;AACA;AACA;;AAYA;AACA;AACA;IACYA,sB;AAOZ;AACA;AACA;;;;WATYA,sB;AAAAA,EAAAA,sB;GAAAA,sB,sCAAAA,sB;;IAUAC,oB;AAeZ;AACA;AACA;;;;WAjBYA,oB;AAAAA,EAAAA,oB;AAAAA,EAAAA,oB;AAAAA,EAAAA,oB;GAAAA,oB,oCAAAA,oB;;IAkBAC,Y;AA+BZ;AACA;AACA;;;;WAjCYA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;GAAAA,Y,4BAAAA,Y;;IAkCAC,iB;AA4BZ;AACA;AACA;;;;WA9BYA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;GAAAA,iB,iCAAAA,iB;;IA+BAC,a,EAWZ;AACA;AACA;;AACA;AACA;AACA;;;;WAhBYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,6BAAAA,a","sourcesContent":["// =============================================================================\n// API TYPE MODELS\n// =============================================================================\n/**\n * The definition of an ad session data object.\n */\nexport interface AdSession {\n /**\n * The session ID.\n */\n session_id: string;\n /**\n * If true, ads will be served.\n */\n will_serve_ads: boolean;\n /**\n * If true, there are active campaigns.\n */\n active_campaigns: boolean;\n /**\n * How often to refresh session/ad data?\n */\n polling_interval_ms: number;\n /**\n * The time at which the session will expire.\n */\n session_expires_at: number;\n /**\n * All ad zones.\n */\n zones: { [key: number]: Zone };\n}\n\n/**\n * The definition of a zone.\n */\nexport interface Zone {\n /**\n * The zone ID.\n */\n id: string;\n /**\n * ?\n */\n land_height: number;\n /**\n * ?\n */\n land_width: number;\n /**\n * ?\n */\n port_height: number;\n /**\n * ?\n */\n port_width: number;\n /**\n * The available ads.\n */\n ads: Ad[];\n}\n\n/**\n * The definition of an Ad.\n */\nexport interface Ad {\n /**\n * The ad ID.\n */\n ad_id: string;\n /**\n * The impression ID.\n */\n impression_id: string;\n /**\n * The type of ad this is.\n */\n type: string;\n /**\n * How often the ad refreshes? Swaps out for another?\n * Length of time in seconds.\n */\n refresh_time: number;\n /**\n * The URL for the ad image to display.\n */\n creative_url: string;\n /**\n * The tracking pixel to include in the zone view for this ad?\n */\n tracking_html: string;\n /**\n * ?\n */\n action_path: string;\n /**\n * ?\n */\n action_type: AdActionType;\n /**\n * If true, the ad will be hidden after interaction.\n */\n hide_after_interaction: boolean;\n /**\n * ?\n */\n payload: AdPayload;\n /**\n * ?\n */\n popup: AdPopup;\n}\n\n/**\n * The definition of an Ad Payload.\n */\nexport interface AdPayload {\n /**\n * The array of list items.\n */\n detailed_list_items: DetailedListItem[];\n}\n\n/**\n * The definition of an \"out of app\" data payload.\n */\nexport interface OutOfAppDataPayload {\n /**\n * The payload ID associated to the provided list items.\n */\n payload_id: string;\n /**\n * The payload message.\n */\n payload_message?: string;\n /**\n * The payload image.\n */\n payload_image?: string;\n /**\n * The campaign ID.\n */\n campaign_id?: string;\n /**\n * The app ID.\n */\n app_id?: string;\n /**\n * Expiration time in seconds.\n */\n expire_seconds?: number;\n /**\n * The array of list items.\n */\n detailed_list_items: DetailedListItem[];\n}\n\n/**\n * The definition of a Detailed List Item.\n */\nexport interface DetailedListItem {\n /**\n * The barcode of the product.\n */\n product_barcode: string;\n /**\n * The brand of the product.\n */\n product_brand: string;\n /**\n * The category of the product.\n */\n product_category: string;\n /**\n * The discount given for the product.\n */\n product_discount: string;\n /**\n * The image used for display of the product.\n */\n product_image: string;\n /**\n * The SKU of the product.\n */\n product_sku: string;\n /**\n * The name/title of the product.\n */\n product_title: string;\n /**\n * The tracking ID.\n */\n tracking_id?: string;\n}\n\n/**\n * The definition of an Ad Popup.\n */\nexport interface AdPopup {\n /**\n * ?\n */\n alt_close_btn: string;\n /**\n * ?\n */\n background_color: string;\n /**\n * ?\n */\n hide_banner: boolean;\n /**\n * ?\n */\n hide_browser_nav: boolean;\n /**\n * ?\n */\n hide_close_btn: boolean;\n /**\n * ?\n */\n text_color: string;\n /**\n * ?\n */\n title_text: string;\n /**\n * ?\n */\n type: string;\n}\n\n/**\n * The definition of a Keyword Intercepts object.\n */\nexport interface KeywordIntercepts {\n /**\n * The search ID.\n * Automatically assigned by the API.\n */\n search_id: string;\n /**\n * The minimum number of characters required to perform\n * a search against all available search terms.\n */\n min_match_length: number;\n /**\n * All available search terms.\n */\n terms: KeywordSearchTerm[];\n}\n\n/**\n * The definition of a Keyword Search Term.\n */\nexport interface KeywordSearchTerm {\n /**\n * The search term ID.\n */\n term_id: string;\n /**\n * The search term to validate a search string against.\n */\n term: string;\n /**\n * The display string a client can use to display in a list.\n */\n replacement: string;\n /**\n * The display priority of this item.\n * Compare this to other {@link KeywordSearchTerm} items to determine\n * the final priority order during display.\n * The lower the number, the higher the priority.\n */\n priority: number;\n}\n\n/**\n * The definition of a Reported Ad Event.\n */\nexport interface ReportedAdEvent {\n /**\n * The add ID.\n */\n ad_id: string;\n /**\n * The impression ID.\n */\n impression_id: string;\n /**\n * The event type to report\n */\n event_type: ReportedEventType;\n /**\n * The timestamp at which the event occurred.\n */\n created_at: number;\n}\n\n/**\n * The definition of a Reported Intercept Event.\n */\nexport interface ReportedInterceptEvent {\n /**\n * The intercept search ID.\n */\n search_id: string;\n /**\n * The term ID.\n */\n term_id: string;\n /**\n * The term.\n */\n term: string;\n /**\n * The user input provided that ultimately\n * resulted in the event triggering.\n */\n user_input: string;\n /**\n * The event type to report\n */\n event_type: ReportedEventType;\n /**\n * The timestamp at which the event occurred.\n */\n created_at: number;\n}\n\n/**\n * Interface defining the structure of an event to send when using List Manager.\n */\nexport interface ListManagerEvent {\n /**\n * The source of the list manager event.\n */\n event_source: ListManagerEventSource;\n /**\n * The timestamp this event occurred (unix time).\n */\n event_timestamp: number;\n /**\n * The event name.\n */\n event_name: ListManagerEventName;\n /**\n * The parameter the event is triggered for.\n */\n event_params: ListManagerEventParam;\n}\n\n/**\n * Interface defining the structure of a payload tracking event.\n */\nexport interface PayloadTrackingEvent {\n /**\n * The source of the list manager event.\n */\n payload_id: string;\n /**\n * The status to report.\n */\n status: PayloadStatus;\n /**\n * The timestamp this event occurred (unix time).\n */\n event_timestamp: number;\n}\n\n/**\n * Interface defining the structure of an Event Param for List Manager.\n */\nexport interface ListManagerEventParam {\n /**\n * The item name being reported.\n */\n item_name: string;\n /**\n * The list name being reported.\n */\n list_name?: string;\n}\n\n/**\n * Enumeration that defines the possible values for a List Manager Event Source.\n */\nexport enum ListManagerEventSource {\n /**\n * The event was triggered from the app.\n */\n APP = \"app\",\n}\n\n/**\n * Enumeration that defines the possible values for a List Manager Event Name.\n */\nexport enum ListManagerEventName {\n /**\n * The user added an item to their list.\n */\n ADDED_TO_LIST = \"user_added_to_list\",\n /**\n * The user crossed off an item from their list.\n */\n CROSSED_OFF_LIST = \"user_crossed_off_list\",\n /**\n * The user deleted an item from their list.\n */\n DELETED_FROM_LIST = \"user_deleted_from_list\",\n}\n\n/**\n * Enum defining the available ad action types.\n */\nexport enum AdActionType {\n /**\n * Used for Add To List.\n */\n CONTENT = \"c\",\n /**\n * Used for opening URLs in an external browser.\n */\n EXTERNAL = \"e\",\n /**\n * Used for opening URLs in a web view within the app.\n * Works the same as {@link AdActionType.POPUP}.\n * NOTE: This one should probably be deprecated with the new\n * platform redesign, since its not as obvious what it does.\n */\n LINK = \"l\",\n /**\n * Used for opening URLs in a web view within the app.\n * Works the same as {@link AdActionType.LINK}.\n */\n POPUP = \"p\",\n /**\n * Used for opening app store URLs in the app store.\n */\n APP = \"a\",\n /**\n * ?\n */\n NONE = \"n\",\n}\n\n/**\n * Enum defining the different types of events that can be reported.\n */\nexport enum ReportedEventType {\n /**\n * Occurs when an ad is displayed to the user.\n */\n IMPRESSION = \"impression\",\n /**\n * Occurs when the user interacts with an ad.\n */\n INTERACTION = \"interaction\",\n /**\n * Occurs when the user's search term did not\n * match an available keyword intercept term.\n */\n NOT_MATCHED = \"not_matched\",\n /**\n * Occurs when the user's search term has matched a keyword intercept term.\n */\n MATCHED = \"matched\",\n /**\n * Occurs when the user was presented a keyword intercept term.\n */\n PRESENTED = \"presented\",\n /**\n * Occurs when the user has selected a keyword intercept term.\n */\n SELECTED = \"selected\",\n}\n\n/**\n * Enumeration defining the possible payload acknowledgment status values.\n */\nexport enum PayloadStatus {\n /**\n * The delivered status.\n */\n DELIVERED = \"delivered\",\n /**\n * The rejected status.\n */\n REJECTED = \"rejected\",\n}\n\n// =============================================================================\n// REQUEST MODELS\n// =============================================================================\n/**\n * The base request inputs that most requests will use.\n */\nexport interface BaseRequestInputs {\n /**\n * The app ID provided by the client using the API.\n */\n app_id: string;\n /**\n * The unique device ID.\n */\n udid: string;\n /**\n * The current session ID.\n */\n session_id: string;\n}\n\n/**\n * Interface for the request of the Initialize Session API call.\n */\nexport interface InitializeSessionRequest {\n /**\n * The app ID provided by the client using the API.\n */\n app_id: string;\n /**\n * The unique device ID of the users device.\n */\n udid: string;\n /**\n * The bundle ID.\n */\n bundle_id?: string;\n /**\n * The bundle version.\n */\n bundle_version?: string;\n /**\n * The name of the device.\n */\n device_name?: string;\n /**\n * The unique device ID of the users device.\n */\n device_udid?: string;\n /**\n * The OS of the device.\n */\n device_os?: string;\n /**\n * The OS version of the device.\n */\n device_osv?: string;\n /**\n * The locale the device is currently set for.\n */\n device_locale?: string;\n /**\n * The timezone the device is currently set for.\n */\n device_timezone?: string;\n /**\n * The device carrier name.\n */\n device_carrier?: string;\n /**\n * The height of the devices screen in pixels.\n */\n device_height?: number;\n /**\n * The width of the devices screen in pixels.\n */\n device_width?: number;\n /**\n * The density of the devices screen.\n */\n device_density?: string;\n /**\n * If true, the device allows for ad retargeting.\n */\n allow_retargeting?: boolean;\n /**\n * ?\n */\n created_at?: number;\n /**\n * The AdAdapted SDK version number.\n */\n sdk_version?: string;\n /**\n * ?\n */\n params?: { [key: string]: string };\n}\n\n/**\n * Interface for the request of the Refresh Session Data API call.\n */\nexport interface RefreshSessionDataRequest {\n /**\n * The app ID provided by the client using the API.\n */\n aid: string;\n /**\n * The unique device ID.\n */\n uid: string;\n /**\n * The current session ID.\n */\n sid: string;\n}\n\n/**\n * Interface for the request that reports an ad event.\n */\nexport interface ReportAdEventRequest extends BaseRequestInputs {\n /**\n * Events to report.\n */\n events: ReportedAdEvent[];\n}\n\n/**\n * Interface for the request of the Refresh Session Data API call.\n */\nexport interface KeywordInterceptsRequest {\n /**\n * The app ID provided by the client using the API.\n */\n aid: string;\n /**\n * The unique device ID.\n */\n uid: string;\n /**\n * The current session ID.\n */\n sid: string;\n}\n\n/**\n * Interface for the request that reports an intercept event.\n */\nexport interface ReportInterceptEventRequest extends BaseRequestInputs {\n /**\n * Events to report.\n */\n events: ReportedInterceptEvent[];\n}\n\n/**\n * Interface for the request that reports List Manager data.\n */\nexport interface ReportListManagerDataRequest extends BaseRequestInputs {\n /**\n * The events to report.\n */\n events: ListManagerEvent[];\n}\n\n/**\n * Interface for the request that reports Payload tracking data.\n */\nexport interface ReportPayloadDataRequest extends BaseRequestInputs {\n /**\n * The payload tracking events.\n */\n tracking: PayloadTrackingEvent[];\n}\n\n/**\n * Interface for the request that gets Payload server data.\n */\nexport interface RetrievePayloadItemDataRequest extends BaseRequestInputs {}\n\n// =============================================================================\n// RESPONSE MODELS\n// =============================================================================\n/**\n * Interface for the response of the Campaign API request.\n */\nexport interface InitializeSessionResponse extends AdSession {}\n\n/**\n * Interface for the response of the Campaign API request.\n */\nexport interface RefreshSessionDataResponse extends AdSession {}\n\n/**\n * Interface for the response of the Report Ad Event API request.\n */\nexport interface ReportAdEventResponse {\n /**\n * Array that contains response strings of \"Ok\" or \"Failed\" based\n * on the same order of the events sent to the request.\n */\n results: string[];\n}\n\n/**\n * Interface for the response of the Keyword Intercepts API request.\n */\nexport interface KeywordInterceptsResponse extends KeywordIntercepts {}\n\n/**\n * Interface for the response of the Report Intercept Event API request.\n */\nexport interface ReportInterceptEventResponse {\n /**\n * Array that contains response strings of \"Ok\" or \"Failed\" based\n * on the same order of the events sent to the request.\n */\n results: string[];\n}\n\n/**\n * Interface for the response of the Retrieve Payload Item Data API request.\n */\nexport interface RetrievePayloadItemDataResponse {\n /**\n * Array containing all current payloads for the provided user.\n */\n payloads: OutOfAppDataPayload[];\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["adadaptedApiTypes.ts"],"names":["ListManagerEventSource","ListManagerEventName","AdActionType","ReportedEventType","PayloadStatus"],"mappings":";;;;;;AAAA;AACA;AACA;;AACA;AACA;AACA;;AA4BA;AACA;AACA;;AA4BA;AACA;AACA;;AA6CA;AACA;AACA;;AAQA;AACA;AACA;;AAgCA;AACA;AACA;;AAoCA;AACA;AACA;;AAkBA;AACA;AACA;;AAuBA;AACA;AACA;;AAoBA;AACA;AACA;;AA6BA;AACA;AACA;;AAoBA;AACA;AACA;;AAgBA;AACA;AACA;;AAYA;AACA;AACA;IACYA,sB;AAOZ;AACA;AACA;;;;WATYA,sB;AAAAA,EAAAA,sB;GAAAA,sB,sCAAAA,sB;;IAUAC,oB;AAeZ;AACA;AACA;;;;WAjBYA,oB;AAAAA,EAAAA,oB;AAAAA,EAAAA,oB;AAAAA,EAAAA,oB;GAAAA,oB,oCAAAA,oB;;IAkBAC,Y;AAyBZ;AACA;AACA;;;;WA3BYA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;AAAAA,EAAAA,Y;GAAAA,Y,4BAAAA,Y;;IA4BAC,iB;AA4BZ;AACA;AACA;;;;WA9BYA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;AAAAA,EAAAA,iB;GAAAA,iB,iCAAAA,iB;;IA+BAC,a,EAWZ;AACA;AACA;;AACA;AACA;AACA;;;;WAhBYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,6BAAAA,a","sourcesContent":["// =============================================================================\n// API TYPE MODELS\n// =============================================================================\n/**\n * The definition of an ad session data object.\n */\nexport interface AdSession {\n /**\n * The session ID.\n */\n session_id: string;\n /**\n * If true, ads will be served.\n */\n will_serve_ads: boolean;\n /**\n * If true, there are active campaigns.\n */\n active_campaigns: boolean;\n /**\n * How often to refresh session/ad data?\n */\n polling_interval_ms: number;\n /**\n * The time at which the session will expire.\n */\n session_expires_at: number;\n /**\n * All ad zones.\n */\n zones: { [key: number]: Zone };\n}\n\n/**\n * The definition of a zone.\n */\nexport interface Zone {\n /**\n * The zone ID.\n */\n id: string;\n /**\n * ?\n */\n land_height: number;\n /**\n * ?\n */\n land_width: number;\n /**\n * ?\n */\n port_height: number;\n /**\n * ?\n */\n port_width: number;\n /**\n * The available ads.\n */\n ads: Ad[];\n}\n\n/**\n * The definition of an Ad.\n */\nexport interface Ad {\n /**\n * The ad ID.\n */\n ad_id: string;\n /**\n * The impression ID.\n */\n impression_id: string;\n /**\n * The type of ad this is.\n */\n type: string;\n /**\n * How often the ad refreshes? Swaps out for another?\n * Length of time in seconds.\n */\n refresh_time: number;\n /**\n * The URL for the ad image to display.\n */\n creative_url: string;\n /**\n * The tracking pixel to include in the zone view for this ad?\n */\n tracking_html: string;\n /**\n * ?\n */\n action_path: string;\n /**\n * ?\n */\n action_type: AdActionType;\n /**\n * If true, the ad will be hidden after interaction.\n */\n hide_after_interaction: boolean;\n /**\n * ?\n */\n payload: AdPayload;\n}\n\n/**\n * The definition of an Ad Payload.\n */\nexport interface AdPayload {\n /**\n * The array of list items.\n */\n detailed_list_items: DetailedListItem[];\n}\n\n/**\n * The definition of an \"out of app\" data payload.\n */\nexport interface OutOfAppDataPayload {\n /**\n * The payload ID associated to the provided list items.\n */\n payload_id: string;\n /**\n * The payload message.\n */\n payload_message?: string;\n /**\n * The payload image.\n */\n payload_image?: string;\n /**\n * The campaign ID.\n */\n campaign_id?: string;\n /**\n * The app ID.\n */\n app_id?: string;\n /**\n * Expiration time in seconds.\n */\n expire_seconds?: number;\n /**\n * The array of list items.\n */\n detailed_list_items: DetailedListItem[];\n}\n\n/**\n * The definition of a Detailed List Item.\n */\nexport interface DetailedListItem {\n /**\n * The barcode of the product.\n */\n product_barcode: string;\n /**\n * The brand of the product.\n */\n product_brand: string;\n /**\n * The category of the product.\n */\n product_category: string;\n /**\n * The discount given for the product.\n */\n product_discount: string;\n /**\n * The image used for display of the product.\n */\n product_image: string;\n /**\n * The SKU of the product.\n */\n product_sku: string;\n /**\n * The name/title of the product.\n */\n product_title: string;\n /**\n * The tracking ID.\n */\n tracking_id?: string;\n}\n\n/**\n * The definition of a Keyword Intercepts object.\n */\nexport interface KeywordIntercepts {\n /**\n * The search ID.\n * Automatically assigned by the API.\n */\n search_id: string;\n /**\n * The minimum number of characters required to perform\n * a search against all available search terms.\n */\n min_match_length: number;\n /**\n * All available search terms.\n */\n terms: KeywordSearchTerm[];\n}\n\n/**\n * The definition of a Keyword Search Term.\n */\nexport interface KeywordSearchTerm {\n /**\n * The search term ID.\n */\n term_id: string;\n /**\n * The search term to validate a search string against.\n */\n term: string;\n /**\n * The display string a client can use to display in a list.\n */\n replacement: string;\n /**\n * The display priority of this item.\n * Compare this to other {@link KeywordSearchTerm} items to determine\n * the final priority order during display.\n * The lower the number, the higher the priority.\n */\n priority: number;\n}\n\n/**\n * The definition of a Reported Ad Event.\n */\nexport interface ReportedAdEvent {\n /**\n * The add ID.\n */\n ad_id: string;\n /**\n * The impression ID.\n */\n impression_id: string;\n /**\n * The event type to report\n */\n event_type: ReportedEventType;\n /**\n * The timestamp at which the event occurred.\n */\n created_at: number;\n}\n\n/**\n * The definition of a Reported Intercept Event.\n */\nexport interface ReportedInterceptEvent {\n /**\n * The intercept search ID.\n */\n search_id: string;\n /**\n * The term ID.\n */\n term_id: string;\n /**\n * The term.\n */\n term: string;\n /**\n * The user input provided that ultimately\n * resulted in the event triggering.\n */\n user_input: string;\n /**\n * The event type to report\n */\n event_type: ReportedEventType;\n /**\n * The timestamp at which the event occurred.\n */\n created_at: number;\n}\n\n/**\n * Interface defining the structure of an event to send when using List Manager.\n */\nexport interface ListManagerEvent {\n /**\n * The source of the list manager event.\n */\n event_source: ListManagerEventSource;\n /**\n * The timestamp this event occurred (unix time).\n */\n event_timestamp: number;\n /**\n * The event name.\n */\n event_name: ListManagerEventName;\n /**\n * The parameter the event is triggered for.\n */\n event_params: ListManagerEventParam;\n}\n\n/**\n * Interface defining the structure of a payload tracking event.\n */\nexport interface PayloadTrackingEvent {\n /**\n * The source of the list manager event.\n */\n payload_id: string;\n /**\n * The status to report.\n */\n status: PayloadStatus;\n /**\n * The timestamp this event occurred (unix time).\n */\n event_timestamp: number;\n}\n\n/**\n * Interface defining the structure of an Event Param for List Manager.\n */\nexport interface ListManagerEventParam {\n /**\n * The item name being reported.\n */\n item_name: string;\n /**\n * The list name being reported.\n */\n list_name?: string;\n}\n\n/**\n * Enumeration that defines the possible values for a List Manager Event Source.\n */\nexport enum ListManagerEventSource {\n /**\n * The event was triggered from the app.\n */\n APP = \"app\",\n}\n\n/**\n * Enumeration that defines the possible values for a List Manager Event Name.\n */\nexport enum ListManagerEventName {\n /**\n * The user added an item to their list.\n */\n ADDED_TO_LIST = \"user_added_to_list\",\n /**\n * The user crossed off an item from their list.\n */\n CROSSED_OFF_LIST = \"user_crossed_off_list\",\n /**\n * The user deleted an item from their list.\n */\n DELETED_FROM_LIST = \"user_deleted_from_list\",\n}\n\n/**\n * Enum defining the available ad action types.\n */\nexport enum AdActionType {\n /**\n * Used for Add To List.\n */\n CONTENT = \"c\",\n /**\n * Used for opening URLs in an external browser.\n */\n EXTERNAL = \"e\",\n /**\n * Used for opening URLs in a web view within the app.\n * NOTE: This one should probably be deprecated with the new\n * platform redesign, since its not as obvious what it does.\n */\n LINK = \"l\",\n /**\n * Used for opening app store URLs in the app store.\n */\n APP = \"a\",\n /**\n * ?\n */\n NONE = \"n\",\n}\n\n/**\n * Enum defining the different types of events that can be reported.\n */\nexport enum ReportedEventType {\n /**\n * Occurs when an ad is displayed to the user.\n */\n IMPRESSION = \"impression\",\n /**\n * Occurs when the user interacts with an ad.\n */\n INTERACTION = \"interaction\",\n /**\n * Occurs when the user's search term did not\n * match an available keyword intercept term.\n */\n NOT_MATCHED = \"not_matched\",\n /**\n * Occurs when the user's search term has matched a keyword intercept term.\n */\n MATCHED = \"matched\",\n /**\n * Occurs when the user was presented a keyword intercept term.\n */\n PRESENTED = \"presented\",\n /**\n * Occurs when the user has selected a keyword intercept term.\n */\n SELECTED = \"selected\",\n}\n\n/**\n * Enumeration defining the possible payload acknowledgment status values.\n */\nexport enum PayloadStatus {\n /**\n * The delivered status.\n */\n DELIVERED = \"delivered\",\n /**\n * The rejected status.\n */\n REJECTED = \"rejected\",\n}\n\n// =============================================================================\n// REQUEST MODELS\n// =============================================================================\n/**\n * The base request inputs that most requests will use.\n */\nexport interface BaseRequestInputs {\n /**\n * The app ID provided by the client using the API.\n */\n app_id: string;\n /**\n * The unique device ID.\n */\n udid: string;\n /**\n * The current session ID.\n */\n session_id: string;\n}\n\n/**\n * Interface for the request of the Initialize Session API call.\n */\nexport interface InitializeSessionRequest {\n /**\n * The app ID provided by the client using the API.\n */\n app_id: string;\n /**\n * The unique device ID of the users device.\n */\n udid: string;\n /**\n * The bundle ID.\n */\n bundle_id?: string;\n /**\n * The bundle version.\n */\n bundle_version?: string;\n /**\n * The name of the device.\n */\n device_name?: string;\n /**\n * The unique device ID of the users device.\n */\n device_udid?: string;\n /**\n * The OS of the device.\n */\n device_os?: string;\n /**\n * The OS version of the device.\n */\n device_osv?: string;\n /**\n * The locale the device is currently set for.\n */\n device_locale?: string;\n /**\n * The timezone the device is currently set for.\n */\n device_timezone?: string;\n /**\n * The device carrier name.\n */\n device_carrier?: string;\n /**\n * The height of the devices screen in pixels.\n */\n device_height?: number;\n /**\n * The width of the devices screen in pixels.\n */\n device_width?: number;\n /**\n * The density of the devices screen.\n */\n device_density?: string;\n /**\n * If true, the device allows for ad retargeting.\n */\n allow_retargeting?: boolean;\n /**\n * ?\n */\n created_at?: number;\n /**\n * The AdAdapted SDK version number.\n */\n sdk_version?: string;\n /**\n * ?\n */\n params?: { [key: string]: string };\n}\n\n/**\n * Interface for the request of the Refresh Session Data API call.\n */\nexport interface RefreshSessionDataRequest {\n /**\n * The app ID provided by the client using the API.\n */\n aid: string;\n /**\n * The unique device ID.\n */\n uid: string;\n /**\n * The current session ID.\n */\n sid: string;\n}\n\n/**\n * Interface for the request that reports an ad event.\n */\nexport interface ReportAdEventRequest extends BaseRequestInputs {\n /**\n * Events to report.\n */\n events: ReportedAdEvent[];\n}\n\n/**\n * Interface for the request of the Refresh Session Data API call.\n */\nexport interface KeywordInterceptsRequest {\n /**\n * The app ID provided by the client using the API.\n */\n aid: string;\n /**\n * The unique device ID.\n */\n uid: string;\n /**\n * The current session ID.\n */\n sid: string;\n}\n\n/**\n * Interface for the request that reports an intercept event.\n */\nexport interface ReportInterceptEventRequest extends BaseRequestInputs {\n /**\n * Events to report.\n */\n events: ReportedInterceptEvent[];\n}\n\n/**\n * Interface for the request that reports List Manager data.\n */\nexport interface ReportListManagerDataRequest extends BaseRequestInputs {\n /**\n * The events to report.\n */\n events: ListManagerEvent[];\n}\n\n/**\n * Interface for the request that reports Payload tracking data.\n */\nexport interface ReportPayloadDataRequest extends BaseRequestInputs {\n /**\n * The payload tracking events.\n */\n tracking: PayloadTrackingEvent[];\n}\n\n/**\n * Interface for the request that gets Payload server data.\n */\nexport interface RetrievePayloadItemDataRequest extends BaseRequestInputs {}\n\n// =============================================================================\n// RESPONSE MODELS\n// =============================================================================\n/**\n * Interface for the response of the Campaign API request.\n */\nexport interface InitializeSessionResponse extends AdSession {}\n\n/**\n * Interface for the response of the Campaign API request.\n */\nexport interface RefreshSessionDataResponse extends AdSession {}\n\n/**\n * Interface for the response of the Report Ad Event API request.\n */\nexport interface ReportAdEventResponse {\n /**\n * Array that contains response strings of \"Ok\" or \"Failed\" based\n * on the same order of the events sent to the request.\n */\n results: string[];\n}\n\n/**\n * Interface for the response of the Keyword Intercepts API request.\n */\nexport interface KeywordInterceptsResponse extends KeywordIntercepts {}\n\n/**\n * Interface for the response of the Report Intercept Event API request.\n */\nexport interface ReportInterceptEventResponse {\n /**\n * Array that contains response strings of \"Ok\" or \"Failed\" based\n * on the same order of the events sent to the request.\n */\n results: string[];\n}\n\n/**\n * Interface for the response of the Retrieve Payload Item Data API request.\n */\nexport interface RetrievePayloadItemDataResponse {\n /**\n * Array containing all current payloads for the provided user.\n */\n payloads: OutOfAppDataPayload[];\n}\n"]}
|