@appmetrica/react-native-analytics 3.1.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -85,5 +85,5 @@ dependencies {
85
85
  // For > 0.71, this will be replaced by `com.facebook.react:react-android:$version` by react gradle plugin
86
86
  //noinspection GradleDynamicVersion
87
87
  implementation "com.facebook.react:react-native:+"
88
- implementation "io.appmetrica.analytics:analytics:7.0.0"
88
+ implementation "io.appmetrica.analytics:analytics:7.2.0"
89
89
  }
@@ -1,6 +1,6 @@
1
1
  package io.appmetrica.analytics.reactnative;
2
2
 
3
- import android.app.Activity;
3
+ import android.text.TextUtils;
4
4
  import android.util.Log;
5
5
  import androidx.annotation.NonNull;
6
6
  import com.facebook.react.bridge.Callback;
@@ -12,8 +12,12 @@ import com.facebook.react.bridge.ReadableArray;
12
12
  import com.facebook.react.bridge.ReadableMap;
13
13
  import com.facebook.react.module.annotations.ReactModule;
14
14
 
15
+ import java.util.Iterator;
16
+ import java.util.Map;
17
+
15
18
  import io.appmetrica.analytics.AppMetrica;
16
19
  import io.appmetrica.analytics.AppMetricaConfig;
20
+ import io.appmetrica.analytics.ModulesFacade;
17
21
  import io.appmetrica.analytics.ecommerce.ECommerceEvent;
18
22
 
19
23
  @ReactModule(name = AppMetricaModule.NAME)
@@ -40,7 +44,7 @@ public class AppMetricaModule extends ReactContextBaseJavaModule {
40
44
  public void activate(ReadableMap configMap) {
41
45
  AppMetricaConfig config = Utils.toAppMetricaConfig(configMap);
42
46
  AppMetrica.activate(reactContext, config);
43
- if (Boolean.TRUE.equals(config.sessionsAutoTrackingEnabled)) {
47
+ if (!Boolean.FALSE.equals(config.sessionsAutoTrackingEnabled)) {
44
48
  AppMetrica.resumeSession(getCurrentActivity());
45
49
  }
46
50
  }
@@ -146,4 +150,17 @@ public class AppMetricaModule extends ReactContextBaseJavaModule {
146
150
  Log.w(TAG, "Cannot parse user profile", e);
147
151
  }
148
152
  }
153
+
154
+ @ReactMethod
155
+ public void putErrorEnvironmentValue(String key, String value) {
156
+ AppMetrica.putErrorEnvironmentValue(key, value);
157
+ }
158
+
159
+ @ReactMethod
160
+ public void reportExternalAttribution(ReadableMap attribution) {
161
+ ModulesFacade.reportExternalAttribution(
162
+ ExternalAttributionSerializer.parseSource(attribution.getString("source")),
163
+ ExternalAttributionSerializer.parseValue(attribution.getMap("value"))
164
+ );
165
+ }
149
166
  }
@@ -0,0 +1,37 @@
1
+ package io.appmetrica.analytics.reactnative;
2
+
3
+ import android.text.TextUtils;
4
+
5
+ import com.facebook.react.bridge.ReadableMap;
6
+
7
+ import org.json.JSONObject;
8
+
9
+ import io.appmetrica.analytics.ModulesFacade;
10
+
11
+ final class ExternalAttributionSerializer {
12
+ private ExternalAttributionSerializer() {}
13
+
14
+ public static int parseSource(String sourceString) {
15
+ if (TextUtils.isEmpty(sourceString)) {
16
+ return -1;
17
+ }
18
+
19
+ return switch (sourceString) {
20
+ case "AppsFlyer" -> ModulesFacade.EXTERNAL_ATTRIBUTION_APPSFLYER;
21
+ case "Adjust" -> ModulesFacade.EXTERNAL_ATTRIBUTION_ADJUST;
22
+ case "Kochava" -> ModulesFacade.EXTERNAL_ATTRIBUTION_KOCHAVA;
23
+ case "Tenjin" -> ModulesFacade.EXTERNAL_ATTRIBUTION_TENJIN;
24
+ case "Airbridge" -> ModulesFacade.EXTERNAL_ATTRIBUTION_AIRBRIDGE;
25
+ case "Singular" -> ModulesFacade.EXTERNAL_ATTRIBUTION_SINGULAR;
26
+ default -> -1;
27
+ };
28
+ }
29
+
30
+ public static String parseValue(ReadableMap valueMap) {
31
+ if (valueMap == null) {
32
+ return "";
33
+ }
34
+
35
+ return new JSONObject(valueMap.toHashMap()).toString();
36
+ }
37
+ }
@@ -75,6 +75,15 @@ abstract class Utils {
75
75
  if (configMap.hasKey("userProfileID")) {
76
76
  builder.withUserProfileID(configMap.getString("userProfileID"));
77
77
  }
78
+ if (configMap.hasKey("errorEnvironment")) {
79
+ ReadableMap errorEnvironmentMap = configMap.getMap("errorEnvironment");
80
+ if (errorEnvironmentMap != null) {
81
+ for (Map.Entry<String, Object> entry : errorEnvironmentMap.toHashMap().entrySet()) {
82
+ Object value = entry.getValue();
83
+ builder.withErrorEnvironmentValue(entry.getKey(), value == null ? null : value.toString());
84
+ }
85
+ }
86
+ }
78
87
 
79
88
  return builder.build();
80
89
  }
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
16
16
 
