@amplitude/plugin-engagement-react-native 3.1.0 → 3.2.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.
@@ -33,7 +33,7 @@ Pod::Spec.new do |s|
33
33
  ]
34
34
  s.dependency 'AmplitudeCore', '>=1.0.12', '<2.0.0'
35
35
  else
36
- s.dependency "AmplitudeEngagementSwift", "3.1.0"
36
+ s.dependency "AmplitudeEngagementSwift", "3.2.0"
37
37
  end
38
38
 
39
39
  install_modules_dependencies(s)
@@ -86,7 +86,7 @@ dependencies {
86
86
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
87
87
 
88
88
  // Amplitude Engagement SDK
89
- implementation "com.amplitude:amplitude-engagement-android:3.1.0"
89
+ implementation "com.amplitude:amplitude-engagement-android:3.2.0"
90
90
 
91
91
  // Amplitude Analytics SDK (required dependency)
92
92
  implementation "com.amplitude:analytics-android:1.+"
@@ -112,12 +112,12 @@ class PluginEngagementReactNativeModule(val reactContext: ReactApplicationContex
112
112
  }
113
113
  }
114
114
 
115
- override fun boot(id: Double, userId: String?, deviceId: String?) {
115
+ override fun boot(id: Double, userId: String?, deviceId: String?, userProperties: ReadableMap?) {
116
116
  val instance = instances[id]?.instance ?: return
117
117
  val self = this
118
118
  runBlocking(Dispatchers.Main) {
119
- Log.d("PluginEngagementReactNativeModule", "boot: $userId, $deviceId")
120
- val options = AmplitudeBootOptions(userId = userId, deviceId = deviceId, integrations = arrayOf(
119
+ Log.d("PluginEngagementReactNativeModule", "boot: $userId, $deviceId, $userProperties")
120
+ val options = AmplitudeBootOptions(userId = userId, deviceId = deviceId, userProperties = userProperties?.toHashMap() ?: emptyMap(), integrations = arrayOf(
121
121
  { event: BaseEvent ->
122
122
  try {
123
123
  val serializedEvent = mapOf(
@@ -32,6 +32,16 @@ var _id = 0
32
32
  subsystem: "PluginEngagementReactNative",
33
33
  category: "AmplitudeEngagementAdapter")
34
34
 
35
+ private func getInstanceOrNoOpStub(_ instanceId: Int) -> AmplitudeEngagement {
36
+ guard let (_, instance) = instances[instanceId] else {
37
+ AmplitudeEngagementAdapter.logger.error(
38
+ "No AmplitudeEngagement instance found for id: \(instanceId). Returning no-op stub.")
39
+ return AmplitudeEngagementNoOpStub("")
40
+ }
41
+
42
+ return instance
43
+ }
44
+
35
45
  @objc public func newInstance(_ apiKey: String, _ options: [String: Any]?) -> Int {
36
46
  if let existingId = instances.first(where: { $0.value.0 == apiKey })?.key {
37
47
  return existingId
@@ -107,49 +117,46 @@ var _id = 0
107
117
 
108
118
  @objc public func boot(
109
119
  _ instanceId: Int, _ user_id: String?, device_id: String? = nil,
120
+ user_properties: [String: Any]? = nil,
110
121
  integration: @escaping (_ event_type: String, _ event: [String: Any]) -> Void
111
122
  ) {
112
123
  DispatchQueue.main.sync {
113
- guard let (_, instance) = instances[instanceId] else { return }
124
+ let instance = getInstanceOrNoOpStub(instanceId)
114
125
  let options = AmplitudeBootOptions(
115
126
  user_id: user_id, device_id: device_id,
116
127
  integrations: [
117
128
  { event, props in
118
129
  integration(event, props)
119
130
  }
120
- ])
131
+ ], user_properties: user_properties ?? [:])
121
132
  return instance.boot(options: options)
122
133
  }
123
134
  }
124
135
 
125
136
  @objc public func enable(_ instanceId: Int) {
126
137
  DispatchQueue.main.sync {
127
- guard let (_, instance) = instances[instanceId] else { return }
138
+ let instance = getInstanceOrNoOpStub(instanceId)
128
139
  instance.enable()
129
140
  }
130
141
  }
131
142
 
132
143
  @objc public func disable(_ instanceId: Int) {
133
144
  DispatchQueue.main.sync {
134
- guard let (_, instance) = instances[instanceId] else { return }
145
+ let instance = getInstanceOrNoOpStub(instanceId)
135
146
  instance.disable()
136
147
  }
137
148
  }
138
149
 
139
150
  @objc public func shutdown(_ instanceId: Int) {
140
151
  DispatchQueue.main.sync {
141
- guard let (_, instance) = instances[instanceId] else {
142
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
143
- }
152
+ let instance = getInstanceOrNoOpStub(instanceId)
144
153
  return instance.shutdown()
145
154
  }
146
155
  }
147
156
 
148
157
  @objc public func setThemeMode(_ instanceId: Int, themeMode: String) {
149
158
  DispatchQueue.main.sync {
150
- guard let (_, instance) = instances[instanceId] else {
151
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
152
- }
159
+ let instance = getInstanceOrNoOpStub(instanceId)
153
160
  guard let themeModeParsed = ThemeMode(rawValue: themeMode) else { return }
154
161
 
155
162
  return instance.setThemeMode(themeMode: themeModeParsed)
@@ -158,29 +165,21 @@ var _id = 0
158
165
 
159
166
  @objc public func reset(_ instanceId: Int, key: String, stepIndex: Int = 0) {
160
167
  DispatchQueue.main.sync {
161
- guard let (_, instance) = instances[instanceId] else {
162
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
163
- }
164
-
168
+ let instance = getInstanceOrNoOpStub(instanceId)
165
169
  return instance.reset(key: key, stepIndex: stepIndex)
166
170
  }
167
171
  }
168
172
 
169
173
  @objc public func list(_ instanceId: Int) -> [[String: Any]] {
170
174
  DispatchQueue.main.sync {
171
- guard let (_, instance) = instances[instanceId] else {
172
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
173
- }
174
-
175
+ let instance = getInstanceOrNoOpStub(instanceId)
175
176
  return instance.list().compactMap { x in try? x.toDictionary() }
176
177
  }
177
178
  }
178
179
 
179
180
  @objc public func handleUrl(_ instanceId: Int, _ url: String) -> Bool {
180
181
  DispatchQueue.main.sync {
181
- guard let (_, instance) = instances[instanceId] else {
182
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
183
- }
182
+ let instance = getInstanceOrNoOpStub(instanceId)
184
183
  guard let url = URL(string: url) else { return false }
185
184
 
186
185
  return instance.handleUrl(url)
@@ -189,36 +188,28 @@ var _id = 0
189
188
 
190
189
  @objc public func show(_ instanceId: Int, key: String, stepIndex: Int = 0) {
191
190
  DispatchQueue.main.sync {
192
- guard let (_, instance) = instances[instanceId] else {
193
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
194
- }
191
+ let instance = getInstanceOrNoOpStub(instanceId)
195
192
  return instance.show(key: key, stepIndex: stepIndex)
196
193
  }
197
194
  }
198
195
 
199
196
  @objc public func screen(_ instanceId: Int, _ screenName: String) {
200
197
  DispatchQueue.main.sync {
201
- guard let (_, instance) = instances[instanceId] else {
202
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
203
- }
198
+ let instance = getInstanceOrNoOpStub(instanceId)
204
199
  return instance.screen(screenName)
205
200
  }
206
201
  }
207
202
 
208
203
  @objc public func closeAll(_ instanceId: Int) {
209
204
  DispatchQueue.main.sync {
210
- guard let (_, instance) = instances[instanceId] else {
211
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
212
- }
205
+ let instance = getInstanceOrNoOpStub(instanceId)
213
206
  return instance.closeAll()
214
207
  }
215
208
  }
216
209
 
217
210
  @objc public func forwardEvent(_ instanceId: Int, _ event: [String: Any]) {
218
211
  DispatchQueue.main.sync {
219
- guard let (_, instance) = instances[instanceId] else {
220
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
221
- }
212
+ let instance = getInstanceOrNoOpStub(instanceId)
222
213
  return instance.forwardEvent(event)
223
214
  }
224
215
  }
@@ -227,9 +218,7 @@ var _id = 0
227
218
  _ instanceId: Int, _ key: String, _ function: @escaping () -> Void
228
219
  ) {
229
220
  DispatchQueue.main.sync {
230
- guard let (_, instance) = instances[instanceId] else {
231
- fatalError("🚨 Runtime exception: no instance found for id “\(instanceId)”")
232
- }
221
+ let instance = getInstanceOrNoOpStub(instanceId)
233
222
  return instance.addCallback(key, function)
234
223
  }
235
224
  }
@@ -35,12 +35,12 @@
35
35
  return @"PluginEngagementReactNative";
36
36
  }
37
37
 
38
- - (void)boot:(double)id user_id:(NSString *)user_id device_id:(NSString *)device_id {
38
+ - (void)boot:(double)id user_id:(NSString *)user_id device_id:(NSString *)device_id user_properties:(NSDictionary *)user_properties {
39
39
  void (^callback)(NSString *, NSDictionary *) = ^(NSString *event_type, NSDictionary *event) {
40
40
  [self emitOnTrackEvent:@{@"event_type": event_type, @"event_properties": event}];
41
41
  };
42
42
 
43
- [adapter boot:id :user_id device_id:device_id integration:callback];
43
+ [adapter boot:id :user_id device_id:device_id user_properties:user_properties integration:callback];
44
44
  }
45
45
 
46
46
  - (void)enable:(double)id {
@@ -8,8 +8,8 @@ export class AmplitudeEngagement {
8
8
  // Initialize the plugin with the API key
9
9
  this.id = PluginEngagementReactNative.newInstance(apiKey, options);
10
10
  }
11
- boot(user_id, device_id) {
12
- PluginEngagementReactNative.boot(this.id, user_id, device_id);
11
+ boot(user_id, device_id, user_properties) {
12
+ PluginEngagementReactNative.boot(this.id, user_id, device_id, user_properties);
13
13
  }
14
14
  enable() {
15
15
  PluginEngagementReactNative.enable(this.id);
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","isTurboModuleEnabled","global","__turboModuleProxy","PluginEngagementReactNative","require","default","AmplitudeEngagement","constructor","apiKey","options","id","newInstance","boot","user_id","device_id","enable","disable","shutdown","setThemeMode","themeMode","reset","key","stepIndex","list","show","screen","screenName","closeAll","forwardEvent","event","addCallback","func","handler","onInvokeCallback","invocation","remove","handleURL","url"],"sourceRoot":"../../src","sources":["AmplitudeEngagement.ts"],"mappings":";;AACA,SAASA,aAAa,QAAQ,cAAc;AAU5C,MAAMC,oBAAoB,GAAIC,MAAM,CAASC,kBAAkB,IAAI,IAAI;AAEvE,MAAMC,2BAA4D,GAChEH,oBAAoB,GAChBI,OAAO,CAAC,qCAAqC,CAAC,CAACC,OAAO,GACtDN,aAAa,CAACI,2BAA2B;AAE/C,OAAO,MAAMG,mBAAmB,CAAC;EAG/BC,WAAWA,CAACC,MAAc,EAAEC,OAA8B,EAAE;IAC1D;IACA,IAAI,CAACC,EAAE,GAAGP,2BAA2B,CAACQ,WAAW,CAACH,MAAM,EAAEC,OAAO,CAAC;EACpE;EAEAG,IAAIA,CAACC,OAAgB,EAAEC,SAAkB,EAAQ;IAC/CX,2BAA2B,CAACS,IAAI,CAAC,IAAI,CAACF,EAAE,EAAEG,OAAO,EAAEC,SAAS,CAAC;EAC/D;EAEAC,MAAMA,CAAA,EAAS;IACbZ,2BAA2B,CAACY,MAAM,CAAC,IAAI,CAACL,EAAE,CAAC;EAC7C;EAEAM,OAAOA,CAAA,EAAS;IACdb,2BAA2B,CAACa,OAAO,CAAC,IAAI,CAACN,EAAE,CAAC;EAC9C;EAEAO,QAAQA,CAAA,EAAS;IACfd,2BAA2B,CAACc,QAAQ,CAAC,IAAI,CAACP,EAAE,CAAC;EAC/C;EAEAQ,YAAYA,CAACC,SAAoB,EAAQ;IACvC,OAAOhB,2BAA2B,CAACe,YAAY,CAAC,IAAI,CAACR,EAAE,EAAES,SAAS,CAAC;EACrE;EAEAC,KAAKA,CAACC,GAAW,EAAEC,SAAiB,EAAQ;IAC1C,OAAOnB,2BAA2B,CAACiB,KAAK,CAAC,IAAI,CAACV,EAAE,EAAEW,GAAG,EAAEC,SAAS,CAAC;EACnE;EAEAC,IAAIA,CAAA,EAAoB;IACtB,OAAOpB,2BAA2B,CAACoB,IAAI,CAAC,IAAI,CAACb,EAAE,CAAC;EAClD;EAEAc,IAAIA,CAACH,GAAW,EAAEC,SAAiB,EAAQ;IACzC,OAAOnB,2BAA2B,CAACqB,IAAI,CAAC,IAAI,CAACd,EAAE,EAAEW,GAAG,EAAEC,SAAS,CAAC;EAClE;EAEAG,MAAMA,CAACC,UAAkB,EAAQ;IAC/B,OAAOvB,2BAA2B,CAACsB,MAAM,CAAC,IAAI,CAACf,EAAE,EAAEgB,UAAU,CAAC;EAChE;EAEAC,QAAQA,CAAA,EAAS;IACf,OAAOxB,2BAA2B,CAACwB,QAAQ,CAAC,IAAI,CAACjB,EAAE,CAAC;EACtD;EAEAkB,YAAYA,CAACC,KAAgB,EAAQ;IACnC,OAAO1B,2BAA2B,CAACyB,YAAY,CAAC,IAAI,CAAClB,EAAE,EAAEmB,KAAK,CAAC;EACjE;EAEAC,WAAWA,CAACT,GAAW,EAAEU,IAAgB,EAAc;IACrD5B,2BAA2B,CAAC2B,WAAW,CAAC,IAAI,CAACpB,EAAE,EAAEW,GAAG,CAAC;IAErD,MAAMW,OAAO,GAAG7B,2BAA2B,CAAC8B,gBAAgB,CACzDC,UAAU,IAAK;MACd,IAAIA,UAAU,CAACxB,EAAE,KAAK,IAAI,CAACA,EAAE,IAAIwB,UAAU,CAACb,GAAG,KAAKA,GAAG,EAAE;QACvDU,IAAI,CAAC,CAAC;MACR;IACF,CACF,CAAC;IAED,OAAO,MAAMC,OAAO,CAACG,MAAM,CAAC,CAAC;EAC/B;EAEAC,SAASA,CAACC,GAAW,EAAW;IAC9B,OAAOlC,2BAA2B,CAACiC,SAAS,CAAC,IAAI,CAAC1B,EAAE,EAAE2B,GAAG,CAAC;EAC5D;AACF","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","isTurboModuleEnabled","global","__turboModuleProxy","PluginEngagementReactNative","require","default","AmplitudeEngagement","constructor","apiKey","options","id","newInstance","boot","user_id","device_id","user_properties","enable","disable","shutdown","setThemeMode","themeMode","reset","key","stepIndex","list","show","screen","screenName","closeAll","forwardEvent","event","addCallback","func","handler","onInvokeCallback","invocation","remove","handleURL","url"],"sourceRoot":"../../src","sources":["AmplitudeEngagement.ts"],"mappings":";;AACA,SAASA,aAAa,QAAQ,cAAc;AAM5C,MAAMC,oBAAoB,GAAIC,MAAM,CAASC,kBAAkB,IAAI,IAAI;AAEvE,MAAMC,2BAA4D,GAChEH,oBAAoB,GAChBI,OAAO,CAAC,qCAAqC,CAAC,CAACC,OAAO,GACtDN,aAAa,CAACI,2BAA2B;AAE/C,OAAO,MAAMG,mBAAmB,CAAC;EAG/BC,WAAWA,CAACC,MAAc,EAAEC,OAA8B,EAAE;IAC1D;IACA,IAAI,CAACC,EAAE,GAAGP,2BAA2B,CAACQ,WAAW,CAACH,MAAM,EAAEC,OAAO,CAAC;EACpE;EAEAG,IAAIA,CAACC,OAAgB,EAAEC,SAAkB,EAAEC,eAAwB,EAAQ;IACzEZ,2BAA2B,CAACS,IAAI,CAC9B,IAAI,CAACF,EAAE,EACPG,OAAO,EACPC,SAAS,EACTC,eACF,CAAC;EACH;EAEAC,MAAMA,CAAA,EAAS;IACbb,2BAA2B,CAACa,MAAM,CAAC,IAAI,CAACN,EAAE,CAAC;EAC7C;EAEAO,OAAOA,CAAA,EAAS;IACdd,2BAA2B,CAACc,OAAO,CAAC,IAAI,CAACP,EAAE,CAAC;EAC9C;EAEAQ,QAAQA,CAAA,EAAS;IACff,2BAA2B,CAACe,QAAQ,CAAC,IAAI,CAACR,EAAE,CAAC;EAC/C;EAEAS,YAAYA,CAACC,SAAoB,EAAQ;IACvC,OAAOjB,2BAA2B,CAACgB,YAAY,CAAC,IAAI,CAACT,EAAE,EAAEU,SAAS,CAAC;EACrE;EAEAC,KAAKA,CAACC,GAAW,EAAEC,SAAiB,EAAQ;IAC1C,OAAOpB,2BAA2B,CAACkB,KAAK,CAAC,IAAI,CAACX,EAAE,EAAEY,GAAG,EAAEC,SAAS,CAAC;EACnE;EAEAC,IAAIA,CAAA,EAAoB;IACtB,OAAOrB,2BAA2B,CAACqB,IAAI,CAAC,IAAI,CAACd,EAAE,CAAC;EAClD;EAEAe,IAAIA,CAACH,GAAW,EAAEC,SAAiB,EAAQ;IACzC,OAAOpB,2BAA2B,CAACsB,IAAI,CAAC,IAAI,CAACf,EAAE,EAAEY,GAAG,EAAEC,SAAS,CAAC;EAClE;EAEAG,MAAMA,CAACC,UAAkB,EAAQ;IAC/B,OAAOxB,2BAA2B,CAACuB,MAAM,CAAC,IAAI,CAAChB,EAAE,EAAEiB,UAAU,CAAC;EAChE;EAEAC,QAAQA,CAAA,EAAS;IACf,OAAOzB,2BAA2B,CAACyB,QAAQ,CAAC,IAAI,CAAClB,EAAE,CAAC;EACtD;EAEAmB,YAAYA,CAACC,KAAgB,EAAQ;IACnC,OAAO3B,2BAA2B,CAAC0B,YAAY,CAAC,IAAI,CAACnB,EAAE,EAAEoB,KAAK,CAAC;EACjE;EAEAC,WAAWA,CAACT,GAAW,EAAEU,IAAgB,EAAc;IACrD7B,2BAA2B,CAAC4B,WAAW,CAAC,IAAI,CAACrB,EAAE,EAAEY,GAAG,CAAC;IAErD,MAAMW,OAAO,GAAG9B,2BAA2B,CAAC+B,gBAAgB,CACzDC,UAAU,IAAK;MACd,IAAIA,UAAU,CAACzB,EAAE,KAAK,IAAI,CAACA,EAAE,IAAIyB,UAAU,CAACb,GAAG,KAAKA,GAAG,EAAE;QACvDU,IAAI,CAAC,CAAC;MACR;IACF,CACF,CAAC;IAED,OAAO,MAAMC,OAAO,CAACG,MAAM,CAAC,CAAC;EAC/B;EAEAC,SAASA,CAACC,GAAW,EAAW;IAC9B,OAAOnC,2BAA2B,CAACkC,SAAS,CAAC,IAAI,CAAC3B,EAAE,EAAE4B,GAAG,CAAC;EAC5D;AACF","ignoreList":[]}
@@ -29,6 +29,22 @@ export class AmplitudeEngagementPlugin {
29
29
  ...this.initOptions
30
30
  });
31
31
  this.client = client;
32
+ if (this.trackEventSubscription) {
33
+ this.trackEventSubscription.remove();
34
+ }
35
+ this.trackEventSubscription = NativePluginEngagementReactNative.onTrackEvent(event => {
36
+ if (!this.client) {
37
+ this.logger.error('AmplitudeEngagementPlugin#onIdentityChanged client is not initialized');
38
+ return;
39
+ }
40
+ // Add the Guides & Surveys library version to events
41
+ const eventProperties = {
42
+ ...event.event_properties,
43
+ '[Guides-Surveys] Library': `${AmplitudeEngagementPlugin.SDK_LIBRARY}/${AmplitudeEngagementPlugin.SDK_VERSION}`
44
+ };
45
+ this.client?.track(event.event_type, eventProperties);
46
+ });
47
+
32
48
  // TODO: grab identity from client when available -- need to wait until it's added.
33
49
  // Need to wait until https://amplitude.atlassian.net/browse/AMP-133461 is resolved
34
50
  // then; follow the same pattern as in the `AmplitudeEngagementPlugin` in the Swift/iOS code
@@ -42,21 +58,6 @@ export class AmplitudeEngagementPlugin {
42
58
  // we can call `boot()` automatically in `setup` and `onIdentityChanged`
43
59
  boot(user_id, device_id) {
44
60
  boot(user_id, device_id);
45
- if (this.trackEventSubscription) {
46
- this.trackEventSubscription.remove();
47
- }
48
- this.trackEventSubscription = NativePluginEngagementReactNative.onTrackEvent(event => {
49
- if (!this.client) {
50
- this.logger.error('AmplitudeEngagementPlugin#onIdentityChanged client is not initialized');
51
- return;
52
- }
53
- // Add the Guides & Surveys library version to events
54
- const eventProperties = {
55
- ...event.event_properties,
56
- '[Guides-Surveys] Library': `${AmplitudeEngagementPlugin.SDK_LIBRARY}/${AmplitudeEngagementPlugin.SDK_VERSION}`
57
- };
58
- this.client?.track(event.event_type, eventProperties);
59
- });
60
61
  }
61
62
 
62
63
  /** Re-enable the SDK after it has been disabled using disable(). */
@@ -1 +1 @@
1
- {"version":3,"names":["forwardEvent","init","screen","boot","enable","disable","NativePluginEngagementReactNative","Logger","version","AmplitudeEngagementPlugin","name","type","logger","SDK_LIBRARY","SDK_VERSION","trackEventSubscription","constructor","initOptions","setup","config","client","apiKey","serverZone","log","error","user_id","device_id","remove","onTrackEvent","event","eventProperties","event_properties","track","event_type","execute","context","JSON","stringify","screenName","ignoreAnalyticsAutomaticScreenTracking"],"sourceRoot":"../../src","sources":["AmplitudeEngagementPlugin.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardEvent","init","screen","boot","enable","disable","NativePluginEngagementReactNative","Logger","version","AmplitudeEngagementPlugin","name","type","logger","SDK_LIBRARY","SDK_VERSION","trackEventSubscription","constructor","initOptions","setup","config","client","apiKey","serverZone","log","remove","onTrackEvent","event","error","eventProperties","event_properties","track","event_type","user_id","device_id","execute","context","JSON","stringify","screenName","ignoreAnalyticsAutomaticScreenTracking"],"sourceRoot":"../../src","sources":["AmplitudeEngagementPlugin.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativePluginEngagementReactNative.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAyClD,eAAeA,mBAAmB,CAACC,YAAY,CAC7C,6BACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativePluginEngagementReactNative.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AA8ClD,eAAeA,mBAAmB,CAACC,YAAY,CAC7C,6BACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":"3.1.0"}
1
+ {"version":"3.2.0"}
@@ -26,9 +26,9 @@ export function init(apiKey, options) {
26
26
  });
27
27
  toNotify = [];
28
28
  }
29
- export async function boot(user_id, device_id) {
29
+ export async function boot(user_id, device_id, user_properties) {
30
30
  const e = await getGlobalEngagement();
31
- return e.boot(user_id, device_id);
31
+ return e.boot(user_id, device_id, user_properties);
32
32
  }
33
33
  export async function enable() {
34
34
  const e = await getGlobalEngagement();
@@ -1 +1 @@
1
- {"version":3,"names":["AmplitudeEngagement","AmplitudeEngagementPlugin","globalEngagement","toNotify","getGlobalEngagement","Promise","resolve","_reject","push","engagement","init","apiKey","options","Error","forEach","callback","boot","user_id","device_id","e","enable","disable","shutdown","list","show","key","stepIndex","screen","screenName","closeAll","forwardEvent","event","addCallback","func","removePromise","then","r","handleURL","url","plugin","getPlugin","initOptions"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AmplitudeEngagement","AmplitudeEngagementPlugin","globalEngagement","toNotify","getGlobalEngagement","Promise","resolve","_reject","push","engagement","init","apiKey","options","Error","forEach","callback","boot","user_id","device_id","user_properties","e","enable","disable","shutdown","list","show","key","stepIndex","screen","screenName","closeAll","forwardEvent","event","addCallback","func","removePromise","then","r","handleURL","url","plugin","getPlugin","initOptions"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@ import type { BaseEvent } from '@amplitude/analytics-core';
3
3
  export declare class AmplitudeEngagement {
4
4
  id: number;
5
5
  constructor(apiKey: string, options?: AmplitudeInitOptions);
6
- boot(user_id?: string, device_id?: string): void;
6
+ boot(user_id?: string, device_id?: string, user_properties?: Object): void;
7
7
  enable(): void;
8
8
  disable(): void;
9
9
  shutdown(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"AmplitudeEngagement.d.ts","sourceRoot":"","sources":["../../../src/AmplitudeEngagement.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,SAAS,EACV,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAW3D,qBAAa,mBAAmB;IAC9B,EAAE,EAAE,MAAM,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAK1D,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhD,MAAM,IAAI,IAAI;IAId,OAAO,IAAI,IAAI;IAIf,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3C,IAAI,IAAI,aAAa,EAAE;IAIvB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI1C,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIhC,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIpC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IActD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAGhC"}
1
+ {"version":3,"file":"AmplitudeEngagement.d.ts","sourceRoot":"","sources":["../../../src/AmplitudeEngagement.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAW3D,qBAAa,mBAAmB;IAC9B,EAAE,EAAE,MAAM,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAK1D,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI;IAS1E,MAAM,IAAI,IAAI;IAId,OAAO,IAAI,IAAI;IAIf,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3C,IAAI,IAAI,aAAa,EAAE;IAIvB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI1C,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIhC,QAAQ,IAAI,IAAI;IAIhB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAIpC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IActD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAGhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AmplitudeEngagementPlugin.d.ts","sourceRoot":"","sources":["../../../src/AmplitudeEngagementPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAU,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,qBAAa,yBACX,YAAW,gBAAgB,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAEjE,IAAI,SAA+B;IACnC,IAAI,EAAG,YAAY,CAAU;IAE7B,WAAW,CAAC,EAAE,oBAAoB,CAAC;IAEnC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAErC,MAAM,EAAE,eAAe,CAA2C;IAGlE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAuC;IAC1E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAW;IAE9C,sBAAsB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;gBAE5C,WAAW,CAAC,EAAE,oBAAoB;IAIxC,KAAK,CACT,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;IA0BhB,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAuBhD,oEAAoE;IACpE,MAAM,IAAI,IAAI;IAId,8GAA8G;IAC9G,OAAO,IAAI,IAAI;IAIT,OAAO,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;CA2BrD"}
1
+ {"version":3,"file":"AmplitudeEngagementPlugin.d.ts","sourceRoot":"","sources":["../../../src/AmplitudeEngagementPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,KAAK,EACL,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAU,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,qBAAa,yBACX,YAAW,gBAAgB,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAEjE,IAAI,SAA+B;IACnC,IAAI,EAAG,YAAY,CAAU;IAE7B,WAAW,CAAC,EAAE,oBAAoB,CAAC;IAEnC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAErC,MAAM,EAAE,eAAe,CAA2C;IAGlE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAuC;IAC1E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAW;IAE9C,sBAAsB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;gBAE5C,WAAW,CAAC,EAAE,oBAAoB;IAIxC,KAAK,CACT,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;IA+ChB,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhD,oEAAoE;IACpE,MAAM,IAAI,IAAI;IAId,8GAA8G;IAC9G,OAAO,IAAI,IAAI;IAIT,OAAO,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;CA2BrD"}
@@ -11,7 +11,7 @@ export type CallbackInvocation = {
11
11
  };
12
12
  export interface Spec extends TurboModule {
13
13
  newInstance(apiKey: string, options?: Object): number;
14
- boot(id: number, user_id?: string, device_id?: string): void;
14
+ boot(id: number, user_id?: string, device_id?: string, user_properties?: Object): void;
15
15
  enable(id: number): void;
16
16
  disable(id: number): void;
17
17
  shutdown(id: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"NativePluginEngagementReactNative.d.ts","sourceRoot":"","sources":["../../../src/NativePluginEngagementReactNative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAE9E,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtD,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAmB,IAAI,CAAC;IAClE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAExD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,EAAE,CAAC;IAElC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAmB,IAAI,CAAC;IAC9D,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3C,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE5C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;CAC7D;;AAED,wBAEE"}
1
+ {"version":3,"file":"NativePluginEngagementReactNative.d.ts","sourceRoot":"","sources":["../../../src/NativePluginEngagementReactNative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAE9E,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtD,IAAI,CACF,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,GACvB,IAAI,CAAC;IAER,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAmB,IAAI,CAAC;IAClE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAExD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,EAAE,CAAC;IAElC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAmB,IAAI,CAAC;IAC9D,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3C,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE5C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;CAC7D;;AAED,wBAEE"}
@@ -2,7 +2,7 @@ import { AmplitudeEngagementPlugin } from './AmplitudeEngagementPlugin';
2
2
  import type { AmplitudeInitOptions, GuideOrSurvey } from './types';
3
3
  import type { BaseEvent } from '@amplitude/analytics-core';
4
4
  export declare function init(apiKey: string, options?: AmplitudeInitOptions): void;
5
- export declare function boot(user_id?: string, device_id?: string): Promise<void>;
5
+ export declare function boot(user_id?: string, device_id?: string, user_properties?: Object): Promise<void>;
6
6
  export declare function enable(): Promise<void>;
7
7
  export declare function disable(): Promise<void>;
8
8
  export declare function shutdown(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAiB3D,wBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAUzE;AAED,wBAAsB,IAAI,CACxB,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAG5C;AAED,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAG7C;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAG9C;AAED,wBAAsB,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAGrD;AAED,wBAAsB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxE;AAED,wBAAsB,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAG9C;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAQrE;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG7D;AAGD,wBAAgB,SAAS,CACvB,WAAW,CAAC,EAAE,oBAAoB,GACjC,yBAAyB,CAM3B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAiB3D,wBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAUzE;AAED,wBAAsB,IAAI,CACxB,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAG5C;AAED,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAG7C;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAG9C;AAED,wBAAsB,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAGrD;AAED,wBAAsB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxE;AAED,wBAAsB,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAG9C;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAQrE;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG7D;AAGD,wBAAgB,SAAS,CACvB,WAAW,CAAC,EAAE,oBAAoB,GACjC,yBAAyB,CAM3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amplitude/plugin-engagement-react-native",
3
- "version": "3.1.0",
3
+ "version": "3.2.0",
4
4
  "description": "Amplitude Engagement plugin for React Native",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -89,7 +89,7 @@
89
89
  "workspaces": [
90
90
  "example"
91
91
  ],
92
- "packageManager": "yarn@3.6.1",
92
+ "packageManager": "yarn@4.12.0",
93
93
  "jest": {
94
94
  "preset": "react-native",
95
95
  "modulePathIgnorePatterns": [
@@ -1,10 +1,6 @@
1
1
  import type { Spec } from './NativePluginEngagementReactNative';
2
2
  import { NativeModules } from 'react-native';
3
- import type {
4
- AmplitudeInitOptions,
5
- GuideOrSurvey,
6
- ThemeMode,
7
- } from './types';
3
+ import type { AmplitudeInitOptions, GuideOrSurvey, ThemeMode } from './types';
8
4
  import type { BaseEvent } from '@amplitude/analytics-core';
9
5
 
10
6
  type PluginEngagementReactNativeType = Exclude<Spec, 'getConstants'>;
@@ -24,8 +20,13 @@ export class AmplitudeEngagement {
24
20
  this.id = PluginEngagementReactNative.newInstance(apiKey, options);
25
21
  }
26
22
 
27
- boot(user_id?: string, device_id?: string): void {
28
- PluginEngagementReactNative.boot(this.id, user_id, device_id);
23
+ boot(user_id?: string, device_id?: string, user_properties?: Object): void {
24
+ PluginEngagementReactNative.boot(
25
+ this.id,
26
+ user_id,
27
+ device_id,
28
+ user_properties
29
+ );
29
30
  }
30
31
 
31
32
  enable(): void {
@@ -54,6 +54,27 @@ export class AmplitudeEngagementPlugin
54
54
  ...this.initOptions,
55
55
  });
56
56
  this.client = client;
57
+
58
+ if (this.trackEventSubscription) {
59
+ this.trackEventSubscription.remove();
60
+ }
61
+
62
+ this.trackEventSubscription =
63
+ NativePluginEngagementReactNative.onTrackEvent((event) => {
64
+ if (!this.client) {
65
+ this.logger.error(
66
+ 'AmplitudeEngagementPlugin#onIdentityChanged client is not initialized'
67
+ );
68
+ return;
69
+ }
70
+ // Add the Guides & Surveys library version to events
71
+ const eventProperties = {
72
+ ...event.event_properties,
73
+ '[Guides-Surveys] Library': `${AmplitudeEngagementPlugin.SDK_LIBRARY}/${AmplitudeEngagementPlugin.SDK_VERSION}`,
74
+ };
75
+ this.client?.track(event.event_type, eventProperties);
76
+ });
77
+
57
78
  // TODO: grab identity from client when available -- need to wait until it's added.
58
79
  // Need to wait until https://amplitude.atlassian.net/browse/AMP-133461 is resolved
59
80
  // then; follow the same pattern as in the `AmplitudeEngagementPlugin` in the Swift/iOS code
@@ -70,25 +91,6 @@ export class AmplitudeEngagementPlugin
70
91
  // we can call `boot()` automatically in `setup` and `onIdentityChanged`
71
92
  boot(user_id?: string, device_id?: string): void {
72
93
  boot(user_id, device_id);
73
- if (this.trackEventSubscription) {
74
- this.trackEventSubscription.remove();
75
- }
76
-
77
- this.trackEventSubscription =
78
- NativePluginEngagementReactNative.onTrackEvent((event) => {
79
- if (!this.client) {
80
- this.logger.error(
81
- 'AmplitudeEngagementPlugin#onIdentityChanged client is not initialized'
82
- );
83
- return;
84
- }
85
- // Add the Guides & Surveys library version to events
86
- const eventProperties = {
87
- ...event.event_properties,
88
- '[Guides-Surveys] Library': `${AmplitudeEngagementPlugin.SDK_LIBRARY}/${AmplitudeEngagementPlugin.SDK_VERSION}`,
89
- };
90
- this.client?.track(event.event_type, eventProperties);
91
- });
92
94
  }
93
95
 
94
96
  /** Re-enable the SDK after it has been disabled using disable(). */
@@ -16,7 +16,12 @@ export type CallbackInvocation = {
16
16
  export interface Spec extends TurboModule {
17
17
  newInstance(apiKey: string, options?: Object): number;
18
18
 
19
- boot(id: number, user_id?: string, device_id?: string): void;
19
+ boot(
20
+ id: number,
21
+ user_id?: string,
22
+ device_id?: string,
23
+ user_properties?: Object
24
+ ): void;
20
25
 
21
26
  enable(id: number): void;
22
27
  disable(id: number): void;
package/src/index.tsx CHANGED
@@ -32,10 +32,11 @@ export function init(apiKey: string, options?: AmplitudeInitOptions): void {
32
32
 
33
33
  export async function boot(
34
34
  user_id?: string,
35
- device_id?: string
35
+ device_id?: string,
36
+ user_properties?: Object
36
37
  ): Promise<void> {
37
38
  const e = await getGlobalEngagement();
38
- return e.boot(user_id, device_id);
39
+ return e.boot(user_id, device_id, user_properties);
39
40
  }
40
41
 
41
42
  export async function enable(): Promise<void> {