affise-attribution-lib 1.0.7 → 1.1.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.
package/README.md CHANGED
@@ -23,6 +23,7 @@
23
23
  - [APK preinstall tracking](#apk-preinstall-tracking)
24
24
  - [Deeplinks](#deeplinks)
25
25
  - [Android](#android-1)
26
+ - [iOS](#ios-1)
26
27
  - [Offline mode](#offline-mode)
27
28
  - [Disable tracking](#disable-tracking)
28
29
  - [Disable background tracking](#disable-background-tracking)
@@ -433,9 +434,10 @@ To use this feature, create file with name `partner_key` in your app assets dire
433
434
 
434
435
  ### Deeplinks
435
436
 
436
- - register applink callback right after Affise.init(..)
437
+ Register deeplink callback right after Affise.init(..)
437
438
 
438
439
  ```typescript
440
+ Affise.init(..);
439
441
  Affise.registerDeeplinkCallback((uri) => {
440
442
 
441
443
  });
@@ -443,20 +445,57 @@ Affise.registerDeeplinkCallback((uri) => {
443
445
 
444
446
  #### Android
445
447
 
446
- To integrate applink support in android you need:
448
+ To integrate deeplink support in android you need:
447
449
 
448
- - add intent filter to one of your activities, replacing YOUR_AFFISE_APP_ID with id from your affise personal cabinet
450
+ Add intent filter to `AndroidManifest.xml` as in `example/android/app/src/main/AndroidManifest.xml`,
449
451
 
450
452
  ```xml
451
453
  <intent-filter android:autoVerify="true">
452
- <action android:name="android.intent.action.VIEW" />
453
- <category android:name="android.intent.category.DEFAULT" />
454
- <category android:name="android.intent.category.BROWSABLE" />
455
- <data android:scheme="https" />
456
- <data android:host="YOUR_AFFISE_APP_ID.affattr.com" />
454
+ <action android:name="android.intent.action.VIEW" />
455
+
456
+ <category android:name="android.intent.category.DEFAULT" />
457
+ <category android:name="android.intent.category.BROWSABLE" />
458
+
459
+ <data
460
+ android:host="YOUR_AFFISE_APP_ID.affattr.com"
461
+ android:scheme="react" />
457
462
  </intent-filter>
458
463
  ```
459
464
 
465
+ #### iOS
466
+
467
+ To integrate deeplink support in iOS you need:
468
+
469
+ Add deeplink handler to `AppDelegate.mm` as in `example/ios/AffiseAttributionLibExample/AppDelegate.mm`
470
+ - [React Docs](https://reactnavigation.org/docs/deep-linking/#set-up-with-bare-react-native-projects)
471
+
472
+ ```objective-c
473
+ - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
474
+ sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
475
+ {
476
+ return [RCTLinkingManager application:application openURL:url
477
+ sourceApplication:sourceApplication annotation:annotation];
478
+ }
479
+ ```
480
+
481
+ Add key `CFBundleURLTypes` to `Info.plist` as in `example/ios/AffiseAttributionLibExample/Info.plist`
482
+
483
+ ```html
484
+ <key>CFBundleURLTypes</key>
485
+ <array>
486
+ <dict>
487
+ <key>CFBundleTypeRole</key>
488
+ <string>Editor</string>
489
+ <key>CFBundleURLName</key>
490
+ <string>YOUR_AFFISE_APP_ID.affattr.com</string>
491
+ <key>CFBundleURLSchemes</key>
492
+ <array>
493
+ <string>react</string>
494
+ </array>
495
+ </dict>
496
+ </array>
497
+ ```
498
+
460
499
  ### Offline mode
461
500
 
462
501
  In some scenarious you would want to limit Affise network usage, to pause that activity call anywhere in your application following code after Affise init:
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
17
17
  s.source_files = "ios/**/*.{h,m,mm,swift}"
18
18
 
19
19
  s.dependency "React-Core"
20
- s.dependency 'AffiseAttributionLib', '~> 1.0.8'
20
+ s.dependency 'AffiseAttributionLib', '~> 1.1.0'
21
21
 
22
22
  # Don't install the dependencies when we run `pod install` in the old architecture.
23
23
  if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
@@ -73,7 +73,7 @@ dependencies {
73
73
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
74
74
 
75
75
  implementation "com.android.installreferrer:installreferrer:2.2"
76
- implementation "com.affise:attribution:1.4.8"
76
+ implementation "com.affise:attribution:1.5.0"
77
77
  }
78
78
 
79
79
  if (isNewArchitectureEnabled()) {
@@ -22,9 +22,9 @@ class AffiseAttributionNativeModule(
22
22
  .emit(eventName, params)
23
23
  }
24
24
 
25
- private fun sendDeeplinkEvent(uri: Uri) {
25
+ private fun sendDeeplinkEvent(uri: String) {
26
26
  sendEvent(reactContext, DEEPLINK_CALLBACK_EVENT, Arguments.createMap().apply {
27
- putString(DEEPLINK_CALLBACK_URI_PARAMETER, uri.toString())
27
+ putString(DEEPLINK_CALLBACK_URI_PARAMETER, uri)
28
28
  })
29
29
  }
30
30
 
@@ -35,7 +35,9 @@ class AffiseAttributionNativeModule(
35
35
  @ReactMethod
36
36
  fun nativeInit(initProperties: ReadableMap) {
37
37
  (reactContext.applicationContext as? Application)?.let { application ->
38
+ Affise._crossPlatform.react()
38
39
  Affise.init(application, initProperties.toHashMap().toAffiseInitProperties())
40
+ Affise._crossPlatform.start()
39
41
  }
40
42
  }
41
43
 
@@ -59,10 +61,7 @@ class AffiseAttributionNativeModule(
59
61
 
60
62
  @ReactMethod
61
63
  fun nativeRegisterDeeplinkCallback() {
62
- Affise.registerDeeplinkCallback {
63
- sendDeeplinkEvent(it)
64
- true
65
- }
64
+ registerCallback()
66
65
  }
67
66
 
68
67
  @ReactMethod
@@ -138,6 +137,18 @@ class AffiseAttributionNativeModule(
138
137
  result.resolve(Affise.getReferrer())
139
138
  }
140
139
 
140
+ @ReactMethod
141
+ fun nativeHandleDeeplink(uri: String) {
142
+ Affise._crossPlatform.handleDeeplink(uri)
143
+ sendDeeplinkEvent(uri)
144
+ }
145
+
146
+ private fun registerCallback() {
147
+ Affise.registerDeeplinkCallback {
148
+ true
149
+ }
150
+ }
151
+
141
152
  companion object {
142
153
  const val NAME = "AffiseAttributionNative"
143
154
 
@@ -87,4 +87,7 @@ RCT_EXTERN_METHOD(
87
87
  withRejecter: (RCTPromiseRejectBlock)reject
88
88
  )
89
89
 
90
+ RCT_EXTERN_METHOD(
91
+ nativeHandleDeeplink: (NSString)uri
92
+ )
90
93
  @end
@@ -7,12 +7,12 @@ class AffiseAttributionNative: RCTEventEmitter {
7
7
 
8
8
  static private let DEEPLINK_CALLBACK_EVENT = "affiseDeeplinkEvent"
9
9
  static private let DEEPLINK_CALLBACK_URI_PARAMETER = "uri"
10
-
10
+
11
11
  var app: UIApplication? = nil
12
12
  var launchOptions: [UIApplication.LaunchOptionsKey: Any]?
13
13
 
14
14
  private let evensFactory: AffiseEvensFactory = AffiseEvensFactory()
15
-
15
+
16
16
  @objc
17
17
  override static func requiresMainQueueSetup() -> Bool{
18
18
  return true;
@@ -22,13 +22,13 @@ class AffiseAttributionNative: RCTEventEmitter {
22
22
  override func constantsToExport() -> [AnyHashable: Any]!{
23
23
  return [:];
24
24
  }
25
-
25
+
26
26
  override func supportedEvents() -> [String]! {
27
27
  return [AffiseAttributionNative.DEEPLINK_CALLBACK_EVENT];
28
28
  }
29
29
 
30
30
  @objc(nativeInit:)
31
- public func nativeInit(initProperties: NSDictionary) -> Void {
31
+ public func nativeInit(initProperties: NSDictionary) -> Void {
32
32
  app = UIApplication.shared
33
33
  launchOptions = bridge.launchOptions as? [UIApplication.LaunchOptionsKey: Any]
34
34
  if app == nil {
@@ -36,12 +36,13 @@ class AffiseAttributionNative: RCTEventEmitter {
36
36
  return
37
37
  }
38
38
  if let properties = (initProperties as? [String: Any?])?.toAffiseInitProperties {
39
+ Affise._crossPlatform.react()
39
40
  Affise.shared.load(app: app!, initProperties: properties, launchOptions: launchOptions)
40
41
  } else {
41
42
  RCTLogWarn("Affise init properties parse \(initProperties)")
42
43
  }
43
44
  }
44
-
45
+
45
46
  @objc(nativeSendEvent:)
46
47
  public func nativeSendEvent(event: NSDictionary) -> Void {
47
48
  if let event = evensFactory.event(event as? [String: Any?]) {
@@ -50,99 +51,111 @@ class AffiseAttributionNative: RCTEventEmitter {
50
51
 
51
52
  }
52
53
  }
53
-
54
+
54
55
  @objc
55
56
  public func nativeSendEvents() -> Void {
56
57
  Affise.shared.sendEvents()
57
58
  }
58
-
59
+
59
60
  @objc(nativeAddPushToken:)
60
61
  public func nativeAddPushToken(pushToken: NSString) -> Void {
61
62
  Affise.shared.addPushToken(pushToken: pushToken as String)
62
63
  }
63
-
64
+
64
65
  @objc
65
66
  public func nativeRegisterWebView() -> Void {
66
67
  // Affise.shared.registerWebView(webView)
67
68
  RCTLogInfo("NotImplemented")
68
69
  }
69
-
70
+
70
71
  @objc
71
72
  public func nativeUnregisterWebView() -> Void {
72
73
  // Affise.shared.unregisterWebView()
73
74
  RCTLogInfo("NotImplemented")
74
75
  }
75
-
76
+
76
77
  @objc
77
78
  public func nativeRegisterDeeplinkCallback() -> Void {
78
- RCTLogWarn("!> nativeRegisterDeeplinkCallback")
79
- Affise.shared.registerDeeplinkCallback {url in
80
- self.sendEvent(
81
- withName: AffiseAttributionNative.DEEPLINK_CALLBACK_EVENT,
82
- body: [
83
- AffiseAttributionNative.DEEPLINK_CALLBACK_URI_PARAMETER: url.absoluteString
84
- ]
85
- )
86
- }
79
+ registerCallback()
87
80
  }
88
-
81
+
89
82
  @objc(nativeSetSecretId:)
90
83
  public func nativeSetSecretId(secretId: NSString) -> Void {
91
84
  Affise.shared.setSecretId(secretId: secretId as String)
92
85
  }
93
-
86
+
94
87
  @objc(nativeSetAutoCatchingTypes:)
95
88
  public func nativeSetAutoCatchingTypes(types: NSArray) -> Void {
96
89
  RCTLogInfo("NotImplemented")
97
90
  }
98
-
91
+
99
92
  @objc(nativeSetOfflineModeEnabled:)
100
93
  public func nativeSetOfflineModeEnabled(enabled: Bool) -> Void {
101
94
  Affise.shared.setOfflineModeEnabled(enabled: enabled)
102
95
  }
103
-
96
+
104
97
  @objc(nativeIsOfflineModeEnabled:withRejecter:)
105
98
  public func nativeIsOfflineModeEnabled(resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) -> Void {
106
99
  resolve(Affise.shared.isOfflineModeEnabled())
107
100
  }
108
-
101
+
109
102
  @objc(nativeSetBackgroundTrackingEnabled:)
110
103
  public func nativeSetBackgroundTrackingEnabled(enabled: Bool) -> Void {
111
104
  Affise.shared.setBackgroundTrackingEnabled(enabled: enabled)
112
105
  }
113
-
106
+
114
107
  @objc(nativeIsBackgroundTrackingEnabled:withRejecter:)
115
108
  public func nativeIsBackgroundTrackingEnabled(resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) -> Void {
116
109
  resolve(Affise.shared.isBackgroundTrackingEnabled())
117
110
  }
118
-
111
+
119
112
  @objc(nativeSetTrackingEnabled:)
120
113
  public func nativeSetTrackingEnabled(enabled: Bool) -> Void {
121
114
  Affise.shared.setTrackingEnabled(enabled: enabled)
122
115
  }
123
-
116
+
124
117
  @objc(nativeIsTrackingEnabled:withRejecter:)
125
118
  public func nativeIsTrackingEnabled(resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) -> Void {
126
119
  resolve(Affise.shared.isTrackingEnabled())
127
120
  }
128
-
121
+
129
122
  @objc(nativeForget:)
130
123
  public func nativeForget(userData: NSString) -> Void {
131
124
  RCTLogInfo("NotImplemented")
132
125
  }
133
-
126
+
134
127
  @objc(nativeSetEnabledMetrics:)
135
128
  public func nativeSetEnabledMetrics(enabled: Bool) -> Void {
136
129
  RCTLogInfo("NotImplemented")
137
130
  }
138
-
131
+
139
132
  @objc
140
133
  public func nativeCrashApplication() -> Void {
141
134
  RCTLogInfo("NotImplemented")
142
135
  }
143
-
136
+
144
137
  @objc(nativeGetReferrer:withRejecter:)
145
138
  public func nativeGetReferrer(resolve:RCTPromiseResolveBlock, reject:RCTPromiseRejectBlock) -> Void {
146
139
  RCTLogInfo("NotImplemented")
147
140
  }
141
+
142
+ @objc(nativeHandleDeeplink:)
143
+ public func nativeHandleDeeplink(uri: NSString) -> Void {
144
+ if !(uri as String).isEmpty {
145
+ Affise._crossPlatform.handleDeeplink(uri: uri as String)
146
+ sendDeeplinkEvent(uri as String)
147
+ }
148
+ }
149
+
150
+ private func registerCallback() {
151
+ Affise.shared.registerDeeplinkCallback {url in
152
+ }
153
+ }
154
+
155
+ private func sendDeeplinkEvent(_ uri: String) {
156
+ sendEvent(
157
+ withName: AffiseAttributionNative.DEEPLINK_CALLBACK_EVENT,
158
+ body: [AffiseAttributionNative.DEEPLINK_CALLBACK_URI_PARAMETER: uri]
159
+ )
160
+ }
148
161
  }
@@ -77,6 +77,7 @@ class Affise {
77
77
  callback(event[DEEPLINK_CALLBACK_URI_PARAMETER]);
78
78
  });
79
79
  AffiseNative.nativeRegisterDeeplinkCallback();
80
+ this.reactHandleDeeplink();
80
81
  }
81
82
  static unregisterDeeplinkCallback() {
82
83
  var _this$eventListener;
@@ -174,6 +175,15 @@ class Affise {
174
175
  static getReferrer() {
175
176
  return AffiseNative.nativeGetReferrer();
176
177
  }
178
+ static reactHandleDeeplink() {
179
+ _reactNative.Linking.getInitialURL().then(this.deeplinkCallback);
180
+ _reactNative.Linking.addEventListener('url', evt => this.deeplinkCallback(evt.url));
181
+ }
182
+ static deeplinkCallback(url) {
183
+ if (url != null && url.trim().length > 0) {
184
+ AffiseNative.nativeHandleDeeplink(url);
185
+ }
186
+ }
177
187
  }
178
188
  exports.Affise = Affise;
179
189
  _defineProperty(Affise, "eventListener", void 0);
@@ -1 +1 @@
1
- {"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","AffiseNative","NativeModules","AffiseAttributionNative","Proxy","get","Error","DEEPLINK_CALLBACK_EVENT","DEEPLINK_CALLBACK_URI_PARAMETER","Affise","init","initProperties","nativeInit","sendEvents","nativeSendEvents","sendEvent","event","nativeSendEvent","addPushToken","pushToken","nativeAddPushToken","registerDeeplinkCallback","callback","unregisterDeeplinkCallback","eventEmitter","NativeEventEmitter","eventListener","addListener","nativeRegisterDeeplinkCallback","remove","setSecretId","secretId","nativeSetSecretId","setAutoCatchingTypes","types","nativeSetAutoCatchingTypes","setOfflineModeEnabled","enabled","nativeSetOfflineModeEnabled","isOfflineModeEnabled","nativeIsOfflineModeEnabled","setBackgroundTrackingEnabled","nativeSetBackgroundTrackingEnabled","isBackgroundTrackingEnabled","nativeIsBackgroundTrackingEnabled","setTrackingEnabled","nativeSetTrackingEnabled","isTrackingEnabled","nativeIsTrackingEnabled","forget","userData","nativeForget","setEnabledMetrics","nativeSetEnabledMetrics","crashApplication","nativeCrashApplication","getReferrer","nativeGetReferrer"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["LINKING_ERROR","Platform","select","ios","default","AffiseNative","NativeModules","AffiseAttributionNative","Proxy","get","Error","DEEPLINK_CALLBACK_EVENT","DEEPLINK_CALLBACK_URI_PARAMETER","Affise","init","initProperties","nativeInit","sendEvents","nativeSendEvents","sendEvent","event","nativeSendEvent","addPushToken","pushToken","nativeAddPushToken","registerDeeplinkCallback","callback","unregisterDeeplinkCallback","eventEmitter","NativeEventEmitter","eventListener","addListener","nativeRegisterDeeplinkCallback","reactHandleDeeplink","remove","setSecretId","secretId","nativeSetSecretId","setAutoCatchingTypes","types","nativeSetAutoCatchingTypes","setOfflineModeEnabled","enabled","nativeSetOfflineModeEnabled","isOfflineModeEnabled","nativeIsOfflineModeEnabled","setBackgroundTrackingEnabled","nativeSetBackgroundTrackingEnabled","isBackgroundTrackingEnabled","nativeIsBackgroundTrackingEnabled","setTrackingEnabled","nativeSetTrackingEnabled","isTrackingEnabled","nativeIsTrackingEnabled","forget","userData","nativeForget","setEnabledMetrics","nativeSetEnabledMetrics","crashApplication","nativeCrashApplication","getReferrer","nativeGetReferrer","Linking","getInitialURL","then","deeplinkCallback","addEventListener","evt","url","trim","length","nativeHandleDeeplink"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;;;;;;;;AAAA;AAGA;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAAyB;AAAA;AAAA;AAGzB,MAAMA,aAAa,GACd,iFAAgF,GACjFC,qBAAQ,CAACC,MAAM,CAAC;EAACC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAE,CAAC,CAAC,GACrE,sDAAsD,GACtD,+BAA+B;AAEnC,MAAMC,YAAY,GAAGC,0BAAa,CAACC,uBAAuB,GACpDD,0BAAa,CAACC,uBAAuB,GACrC,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACIC,GAAG,GAAG;IACF,MAAM,IAAIC,KAAK,CAACV,aAAa,CAAC;EAClC;AACJ,CAAC,CACJ;AAEL,MAAMW,uBAAuB,GAAG,qBAAqB;AACrD,MAAMC,+BAA+B,GAAG,KAAK;;AAE7C;AACA;AACA;AACO,MAAMC,MAAM,CAAC;EAGhB;AACJ;AACA;EACI,OAAOC,IAAI,CACPC,cAAoC,EACtC;IACEV,YAAY,CAACW,UAAU,CAACD,cAAc,CAAC;EAC3C;;EAEA;AACJ;AACA;EACI,OAAOE,UAAU,GAAG;IAChBZ,YAAY,CAACa,gBAAgB,EAAE;EACnC;;EAEA;AACJ;AACA;EACI,OAAOC,SAAS,CAACC,KAAkB,EAAE;IACjCf,YAAY,CAACgB,eAAe,CAACD,KAAK,CAAC;EACvC;;EAEA;AACJ;AACA;EACI,OAAOE,YAAY,CAACC,SAAiB,EAAE;IACnClB,YAAY,CAACmB,kBAAkB,CAACD,SAAS,CAAC;EAC9C;;EAEA;AACJ;AACA;EACI,OAAOE,wBAAwB,CAACC,QAA+B,EAAE;IAC7D,IAAI,CAACC,0BAA0B,EAAE;IACjC,MAAMC,YAAY,GAAG,IAAIC,+BAAkB,CAACxB,YAAY,CAAC;IACzD,IAAI,CAACyB,aAAa,GAAGF,YAAY,CAACG,WAAW,CAACpB,uBAAuB,EAAGS,KAAK,IAAK;MAC9EM,QAAQ,CAACN,KAAK,CAACR,+BAA+B,CAAC,CAAC;IACpD,CAAC,CAAC;IAEFP,YAAY,CAAC2B,8BAA8B,EAAE;IAC7C,IAAI,CAACC,mBAAmB,EAAE;EAC9B;EAEA,OAAON,0BAA0B,GAAG;IAAA;IAChC,2BAAI,CAACG,aAAa,wDAAlB,oBAAoBI,MAAM,EAAE;EAChC;;EAEA;AACJ;AACA;EACI,OAAOC,WAAW,CAACC,QAAgB,EAAE;IACjC/B,YAAY,CAACgC,iBAAiB,CAACD,QAAQ,CAAC;EAC5C;;EAEA;AACJ;AACA;;EAEI,OAAOE,oBAAoB,CAACC,KAAyB,EAAE;IACnDlC,YAAY,CAACmC,0BAA0B,CAACD,KAAK,CAAC;EAClD;;EAEA;AACJ;AACA;AACA;AACA;AACA;AACA;EACI,OAAOE,qBAAqB,CAACC,OAAgB,EAAE;IAC3CrC,YAAY,CAACsC,2BAA2B,CAACD,OAAO,CAAC;EACrD;;EAEA;AACJ;AACA;EACI,OAAOE,oBAAoB,GAAqB;IAC5C,OAAOvC,YAAY,CAACwC,0BAA0B,EAAE;EACpD;;EAEA;AACJ;AACA;AACA;AACA;EACI,OAAOC,4BAA4B,CAACJ,OAAgB,EAAE;IAClDrC,YAAY,CAAC0C,kCAAkC,CAACL,OAAO,CAAC;EAC5D;;EAEA;AACJ;AACA;EACI,OAAOM,2BAA2B,GAAqB;IACnD,OAAO3C,YAAY,CAAC4C,iCAAiC,EAAE;EAC3D;;EAEA;AACJ;AACA;AACA;AACA;EACI,OAAOC,kBAAkB,CAACR,OAAgB,EAAE;IACxCrC,YAAY,CAAC8C,wBAAwB,CAACT,OAAO,CAAC;EAClD;;EAEA;AACJ;AACA;EACI,OAAOU,iBAAiB,GAAqB;IACzC,OAAO/C,YAAY,CAACgD,uBAAuB,EAAE;EACjD;;EAEA;AACJ;AACA;EACI,OAAOC,MAAM,CAACC,QAAgB,EAAE;IAC5BlD,YAAY,CAACmD,YAAY,CAACD,QAAQ,CAAC;EACvC;;EAEA;AACJ;AACA;AACA;AACA;AACA;EACI,OAAOE,iBAAiB,CAACf,OAAgB,EAAE;IACvCrC,YAAY,CAACqD,uBAAuB,CAAChB,OAAO,CAAC;EACjD;EAEA,OAAOiB,gBAAgB,GAAG;IACtBtD,YAAY,CAACuD,sBAAsB,EAAE;EACzC;;EAEA;AACJ;AACA;EACI,OAAOC,WAAW,GAAoB;IAClC,OAAOxD,YAAY,CAACyD,iBAAiB,EAAE;EAC3C;EAEA,OAAe7B,mBAAmB,GAAG;IACjC8B,oBAAO,CAACC,aAAa,EAAE,CAACC,IAAI,CAAC,IAAI,CAACC,gBAAgB,CAAC;IACnDH,oBAAO,CAACI,gBAAgB,CAAC,KAAK,EAAGC,GAAG,IAAK,IAAI,CAACF,gBAAgB,CAACE,GAAG,CAACC,GAAG,CAAC,CAAC;EAC5E;EAEA,OAAeH,gBAAgB,CAACG,GAAkB,EAAE;IAChD,IAAIA,GAAG,IAAI,IAAI,IAAIA,GAAG,CAACC,IAAI,EAAE,CAACC,MAAM,GAAG,CAAC,EAAE;MACtClE,YAAY,CAACmE,oBAAoB,CAACH,GAAG,CAAC;IAC1C;EACJ;AACJ;AAAC;AAAA,gBA1JYxD,MAAM"}
@@ -1,7 +1,7 @@
1
1
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
2
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
3
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
- import { NativeEventEmitter, NativeModules, Platform } from 'react-native';
4
+ import { Linking, NativeEventEmitter, NativeModules, Platform } from 'react-native';
5
5
  export * from "./Export";
6
6
  const LINKING_ERROR = `The package 'affise-attribution-lib' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
7
7
  ios: "- You have run 'pod install'\n",
@@ -57,6 +57,7 @@ export class Affise {
57
57
  callback(event[DEEPLINK_CALLBACK_URI_PARAMETER]);
58
58
  });
59
59
  AffiseNative.nativeRegisterDeeplinkCallback();
60
+ this.reactHandleDeeplink();
60
61
  }
61
62
  static unregisterDeeplinkCallback() {
62
63
  var _this$eventListener;
@@ -154,6 +155,15 @@ export class Affise {
154
155
  static getReferrer() {
155
156
  return AffiseNative.nativeGetReferrer();
156
157
  }
158
+ static reactHandleDeeplink() {
159
+ Linking.getInitialURL().then(this.deeplinkCallback);
160
+ Linking.addEventListener('url', evt => this.deeplinkCallback(evt.url));
161
+ }
162
+ static deeplinkCallback(url) {
163
+ if (url != null && url.trim().length > 0) {
164
+ AffiseNative.nativeHandleDeeplink(url);
165
+ }
166
+ }
157
167
  }
158
168
  _defineProperty(Affise, "eventListener", void 0);
159
169
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeEventEmitter","NativeModules","Platform","LINKING_ERROR","select","ios","default","AffiseNative","AffiseAttributionNative","Proxy","get","Error","DEEPLINK_CALLBACK_EVENT","DEEPLINK_CALLBACK_URI_PARAMETER","Affise","init","initProperties","nativeInit","sendEvents","nativeSendEvents","sendEvent","event","nativeSendEvent","addPushToken","pushToken","nativeAddPushToken","registerDeeplinkCallback","callback","unregisterDeeplinkCallback","eventEmitter","eventListener","addListener","nativeRegisterDeeplinkCallback","remove","setSecretId","secretId","nativeSetSecretId","setAutoCatchingTypes","types","nativeSetAutoCatchingTypes","setOfflineModeEnabled","enabled","nativeSetOfflineModeEnabled","isOfflineModeEnabled","nativeIsOfflineModeEnabled","setBackgroundTrackingEnabled","nativeSetBackgroundTrackingEnabled","isBackgroundTrackingEnabled","nativeIsBackgroundTrackingEnabled","setTrackingEnabled","nativeSetTrackingEnabled","isTrackingEnabled","nativeIsTrackingEnabled","forget","userData","nativeForget","setEnabledMetrics","nativeSetEnabledMetrics","crashApplication","nativeCrashApplication","getReferrer","nativeGetReferrer"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["Linking","NativeEventEmitter","NativeModules","Platform","LINKING_ERROR","select","ios","default","AffiseNative","AffiseAttributionNative","Proxy","get","Error","DEEPLINK_CALLBACK_EVENT","DEEPLINK_CALLBACK_URI_PARAMETER","Affise","init","initProperties","nativeInit","sendEvents","nativeSendEvents","sendEvent","event","nativeSendEvent","addPushToken","pushToken","nativeAddPushToken","registerDeeplinkCallback","callback","unregisterDeeplinkCallback","eventEmitter","eventListener","addListener","nativeRegisterDeeplinkCallback","reactHandleDeeplink","remove","setSecretId","secretId","nativeSetSecretId","setAutoCatchingTypes","types","nativeSetAutoCatchingTypes","setOfflineModeEnabled","enabled","nativeSetOfflineModeEnabled","isOfflineModeEnabled","nativeIsOfflineModeEnabled","setBackgroundTrackingEnabled","nativeSetBackgroundTrackingEnabled","isBackgroundTrackingEnabled","nativeIsBackgroundTrackingEnabled","setTrackingEnabled","nativeSetTrackingEnabled","isTrackingEnabled","nativeIsTrackingEnabled","forget","userData","nativeForget","setEnabledMetrics","nativeSetEnabledMetrics","crashApplication","nativeCrashApplication","getReferrer","nativeGetReferrer","getInitialURL","then","deeplinkCallback","addEventListener","evt","url","trim","length","nativeHandleDeeplink"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":"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"}
@@ -82,5 +82,7 @@ export declare class Affise {
82
82
  * Get referrer
83
83
  */
84
84
  static getReferrer(): Promise<string>;
85
+ private static reactHandleDeeplink;
86
+ private static deeplinkCallback;
85
87
  }
86
88
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,oBAAoB,EAAE,gBAAgB,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAElF,cAAc,UAAU,CAAC;AAuBzB;;GAEG;AACH,qBAAa,MAAM;IACf,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAsB;IAEnD;;OAEG;IACH,MAAM,CAAC,IAAI,CACP,cAAc,EAAE,oBAAoB;IAKxC;;OAEG;IACH,MAAM,CAAC,UAAU;IAIjB;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW;IAInC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;IAIrC;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAU/D,MAAM,CAAC,0BAA0B;IAIjC;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM;IAInC;;OAEG;IAEH,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,EAAE;IAIrD;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO;IAI7C;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/C;;;;OAIG;IACH,MAAM,CAAC,4BAA4B,CAAC,OAAO,EAAE,OAAO;IAIpD;;OAEG;IACH,MAAM,CAAC,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO;IAI1C;;OAEG;IACH,MAAM,CAAC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM;IAI9B;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAIzC,MAAM,CAAC,gBAAgB;IAIvB;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;CAGxC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,oBAAoB,EAAE,gBAAgB,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAElF,cAAc,UAAU,CAAC;AAuBzB;;GAEG;AACH,qBAAa,MAAM;IACf,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAsB;IAEnD;;OAEG;IACH,MAAM,CAAC,IAAI,CACP,cAAc,EAAE,oBAAoB;IAKxC;;OAEG;IACH,MAAM,CAAC,UAAU;IAIjB;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW;IAInC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;IAIrC;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAW/D,MAAM,CAAC,0BAA0B;IAIjC;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM;IAInC;;OAEG;IAEH,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,EAAE;IAIrD;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO;IAI7C;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/C;;;;OAIG;IACH,MAAM,CAAC,4BAA4B,CAAC,OAAO,EAAE,OAAO;IAIpD;;OAEG;IACH,MAAM,CAAC,2BAA2B,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO;IAI1C;;OAEG;IACH,MAAM,CAAC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM;IAI9B;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAIzC,MAAM,CAAC,gBAAgB;IAIvB;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAKlC,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAKlC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "affise-attribution-lib",
3
- "version": "1.0.7",
3
+ "version": "1.1.0",
4
4
  "description": "Affise Attribution Library",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
package/src/index.tsx CHANGED
@@ -1,4 +1,4 @@
1
- import {EmitterSubscription, NativeEventEmitter, NativeModules, Platform} from 'react-native';
1
+ import {EmitterSubscription, Linking, NativeEventEmitter, NativeModules, Platform} from 'react-native';
2
2
  import type {AffiseInitProperties, AutoCatchingType, AffiseEvent} from "./Export";
3
3
 
4
4
  export * from "./Export";
@@ -71,6 +71,7 @@ export class Affise {
71
71
  });
72
72
 
73
73
  AffiseNative.nativeRegisterDeeplinkCallback();
74
+ this.reactHandleDeeplink();
74
75
  }
75
76
 
76
77
  static unregisterDeeplinkCallback() {
@@ -169,4 +170,15 @@ export class Affise {
169
170
  static getReferrer(): Promise<string> {
170
171
  return AffiseNative.nativeGetReferrer();
171
172
  }
173
+
174
+ private static reactHandleDeeplink() {
175
+ Linking.getInitialURL().then(this.deeplinkCallback);
176
+ Linking.addEventListener('url', (evt) => this.deeplinkCallback(evt.url))
177
+ }
178
+
179
+ private static deeplinkCallback(url: string | null) {
180
+ if (url != null && url.trim().length > 0) {
181
+ AffiseNative.nativeHandleDeeplink(url);
182
+ }
183
+ }
172
184
  }