17
17
  s.source_files = "ios/**/*.{h,m,mm}"
18
18
 
19
- s.dependency "AppMetricaAnalytics", "5.6.0"
19
+ s.dependency "AppMetricaAnalytics", "5.8.0"
20
20
 
21
21
  # Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
22
22
  # See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
@@ -3,6 +3,7 @@
3
3
  #import "AMARNAppMetricaUtils.h"
4
4
  #import "AMARNStartupParamsUtils.h"
5
5
  #import "AMARNUserProfileSerializer.h"
6
+ #import "AMARNExternalAttribution.h"
6
7
  #import <AppMetricaCrashes/AppMetricaCrashes.h>
7
8
 
8
9
  @implementation AMARNAppMetrica
@@ -115,6 +116,28 @@ RCT_EXPORT_METHOD(reportUserProfile:(NSDictionary *)userProfileDict)
115
116
  [AMAAppMetrica reportUserProfile:[AMARNAppMetricaUtils userProfileForDict:userProfileDict] onFailure:nil];
116
117
  }
117
118
 
119
+ RCT_EXPORT_METHOD(putErrorEnvironmentValue:(NSString *)key:(NSString *)value)
120
+ {
121
+ [[AMAAppMetricaCrashes crashes] setErrorEnvironmentValue:value forKey:key];
122
+ }
123
+
124
+ RCT_EXPORT_METHOD(reportExternalAttribution:(NSDictionary *)externalAttributionsDict)
125
+ {
126
+
127
+ NSString *sourceStr = externalAttributionsDict[@"source"];
128
+ AMAAttributionSource source = amarn_getExternalAttributionSource(sourceStr);
129
+ if (source == nil) {
130
+ NSLog(@"Failed to report external attribution to AppMetrica. Unknown source %@", sourceStr);
131
+ return;
132
+ }
133
+
134
+ NSDictionary *value = externalAttributionsDict[@"value"];
135
+
136
+ [AMAAppMetrica reportExternalAttribution:value source:source onFailure:^(NSError *error) {
137
+ NSLog(@"Failed to report external attribution to AppMetrica: %@", [error localizedDescription]);
138
+ }];
139
+ }
140
+
118
141
  - (NSObject *)wrap:(NSObject *)value
119
142
  {
120
143
  if (value == nil) {
@@ -53,6 +53,12 @@
53
53
  if (crashConfigDict[@"crashReporting"] != nil) {
54
54
  crashesConfiguration.autoCrashTracking = [crashConfigDict[@"crashReporting"] boolValue];
55
55
  }
56
+ if (crashConfigDict[@"errorEnvironment"] != nil) {
57
+ NSDictionary *errorEnvironmentDict = crashConfigDict[@"errorEnvironment"];
58
+ for (NSString *key in errorEnvironmentDict) {
59
+ [[AMAAppMetricaCrashes crashes] setErrorEnvironmentValue:errorEnvironmentDict[key] forKey:key];
60
+ }
61
+ }
56
62
  return crashesConfiguration;
57
63
  }
58
64
 
@@ -116,7 +122,7 @@
116
122
  categoryComponents:categoriesPath
117
123
  searchQuery:searchQuery
118
124
  payload:payload];
119
-
125
+
120
126
  return screen;
