@snowplow/react-native-tracker 1.4.0 → 2.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.
Files changed (240) hide show
  1. package/.editorconfig +15 -0
  2. package/.eslintignore +6 -0
  3. package/.gitattributes +3 -0
  4. package/.github/ISSUE_TEMPLATE/bug_report.md +29 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  6. package/.github/actions/setup/action.yml +28 -0
  7. package/.github/workflows/build.yml +155 -0
  8. package/.github/workflows/deploy.yml +97 -0
  9. package/.github/workflows/e2e-android.yml +121 -0
  10. package/.github/workflows/e2e-ios.yml +95 -0
  11. package/.github/workflows/snyk.yml +21 -0
  12. package/.gitignore +70 -0
  13. package/.npmignore +60 -0
  14. package/.nvmrc +1 -0
  15. package/.watchmanconfig +1 -0
  16. package/.yarnrc +3 -0
  17. package/CHANGELOG +176 -0
  18. package/CONTRIBUTING.md +80 -0
  19. package/LICENSE +1 -1
  20. package/README.md +24 -111
  21. package/android/build.gradle +93 -37
  22. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  23. package/android/gradle/wrapper/gradle-wrapper.properties +1 -2
  24. package/android/gradle.properties +5 -2
  25. package/android/gradlew +172 -110
  26. package/android/gradlew.bat +24 -19
  27. package/android/src/main/AndroidManifest.xml +1 -3
  28. package/android/src/main/AndroidManifestNew.xml +2 -0
  29. package/android/src/main/java/com/snowplow/reactnativetracker/ReactNativeTrackerModule.kt +744 -0
  30. package/android/src/main/java/com/snowplow/reactnativetracker/ReactNativeTrackerPackage.kt +17 -0
  31. package/android/src/main/java/com/snowplow/reactnativetracker/util/ConfigUtil.kt +274 -0
  32. package/android/src/main/java/com/snowplow/reactnativetracker/util/EventUtil.kt +233 -0
  33. package/android/src/main/java/com/snowplow/reactnativetracker/util/TrackerVersion.kt +5 -0
  34. package/babel.config.js +3 -0
  35. package/example/.watchmanconfig +1 -0
  36. package/example/Gemfile +6 -0
  37. package/example/android/app/build.gradle +129 -0
  38. package/example/android/app/debug.keystore +0 -0
  39. package/example/android/app/proguard-rules.pro +10 -0
  40. package/example/android/app/src/androidTest/java/com/reactnativetrackerexample/DetoxTest.java +36 -0
  41. package/example/android/app/src/androidTest/java/com/reactnativetrackerexample/DetoxTestAppJUnitRunner.java +21 -0
  42. package/example/android/app/src/debug/AndroidManifest.xml +13 -0
  43. package/example/android/app/src/debug/java/com/reactnativetrackerexample/ReactNativeFlipper.java +75 -0
  44. package/example/android/app/src/main/AndroidManifest.xml +26 -0
  45. package/example/android/app/src/main/java/com/reactnativetrackerexample/MainActivity.java +32 -0
  46. package/example/android/app/src/main/java/com/reactnativetrackerexample/MainApplication.java +62 -0
  47. package/example/android/app/src/main/res/drawable/rn_edit_text_material.xml +36 -0
  48. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  49. package/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  50. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  51. package/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  52. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  53. package/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  54. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  55. package/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  56. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  57. package/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  58. package/example/android/app/src/main/res/values/strings.xml +3 -0
  59. package/example/android/app/src/main/res/values/styles.xml +9 -0
  60. package/example/android/app/src/release/java/com/reactnativetrackerexample/ReactNativeFlipper.java +20 -0
  61. package/example/android/build.gradle +31 -0
  62. package/example/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  63. package/example/android/gradle/wrapper/gradle-wrapper.properties +6 -0
  64. package/example/android/gradle.properties +44 -0
  65. package/example/android/gradlew +244 -0
  66. package/example/android/gradlew.bat +92 -0
  67. package/example/android/settings.gradle +4 -0
  68. package/example/app.json +4 -0
  69. package/example/babel.config.js +17 -0
  70. package/example/detox.config.js +92 -0
  71. package/example/e2e/config.json +10 -0
  72. package/example/e2e/emitEvents.e2e.detox.js +95 -0
  73. package/example/e2e/environment.js +23 -0
  74. package/example/e2e/helpers/microCommands.js +140 -0
  75. package/example/e2e/helpers/microHelpers.js +333 -0
  76. package/example/e2e/helpers/microHelpers.test.js +295 -0
  77. package/example/e2e/helpers/schemas.js +49 -0
  78. package/example/e2e/jest.config.js +16 -0
  79. package/example/e2e/setup.js +4 -0
  80. package/example/e2e/testEvents.micro.test.js +287 -0
  81. package/example/index.js +5 -0
  82. package/example/ios/.xcode.env +11 -0
  83. package/example/ios/Podfile +62 -0
  84. package/example/ios/Podfile.lock +730 -0
  85. package/example/ios/ReactNativeTrackerExample/AppDelegate.h +6 -0
  86. package/example/ios/ReactNativeTrackerExample/AppDelegate.mm +26 -0
  87. package/example/ios/ReactNativeTrackerExample/Images.xcassets/AppIcon.appiconset/Contents.json +53 -0
  88. package/example/ios/ReactNativeTrackerExample/Images.xcassets/Contents.json +6 -0
  89. package/example/ios/ReactNativeTrackerExample/Info.plist +55 -0
  90. package/example/ios/ReactNativeTrackerExample/LaunchScreen.storyboard +47 -0
  91. package/example/ios/ReactNativeTrackerExample/main.m +10 -0
  92. package/example/ios/ReactNativeTrackerExample-Bridging-Header.h +3 -0
  93. package/example/ios/ReactNativeTrackerExample.xcodeproj/project.pbxproj +722 -0
  94. package/{ios/RNSnowplowTracker.xcodeproj/xcshareddata/xcschemes/RNSnowplowTracker.xcscheme → example/ios/ReactNativeTrackerExample.xcodeproj/xcshareddata/xcschemes/ReactNativeTrackerExample.xcscheme} +29 -21
  95. package/example/ios/ReactNativeTrackerExample.xcworkspace/contents.xcworkspacedata +10 -0
  96. package/example/ios/ReactNativeTrackerExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  97. package/example/ios/ReactNativeTrackerExampleTests/Info.plist +24 -0
  98. package/example/ios/ReactNativeTrackerExampleTests/ReactNativeTrackerExampleTests.m +66 -0
  99. package/example/metro.config.js +45 -0
  100. package/example/package.json +54 -0
  101. package/example/react-native.config.js +10 -0
  102. package/example/src/App.js +566 -0
  103. package/example/tsconfig.json +5 -0
  104. package/example/yarn.lock +7379 -0
  105. package/ios/ReactNativeTracker-Bridging-Header.h +2 -0
  106. package/ios/ReactNativeTracker.mm +175 -0
  107. package/ios/ReactNativeTracker.swift +822 -0
  108. package/ios/{RNSnowplowTracker.xcodeproj → ReactNativeTracker.xcodeproj}/project.pbxproj +55 -79
  109. package/ios/Util/ConfigUtils.swift +209 -0
  110. package/ios/Util/TrackerVersion.swift +3 -0
  111. package/ios/Util/Utilities.swift +37 -0
  112. package/lefthook.yml +11 -0
  113. package/lib/commonjs/api.js +490 -0
  114. package/lib/commonjs/api.js.map +1 -0
  115. package/lib/commonjs/configurations.js +196 -0
  116. package/lib/commonjs/configurations.js.map +1 -0
  117. package/lib/commonjs/constants.js +77 -0
  118. package/lib/commonjs/constants.js.map +1 -0
  119. package/lib/commonjs/events.js +277 -0
  120. package/lib/commonjs/events.js.map +1 -0
  121. package/lib/commonjs/index.js +132 -0
  122. package/lib/commonjs/index.js.map +1 -0
  123. package/lib/commonjs/jsCore.js +427 -0
  124. package/lib/commonjs/jsCore.js.map +1 -0
  125. package/lib/commonjs/native.js +16 -0
  126. package/lib/commonjs/native.js.map +1 -0
  127. package/lib/commonjs/subject.js +235 -0
  128. package/lib/commonjs/subject.js.map +1 -0
  129. package/lib/commonjs/tracker.js +248 -0
  130. package/lib/commonjs/tracker.js.map +1 -0
  131. package/lib/commonjs/types.js +2 -0
  132. package/lib/commonjs/types.js.map +1 -0
  133. package/lib/commonjs/utils.js +72 -0
  134. package/lib/commonjs/utils.js.map +1 -0
  135. package/lib/commonjs/webViewInterface.js +66 -0
  136. package/lib/commonjs/webViewInterface.js.map +1 -0
  137. package/lib/module/api.js +452 -0
  138. package/lib/module/api.js.map +1 -0
  139. package/lib/module/configurations.js +184 -0
  140. package/lib/module/configurations.js.map +1 -0
  141. package/lib/module/constants.js +72 -0
  142. package/lib/module/constants.js.map +1 -0
  143. package/lib/module/events.js +259 -0
  144. package/lib/module/events.js.map +1 -0
  145. package/lib/module/index.js +120 -0
  146. package/lib/module/index.js.map +1 -0
  147. package/lib/module/jsCore.js +424 -0
  148. package/lib/module/jsCore.js.map +1 -0
  149. package/lib/module/native.js +12 -0
  150. package/lib/module/native.js.map +1 -0
  151. package/lib/module/subject.js +222 -0
  152. package/lib/module/subject.js.map +1 -0
  153. package/lib/module/tracker.js +234 -0
  154. package/lib/module/tracker.js.map +1 -0
  155. package/lib/module/types.js +2 -0
  156. package/lib/module/types.js.map +1 -0
  157. package/lib/module/utils.js +66 -0
  158. package/lib/module/utils.js.map +1 -0
  159. package/lib/module/webViewInterface.js +62 -0
  160. package/lib/module/webViewInterface.js.map +1 -0
  161. package/lib/typescript/__tests__/api.test.d.ts +2 -0
  162. package/lib/typescript/__tests__/api.test.d.ts.map +1 -0
  163. package/lib/typescript/__tests__/configurations.test.d.ts +2 -0
  164. package/lib/typescript/__tests__/configurations.test.d.ts.map +1 -0
  165. package/lib/typescript/__tests__/events.test.d.ts +2 -0
  166. package/lib/typescript/__tests__/events.test.d.ts.map +1 -0
  167. package/lib/typescript/__tests__/index.test.d.ts +2 -0
  168. package/lib/typescript/__tests__/index.test.d.ts.map +1 -0
  169. package/lib/typescript/__tests__/jsCore.test.d.ts +2 -0
  170. package/lib/typescript/__tests__/jsCore.test.d.ts.map +1 -0
  171. package/lib/typescript/__tests__/utils.test.d.ts +2 -0
  172. package/lib/typescript/__tests__/utils.test.d.ts.map +1 -0
  173. package/lib/typescript/api.d.ts +240 -0
  174. package/lib/typescript/api.d.ts.map +1 -0
  175. package/lib/typescript/configurations.d.ts +73 -0
  176. package/lib/typescript/configurations.d.ts.map +1 -0
  177. package/lib/typescript/constants.d.ts +64 -0
  178. package/lib/typescript/constants.d.ts.map +1 -0
  179. package/lib/typescript/events.d.ts +115 -0
  180. package/lib/typescript/events.d.ts.map +1 -0
  181. package/lib/typescript/index.d.ts +27 -0
  182. package/lib/typescript/index.d.ts.map +1 -0
  183. package/lib/typescript/jsCore.d.ts +152 -0
  184. package/lib/typescript/jsCore.d.ts.map +1 -0
  185. package/lib/typescript/native.d.ts +4 -0
  186. package/lib/typescript/native.d.ts.map +1 -0
  187. package/lib/typescript/subject.d.ts +91 -0
  188. package/lib/typescript/subject.d.ts.map +1 -0
  189. package/lib/typescript/tracker.d.ts +111 -0
  190. package/lib/typescript/tracker.d.ts.map +1 -0
  191. package/{dist/index.d.ts → lib/typescript/types.d.ts} +264 -73
  192. package/lib/typescript/types.d.ts.map +1 -0
  193. package/lib/typescript/utils.d.ts +35 -0
  194. package/lib/typescript/utils.d.ts.map +1 -0
  195. package/lib/typescript/webViewInterface.d.ts +15 -0
  196. package/lib/typescript/webViewInterface.d.ts.map +1 -0
  197. package/package.json +135 -53
  198. package/scripts/bootstrap.js +29 -0
  199. package/snowplow-react-native-tracker.podspec +42 -0
  200. package/src/__mocks__/react-native.js +7 -0
  201. package/src/__tests__/api.test.ts +21 -0
  202. package/src/__tests__/configurations.test.ts +608 -0
  203. package/src/__tests__/events.test.ts +736 -0
  204. package/src/__tests__/index.test.ts +14 -0
  205. package/src/__tests__/jsCore.test.ts +199 -0
  206. package/src/__tests__/utils.test.ts +10 -0
  207. package/src/api.ts +556 -0
  208. package/src/configurations.ts +325 -0
  209. package/src/constants.ts +97 -0
  210. package/src/events.ts +355 -0
  211. package/src/index.ts +184 -0
  212. package/src/jsCore.ts +603 -0
  213. package/src/native.ts +21 -0
  214. package/src/subject.ts +302 -0
  215. package/src/tracker.ts +377 -0
  216. package/src/types.ts +1162 -0
  217. package/src/utils.ts +65 -0
  218. package/src/webViewInterface.ts +92 -0
  219. package/tsconfig.build.json +5 -0
  220. package/tsconfig.json +28 -0
  221. package/turbo.json +34 -0
  222. package/yarn.lock +9333 -0
  223. package/RNSnowplowTracker.podspec +0 -24
  224. package/android/src/main/java/com/snowplowanalytics/react/tracker/RNSnowplowTrackerModule.java +0 -750
  225. package/android/src/main/java/com/snowplowanalytics/react/tracker/RNSnowplowTrackerPackage.java +0 -29
  226. package/android/src/main/java/com/snowplowanalytics/react/util/ConfigUtil.java +0 -351
  227. package/android/src/main/java/com/snowplowanalytics/react/util/EventUtil.java +0 -339
  228. package/android/src/main/java/com/snowplowanalytics/react/util/TrackerVersion.java +0 -7
  229. package/dist/index.js +0 -2026
  230. package/dist/index.js.map +0 -1
  231. package/ios/RNSnowplowTracker.h +0 -34
  232. package/ios/RNSnowplowTracker.m +0 -911
  233. package/ios/Util/NSDictionary+RNSP_TypeMethods.h +0 -33
  234. package/ios/Util/NSDictionary+RNSP_TypeMethods.m +0 -40
  235. package/ios/Util/RNConfigUtils.h +0 -44
  236. package/ios/Util/RNConfigUtils.m +0 -209
  237. package/ios/Util/RNTrackerVersion.h +0 -27
  238. package/ios/Util/RNTrackerVersion.m +0 -27
  239. package/ios/Util/RNUtilities.h +0 -32
  240. package/ios/Util/RNUtilities.m +0 -68
