posthog-react-native 1.1.5 → 2.0.0-alpha10

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 (145) hide show
  1. package/README.md +9 -0
  2. package/lib/index.cjs.js +1773 -0
  3. package/lib/index.cjs.js.map +1 -0
  4. package/lib/index.d.ts +214 -0
  5. package/lib/index.esm.js +1737 -0
  6. package/lib/index.esm.js.map +1 -0
  7. package/lib/node_modules/tslib/tslib.es6.d.ts +35 -0
  8. package/lib/posthog-core/src/eventemitter.d.ts +8 -0
  9. package/lib/posthog-core/src/index.d.ts +87 -0
  10. package/lib/posthog-core/src/lz-string.d.ts +8 -0
  11. package/lib/posthog-core/src/types.d.ts +68 -0
  12. package/lib/posthog-core/src/utils.d.ts +13 -0
  13. package/lib/posthog-react-native/index.d.ts +10 -0
  14. package/lib/posthog-react-native/src/PostHogProvider.d.ts +13 -0
  15. package/lib/posthog-react-native/src/PosthogContext.d.ts +5 -0
  16. package/lib/posthog-react-native/src/autocapture.d.ts +3 -0
  17. package/lib/posthog-react-native/src/hooks/useFeatureFlag.d.ts +1 -0
  18. package/lib/posthog-react-native/src/hooks/useFeatureFlags.d.ts +3 -0
  19. package/lib/posthog-react-native/src/hooks/useLifecycleTracker.d.ts +2 -0
  20. package/lib/posthog-react-native/src/hooks/useNavigationTracker.d.ts +5 -0
  21. package/lib/posthog-react-native/src/hooks/usePostHog.d.ts +2 -0
  22. package/lib/posthog-react-native/src/legacy.d.ts +4 -0
  23. package/lib/posthog-react-native/src/optional-imports.d.ts +6 -0
  24. package/lib/posthog-react-native/src/posthog-rn.d.ts +14 -0
  25. package/lib/posthog-react-native/src/storage.d.ts +8 -0
  26. package/lib/posthog-react-native/src/types.d.ts +12 -0
  27. package/package.json +35 -51
  28. package/RNPostHog.podspec +0 -21
  29. package/android/build.gradle +0 -46
  30. package/android/src/main/AndroidManifest.xml +0 -1
  31. package/android/src/main/java/com/posthog/reactnative/core/RNPostHogModule.kt +0 -250
  32. package/android/src/main/java/com/posthog/reactnative/core/RNPostHogPackage.kt +0 -44
  33. package/build/cjs/__mocks__/bridge.d.ts +0 -14
  34. package/build/cjs/__mocks__/bridge.js +0 -15
  35. package/build/cjs/__mocks__/bridge.js.map +0 -1
  36. package/build/cjs/__tests__/bridge.spec.d.ts +0 -1
  37. package/build/cjs/__tests__/bridge.spec.js +0 -19
  38. package/build/cjs/__tests__/bridge.spec.js.map +0 -1
  39. package/build/cjs/__tests__/configuration.spec.d.ts +0 -1
  40. package/build/cjs/__tests__/configuration.spec.js +0 -131
  41. package/build/cjs/__tests__/configuration.spec.js.map +0 -1
  42. package/build/cjs/__tests__/index.spec.d.ts +0 -1
  43. package/build/cjs/__tests__/index.spec.js +0 -9
  44. package/build/cjs/__tests__/index.spec.js.map +0 -1
  45. package/build/cjs/__tests__/posthog.spec.d.ts +0 -1
  46. package/build/cjs/__tests__/posthog.spec.js +0 -193
  47. package/build/cjs/__tests__/posthog.spec.js.map +0 -1
  48. package/build/cjs/bridge.d.ts +0 -50
  49. package/build/cjs/bridge.js +0 -9
  50. package/build/cjs/bridge.js.map +0 -1
  51. package/build/cjs/configuration.d.ts +0 -3
  52. package/build/cjs/configuration.js +0 -94
  53. package/build/cjs/configuration.js.map +0 -1
  54. package/build/cjs/index.d.ts +0 -5
  55. package/build/cjs/index.js +0 -6
  56. package/build/cjs/index.js.map +0 -1
  57. package/build/cjs/make-pkg.d.ts +0 -1
  58. package/build/cjs/make-pkg.js +0 -5
  59. package/build/cjs/make-pkg.js.map +0 -1
  60. package/build/cjs/middleware.d.ts +0 -41
  61. package/build/cjs/middleware.js +0 -114
  62. package/build/cjs/middleware.js.map +0 -1
  63. package/build/cjs/posthog.d.ts +0 -228
  64. package/build/cjs/posthog.js +0 -309
  65. package/build/cjs/posthog.js.map +0 -1
  66. package/build/cjs/utils.d.ts +0 -1
  67. package/build/cjs/utils.js +0 -7
  68. package/build/cjs/utils.js.map +0 -1
  69. package/build/cjs/wrapper.d.ts +0 -22
  70. package/build/cjs/wrapper.js +0 -114
  71. package/build/cjs/wrapper.js.map +0 -1
  72. package/build/coverage/clover.xml +0 -169
  73. package/build/coverage/coverage-final.json +0 -8
  74. package/build/coverage/lcov-report/base.css +0 -212
  75. package/build/coverage/lcov-report/bridge.ts.html +0 -228
  76. package/build/coverage/lcov-report/configuration.ts.html +0 -228
  77. package/build/coverage/lcov-report/index.html +0 -151
  78. package/build/coverage/lcov-report/index.ts.html +0 -60
  79. package/build/coverage/lcov-report/middleware.ts.html +0 -429
  80. package/build/coverage/lcov-report/posthog.ts.html +0 -960
  81. package/build/coverage/lcov-report/prettify.css +0 -1
  82. package/build/coverage/lcov-report/prettify.js +0 -1
  83. package/build/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  84. package/build/coverage/lcov-report/sorter.js +0 -158
  85. package/build/coverage/lcov-report/utils.ts.html +0 -54
  86. package/build/coverage/lcov-report/wrapper.ts.html +0 -228
  87. package/build/coverage/lcov.info +0 -365
  88. package/build/esm/__mocks__/bridge.d.ts +0 -14
  89. package/build/esm/__mocks__/bridge.js +0 -13
  90. package/build/esm/__mocks__/bridge.js.map +0 -1
  91. package/build/esm/__tests__/bridge.spec.d.ts +0 -1
  92. package/build/esm/__tests__/bridge.spec.js +0 -19
  93. package/build/esm/__tests__/bridge.spec.js.map +0 -1
  94. package/build/esm/__tests__/configuration.spec.d.ts +0 -1
  95. package/build/esm/__tests__/configuration.spec.js +0 -129
  96. package/build/esm/__tests__/configuration.spec.js.map +0 -1
  97. package/build/esm/__tests__/index.spec.d.ts +0 -1
  98. package/build/esm/__tests__/index.spec.js +0 -7
  99. package/build/esm/__tests__/index.spec.js.map +0 -1
  100. package/build/esm/__tests__/posthog.spec.d.ts +0 -1
  101. package/build/esm/__tests__/posthog.spec.js +0 -191
  102. package/build/esm/__tests__/posthog.spec.js.map +0 -1
  103. package/build/esm/bridge.d.ts +0 -50
  104. package/build/esm/bridge.js +0 -7
  105. package/build/esm/bridge.js.map +0 -1
  106. package/build/esm/configuration.d.ts +0 -3
  107. package/build/esm/configuration.js +0 -92
  108. package/build/esm/configuration.js.map +0 -1
  109. package/build/esm/index.d.ts +0 -5
  110. package/build/esm/index.js +0 -4
  111. package/build/esm/index.js.map +0 -1
  112. package/build/esm/make-pkg.d.ts +0 -1
  113. package/build/esm/make-pkg.js +0 -3
  114. package/build/esm/make-pkg.js.map +0 -1
  115. package/build/esm/middleware.d.ts +0 -41
  116. package/build/esm/middleware.js +0 -112
  117. package/build/esm/middleware.js.map +0 -1
  118. package/build/esm/posthog.d.ts +0 -228
  119. package/build/esm/posthog.js +0 -307
  120. package/build/esm/posthog.js.map +0 -1
  121. package/build/esm/utils.d.ts +0 -1
  122. package/build/esm/utils.js +0 -4
  123. package/build/esm/utils.js.map +0 -1
  124. package/build/esm/wrapper.d.ts +0 -22
  125. package/build/esm/wrapper.js +0 -112
  126. package/build/esm/wrapper.js.map +0 -1
  127. package/build/package.json +0 -3
  128. package/ios/RNPostHog/RNPostHog.h +0 -9
  129. package/ios/RNPostHog/RNPostHog.m +0 -128
  130. package/ios/RNPostHog.xcodeproj/project.pbxproj +0 -336
  131. package/ios/RNPostHog.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  132. package/src/__mocks__/bridge.ts +0 -12
  133. package/src/__tests__/bridge.spec.ts +0 -23
  134. package/src/__tests__/configuration.spec.ts +0 -79
  135. package/src/__tests__/index.spec.ts +0 -7
  136. package/src/__tests__/posthog.spec.ts +0 -108
  137. package/src/bridge.ts +0 -61
  138. package/src/configuration.ts +0 -61
  139. package/src/index.ts +0 -5
  140. package/src/make-pkg.ts +0 -3
  141. package/src/middleware.ts +0 -128
  142. package/src/modules.d.ts +0 -2
  143. package/src/posthog.ts +0 -305
  144. package/src/utils.ts +0 -3
  145. package/src/wrapper.ts +0 -61