121
127
  }
122
128
 
@@ -127,16 +133,16 @@
127
133
  }
128
134
  AMAECommerceAmount *amount = [self ecommerceAmountForDict:ecommercePriceDict[@"amount"]];
129
135
  NSArray *componentsArray = ecommercePriceDict[@"internalComponents"];
130
-
136
+
131
137
  NSMutableArray *components = [[NSMutableArray alloc] init];
132
138
 
133
139
  for (NSDictionary *item in componentsArray) {
134
140
  [components addObject:[self ecommerceAmountForDict:item]];
135
141
  }
136
-
142
+
137
143
  AMAECommercePrice *price = [[AMAECommercePrice alloc] initWithFiat:amount
138
144
  internalComponents:components];
139
-
145
+
140
146
  return price;
141
147
  }
142
148
 
@@ -148,7 +154,7 @@
148
154
  NSString *type = ecommerceReferrerDict[@"type"];
149
155
  NSString *identifier = ecommerceReferrerDict[@"identifier"];
150
156
  AMAECommerceScreen *screen = [self ecommerceScreenForDict:ecommerceReferrerDict[@"screen"]];
151
-
157
+
152
158
  AMAECommerceReferrer *referrer = [[AMAECommerceReferrer alloc] initWithType:type
153
159
  identifier:identifier
154
160
  screen:screen];
@@ -167,7 +173,7 @@
167
173
  NSDictionary *payload = ecommerceProductDict[@"payload"];
168
174
  AMAECommercePrice *actualPrice = [self ecommercePriceForDict:ecommerceProductDict[@"actualPrice"]];
169
175
  AMAECommercePrice *originalPrice = [self ecommercePriceForDict:ecommerceProductDict[@"originalPrice"]];
170
-
176
+
171
177
  AMAECommerceProduct *product = [[AMAECommerceProduct alloc] initWithSKU:sku
172
178
  name:name
173
179
  categoryComponents:categoriesPath
@@ -187,7 +193,7 @@
187
193
  AMAECommercePrice *price = [self ecommercePriceForDict:ecommerceCartItemDict[@"price"]];
188
194
  NSDecimalNumber *quantity = [NSDecimalNumber decimalNumberWithDecimal:[ecommerceCartItemDict[@"quantity"] decimalValue]];
189
195
  AMAECommerceReferrer *referrer = [self ecommerceReferrerForDict:ecommerceCartItemDict[@"referrer"]];
190
-
196
+
191
197
  AMAECommerceCartItem *items = [[AMAECommerceCartItem alloc] initWithProduct:product quantity:quantity revenue:price referrer:referrer];
192
198
  return items;
193
199
  }
@@ -205,7 +211,7 @@
205
211
  for (NSDictionary *item in cartItemsArrayDict) {
206
212
  [cartItems addObject:[self ecommerceCartItemForDict:item]];
207
213
  }
208
-
214
+
209
215
  AMAECommerceOrder *order = [[AMAECommerceOrder alloc] initWithIdentifier:orderId cartItems:cartItems payload:payload];
210
216
  return order;
211
217
  }
@@ -215,7 +221,7 @@
215
221
  if (ecommerceAmountDict == nil) {
216
222
  return nil;
217
223
  }
218
-
224
+
219
225
  NSString *unit = ecommerceAmountDict[@"unit"];
220
226
  NSDecimalNumber *value = [NSDecimalNumber decimalNumberWithDecimal:[ecommerceAmountDict[@"amount"] decimalValue]];
221
227
  AMAECommerceAmount *amount = [[AMAECommerceAmount alloc] initWithUnit:unit value:value];
@@ -254,7 +260,7 @@
254
260
  if ([type isEqualToString:@"removeCartItemEvent"]) {
255
261
  AMAECommerceCartItem *item = [self ecommerceCartItemForDict:ecommerceDict[@"cartItem"]];
256
262
  AMAECommerce *event = [AMAECommerce removeCartItemEventWithItem:item];
257
-
263
+
258
264
  return event;
259
265
  }
260
266
  if ([type isEqualToString:@"beginCheckoutEvent"]) {
@@ -270,7 +276,7 @@
270
276
  return nil;
271
277
  }
272
278
 