@@ -1,35 +1,35 @@
1
1
  /**
2
2
  * HttpMethod type
3
3
  */
4
- declare type HttpMethod = 'post' | 'get';
4
+ export type HttpMethod = 'post' | 'get';
5
5
  /**
6
6
  * DevicePlatform type
7
7
  */
8
- declare type DevicePlatform = 'web' | 'mob' | 'pc' | 'srv' | 'app' | 'tv' | 'cnsl' | 'iot';
8
+ export type DevicePlatform = 'web' | 'mob' | 'pc' | 'srv' | 'app' | 'tv' | 'cnsl' | 'iot';
9
9
  /**
10
10
  * LogLevel type
11
11
  */
12
- declare type LogLevel = 'off' | 'error' | 'debug' | 'verbose';
12
+ export type LogLevel = 'off' | 'error' | 'debug' | 'verbose';
13
13
  /**
14
14
  * BasisForProsessing
15
15
  */
16
- declare type Basis = 'consent' | 'contract' | 'legal_obligation' | 'legitimate_interests' | 'public_task' | 'vital_interests';
16
+ export type Basis = 'consent' | 'contract' | 'legal_obligation' | 'legitimate_interests' | 'public_task' | 'vital_interests';
17
17
  /**
18
18
  * BufferOption
19
19
  */