@@ -1,960 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <title>Code coverage report for posthog.ts</title>
5
- <meta charset="utf-8" />
6
- <link rel="stylesheet" href="prettify.css" />
7
- <link rel="stylesheet" href="base.css" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <style type='text/css'>
10
- .coverage-summary .sorter {
11
- background-image: url(sort-arrow-sprite.png);
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div class='wrapper'>
17
- <div class='pad1'>
18
- <h1>
19
- <a href="index.html">All files</a> posthog.ts
20
- </h1>
21
- <div class='clearfix'>
22
- </div>
23
- </div>
24
- <div class='status-line high'></div>
25
- <pre><table class="coverage">
26
- <tr><td class="line-count quiet">1
27
- 2
28
- 3
29
- 4
30
- 5
31
- 6
32
- 7
33
- 8
34
- 9
35
- 10
36
- 11
37
- 12
38
- 13
39
- 14
40
- 15
41
- 16
42
- 17
43
- 18
44
- 19
45
- 20
46
- 21
47
- 22
48
- 23
49
- 24
50
- 25
51
- 26
52
- 27
53
- 28
54
- 29
55
- 30
56
- 31
57
- 32
58
- 33
59
- 34
60
- 35
61
- 36
62
- 37
63
- 38
64
- 39
65
- 40
66
- 41
67
- 42
68
- 43
69
- 44
70
- 45
71
- 46
72
- 47
73
- 48
74
- 49
75
- 50
76
- 51
77
- 52
78
- 53
79
- 54
80
- 55
81
- 56
82
- 57
83
- 58
84
- 59
85
- 60
86
- 61
87
- 62
88
- 63
89
- 64
90
- 65
91
- 66
92
- 67
93
- 68
94
- 69
95
- 70
96
- 71
97
- 72
98
- 73
99
- 74
100
- 75
101
- 76
102
- 77
103
- 78
104
- 79
105
- 80
106
- 81
107
- 82
108
- 83
109
- 84
110
- 85
111
- 86
112
- 87
113
- 88
114
- 89
115
- 90
116
- 91
117
- 92
118
- 93
119
- 94
120
- 95
121
- 96
122
- 97
123
- 98
124
- 99
125
- 100
126
- 101
127
- 102
128
- 103
129
- 104
130
- 105
131
- 106
132
- 107
133
- 108
134
- 109
135
- 110
136
- 111
137
- 112
138
- 113
139
- 114
140
- 115
141
- 116
142
- 117
143
- 118
144
- 119
145
- 120
146
- 121
147
- 122
148
- 123
149
- 124
150
- 125
151
- 126
152
- 127
153
- 128
154
- 129
155
- 130
156
- 131
157
- 132
158
- 133
159
- 134
160
- 135
161
- 136
162
- 137
163
- 138
164
- 139
165
- 140
166
- 141
167
- 142
168
- 143
169
- 144
170
- 145
171
- 146
172
- 147
173
- 148
174
- 149
175
- 150
176
- 151
177
- 152
178
- 153
179
- 154
180
- 155
181
- 156
182
- 157
183
- 158
184
- 159
185
- 160
186
- 161
187
- 162
188
- 163
189
- 164
190
- 165
191
- 166
192
- 167
193
- 168
194
- 169
195
- 170
196
- 171
197
- 172
198
- 173
199
- 174
200
- 175
201
- 176
202
- 177
203
- 178
204
- 179
205
- 180
206
- 181
207
- 182
208
- 183
209
- 184
210
- 185
211
- 186
212
- 187
213
- 188
214
- 189
215
- 190
216
- 191
217
- 192
218
- 193
219
- 194
220
- 195
221
- 196
222
- 197
223
- 198
224
- 199
225
- 200
226
- 201
227
- 202
228
- 203
229
- 204
230
- 205
231
- 206
232
- 207
233
- 208
234
- 209
235
- 210
236
- 211
237
- 212
238
- 213
239
- 214
240
- 215
241
- 216
242
- 217
243
- 218
244
- 219
245
- 220
246
- 221
247
- 222
248
- 223
249
- 224
250
- 225
251
- 226
252
- 227
253
- 228
254
- 229
255
- 230
256
- 231
257
- 232
258
- 233
259
- 234
260
- 235
261
- 236
262
- 237
263
- 238
264
- 239
265
- 240
266
- 241
267
- 242
268
- 243
269
- 244
270
- 245
271
- 246
272
- 247
273
- 248
274
- 249
275
- 250
276
- 251
277
- 252
278
- 253
279
- 254
280
- 255
281
- 256
282
- 257
283
- 258
284
- 259
285
- 260
286
- 261
287
- 262
288
- 263
289
- 264
290
- 265
291
- 266
292
- 267
293
- 268
294
- 269
295
- 270
296
- 271
297
- 272
298
- 273
299
- 274
300
- 275
301
- 276
302
- 277
303
- 278
304
- 279
305
- 280
306
- 281
307
- 282
308
- 283
309
- 284
310
- 285
311
- 286
312
- 287
313
- 288
314
- 289
315
- 290
316
- 291
317
- 292
318
- 293
319
- 294
320
- 295
321
- 296
322
- 297
323
- 298
324
- 299
325
- 300
326
- 301
327
- 302
328
- 303
329
- 304
330
- 305
331
- 306</td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
332
- <span class="cline-any cline-yes">2x</span>
333
- <span class="cline-any cline-yes">2x</span>
334
- <span class="cline-any cline-yes">2x</span>
335
- <span class="cline-any cline-neutral">&nbsp;</span>
336
- <span class="cline-any cline-neutral">&nbsp;</span>
337
- <span class="cline-any cline-yes">2x</span>
338
- <span class="cline-any cline-neutral">&nbsp;</span>
339
- <span class="cline-any cline-neutral">&nbsp;</span>
340
- <span class="cline-any cline-neutral">&nbsp;</span>
341
- <span class="cline-any cline-neutral">&nbsp;</span>
342
- <span class="cline-any cline-neutral">&nbsp;</span>
343
- <span class="cline-any cline-neutral">&nbsp;</span>
344
- <span class="cline-any cline-neutral">&nbsp;</span>
345
- <span class="cline-any cline-neutral">&nbsp;</span>
346
- <span class="cline-any cline-neutral">&nbsp;</span>
347
- <span class="cline-any cline-neutral">&nbsp;</span>
348
- <span class="cline-any cline-neutral">&nbsp;</span>
349
- <span class="cline-any cline-neutral">&nbsp;</span>
350
- <span class="cline-any cline-neutral">&nbsp;</span>
351
- <span class="cline-any cline-neutral">&nbsp;</span>
352
- <span class="cline-any cline-neutral">&nbsp;</span>
353
- <span class="cline-any cline-neutral">&nbsp;</span>
354
- <span class="cline-any cline-neutral">&nbsp;</span>
355
- <span class="cline-any cline-neutral">&nbsp;</span>
356
- <span class="cline-any cline-neutral">&nbsp;</span>
357
- <span class="cline-any cline-neutral">&nbsp;</span>
358
- <span class="cline-any cline-neutral">&nbsp;</span>
359
- <span class="cline-any cline-neutral">&nbsp;</span>
360
- <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-neutral">&nbsp;</span>
363
- <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-neutral">&nbsp;</span>
365
- <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-neutral">&nbsp;</span>
367
- <span class="cline-any cline-neutral">&nbsp;</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-neutral">&nbsp;</span>
376
- <span class="cline-any cline-neutral">&nbsp;</span>
377
- <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-neutral">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-neutral">&nbsp;</span>
385
- <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-neutral">&nbsp;</span>
387
- <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-neutral">&nbsp;</span>
390
- <span class="cline-any cline-neutral">&nbsp;</span>
391
- <span class="cline-any cline-neutral">&nbsp;</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
397
- <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-neutral">&nbsp;</span>
400
- <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-neutral">&nbsp;</span>
402
- <span class="cline-any cline-neutral">&nbsp;</span>
403
- <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-neutral">&nbsp;</span>
412
- <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-neutral">&nbsp;</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-neutral">&nbsp;</span>
432
- <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
- <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-neutral">&nbsp;</span>
448
- <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-yes">19x</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-neutral">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-yes">17x</span>
459
- <span class="cline-any cline-neutral">&nbsp;</span>
460
- <span class="cline-any cline-yes">17x</span>
461
- <span class="cline-any cline-yes">2x</span>
462
- <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-yes">17x</span>
464
- <span class="cline-any cline-yes">17x</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-yes">2x</span>
474
- <span class="cline-any cline-yes">1x</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-yes">1x</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-yes">2x</span>
480
- <span class="cline-any cline-yes">1x</span>
481
- <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-yes">1x</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-yes">2x</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-no">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-no">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-yes">32x</span>
518
- <span class="cline-any cline-yes">32x</span>
519
- <span class="cline-any cline-yes">16x</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-yes">16x</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-neutral">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-yes">11x</span>
536
- <span class="cline-any cline-yes">12x</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-neutral">&nbsp;</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-neutral">&nbsp;</span>
541
- <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-yes">2x</span>
550
- <span class="cline-any cline-yes">2x</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-neutral">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-yes">2x</span>
563
- <span class="cline-any cline-yes">4x</span>
564
- <span class="cline-any cline-neutral">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
- <span class="cline-any cline-neutral">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
- <span class="cline-any cline-neutral">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-neutral">&nbsp;</span>
574
- <span class="cline-any cline-yes">2x</span>
575
- <span class="cline-any cline-yes">2x</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-neutral">&nbsp;</span>
581
- <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-yes">2x</span>
585
- <span class="cline-any cline-yes">2x</span>
586
- <span class="cline-any cline-neutral">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-neutral">&nbsp;</span>
594
- <span class="cline-any cline-yes">2x</span>
595
- <span class="cline-any cline-yes">2x</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-yes">2x</span>
604
- <span class="cline-any cline-yes">2x</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-neutral">&nbsp;</span>
608
- <span class="cline-any cline-neutral">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-neutral">&nbsp;</span>
611
- <span class="cline-any cline-neutral">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-yes">2x</span>
614
- <span class="cline-any cline-yes">2x</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-yes">2x</span>
619
- <span class="cline-any cline-yes">2x</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-yes">1x</span>
622
- <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-yes">2x</span>
625
- <span class="cline-any cline-yes">2x</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-yes">2x</span>
628
- <span class="cline-any cline-yes">1x</span>
629
- <span class="cline-any cline-yes">1x</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-yes">1x</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-neutral">&nbsp;</span>
634
- <span class="cline-any cline-yes">2x</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Bridge, { JsonMap } from './bridge'
637
- import { configure } from './configuration'
638
- import { Middleware, MiddlewareChain } from './middleware'
639
- import { ErrorHandler, NativeWrapper } from './wrapper'
640
- &nbsp;
641
- // prettier-ignore
642
- export module PostHog {
643
- export interface Configuration {
644
- /**
645
- * Which PostHog host to send events to.
646
- *
647
- * `https://app.posthog.com` by default
648
- */
649
- host?: string
650
- /**
651
- * Whether the posthog client should automatically make a screen call when a
652
- * view controller is added to a view hierarchy.
653
- * Because the iOS underlying implementation uses method swizzling,
654
- * we recommend initializing the posthog client as early as possible.
655
- *
656
- * Disabled by default.
657
- */
658
- recordScreenViews?: boolean
659
- /**
660
- * Whether the posthog client should automatically capture application lifecycle events, such as
661
- * "Application Installed", "Application Updated" and "Application Opened".
662
- *
663
- * Disabled by default.
664
- */
665
- captureApplicationLifecycleEvents?: boolean
666
- &nbsp;
667
- /**
668
- * Whether the posthog client should automatically capture deep links. You'll still need to call the
669
- * continueUserActivity and openURL methods on the posthog client.
670
- *
671
- * Disabled by default.
672
- */
673
- captureDeepLinks?: boolean
674
- &nbsp;
675
- /**
676
- * Register a set of integrations to be used with this PostHog instance.
677
- */
678
- debug?: boolean
679
- &nbsp;
680
- /**
681
- * The number of queued events that the posthog client should flush at.
682
- * Setting this to `1` will not queue any events and will use more battery.
683
- *
684
- * `20` by default.
685
- */
686
- flushAt?: number
687
- &nbsp;
688
- /**
689
- * The amount of time to wait before each tick of the flush timer, in seconds.
690
- * Smaller values will make events delivered in a more real-time manner and also use more battery.
691
- * A value smaller than 10 seconds will seriously degrade overall performance.
692
- *
693
- * `30` seconds by default.
694
- */
695
- flushInterval?: number
696
- &nbsp;
697
- /**
698
- * iOS specific settings.
699
- */
700
- ios?: {
701
- /**
702
- * Whether the posthog client should use location services.
703
- * If `true` and the host app hasn't asked for permission to use location services then the user will be
704
- * presented with an alert view asking to do so. `false` by default. If `true`, please make sure to add a
705
- * description for `NSLocationAlwaysUsageDescription` in your `Info.plist` explaining why your app is
706
- * accessing Location APIs.
707
- *
708
- * Disabled by default.
709
- */
710
- shouldUseLocationServices?: boolean
711
- /**
712
- * The maximum number of items to queue before starting to drop old ones. This should be a value greater
713
- * than zero, the behaviour is undefined otherwise. `1000` by default.
714
- *
715
- * `1000` by default.
716
- */
717
- maxQueueSize?: number
718
- /**
719
- * Whether the posthog client should record bluetooth information. If `true`, please make sure to add a
720
- * description for `NSBluetoothPeripheralUsageDescription` in your `Info.plist` explaining explaining why
721
- * your app is accessing Bluetooth APIs. `false` by default.
722
- *
723
- * Disabled by default.
724
- */
725
- shouldUseBluetooth?: boolean
726
- /**
727
- * Whether the posthog client should automatically capture in-app purchases from the App Store
728
- *
729
- * Disabled by default.
730
- */
731
- captureInAppPurchases?: boolean
732
- /**
733
- * Whether the posthog client should automatically capture push notifications.
734
- *
735
- * Disabled by default.
736
- */
737
- capturePushNotifications?: boolean
738
- }
739
- /**
740
- * Android specific settings.
741
- */
742
- android?: {
743
- /**
744
- * Whether the posthog client should client the device identifier.
745
- * The device identifier is obtained using :
746
- * - `android.provider.Settings.Secure.ANDROID_ID`
747
- * - `android.os.Build.SERIAL`
748
- * - or Telephony Identifier retrieved via TelephonyManager as available
749
- *
750
- * Enabled by default.
751
- */
752
- collectDeviceId?: boolean
753
- }
754
- }
755
- &nbsp;
756
- export class Client {
757
- /**
758
- * Whether the client is ready to send events to PostHog.
759
- *
760
- * This becomes `true` when `.setup()` succeeds.
761
- * All calls will be queued until it becomes `true`.
762
- */
763
- public readonly ready = false
764
- &nbsp;
765
- private readonly wrapper = new NativeWrapper(this, err =&gt;
766
- this.handleError(err)
767
- )
768
- private readonly handlers: ErrorHandler[] = []
769
- private readonly middlewares = new MiddlewareChain(this.wrapper)
770
- &nbsp;
771
- /**
772
- * Catch React-Native bridge errors
773
- *
774
- * These errors are emitted when calling the native counterpart.
775
- * This only applies to methods with no return value (`Promise&lt;void&gt;`),
776
- * methods like `getAnonymousId` do reject promises.
777
- */
778
- public catch(handler: ErrorHandler) {
779
- this.handlers.push(handler)
780
- &nbsp;
781
- return this
782
- }
783
- &nbsp;
784
- public middleware(middleware: Middleware) {
785
- this.middlewares.add(middleware)
786
- &nbsp;
787
- return this
788
- }
789
- &nbsp;
790
- /**
791
- * Use the native configuration.
792
- *
793
- * You'll need to call this method when you configure PostHog's singleton
794
- * using the native API.
795
- */
796
- <span class="fstat-no" title="function not covered" > public useNativeConfiguration() {</span>
797
- <span class="cstat-no" title="statement not covered" > if(this.ready) {</span>
798
- <span class="cstat-no" title="statement not covered" > throw new Error('PostHog has already been configured')</span>
799
- }
800
- &nbsp;
801
- <span class="cstat-no" title="statement not covered" > this.wrapper.ready()</span>
802
- &nbsp;
803
- <span class="cstat-no" title="statement not covered" > return this</span>
804
- }
805
- &nbsp;
806
- /**
807
- * Setup the PostHog module. All calls made before are queued
808
- * and only executed if the configuration was successful.
809
- *
810
- * ```js
811
- * await posthog.setup('YOUR_API_KEY', {
812
- * captureAppLifecycleEvents: true,
813
- * ios: {
814
- * capturePushNotifications: true
815
- * }
816
- * })
817
- * ```
818
- *
819
- * @param apiKey Your PostHog.com API key
820
- * @param configuration An optional {@link Configuration} object.
821
- */
822
- public async setup(apiKey: string, <span class="missing-if-branch" title="else path not taken" >E</span>configuration: Configuration = {}) {
823
- await Bridge.setup(
824
- await configure(apiKey, configuration)
825
- )
826
- this.wrapper.ready()
827
- }
828
- &nbsp;
829
- /**
830
- * Record the actions your users perform.
831
- *
832
- * When a user performs an action in your app, you'll want to capture that action for later analysis.
833
- * Use the event name to say what the user did, and properties to specify any interesting details of the action.
834
- *
835
- * @param event The name of the event you're capturing.
836
- * We recommend using human-readable names like `Played a Song` or `Updated Status`.
837
- * @param properties A dictionary of properties for the event.
838
- * If the event was 'Added to Shopping Cart', it might have properties like price, productType, etc.
839
- */
840
- public async capture(event: string, properties: JsonMap = {}) {
841
- await this.middlewares.run('capture', { event, properties })
842
- }
843
- &nbsp;
844
- /**
845
- * Record the screens or views your users see.
846
- *
847
- * When a user views a screen in your app, you'll want to record that here.
848
- *
849
- * @param screen The title of the screen being viewed.
850
- * We recommend using human-readable names like 'Photo Feed' or 'Completed Purchase Screen'.
851
- * @param properties A dictionary of properties for the screen view event.
852
- * If the event was 'Added to Shopping Cart', it might have properties like price, productType, etc.
853
- */
854
- public async screen(screen: string, <span class="missing-if-branch" title="if path not taken" >I</span>properties: JsonMap = {}) {
855
- await this.middlewares.run('screen', { screen, properties })
856
- }
857
- &nbsp;
858
- /**
859
- * Associate a user with their unique ID and record traits about them.
860
- *
861
- * When you learn more about who your user is, you can record that information with identify.
862
- *
863
- * @param distinctId database ID (or email address) for this user.
864
- * If you don't have a userId but want to record traits, you should pass nil.
865
- * @param properties A dictionary of properties you know about the user. Things like: email, name, plan, etc.
866
- */
867
- public async identify(distinctId: string | null, <span class="missing-if-branch" title="if path not taken" >I</span>properties: JsonMap = {}) {
868
- await this.middlewares.run('identify', { distinctId, properties })
869
- }
870
- &nbsp;
871
- &nbsp;
872
- /**
873
- * Merge two user identities, effectively connecting two sets of user data as one.
874
- *
875
- * When you learn more about who the group is, you can record that information with group.
876
- *
877
- * @param alias The existing ID you want to link to the current distinct ID.
878
- */
879
- public async alias(alias: string) {
880
- await this.middlewares.run('alias', { alias })
881
- }
882
- &nbsp;
883
- /**
884
- * Reset any user state that is cached on the device.
885
- *
886
- * This is useful when a user logs out and you want to clear the identity.
887
- * It will clear any traits or userId's cached on the device.
888
- */
889
- public async reset() {
890
- await this.wrapper.run('reset', reset =&gt; reset())
891
- }
892
- &nbsp;
893
- /**
894
- * Trigger an upload of all queued events.
895
- *
896
- * This is useful when you want to force all messages queued on the device to be uploaded.
897
- * Please note that not all integrations respond to this method.
898
- */
899
- public async flush() {
900
- await this.wrapper.run('flush', flush =&gt; flush())
901
- }
902
- &nbsp;
903
- /**
904
- * Enable the sending of posthog data. Enabled by default.
905
- *
906
- * Occasionally used in conjunction with disable user opt-out handling.
907
- */
908
- public async enable() {
909
- await this.wrapper.run('enable', enable =&gt; enable())
910
- }
911
- &nbsp;
912
- /**
913
- * Completely disable the sending of any posthog data.
914
- *
915
- * If you have a way for users to actively or passively (sometimes based on location) opt-out of
916
- * posthog data collection, you can use this method to turn off all data collection.
917
- */
918
- public async disable() {
919
- await this.wrapper.run('disable', disable =&gt; disable())
920
- }
921
- &nbsp;
922
- /** Retrieve the anonymousId. */
923
- public async getAnonymousId(): Promise&lt;string&gt; {
924
- await this.wrapper.wait()
925
- &nbsp;
926
- return Bridge.getAnonymousId()
927
- }
928
- &nbsp;
929
- private handleError(error: Error) {
930
- const { handlers } = this
931
- &nbsp;
932
- if (!handlers.length) {
933
- console.error('Uncaught PostHog error', error)
934
- throw error
935
- } else {
936
- handlers.forEach(handler =&gt; handler(error))
937
- }
938
- }
939
- }
940
- }
941
- &nbsp;</pre></td></tr>
942
- </table></pre>
943
- <div class='push'></div><!-- for sticky footer -->
944
- </div><!-- /wrapper -->
945
- <div class='footer quiet pad2 space-top1 center small'>
946
- Code coverage
947
- generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Tue Mar 29 2022 11:45:52 GMT+0200 (Central European Summer Time)
948
- </div>
949
- </div>
950
- <script src="prettify.js"></script>
951
- <script>
952
- window.onload = function () {
953
- if (typeof prettyPrint === 'function') {
954
- prettyPrint();
955
- }
956
- };
957
- </script>
958
- <script src="sorter.js"></script>
959
- </body>
960
- </html>