273
- + (AMARevenueInfo *)revenueForDict:(NSDictionary *)revenueDict
279
+ + (AMARevenueInfo *)revenueForDict:(NSDictionary *)revenueDict
274
280
  {
275
281
  NSNumber *number = revenueDict[@"price"];
276
282
  NSDecimalNumber *price = [NSDecimalNumber decimalNumberWithDecimal:number.decimalValue];
@@ -297,7 +303,7 @@
297
303
  return revenueInfo;
298
304
  }
299
305
 
300
- + (AMAAdRevenueInfo *)adRevenueForDict:(NSDictionary *)revenueDict
306
+ + (AMAAdRevenueInfo *)adRevenueForDict:(NSDictionary *)revenueDict
301
307
  {
302
308
  NSNumber *number = revenueDict[@"price"];
303
309
  NSDecimalNumber *price = [NSDecimalNumber decimalNumberWithDecimal:number.decimalValue];
@@ -0,0 +1,4 @@
1
+
2
+ #include "AppMetricaCore/AppMetricaCore.h"
3
+
4
+ AMAAttributionSource amarn_getExternalAttributionSource(NSString *source);
@@ -0,0 +1,28 @@
1
+
2
+ #include "AMARNExternalAttribution.h"
3
+
4
+ AMAAttributionSource amarn_getExternalAttributionSource(NSString *sourceStr)
5
+ {
6
+ if (sourceStr == nil) return nil;
7
+
8
+ if ([sourceStr isEqualToString:@"AppsFlyer"]) {
9
+ return kAMAAttributionSourceAppsflyer;
10
+ }
11
+ if ([sourceStr isEqualToString:@"Adjust"]) {
12
+ return kAMAAttributionSourceAdjust;
13
+ }
14
+ if ([sourceStr isEqualToString:@"Kochava"]) {
15
+ return kAMAAttributionSourceKochava;
16
+ }
17
+ if ([sourceStr isEqualToString:@"Tenjin"]) {
18
+ return kAMAAttributionSourceTenjin;
19
+ }
20
+ if ([sourceStr isEqualToString:@"Airbridge"]) {
21
+ return kAMAAttributionSourceAirbridge;
22
+ }
23
+ if ([sourceStr isEqualToString:@"Singular"]) {
24
+ return kAMAAttributionSourceSingular;
25
+ }
26
+
27
+ return nil;
28
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ExternalAttributions = void 0;
7
+ class ExternalAttributions {
8
+ static adjust(data) {
9
+ return {
10
+ source: 'Adjust',
11
+ value: data
12
+ };
13
+ }
14
+ static airbridge(data) {
15
+ return {
16
+ source: 'Airbridge',
17
+ value: data
18
+ };
19
+ }
20
+ static appsflyer(data) {
21
+ return {
22
+ source: 'AppsFlyer',
23
+ value: data.data
24
+ };
25
+ }
26
+ static kochava(data) {
27
+ return {
28
+ source: 'Kochava',
29
+ value: data.raw
30
+ };
31
+ }
32
+ static singular(data) {
33
+ return {
34
+ source: 'Singular',
35
+ value: Object.fromEntries(data)
36
+ };
37
+ }
38
+ static tenjin(data) {
39
+ return {
40
+ source: 'Tenjin',
41
+ value: data
42
+ };
43
+ }
44
+ }
45
+ exports.ExternalAttributions = ExternalAttributions;
46
+ //# sourceMappingURL=externalAttribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ExternalAttributions","adjust","data","source","value","airbridge","appsflyer","kochava","raw","singular","Object","fromEntries","tenjin","exports"],"sourceRoot":"../../src","sources":["externalAttribution.ts"],"mappings":";;;;;;AAaO,MAAMA,oBAAoB,CAAC;EAChC,OAAOC,MAAMA,CAACC,IAAyB,EAAuB;IAC5D,OAAO;MACLC,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAEF;IACT,CAAC;EACH;EAEA,OAAOG,SAASA,CAACH,IAAyB,EAAuB;IAC/D,OAAO;MACLC,MAAM,EAAE,WAAW;MACnBC,KAAK,EAAEF;IACT,CAAC;EACH;EAEA,OAAOI,SAASA,CAACJ,IAAyB,EAAuB;IAC/D,OAAO;MACLC,MAAM,EAAE,WAAW;MACnBC,KAAK,EAAEF,IAAI,CAACA;IACd,CAAC;EACH;EAEA,OAAOK,OAAOA,CAACL,IAAyB,EAAuB;IAC7D,OAAO;MACLC,MAAM,EAAE,SAAS;MACjBC,KAAK,EAAEF,IAAI,CAACM;IACd,CAAC;EACH;EAEA,OAAOC,QAAQA,CAACP,IAAyB,EAAuB;IAC9D,OAAO;MACLC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAEM,MAAM,CAACC,WAAW,CAACT,IAAI;IAChC,CAAC;EACH;EAEA,OAAOU,MAAMA,CAACV,IAAyB,EAAuB;IAC5D,OAAO;MACLC,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAEF;IACT,CAAC;EACH;AACF;AAACW,OAAA,CAAAb,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -47,6 +47,18 @@ Object.keys(_userProfile).forEach(function (key) {
47
47
  }
48
48
  });