20
- declare type BufferOption = 'single' | 'default' | 'large';
20
+ export type BufferOption = 'single' | 'small' | 'large';
21
21
  /**
22
22
  * Trigger for MessageNotification event
23
23
  */
24
- declare type Trigger = 'push' | 'location' | 'calendar' | 'timeInterval' | 'other';
24
+ export type Trigger = 'push' | 'location' | 'calendar' | 'timeInterval' | 'other';
25
25
  /**
26
26
  * ScreenSize
27
27
  */
28
- declare type ScreenSize = [number, number];
28
+ export type ScreenSize = [number, number];
29
29
  /**
30
30
  * SelfDescribing type
31
31
  */
32
- declare type SelfDescribing<T extends Record<keyof T, unknown> = Record<string, unknown>> = {
32
+ export type SelfDescribing<T extends Record<string, unknown> = Record<string, unknown>> = {
33
33
  /**
34
34
  * Schema
35
35
  */
@@ -42,11 +42,11 @@ declare type SelfDescribing<T extends Record<keyof T, unknown> = Record<string,
42
42
  /**
43
43
  * EventContext type
44
44
  */
45
- declare type EventContext = SelfDescribing;
45
+ export type EventContext = SelfDescribing;
46
46
  /**
47
47
  * NetworkConfiguration
48
48
  */
49
- interface NetworkConfiguration {
49
+ export interface NetworkConfiguration {
50
50
  /**
51
51
  * The collector endpoint
52
52
  * - if the protocol is not included it defaults to https
@@ -72,7 +72,7 @@ interface NetworkConfiguration {
72
72
  /**
73
73
  * TrackerConfiguration
74
74
  */
75
- interface TrackerConfiguration {
75
+ export interface TrackerConfiguration {
76
76
  /**
77
77
  * Identifier of the app.
78
78
  */
@@ -123,13 +123,21 @@ interface TrackerConfiguration {
123
123
  */
124
124
  screenContext?: boolean;
125
125
  /**
126
- * Whether enable automatic tracking of ScreenView events.
127
- * @defaultValue true
126
+ * Whether to enable automatic tracking of ScreenView events from the native side.
127
+ * Only tracking UIKit views on iOS and Activity on Android are supported.
128
+ * For tracking React Native views, see the tracker docs for manual and auto-tracking options.
129
+ * @defaultValue false
128
130
  */
129
131
  screenViewAutotracking?: boolean;
132
+ /**
133
+ * Whether to enable tracking of the screen end event and the screen summary context entity.
134
+ * Make sure that you have lifecycle autotracking enabled for screen summary to have complete information.
135
+ * @defaultValue true
136
+ */
137
+ screenEngagementAutotracking?: boolean;
130
138
  /**
131
139
  * Whether enable automatic tracking of background and foreground transitions.
132
- * @defaultValue false
140
+ * @defaultValue true
133
141
  */
134
142
  lifecycleAutotracking?: boolean;
135
143
  /**
@@ -156,7 +164,7 @@ interface TrackerConfiguration {
156
164
  /**
157
165
  * SessionConfiguration
158
166
  */
159
- interface SessionConfiguration {
167
+ export interface SessionConfiguration {
160
168
  /**
161
169
  * The amount of time in seconds before the session id is updated while the app is in the foreground
162
170
  * @defaultValue 1800
@@ -171,7 +179,7 @@ interface SessionConfiguration {
171
179
  /**
172
180
  * EmitterConfiguration
173
181
  */
174
- interface EmitterConfiguration {
182
+ export interface EmitterConfiguration {
175
183
  /**
176
184
  * The buffer option for post requests.
177
185
  * @defaultValue 'single'
@@ -206,7 +214,7 @@ interface EmitterConfiguration {
206
214
  /**
207
215
  * SubjectConfiguration
208
216
  */
209
- interface SubjectConfiguration {
217
+ export interface SubjectConfiguration {
210
218
  [index: string]: unknown;
211
219
  /**
212
220
  * user id
@@ -252,7 +260,7 @@ interface SubjectConfiguration {
252
260
  /**
253
261
  * GdprConfiguration
254
262
  */
255
- interface GdprConfiguration {
263
+ export interface GdprConfiguration {
256
264
  /**
257
265
  * Basis for processing
258
266
  */
@@ -273,7 +281,7 @@ interface GdprConfiguration {
273
281
  /**
274
282
  * Global Context
275
283
  */
276
- interface GlobalContext {
284
+ export interface GlobalContext {
277
285
  /**
278
286
  * tag
279
287
  */
@@ -286,11 +294,11 @@ interface GlobalContext {
286
294
  /**
287
295
  * Global Contexts configuration
288
296
  */
289
- declare type GCConfiguration = GlobalContext[];
297
+ export type GCConfiguration = GlobalContext[];
290
298
  /**
291
299
  * The TrackerControllerConfiguration
292
300
  */
293
- interface TrackerControllerConfiguration {
301
+ export interface TrackerControllerConfiguration {
294
302
  trackerConfig?: TrackerConfiguration;
295
303
  sessionConfig?: SessionConfiguration;
296
304
  emitterConfig?: EmitterConfiguration;
@@ -298,11 +306,18 @@ interface TrackerControllerConfiguration {
298
306
  gdprConfig?: GdprConfiguration;
299
307
  gcConfig?: GCConfiguration;
300
308
  }
309
+ /**
310
+ * The TrackerConfiguration
311
+ */
312
+ export interface InitTrackerConfiguration extends TrackerControllerConfiguration {
313
+ namespace: string;
314
+ networkConfig: NetworkConfiguration;
315
+ }
301
316
  /**
302
317
  * ScreenView event properties
303
318
  * schema: iglu:com.snowplowanalytics.mobile/screen_view/jsonschema/1-0-0
304
319
  */
305
- declare type ScreenViewProps = {
320
+ export type ScreenViewProps = {
306
321
  /**
307
322
  * The name of the screen viewed
308
323
  */
@@ -320,8 +335,8 @@ declare type ScreenViewProps = {
320
335
  */
321
336
  previousName?: string;
322
337
  /**
323
- * The id(UUID) of the previous screen that was viewed
324
- */
338
+ * The id(UUID) of the previous screen that was viewed
339
+ */
325
340
  previousId?: string;
326
341
  /**
327
342
  * The type of the previous screen that was viewed
@@ -332,10 +347,58 @@ declare type ScreenViewProps = {
332
347
  */
333
348
  transitionType?: string;
334
349
  };
350
+ /**
351
+ * Event tracked when a scroll view's scroll position changes.
352
+ * If screen engagement tracking is enabled, the scroll changed events will be aggregated into a `screen_summary` entity.
353
+ *
354
+ * Schema: `iglu:com.snowplowanalytics.mobile/scroll_changed/jsonschema/1-0-0`
355
+ */
356
+ export type ScrollChangedProps = {
357
+ /**
358
+ * Vertical scroll offset in pixels
359
+ */
360
+ yOffset?: number;
361
+ /**
362
+ * Horizontal scroll offset in pixels.
363
+ */
364
+ xOffset?: number;
365
+ /**
366
+ * The height of the scroll view in pixels
367
+ */
368
+ viewHeight?: number;
369
+ /**
370
+ * The width of the scroll view in pixels
371
+ */
372
+ viewWidth?: number;
373
+ /**
374
+ * The height of the content in the scroll view in pixels
375
+ */
376
+ contentHeight?: number;
377
+ /**
378
+ * The width of the content in the scroll view in pixels
379
+ */
380
+ contentWidth?: number;
381
+ };
382
+ /**
383
+ * Event tracking the view of an item in a list.
384
+ * If screen engagement tracking is enabled, the list item view events will be aggregated into a `screen_summary` entity.
385
+ *
386
+ * Schema: `iglu:com.snowplowanalytics.mobile/list_item_view/jsonschema/1-0-0`
387
+ */
388
+ export type ListItemViewProps = {
389
+ /**
390
+ * Index of the item in the list
391
+ */
392
+ index: number;
393
+ /**
394
+ * Total number of items in the list
395
+ */
396
+ itemsCount?: number;
397
+ };
335
398
  /**
336
399
  * Structured event properties
337
400
  */
338
- declare type StructuredProps = {
401
+ export type StructuredProps = {
339
402
  /**
340
403
  * The category of the event
341
404
  */
@@ -360,7 +423,7 @@ declare type StructuredProps = {
360
423
  /**
361
424
  * PageView event properties
362
425
  */
363
- declare type PageViewProps = {
426
+ export type PageViewProps = {
364
427
  /**
365
428
  * The page URL
366
429
  */
@@ -377,7 +440,7 @@ declare type PageViewProps = {
377
440
  /**
378
441
  * Timing event properties
379
442
  */
380
- declare type TimingProps = {
443
+ export type TimingProps = {
381
444
  /**
382
445
  * The timing category
383
446
  */
@@ -398,7 +461,7 @@ declare type TimingProps = {
398
461
  /**
399
462
  * ConsentDocument properties
400
463
  */
401
- interface ConsentDocument {
464
+ export interface ConsentDocument {
402
465
  /**
403
466
  * The consent document id
404
467
  */
@@ -419,7 +482,7 @@ interface ConsentDocument {
419
482
  /**
420
483
  * ConsentGranted event properties
421
484
  */
422
- interface ConsentGrantedProps extends ConsentDocument {
485
+ export interface ConsentGrantedProps extends ConsentDocument {
423
486
  /**
424
487
  * The expiry (date-time string, e.g.: '2022-01-01T00:00:00Z')
425
488
  */
@@ -428,7 +491,7 @@ interface ConsentGrantedProps extends ConsentDocument {
428
491
  /**
429
492
  * ConsentWithdrawn event properties
430
493
  */
431
- interface ConsentWithdrawnProps extends ConsentDocument {
494
+ export interface ConsentWithdrawnProps extends ConsentDocument {
432
495
  /**
433
496
  * Whether user opts out of all data collection
434
497
  */
@@ -437,7 +500,7 @@ interface ConsentWithdrawnProps extends ConsentDocument {
437
500
  /**
438
501
  * EcommerceItem
439
502
  */
440
- declare type EcommerceItem = {
503
+ export type EcommerceItem = {
441
504
  sku: string;
442
505
  price: number;
443
506
  quantity: number;
@@ -448,7 +511,7 @@ declare type EcommerceItem = {
448
511
  /**
449
512
  * EcommerceTransaction event properties
450
513
  */
451
- declare type EcommerceTransactionProps = {
514
+ export type EcommerceTransactionProps = {
452
515
  orderId: string;
453
516
  totalValue: number;
454
517
  items: EcommerceItem[];
@@ -464,7 +527,7 @@ declare type EcommerceTransactionProps = {
464
527
  * DeepLinkReceived event properties
465
528
  * schema: iglu:com.snowplowanalytics.mobile/deep_link_received/jsonschema/1-0-0
466
529
  */
467
- declare type DeepLinkReceivedProps = {
530
+ export type DeepLinkReceivedProps = {
468
531
  /**
469
532
  * URL in the received deep-link.
470
533
  */
@@ -477,7 +540,7 @@ declare type DeepLinkReceivedProps = {
477
540
  /**
478
541
  * Attachment object that identify an attachment in the MessageNotification.
479
542
  */
480
- declare type MessageNotificationAttachmentProps = {
543
+ export type MessageNotificationAttachmentProps = {
481
544
  identifier: string;
482
545
  type: string;
483
546
  url: string;
@@ -486,7 +549,7 @@ declare type MessageNotificationAttachmentProps = {
486
549
  * MessageNotification event properties
487
550
  * schema: iglu:com.snowplowanalytics.mobile/message_notification/jsonschema/1-0-0
488
551
  */
489
- declare type MessageNotificationProps = {
552
+ export type MessageNotificationProps = {
490
553
  /**
491
554
  * The action associated with the notification.
492
555
  */
@@ -561,15 +624,15 @@ declare type MessageNotificationProps = {
561
624
  /**
562
625
  * The ReactNativeTracker type
563
626
  */
564
- declare type ReactNativeTracker = {
627
+ export type ReactNativeTracker = {
565
628
  /**
566
- * Tracks a self-descibing event
629
+ * Tracks a self-describing event
567
630
  *
568
631
  * @param argmap - The self-describing event properties
569
632
  * @param contexts - The array of event contexts
570
633
  * @typeParam TData - The type of the data object within the SelfDescribing object
571
634
  */
572
- readonly trackSelfDescribingEvent: <TData extends Record<keyof TData, unknown> = Record<string, unknown>>(argmap: SelfDescribing<TData>, contexts?: EventContext[]) => Promise<void>;
635
+ readonly trackSelfDescribingEvent: <TData extends Record<string, unknown> = Record<string, unknown>>(argmap: SelfDescribing<TData>, contexts?: EventContext[]) => Promise<void>;
573
636
  /**
574
637
  * Tracks a screen-view event
575
638
  *
@@ -577,6 +640,20 @@ declare type ReactNativeTracker = {
577
640
  * @param contexts - The array of event contexts
578
641
  */
579
642
  readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => Promise<void>;
643
+ /**
644
+ * Tracks a scroll changed event
645
+ *
646
+ * @param argmap - The scroll changed event's properties
647
+ * @param contexts - The array of event contexts
648
+ */
649
+ readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => Promise<void>;
650
+ /**
651
+ * Tracks a list item view event
652
+ *
653
+ * @param argmap - The list item view event's properties
654
+ * @param contexts - The array of event contexts
655
+ */
656
+ readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => Promise<void>;
580
657
  /**
581
658
  * Tracks a structured event
582
659
  *
@@ -748,43 +825,157 @@ declare type ReactNativeTracker = {
748
825
  */
749
826
  readonly getForegroundIndex: () => Promise<number | undefined>;
750
827
  };
751
-
752
828
  /**
753
- * Enables tracking events from apps rendered in react-native-webview components.
754
- * The apps need to use the Snowplow WebView tracker to track the events.
755
- *
756
- * To subscribe for the events, set the `onMessage` attribute:
757
- * <WebView onMessage={getWebViewCallback()} ... />
758
- *
759
- * @returns Callback to subscribe for events from Web views tracked using the Snowplow WebView tracker.
829
+ * Internal event type for page views tracked using the WebView tracker.
760
830
  */
761
- declare function getWebViewCallback(): (message: {
762
- nativeEvent: {
763
- data: string;
764
- };
765
- }) => void;
766
-
767
- /**
768
- * Creates a React Native Tracker object
769
- *
770
- * @param namespace {string} - The tracker namespace
771
- * @param networkConfig {Object} - The network configuration
772
- * @param control {Array} - The tracker controller configuration
773
- * @returns The tracker object
774
- */
775
- declare function createTracker(namespace: string, networkConfig: NetworkConfiguration, controllerConfig?: TrackerControllerConfiguration): ReactNativeTracker;
831
+ export interface WebViewPageViewEvent {
832
+ title?: string | null;
833
+ url?: string;
834
+ referrer?: string;
835
+ }
776
836
  /**
777
- * Removes a tracker given its namespace
778
- *
779
- * @param trackerNamespace {string}
780
- * @returns - A boolean promise
837
+ * Internal type exchanged in messages received from the WebView tracker in Web views through the web view callback.
781
838
  */
782
- declare function removeTracker(trackerNamespace: string): Promise<boolean>;
839
+ export type WebViewMessage = {
840
+ command: 'trackSelfDescribingEvent' | 'trackStructEvent' | 'trackPageView' | 'trackScreenView';
841
+ event: StructuredProps | SelfDescribing | ScreenViewProps | WebViewPageViewEvent;
842
+ context?: Array<SelfDescribing> | null;
843
+ trackers?: Array<string>;
844
+ };
783
845
  /**
784
- * Removes all trackers
785
- *
786
- * @returns - A boolean promise
787
- */
788
- declare function removeAllTrackers(): Promise<boolean>;
789
-
790
- export { Basis, BufferOption, ConsentDocument, ConsentGrantedProps, ConsentWithdrawnProps, DeepLinkReceivedProps, DevicePlatform, EcommerceItem, EcommerceTransactionProps, EmitterConfiguration, EventContext, GCConfiguration, GdprConfiguration, GlobalContext, HttpMethod, LogLevel, MessageNotificationProps, NetworkConfiguration, PageViewProps, ReactNativeTracker, ScreenSize, ScreenViewProps, SelfDescribing, SessionConfiguration, StructuredProps, SubjectConfiguration, TimingProps, TrackerConfiguration, TrackerControllerConfiguration, Trigger, createTracker, getWebViewCallback, removeAllTrackers, removeTracker };
846
+ * Internal type for representing the interface to the native trackers.
847
+ */
848
+ export interface Native {
849
+ createTracker: (configuration: InitTrackerConfiguration) => Promise<void>;
850
+ removeTracker: (details: {
851
+ tracker: string;
852
+ }) => Promise<boolean>;
853
+ removeAllTrackers: () => Promise<boolean>;
854
+ trackSelfDescribingEvent: (details: {
855
+ tracker: string | null;
856
+ eventData: SelfDescribing;
857
+ contexts: EventContext[];
858
+ }) => Promise<void>;
859
+ trackStructuredEvent: (details: {
860
+ tracker: string | null;
861
+ eventData: StructuredProps;
862
+ contexts: EventContext[];
863
+ }) => Promise<void>;
864
+ trackScreenViewEvent: (details: {
865
+ tracker: string | null;
866
+ eventData: ScreenViewProps;
867
+ contexts: EventContext[];
868
+ }) => Promise<void>;
869
+ trackScrollChangedEvent: (details: {
870
+ tracker: string | null;
871
+ eventData: ScrollChangedProps;
872
+ contexts: EventContext[];
873
+ }) => Promise<void>;
874
+ trackListItemViewEvent: (details: {
875
+ tracker: string | null;
876
+ eventData: ListItemViewProps;
877
+ contexts: EventContext[];
878
+ }) => Promise<void>;
879
+ trackPageViewEvent: (details: {
880
+ tracker: string | null;
881
+ eventData: PageViewProps;
882
+ contexts: EventContext[];
883
+ }) => Promise<void>;
884
+ trackTimingEvent: (details: {
885
+ tracker: string | null;
886
+ eventData: TimingProps;
887
+ contexts: EventContext[];
888
+ }) => Promise<void>;
889
+ trackConsentGrantedEvent: (details: {
890
+ tracker: string | null;
891
+ eventData: ConsentGrantedProps;
892
+ contexts: EventContext[];
893
+ }) => Promise<void>;
894
+ trackConsentWithdrawnEvent: (details: {
895
+ tracker: string | null;
896
+ eventData: ConsentWithdrawnProps;
897
+ contexts: EventContext[];
898
+ }) => Promise<void>;
899
+ trackEcommerceTransactionEvent: (details: {
900
+ tracker: string | null;
901
+ eventData: EcommerceTransactionProps;
902
+ contexts: EventContext[];
903
+ }) => Promise<void>;
904
+ trackDeepLinkReceivedEvent: (details: {
905
+ tracker: string | null;
906
+ eventData: DeepLinkReceivedProps;
907
+ contexts: EventContext[];
908
+ }) => Promise<void>;
909
+ trackMessageNotificationEvent: (details: {
910
+ tracker: string | null;
911
+ eventData: MessageNotificationProps;
912
+ contexts: EventContext[];
913
+ }) => Promise<void>;
914
+ removeGlobalContexts: (details: {
915
+ tracker: string;
916
+ removeTag: string;
917
+ }) => Promise<void>;
918
+ addGlobalContexts: (details: {
919
+ tracker: string;
920
+ addGlobalContext: GlobalContext;
921
+ }) => Promise<void>;
922
+ setUserId: (details: {
923
+ tracker: string;
924
+ userId: string | null;
925
+ }) => Promise<void>;
926
+ setNetworkUserId: (details: {
927
+ tracker: string;
928
+ networkUserId: string | null;
929
+ }) => Promise<void>;
930
+ setDomainUserId: (details: {
931
+ tracker: string;
932
+ domainUserId: string | null;
933
+ }) => Promise<void>;
934
+ setIpAddress: (details: {
935
+ tracker: string;
936
+ ipAddress: string | null;
937
+ }) => Promise<void>;
938
+ setUseragent: (details: {
939
+ tracker: string;
940
+ useragent: string | null;
941
+ }) => Promise<void>;
942
+ setTimezone: (details: {
943
+ tracker: string;
944
+ timezone: string | null;
945
+ }) => Promise<void>;
946
+ setLanguage: (details: {
947
+ tracker: string;
948
+ language: string | null;
949
+ }) => Promise<void>;
950
+ setScreenResolution: (details: {
951
+ tracker: string;
952
+ screenResolution: ScreenSize | null;
953
+ }) => Promise<void>;
954
+ setScreenViewport: (details: {
955
+ tracker: string;
956
+ screenViewport: ScreenSize | null;
957
+ }) => Promise<void>;
958
+ setColorDepth: (details: {
959
+ tracker: string;
960
+ colorDepth: number | null;
961
+ }) => Promise<void>;
962
+ getSessionUserId: (details: {
963
+ tracker: string;
964
+ }) => Promise<string>;
965
+ getSessionId: (details: {
966
+ tracker: string;
967
+ }) => Promise<string>;
968
+ getSessionIndex: (details: {
969
+ tracker: string;
970
+ }) => Promise<number>;
971
+ getIsInBackground: (details: {
972
+ tracker: string;
973
+ }) => Promise<boolean>;
974
+ getBackgroundIndex: (details: {
975
+ tracker: string;
976
+ }) => Promise<number>;
977
+ getForegroundIndex: (details: {
978
+ tracker: string;
979
+ }) => Promise<number>;
980
+ }
981
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Returns a function that accepts a side-effect function as its argument and subscribes
3
+ * that function to aPromise's fullfillment,
4
+ * and errHandle to aPromise's rejection.
5
+ *
6
+ * @param aPromise - A void Promise
7
+ * @param errHandle - A function to handle the promise being rejected
8
+ * @returns - A function subscribed to the Promise's fullfillment
9
+ */
10
+ declare function safeWait(aPromise: Promise<void>, errHandle: (err: Error) => void): <F extends (...args: never[]) => Promise<void>>(func: F) => (...args: Parameters<F>) => Promise<void>;
11
+ /**
12
+ * Returns a function that accepts a callback function as its argument and subscribes
13
+ * that function to aPromise's fullfillment,
14
+ * and errHandle to aPromise's rejection.
15
+ *
16
+ * @param aPromise - A void Promise
17
+ * @param errHandle - A function to handle the promise being rejected
18
+ * @returns - A function subscribed to the Promise's fullfillment
19
+ */
20
+ declare function safeWaitCallback(callPromise: Promise<void>, errHandle: (err: Error) => undefined): <T, F extends (...args: never[]) => Promise<T>>(func: F) => (...args: Parameters<F>) => ReturnType<F> | Promise<undefined>;
21
+ /**
22
+ * Handles an error.
23
+ *
24
+ * @param err - The error to be handled.
25
+ */
26
+ declare function errorHandler(err: Error): undefined;
27
+ /**
28
+ * Helper to check whether its argument is of object type
29
+ *
30
+ * @param x - The argument to check.
31
+ * @returns - A boolean
32
+ */
33
+ declare function isObject<Type>(x: Type): boolean;
34
+ export { safeWait, safeWaitCallback, errorHandler, isObject };
35
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,iBAAS,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,wBAC5C,KAAK,EAAE,KAAK,QAAQ,IAAI,CAAC,0CAClB,QAAQ,IAAI,CAAC,CAIjD;AAED;;;;;;;;GAQG;AACH,iBAAS,gBAAgB,CACvB,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,EAC1B,SAAS,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,SAAS,2BAEL,KAAK,EAAE,4FAOvC;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,SAAS,CAM3C;AAED;;;;;GAKG;AACH,iBAAS,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,OAAO,CAExC;AAED,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Enables tracking events from apps rendered in react-native-webview components.
3
+ * The apps need to use the Snowplow WebView tracker to track the events.
4
+ *
5
+ * To subscribe for the events, set the `onMessage` attribute:
6
+ * <WebView onMessage={getWebViewCallback()} ... />
7
+ *
8
+ * @returns Callback to subscribe for events from Web views tracked using the Snowplow WebView tracker.
9
+ */
10
+ export declare function getWebViewCallback(): (message: {
11
+ nativeEvent: {
12
+ data: string;
13
+ };
14
+ }) => void;
15
+ //# sourceMappingURL=webViewInterface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webViewInterface.d.ts","sourceRoot":"","sources":["../../src/webViewInterface.ts"],"names":[],"mappings":"AA4BA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,cACf;IAAE,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,KAAG,IAAI,CAqD1D"}