@datalyr/react-native 1.4.4 → 1.4.6

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.
@@ -11,8 +11,7 @@ public class DatalyrNativeModule: Module {
11
11
 
12
12
  AsyncFunction("initializeMetaSDK") { (appId: String, clientToken: String?, advertiserTrackingEnabled: Bool, promise: Promise) in
13
13
  DispatchQueue.main.async {
14
- var nativeError: NSError?
15
- let success = ObjCExceptionHelper.tryBlock({
14
+ let error = ObjCExceptionHelper.execute {
16
15
  Settings.shared.appID = appId
17
16
 
18
17
  if let token = clientToken, !token.isEmpty {
@@ -26,9 +25,9 @@ public class DatalyrNativeModule: Module {
26
25
  UIApplication.shared,
27
26
  didFinishLaunchingWithOptions: nil
28
27
  )
29
- }, error: &nativeError)
28
+ }
30
29
 
31
- if !success, let error = nativeError {
30
+ if let error = error {
32
31
  promise.reject("meta_init_exception", error.localizedDescription)
33
32
  return
34
33
  }
@@ -38,8 +37,7 @@ public class DatalyrNativeModule: Module {
38
37
  }
39
38
 
40
39
  AsyncFunction("fetchDeferredAppLink") { (promise: Promise) in
41
- var nativeError: NSError?
42
- let success = ObjCExceptionHelper.tryBlock({
40
+ let error = ObjCExceptionHelper.execute {
43
41
  AppLinkUtility.fetchDeferredAppLink { url, error in
44
42
  if error != nil {
45
43
  promise.resolve(nil)
@@ -52,9 +50,9 @@ public class DatalyrNativeModule: Module {
52
50
  promise.resolve(nil)
53
51
  }
54
52
  }
55
- }, error: &nativeError)
53
+ }
56
54
 
57
- if !success {
55
+ if error != nil {
58
56
  promise.resolve(nil)
59
57
  }
60
58
  }
@@ -68,8 +66,7 @@ public class DatalyrNativeModule: Module {
68
66
  }
69
67
  }
70
68
 
71
- var nativeError: NSError?
72
- let success = ObjCExceptionHelper.tryBlock({
69
+ let error = ObjCExceptionHelper.execute {
73
70
  if let value = valueToSum {
74
71
  AppEvents.shared.logEvent(AppEvents.Name(eventName), valueToSum: value, parameters: params)
75
72
  } else if params.isEmpty {
@@ -77,9 +74,9 @@ public class DatalyrNativeModule: Module {
77
74
  } else {
78
75
  AppEvents.shared.logEvent(AppEvents.Name(eventName), parameters: params)
79
76
  }
80
- }, error: &nativeError)
77
+ }
81
78
 
82
- if !success, let error = nativeError {
79
+ if let error = error {
83
80
  promise.reject("meta_exception", error.localizedDescription)
84
81
  return
85
82
  }
@@ -96,12 +93,11 @@ public class DatalyrNativeModule: Module {
96
93
  }
97
94
  }
98
95
 
99
- var nativeError: NSError?
100
- let success = ObjCExceptionHelper.tryBlock({
96
+ let error = ObjCExceptionHelper.execute {
101
97
  AppEvents.shared.logPurchase(amount: amount, currency: currency, parameters: params)
102
- }, error: &nativeError)
98
+ }
103
99
 
104
- if !success, let error = nativeError {
100
+ if let error = error {
105
101
  promise.reject("meta_exception", error.localizedDescription)
106
102
  return
107
103
  }
@@ -110,8 +106,7 @@ public class DatalyrNativeModule: Module {
110
106
  }
111
107
 
112
108
  AsyncFunction("setMetaUserData") { (userData: [String: Any], promise: Promise) in
113
- var nativeError: NSError?
114
- let success = ObjCExceptionHelper.tryBlock({
109
+ let error = ObjCExceptionHelper.execute {
115
110
  AppEvents.shared.setUserData(userData["email"] as? String, forType: .email)
116
111
  AppEvents.shared.setUserData(userData["firstName"] as? String, forType: .firstName)
117
112
  AppEvents.shared.setUserData(userData["lastName"] as? String, forType: .lastName)
@@ -122,9 +117,9 @@ public class DatalyrNativeModule: Module {
122
117
  AppEvents.shared.setUserData(userData["state"] as? String, forType: .state)
123
118
  AppEvents.shared.setUserData(userData["zip"] as? String, forType: .zip)
124
119
  AppEvents.shared.setUserData(userData["country"] as? String, forType: .country)
125
- }, error: &nativeError)
120
+ }
126
121
 
127
- if !success, let error = nativeError {
122
+ if let error = error {
128
123
  promise.reject("meta_exception", error.localizedDescription)
129
124
  return
130
125
  }
@@ -133,12 +128,11 @@ public class DatalyrNativeModule: Module {
133
128
  }
134
129
 
135
130
  AsyncFunction("clearMetaUserData") { (promise: Promise) in
136
- var nativeError: NSError?
137
- let success = ObjCExceptionHelper.tryBlock({
131
+ let error = ObjCExceptionHelper.execute {
138
132
  AppEvents.shared.clearUserData()
139
- }, error: &nativeError)
133
+ }
140
134
 
141
- if !success, let error = nativeError {
135
+ if let error = error {
142
136
  promise.reject("meta_exception", error.localizedDescription)
143
137
  return
144
138
  }
@@ -147,13 +141,12 @@ public class DatalyrNativeModule: Module {
147
141
  }
148
142
 
149
143
  AsyncFunction("updateMetaTrackingAuthorization") { (enabled: Bool, promise: Promise) in
150
- var nativeError: NSError?
151
- let success = ObjCExceptionHelper.tryBlock({
144
+ let error = ObjCExceptionHelper.execute {
152
145
  Settings.shared.isAdvertiserTrackingEnabled = enabled
153
146
  Settings.shared.isAdvertiserIDCollectionEnabled = enabled
154
- }, error: &nativeError)
147
+ }
155
148
 
156
- if !success, let error = nativeError {
149
+ if let error = error {
157
150
  promise.reject("meta_exception", error.localizedDescription)
158
151
  return
159
152
  }
@@ -181,12 +174,11 @@ public class DatalyrNativeModule: Module {
181
174
  return
182
175
  }
183
176
 
184
- var nativeError: NSError?
185
- let success = ObjCExceptionHelper.tryBlock({
177
+ let error = ObjCExceptionHelper.execute {
186
178
  TikTokBusiness.initializeSdk(validConfig)
187
- }, error: &nativeError)
179
+ }
188
180
 
189
- if !success, let error = nativeError {
181
+ if let error = error {
190
182
  promise.reject("tiktok_init_exception", error.localizedDescription)
191
183
  return
192
184
  }
@@ -196,8 +188,7 @@ public class DatalyrNativeModule: Module {
196
188
  }
197
189
 
198
190
  AsyncFunction("trackTikTokEvent") { (eventName: String, eventId: String?, properties: [String: Any]?, promise: Promise) in
199
- var nativeError: NSError?
200
- let success = ObjCExceptionHelper.tryBlock({
191
+ let error = ObjCExceptionHelper.execute {
201
192
  let event: TikTokBaseEvent
202
193
 
203
194
  if let eid = eventId, !eid.isEmpty {
@@ -213,9 +204,9 @@ public class DatalyrNativeModule: Module {
213
204
  }
214
205
 
215
206
  TikTokBusiness.trackTTEvent(event)
216
- }, error: &nativeError)
207
+ }
217
208
 
218
- if !success, let error = nativeError {
209
+ if let error = error {
219
210
  promise.reject("tiktok_exception", error.localizedDescription)
220
211
  return
221
212
  }
@@ -224,17 +215,16 @@ public class DatalyrNativeModule: Module {
224
215
  }
225
216
 
226
217
  AsyncFunction("identifyTikTokUser") { (externalId: String, externalUserName: String, phoneNumber: String, email: String, promise: Promise) in
227
- var nativeError: NSError?
228
- let success = ObjCExceptionHelper.tryBlock({
218
+ let error = ObjCExceptionHelper.execute {
229
219
  TikTokBusiness.identify(
230
220
  withExternalID: externalId.isEmpty ? nil : externalId,
231
221
  externalUserName: externalUserName.isEmpty ? nil : externalUserName,
232
222
  phoneNumber: phoneNumber.isEmpty ? nil : phoneNumber,
233
223
  email: email.isEmpty ? nil : email
234
224
  )
235
- }, error: &nativeError)
225
+ }
236
226
 
237
- if !success, let error = nativeError {
227
+ if let error = error {
238
228
  promise.reject("tiktok_exception", error.localizedDescription)
239
229
  return
240
230
  }
@@ -243,12 +233,11 @@ public class DatalyrNativeModule: Module {
243
233
  }
244
234
 
245
235
  AsyncFunction("logoutTikTok") { (promise: Promise) in
246
- var nativeError: NSError?
247
- let success = ObjCExceptionHelper.tryBlock({
236
+ let error = ObjCExceptionHelper.execute {
248
237
  TikTokBusiness.logout()
249
- }, error: &nativeError)
238
+ }
250
239
 
251
- if !success, let error = nativeError {
240
+ if let error = error {
252
241
  promise.reject("tiktok_exception", error.localizedDescription)
253
242
  return
254
243
  }
@@ -4,7 +4,7 @@ NS_ASSUME_NONNULL_BEGIN
4
4
 
5
5
  @interface ObjCExceptionHelper : NSObject
6
6
 
7
- + (BOOL)tryBlock:(void (NS_NOESCAPE ^)(void))block error:(NSError *_Nullable *_Nullable)error;
7
+ + (nullable NSError *)execute:(void (NS_NOESCAPE ^)(void))block;
8
8
 
9
9
  @end
10
10
 
@@ -2,23 +2,20 @@
2
2
 
3
3
  @implementation ObjCExceptionHelper
4
4
 
5
- + (BOOL)tryBlock:(void (NS_NOESCAPE ^)(void))block error:(NSError **)error {
5
+ + (nullable NSError *)execute:(void (NS_NOESCAPE ^)(void))block {
6
6
  @try {
7
7
  block();
8
- return YES;
8
+ return nil;
9
9
  } @catch (NSException *exception) {
10
- if (error) {
11
- NSMutableDictionary *userInfo = [NSMutableDictionary dictionary];
12
- userInfo[NSLocalizedDescriptionKey] = exception.reason ?: @"Unknown NSException";
13
- userInfo[@"ExceptionName"] = exception.name;
14
- if (exception.userInfo) {
15
- userInfo[@"ExceptionUserInfo"] = exception.userInfo;
16
- }
17
- *error = [NSError errorWithDomain:@"com.datalyr.exception"
18
- code:-1
19
- userInfo:userInfo];
10
+ NSMutableDictionary *userInfo = [NSMutableDictionary dictionary];
11
+ userInfo[NSLocalizedDescriptionKey] = exception.reason ?: @"Unknown NSException";
12
+ userInfo[@"ExceptionName"] = exception.name;
13
+ if (exception.userInfo) {
14
+ userInfo[@"ExceptionUserInfo"] = exception.userInfo;
20
15
  }
21
- return NO;
16
+ return [NSError errorWithDomain:@"com.datalyr.exception"
17
+ code:-1
18
+ userInfo:userInfo];
22
19
  }
23
20
  }
24
21
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datalyr/react-native",
3
- "version": "1.4.4",
3
+ "version": "1.4.6",
4
4
  "description": "Datalyr SDK for React Native & Expo - Server-side attribution tracking with bundled Meta and TikTok SDKs for iOS and Android",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",