49
49
  });
50
+ var _externalAttribution = require("./externalAttribution");
51
+ Object.keys(_externalAttribution).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
54
+ if (key in exports && exports[key] === _externalAttribution[key]) return;
55
+ Object.defineProperty(exports, key, {
56
+ enumerable: true,
57
+ get: function () {
58
+ return _externalAttribution[key];
59
+ }
60
+ });
61
+ });
50
62
  const LINKING_ERROR = `The package '@appmetrica/react-native-analytics' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
51
63
  ios: "- You have run 'pod install'\n",
52
64
  default: ''
@@ -136,6 +148,12 @@ class AppMetrica {
136
148
  static reportUserProfile(userProfile) {
137
149
  AppMetricaNative.reportUserProfile(userProfile);
138
150
  }
151
+ static putErrorEnvironmentValue(key, value) {
152
+ AppMetricaNative.putErrorEnvironmentValue(key, value);
153
+ }
154
+ static reportExternalAttribution(attribution) {
155
+ AppMetricaNative.reportExternalAttribution(attribution);
156
+ }
139
157
  }
140
158
  exports.default = AppMetrica;
141
159
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_utils","_ecommerce","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_revenue","_userProfile","LINKING_ERROR","Platform","select","ios","default","AppMetricaNative","NativeModules","AppMetrica","Proxy","Error","activated","appOpenTracking","getUrlAsync","initialUrl","Linking","getInitialURL","reportAppOpen","callback","event","url","addEventListener","DEVICE_ID_HASH_KEY","DEVICE_ID_KEY","UUID_KEY","activate","config","appOpenTrackingEnabled","getLibraryApiLevel","getLibraryVersion","pauseSession","deeplink","reportError","identifier","message","_reason","reportEvent","eventName","attributes","requestStartupParams","listener","identifiers","resumeSession","sendEventsBuffer","setLocation","location","setLocationTracking","enabled","setDataSendingEnabled","setUserProfileID","userProfileID","reportECommerce","reportRevenue","revenue","reportAdRevenue","adRevenue","normalizeAdRevenue","reportUserProfile","userProfile"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_utils","_ecommerce","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_revenue","_userProfile","_externalAttribution","LINKING_ERROR","Platform","select","ios","default","AppMetricaNative","NativeModules","AppMetrica","Proxy","Error","activated","appOpenTracking","getUrlAsync","initialUrl","Linking","getInitialURL","reportAppOpen","callback","event","url","addEventListener","DEVICE_ID_HASH_KEY","DEVICE_ID_KEY","UUID_KEY","activate","config","appOpenTrackingEnabled","getLibraryApiLevel","getLibraryVersion","pauseSession","deeplink","reportError","identifier","message","_reason","reportEvent","eventName","attributes","requestStartupParams","listener","identifiers","resumeSession","sendEventsBuffer","setLocation","location","setLocationTracking","enabled","setDataSendingEnabled","setUserProfileID","userProfileID","reportECommerce","reportRevenue","revenue","reportAdRevenue","adRevenue","normalizeAdRevenue","reportUserProfile","userProfile","putErrorEnvironmentValue","value","reportExternalAttribution","attribution"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ export class ExternalAttributions {
2
+ static adjust(data) {
3
+ return {
4
+ source: 'Adjust',
5
+ value: data
6
+ };
7
+ }
8
+ static airbridge(data) {
9
+ return {
10
+ source: 'Airbridge',
11
+ value: data
12
+ };
13
+ }
14
+ static appsflyer(data) {
15
+ return {
16
+ source: 'AppsFlyer',
17
+ value: data.data
18
+ };
19
+ }
20
+ static kochava(data) {
21
+ return {
22
+ source: 'Kochava',
23
+ value: data.raw
24
+ };
25
+ }
26
+ static singular(data) {
27
+ return {
28
+ source: 'Singular',
29
+ value: Object.fromEntries(data)
30
+ };
31
+ }
32
+ static tenjin(data) {
33
+ return {
34
+ source: 'Tenjin',
35
+ value: data
36
+ };
37
+ }
38
+ }
39
+ //# sourceMappingURL=externalAttribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ExternalAttributions","adjust","data","source","value","airbridge","appsflyer","kochava","raw","singular","Object","fromEntries","tenjin"],"sourceRoot":"../../src","sources":["externalAttribution.ts"],"mappings":"AAaA,OAAO,MAAMA,oBAAoB,CAAC;EAChC,OAAOC,MAAMA,CAACC,IAAyB,EAAuB;IAC5D,OAAO;MACLC,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAEF;IACT,CAAC;EACH;EAEA,OAAOG,SAASA,CAACH,IAAyB,EAAuB;IAC/D,OAAO;MACLC,MAAM,EAAE,WAAW;MACnBC,KAAK,EAAEF;IACT,CAAC;EACH;EAEA,OAAOI,SAASA,CAACJ,IAAyB,EAAuB;IAC/D,OAAO;MACLC,MAAM,EAAE,WAAW;MACnBC,KAAK,EAAEF,IAAI,CAACA;IACd,CAAC;EACH;EAEA,OAAOK,OAAOA,CAACL,IAAyB,EAAuB;IAC7D,OAAO;MACLC,MAAM,EAAE,SAAS;MACjBC,KAAK,EAAEF,IAAI,CAACM;IACd,CAAC;EACH;EAEA,OAAOC,QAAQA,CAACP,IAAyB,EAAuB;IAC9D,OAAO;MACLC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAEM,MAAM,CAACC,WAAW,CAACT,IAAI;IAChC,CAAC;EACH;EAEA,OAAOU,MAAMA,CAACV,IAAyB,EAAuB;IAC5D,OAAO;MACLC,MAAM,EAAE,QAAQ;MAChBC,KAAK,EAAEF;IACT,CAAC;EACH;AACF","ignoreList":[]}
@@ -29,6 +29,7 @@ export const UUID_KEY = 'appmetrica_uuid';
29
29
  export * from './ecommerce';
30
30
  export * from './revenue';
31
31
  export * from './userProfile';
32
+ export * from './externalAttribution';
32
33
  export default class AppMetrica {
33
34
  static activate(config) {
34
35
  if (!activated) {
@@ -92,5 +93,11 @@ export default class AppMetrica {
92
93
  static reportUserProfile(userProfile) {
93
94
  AppMetricaNative.reportUserProfile(userProfile);
94
95
  }
96
+ static putErrorEnvironmentValue(key, value) {
97
+ AppMetricaNative.putErrorEnvironmentValue(key, value);
98
+ }
99
+ static reportExternalAttribution(attribution) {
100
+ AppMetricaNative.reportExternalAttribution(attribution);
101
+ }
95
102
  }
96
103
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Linking","NativeModules","Platform","normalizeAdRevenue","LINKING_ERROR","select","ios","default","AppMetricaNative","AppMetrica","Proxy","get","Error","activated","appOpenTracking","getUrlAsync","initialUrl","getInitialURL","reportAppOpen","callback","event","url","addEventListener","DEVICE_ID_HASH_KEY","DEVICE_ID_KEY","UUID_KEY","activate","config","appOpenTrackingEnabled","getLibraryApiLevel","getLibraryVersion","pauseSession","deeplink","reportError","identifier","message","_reason","reportEvent","eventName","attributes","requestStartupParams","listener","identifiers","resumeSession","sendEventsBuffer","setLocation","location","setLocationTracking","enabled","setDataSendingEnabled","setUserProfileID","userProfileID","reportECommerce","reportRevenue","revenue","reportAdRevenue","adRevenue","reportUserProfile","userProfile"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Linking","NativeModules","Platform","normalizeAdRevenue","LINKING_ERROR","select","ios","default","AppMetricaNative","AppMetrica","Proxy","get","Error","activated","appOpenTracking","getUrlAsync","initialUrl","getInitialURL","reportAppOpen","callback","event","url","addEventListener","DEVICE_ID_HASH_KEY","DEVICE_ID_KEY","UUID_KEY","activate","config","appOpenTrackingEnabled","getLibraryApiLevel","getLibraryVersion","pauseSession","deeplink","reportError","identifier","message","_reason","reportEvent","eventName","attributes","requestStartupParams","listener","identifiers","resumeSession","sendEventsBuffer","setLocation","location","setLocationTracking","enabled","setDataSendingEnabled","setUserProfileID","userProfileID","reportECommerce","reportRevenue","revenue","reportAdRevenue","adRevenue","reportUserProfile","userProfile","putErrorEnvironmentValue","key","value","reportExternalAttribution","attribution"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ type ExternalAttributionSource = 'Adjust' | 'Airbridge' | 'AppsFlyer' | 'Kochava' | 'Singular' | 'Tenjin';
2
+ export interface ExternalAttribution {
3
+ source: ExternalAttributionSource;
4
+ value: Record<string, object>;
5
+ }
6
+ export declare class ExternalAttributions {
7
+ static adjust(data: Record<string, any>): ExternalAttribution;
8
+ static airbridge(data: Record<string, any>): ExternalAttribution;
9
+ static appsflyer(data: Record<string, any>): ExternalAttribution;
10
+ static kochava(data: Record<string, any>): ExternalAttribution;
11
+ static singular(data: Map<string, object>): ExternalAttribution;
12
+ static tenjin(data: Record<string, any>): ExternalAttribution;
13
+ }
14
+ export {};
15
+ //# sourceMappingURL=externalAttribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externalAttribution.d.ts","sourceRoot":"","sources":["../../../src/externalAttribution.ts"],"names":[],"mappings":"AAAA,KAAK,yBAAyB,GAC1B,QAAQ,GACR,WAAW,GACX,WAAW,GACX,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,yBAAyB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,mBAAmB;IAO7D,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,mBAAmB;IAOhE,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,mBAAmB;IAOhE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,mBAAmB;IAO9D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,mBAAmB;IAO/D,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,mBAAmB;CAM9D"}
@@ -1,6 +1,7 @@
1
1
  import type { ECommerceEvent } from './ecommerce';
2
2
  import type { AdRevenue, Revenue } from './revenue';
3
3
  import type { UserProfile } from './userProfile';
4
+ import type { ExternalAttribution } from './externalAttribution';
4
5
  export type AppMetricaConfig = {
5
6
  apiKey: string;
6
7
  appVersion?: string;
@@ -18,6 +19,7 @@ export type AppMetricaConfig = {
18
19
  sessionsAutoTracking?: boolean;
19
20
  appOpenTrackingEnabled?: boolean;
20
21
  userProfileID?: string;
22
+ errorEnvironment?: Record<string, string | undefined>;
21
23
  };
22
24
  export type PreloadInfo = {
23
25
  trackingId: string;
@@ -45,6 +47,7 @@ export declare const UUID_KEY = "appmetrica_uuid";
45
47
  export * from './ecommerce';
46
48
  export * from './revenue';
47
49
  export * from './userProfile';
50
+ export * from './externalAttribution';
48
51
  export default class AppMetrica {
49
52
  static activate(config: AppMetricaConfig): void;
50
53
  static getLibraryApiLevel(): Promise<number>;
@@ -64,5 +67,7 @@ export default class AppMetrica {
64
67
  static reportRevenue(revenue: Revenue): void;
65
68
  static reportAdRevenue(adRevenue: AdRevenue): void;
66
69
  static reportUserProfile(userProfile: UserProfile): void;
70
+ static putErrorEnvironmentValue(key: string, value?: string): void;
71
+ static reportExternalAttribution(attribution: ExternalAttribution): void;
67
72
  }
68
73
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAoCjE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,kBAAkB,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAClC,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,mBAAmB,KACzB,IAAI,CAAC;AAEV,eAAO,MAAM,kBAAkB,8BAA8B,CAAC;AAC9D,eAAO,MAAM,aAAa,yBAAyB,CAAC;AACpD,eAAO,MAAM,QAAQ,oBAAoB,CAAC;AAE1C,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB;WAW3B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;WAIrC,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjD,MAAM,CAAC,YAAY;IAInB,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM;IAItC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAIxE,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAItE,MAAM,CAAC,oBAAoB,CACzB,QAAQ,EAAE,qBAAqB,EAC/B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;IAK5B,MAAM,CAAC,aAAa;IAIpB,MAAM,CAAC,gBAAgB;IAIvB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,QAAQ;IAItC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO;IAI3C,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO;IAI7C,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,MAAM;IAI9C,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,cAAc;IAI5C,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO;IAIrC,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS;IAI3C,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,WAAW;IAIjD,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAI3D,MAAM,CAAC,yBAAyB,CAAC,WAAW,EAAE,mBAAmB;CAGlE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appmetrica/react-native-analytics",
3
- "version": "3.1.0",
3
+ "version": "3.3.0",
4
4
  "description": "React Native plugin for AppMetrica analytics tool",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -0,0 +1,56 @@
1
+ type ExternalAttributionSource =
2
+ | 'Adjust'
3
+ | 'Airbridge'
4
+ | 'AppsFlyer'
5
+ | 'Kochava'
6
+ | 'Singular'
7
+ | 'Tenjin';
8
+
9
+ export interface ExternalAttribution {
10
+ source: ExternalAttributionSource;
11
+ value: Record<string, object>;
12
+ }
13
+
14
+ export class ExternalAttributions {
15
+ static adjust(data: Record<string, any>): ExternalAttribution {
16
+ return {
17
+ source: 'Adjust',
18
+ value: data,
19
+ };
20
+ }
21
+
22
+ static airbridge(data: Record<string, any>): ExternalAttribution {
23
+ return {
24
+ source: 'Airbridge',
25
+ value: data,
26
+ };
27
+ }
28
+
29
+ static appsflyer(data: Record<string, any>): ExternalAttribution {
30
+ return {
31
+ source: 'AppsFlyer',
32
+ value: data.data,
33
+ };
34
+ }
35
+
36
+ static kochava(data: Record<string, any>): ExternalAttribution {
37
+ return {
38
+ source: 'Kochava',
39
+ value: data.raw,
40
+ };
41
+ }
42
+
43
+ static singular(data: Map<string, object>): ExternalAttribution {
44
+ return {
45
+ source: 'Singular',
46
+ value: Object.fromEntries(data),
47
+ };
48
+ }
49
+
50
+ static tenjin(data: Record<string, any>): ExternalAttribution {
51
+ return {
52
+ source: 'Tenjin',
53
+ value: data,
54
+ };
55
+ }
56
+ }
package/src/index.ts CHANGED
@@ -2,6 +2,7 @@ import { Linking, NativeModules, Platform } from 'react-native';
2
2
  import type { ECommerceEvent } from './ecommerce';
3
3
  import type { AdRevenue, Revenue } from './revenue';
4
4
  import type { UserProfile } from './userProfile';
5
+ import type { ExternalAttribution } from './externalAttribution';
5
6
  import { normalizeAdRevenue } from './utils';
6
7
 
7
8
  const LINKING_ERROR =
@@ -54,6 +55,8 @@ export type AppMetricaConfig = {
54
55
  sessionsAutoTracking?: boolean; // iOS only
55
56
  appOpenTrackingEnabled?: boolean;
56
57
  userProfileID?: string;
58
+
59
+ errorEnvironment?: Record<string, string | undefined>;
57
60
  };
58
61
 
59
62
  export type PreloadInfo = {
@@ -91,6 +94,7 @@ export const UUID_KEY = 'appmetrica_uuid';
91
94
  export * from './ecommerce';
92
95
  export * from './revenue';
93
96
  export * from './userProfile';
97
+ export * from './externalAttribution';
94
98
 
95
99
  export default class AppMetrica {
96
100
  static activate(config: AppMetricaConfig) {
@@ -172,6 +176,14 @@ export default class AppMetrica {
172
176
  }
173
177
 
174
178
  static reportUserProfile(userProfile: UserProfile) {
175
- AppMetricaNative.reportUserProfile(userProfile)
179
+ AppMetricaNative.reportUserProfile(userProfile);
180
+ }
181
+
182
+ static putErrorEnvironmentValue(key: string, value?: string) {
183
+ AppMetricaNative.putErrorEnvironmentValue(key, value);
184
+ }
185
+
186
+ static reportExternalAttribution(attribution: ExternalAttribution) {
187
+ AppMetricaNative.reportExternalAttribution(attribution);
176
188
  }
177
189
  }