@formo/analytics-react-native 0.1.4 → 1.0.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 (345) hide show
  1. package/README.md +25 -0
  2. package/lib/commonjs/FormoAnalytics.js +158 -79
  3. package/lib/commonjs/FormoAnalytics.js.map +1 -1
  4. package/lib/commonjs/FormoAnalyticsProvider.js +32 -26
  5. package/lib/commonjs/FormoAnalyticsProvider.js.map +1 -1
  6. package/lib/commonjs/constants/events.js +5 -1
  7. package/lib/commonjs/constants/events.js.map +1 -1
  8. package/lib/commonjs/constants/index.js +3 -3
  9. package/lib/commonjs/constants/storage.js +8 -1
  10. package/lib/commonjs/constants/storage.js.map +1 -1
  11. package/lib/commonjs/index.js +7 -7
  12. package/lib/commonjs/index.js.map +1 -1
  13. package/lib/commonjs/lib/consent/index.js +8 -8
  14. package/lib/commonjs/lib/consent/index.js.map +1 -1
  15. package/lib/commonjs/lib/event/EventFactory.js +135 -52
  16. package/lib/commonjs/lib/event/EventFactory.js.map +1 -1
  17. package/lib/commonjs/lib/event/EventManager.js +6 -6
  18. package/lib/commonjs/lib/event/EventManager.js.map +1 -1
  19. package/lib/commonjs/lib/event/EventQueue.js +35 -24
  20. package/lib/commonjs/lib/event/EventQueue.js.map +1 -1
  21. package/lib/commonjs/lib/event/index.js +4 -4
  22. package/lib/commonjs/lib/installReferrer/index.js +193 -0
  23. package/lib/commonjs/lib/installReferrer/index.js.map +1 -0
  24. package/lib/commonjs/lib/lifecycle/index.js +24 -17
  25. package/lib/commonjs/lib/lifecycle/index.js.map +1 -1
  26. package/lib/commonjs/lib/session/index.js +13 -13
  27. package/lib/commonjs/lib/session/index.js.map +1 -1
  28. package/lib/commonjs/lib/storage/AsyncStorageAdapter.js +10 -10
  29. package/lib/commonjs/lib/storage/AsyncStorageAdapter.js.map +1 -1
  30. package/lib/commonjs/lib/storage/MemoryStorage.js +1 -1
  31. package/lib/commonjs/lib/storage/StorageBlueprint.js +2 -2
  32. package/lib/commonjs/lib/storage/StorageBlueprint.js.map +1 -1
  33. package/lib/commonjs/lib/storage/StorageManager.js +6 -6
  34. package/lib/commonjs/lib/storage/StorageManager.js.map +1 -1
  35. package/lib/commonjs/lib/storage/index.js +4 -4
  36. package/lib/commonjs/lib/wagmi/WagmiEventHandler.js +31 -36
  37. package/lib/commonjs/lib/wagmi/WagmiEventHandler.js.map +1 -1
  38. package/lib/commonjs/lib/wagmi/index.js +2 -2
  39. package/lib/commonjs/package.json +1 -0
  40. package/lib/commonjs/solana/address.js +110 -0
  41. package/lib/commonjs/solana/address.js.map +1 -0
  42. package/lib/commonjs/solana/index.js +28 -0
  43. package/lib/commonjs/solana/index.js.map +1 -0
  44. package/lib/commonjs/solana/types.js +47 -0
  45. package/lib/commonjs/solana/types.js.map +1 -0
  46. package/lib/commonjs/types/events.js.map +1 -1
  47. package/lib/commonjs/types/index.js +2 -2
  48. package/lib/commonjs/utils/address.js +60 -6
  49. package/lib/commonjs/utils/address.js.map +1 -1
  50. package/lib/commonjs/utils/hash.js +44 -6
  51. package/lib/commonjs/utils/hash.js.map +1 -1
  52. package/lib/commonjs/utils/index.js +5 -5
  53. package/lib/commonjs/utils/trafficSource.js +74 -13
  54. package/lib/commonjs/utils/trafficSource.js.map +1 -1
  55. package/lib/commonjs/version.js +1 -1
  56. package/lib/module/FormoAnalytics.js +107 -26
  57. package/lib/module/FormoAnalytics.js.map +1 -1
  58. package/lib/module/FormoAnalyticsProvider.js +21 -13
  59. package/lib/module/FormoAnalyticsProvider.js.map +1 -1
  60. package/lib/module/constants/config.js +2 -0
  61. package/lib/module/constants/config.js.map +1 -1
  62. package/lib/module/constants/events.js +6 -0
  63. package/lib/module/constants/events.js.map +1 -1
  64. package/lib/module/constants/index.js +5 -3
  65. package/lib/module/constants/index.js.map +1 -1
  66. package/lib/module/constants/storage.js +9 -0
  67. package/lib/module/constants/storage.js.map +1 -1
  68. package/lib/module/index.js +6 -4
  69. package/lib/module/index.js.map +1 -1
  70. package/lib/module/lib/consent/index.js +4 -2
  71. package/lib/module/lib/consent/index.js.map +1 -1
  72. package/lib/module/lib/event/EventFactory.js +116 -33
  73. package/lib/module/lib/event/EventFactory.js.map +1 -1
  74. package/lib/module/lib/event/EventManager.js +5 -3
  75. package/lib/module/lib/event/EventManager.js.map +1 -1
  76. package/lib/module/lib/event/EventQueue.js +18 -5
  77. package/lib/module/lib/event/EventQueue.js.map +1 -1
  78. package/lib/module/lib/event/index.js +6 -4
  79. package/lib/module/lib/event/index.js.map +1 -1
  80. package/lib/module/lib/event/types.js +2 -0
  81. package/lib/module/lib/installReferrer/index.js +189 -0
  82. package/lib/module/lib/installReferrer/index.js.map +1 -0
  83. package/lib/module/lib/lifecycle/index.js +14 -5
  84. package/lib/module/lib/lifecycle/index.js.map +1 -1
  85. package/lib/module/lib/logger/index.js +2 -0
  86. package/lib/module/lib/logger/index.js.map +1 -1
  87. package/lib/module/lib/session/index.js +5 -3
  88. package/lib/module/lib/session/index.js.map +1 -1
  89. package/lib/module/lib/storage/AsyncStorageAdapter.js +4 -2
  90. package/lib/module/lib/storage/AsyncStorageAdapter.js.map +1 -1
  91. package/lib/module/lib/storage/MemoryStorage.js +3 -1
  92. package/lib/module/lib/storage/MemoryStorage.js.map +1 -1
  93. package/lib/module/lib/storage/StorageBlueprint.js +3 -1
  94. package/lib/module/lib/storage/StorageBlueprint.js.map +1 -1
  95. package/lib/module/lib/storage/StorageManager.js +5 -3
  96. package/lib/module/lib/storage/StorageManager.js.map +1 -1
  97. package/lib/module/lib/storage/index.js +6 -4
  98. package/lib/module/lib/storage/index.js.map +1 -1
  99. package/lib/module/lib/storage/types.js +1 -1
  100. package/lib/module/lib/wagmi/WagmiEventHandler.js +5 -8
  101. package/lib/module/lib/wagmi/WagmiEventHandler.js.map +1 -1
  102. package/lib/module/lib/wagmi/index.js +4 -2
  103. package/lib/module/lib/wagmi/index.js.map +1 -1
  104. package/lib/module/lib/wagmi/types.js +1 -1
  105. package/lib/module/package.json +1 -0
  106. package/lib/module/solana/address.js +102 -0
  107. package/lib/module/solana/address.js.map +1 -0
  108. package/lib/module/solana/index.js +5 -0
  109. package/lib/module/solana/index.js.map +1 -0
  110. package/lib/module/solana/types.js +42 -0
  111. package/lib/module/solana/types.js.map +1 -0
  112. package/lib/module/types/base.js +2 -0
  113. package/lib/module/types/events.js +2 -0
  114. package/lib/module/types/events.js.map +1 -1
  115. package/lib/module/types/index.js +4 -2
  116. package/lib/module/types/index.js.map +1 -1
  117. package/lib/module/utils/address.js +60 -6
  118. package/lib/module/utils/address.js.map +1 -1
  119. package/lib/module/utils/hash.js +46 -6
  120. package/lib/module/utils/hash.js.map +1 -1
  121. package/lib/module/utils/helpers.js +2 -0
  122. package/lib/module/utils/helpers.js.map +1 -1
  123. package/lib/module/utils/index.js +7 -5
  124. package/lib/module/utils/index.js.map +1 -1
  125. package/lib/module/utils/timestamp.js +2 -0
  126. package/lib/module/utils/timestamp.js.map +1 -1
  127. package/lib/module/utils/trafficSource.js +64 -3
  128. package/lib/module/utils/trafficSource.js.map +1 -1
  129. package/lib/module/version.js +3 -1
  130. package/lib/module/version.js.map +1 -1
  131. package/lib/typescript/{FormoAnalytics.d.ts → commonjs/FormoAnalytics.d.ts} +23 -4
  132. package/lib/typescript/commonjs/FormoAnalytics.d.ts.map +1 -0
  133. package/lib/typescript/commonjs/FormoAnalyticsProvider.d.ts.map +1 -0
  134. package/lib/typescript/commonjs/constants/config.d.ts.map +1 -0
  135. package/lib/typescript/{constants → commonjs/constants}/events.d.ts +1 -0
  136. package/lib/typescript/commonjs/constants/events.d.ts.map +1 -0
  137. package/lib/typescript/commonjs/constants/index.d.ts.map +1 -0
  138. package/lib/typescript/{constants → commonjs/constants}/storage.d.ts +3 -0
  139. package/lib/typescript/commonjs/constants/storage.d.ts.map +1 -0
  140. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  141. package/lib/typescript/commonjs/lib/consent/index.d.ts.map +1 -0
  142. package/lib/typescript/{lib → commonjs/lib}/event/EventFactory.d.ts +36 -1
  143. package/lib/typescript/commonjs/lib/event/EventFactory.d.ts.map +1 -0
  144. package/lib/typescript/commonjs/lib/event/EventManager.d.ts.map +1 -0
  145. package/lib/typescript/commonjs/lib/event/EventQueue.d.ts.map +1 -0
  146. package/lib/typescript/commonjs/lib/event/index.d.ts.map +1 -0
  147. package/lib/typescript/{lib → commonjs/lib}/event/types.d.ts +1 -1
  148. package/lib/typescript/commonjs/lib/event/types.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/lib/installReferrer/index.d.ts +39 -0
  150. package/lib/typescript/commonjs/lib/installReferrer/index.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/lib/lifecycle/index.d.ts.map +1 -0
  152. package/lib/typescript/commonjs/lib/logger/index.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/lib/session/index.d.ts.map +1 -0
  154. package/lib/typescript/commonjs/lib/storage/AsyncStorageAdapter.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/lib/storage/MemoryStorage.d.ts.map +1 -0
  156. package/lib/typescript/commonjs/lib/storage/StorageBlueprint.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/lib/storage/StorageManager.d.ts.map +1 -0
  158. package/lib/typescript/commonjs/lib/storage/index.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/lib/storage/types.d.ts.map +1 -0
  160. package/lib/typescript/{lib → commonjs/lib}/wagmi/WagmiEventHandler.d.ts +0 -1
  161. package/lib/typescript/commonjs/lib/wagmi/WagmiEventHandler.d.ts.map +1 -0
  162. package/lib/typescript/commonjs/lib/wagmi/index.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/lib/wagmi/types.d.ts.map +1 -0
  164. package/lib/typescript/commonjs/package.json +1 -0
  165. package/lib/typescript/commonjs/solana/address.d.ts +42 -0
  166. package/lib/typescript/commonjs/solana/address.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/solana/index.d.ts +3 -0
  168. package/lib/typescript/commonjs/solana/index.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/solana/types.d.ts +34 -0
  170. package/lib/typescript/commonjs/solana/types.d.ts.map +1 -0
  171. package/lib/typescript/{types → commonjs/types}/base.d.ts +39 -1
  172. package/lib/typescript/commonjs/types/base.d.ts.map +1 -0
  173. package/lib/typescript/{types → commonjs/types}/events.d.ts +1 -1
  174. package/lib/typescript/commonjs/types/events.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/types/index.d.ts.map +1 -0
  176. package/lib/typescript/commonjs/utils/address.d.ts +45 -0
  177. package/lib/typescript/commonjs/utils/address.d.ts.map +1 -0
  178. package/lib/typescript/commonjs/utils/hash.d.ts +18 -0
  179. package/lib/typescript/commonjs/utils/hash.d.ts.map +1 -0
  180. package/lib/typescript/commonjs/utils/helpers.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/utils/index.d.ts.map +1 -0
  182. package/lib/typescript/commonjs/utils/timestamp.d.ts.map +1 -0
  183. package/lib/typescript/{utils → commonjs/utils}/trafficSource.d.ts +16 -0
  184. package/lib/typescript/commonjs/utils/trafficSource.d.ts.map +1 -0
  185. package/lib/typescript/commonjs/version.d.ts +2 -0
  186. package/lib/typescript/commonjs/version.d.ts.map +1 -0
  187. package/lib/typescript/module/FormoAnalytics.d.ts +182 -0
  188. package/lib/typescript/module/FormoAnalytics.d.ts.map +1 -0
  189. package/lib/typescript/module/FormoAnalyticsProvider.d.ts +29 -0
  190. package/lib/typescript/module/FormoAnalyticsProvider.d.ts.map +1 -0
  191. package/lib/typescript/module/constants/config.d.ts +8 -0
  192. package/lib/typescript/module/constants/config.d.ts.map +1 -0
  193. package/lib/typescript/module/constants/events.d.ts +24 -0
  194. package/lib/typescript/module/constants/events.d.ts.map +1 -0
  195. package/lib/typescript/module/constants/index.d.ts +4 -0
  196. package/lib/typescript/module/constants/index.d.ts.map +1 -0
  197. package/lib/typescript/module/constants/storage.d.ts +13 -0
  198. package/lib/typescript/module/constants/storage.d.ts.map +1 -0
  199. package/lib/typescript/module/index.d.ts +44 -0
  200. package/lib/typescript/module/index.d.ts.map +1 -0
  201. package/lib/typescript/module/lib/consent/index.d.ts +13 -0
  202. package/lib/typescript/module/lib/consent/index.d.ts.map +1 -0
  203. package/lib/typescript/module/lib/event/EventFactory.d.ts +99 -0
  204. package/lib/typescript/module/lib/event/EventFactory.d.ts.map +1 -0
  205. package/lib/typescript/module/lib/event/EventManager.d.ts +17 -0
  206. package/lib/typescript/module/lib/event/EventManager.d.ts.map +1 -0
  207. package/lib/typescript/module/lib/event/EventQueue.d.ts +74 -0
  208. package/lib/typescript/module/lib/event/EventQueue.d.ts.map +1 -0
  209. package/lib/typescript/module/lib/event/index.d.ts +5 -0
  210. package/lib/typescript/module/lib/event/index.d.ts.map +1 -0
  211. package/lib/typescript/module/lib/event/types.d.ts +23 -0
  212. package/lib/typescript/module/lib/event/types.d.ts.map +1 -0
  213. package/lib/typescript/module/lib/installReferrer/index.d.ts +39 -0
  214. package/lib/typescript/module/lib/installReferrer/index.d.ts.map +1 -0
  215. package/lib/typescript/module/lib/lifecycle/index.d.ts +46 -0
  216. package/lib/typescript/module/lib/lifecycle/index.d.ts.map +1 -0
  217. package/lib/typescript/module/lib/logger/index.d.ts +19 -0
  218. package/lib/typescript/module/lib/logger/index.d.ts.map +1 -0
  219. package/lib/typescript/module/lib/session/index.d.ts +41 -0
  220. package/lib/typescript/module/lib/session/index.d.ts.map +1 -0
  221. package/lib/typescript/module/lib/storage/AsyncStorageAdapter.d.ts +48 -0
  222. package/lib/typescript/module/lib/storage/AsyncStorageAdapter.d.ts.map +1 -0
  223. package/lib/typescript/module/lib/storage/MemoryStorage.d.ts +18 -0
  224. package/lib/typescript/module/lib/storage/MemoryStorage.d.ts.map +1 -0
  225. package/lib/typescript/module/lib/storage/StorageBlueprint.d.ts +21 -0
  226. package/lib/typescript/module/lib/storage/StorageBlueprint.d.ts.map +1 -0
  227. package/lib/typescript/module/lib/storage/StorageManager.d.ts +45 -0
  228. package/lib/typescript/module/lib/storage/StorageManager.d.ts.map +1 -0
  229. package/lib/typescript/module/lib/storage/index.d.ts +5 -0
  230. package/lib/typescript/module/lib/storage/index.d.ts.map +1 -0
  231. package/lib/typescript/module/lib/storage/types.d.ts +22 -0
  232. package/lib/typescript/module/lib/storage/types.d.ts.map +1 -0
  233. package/lib/typescript/module/lib/wagmi/WagmiEventHandler.d.ts +103 -0
  234. package/lib/typescript/module/lib/wagmi/WagmiEventHandler.d.ts.map +1 -0
  235. package/lib/typescript/module/lib/wagmi/index.d.ts +3 -0
  236. package/lib/typescript/module/lib/wagmi/index.d.ts.map +1 -0
  237. package/lib/typescript/module/lib/wagmi/types.d.ts +54 -0
  238. package/lib/typescript/module/lib/wagmi/types.d.ts.map +1 -0
  239. package/lib/typescript/module/package.json +1 -0
  240. package/lib/typescript/module/solana/address.d.ts +42 -0
  241. package/lib/typescript/module/solana/address.d.ts.map +1 -0
  242. package/lib/typescript/module/solana/index.d.ts +3 -0
  243. package/lib/typescript/module/solana/index.d.ts.map +1 -0
  244. package/lib/typescript/module/solana/types.d.ts +34 -0
  245. package/lib/typescript/module/solana/types.d.ts.map +1 -0
  246. package/lib/typescript/module/types/base.d.ts +258 -0
  247. package/lib/typescript/module/types/base.d.ts.map +1 -0
  248. package/lib/typescript/module/types/events.d.ts +111 -0
  249. package/lib/typescript/module/types/events.d.ts.map +1 -0
  250. package/lib/typescript/module/types/index.d.ts +3 -0
  251. package/lib/typescript/module/types/index.d.ts.map +1 -0
  252. package/lib/typescript/module/utils/address.d.ts +45 -0
  253. package/lib/typescript/module/utils/address.d.ts.map +1 -0
  254. package/lib/typescript/module/utils/hash.d.ts +18 -0
  255. package/lib/typescript/module/utils/hash.d.ts.map +1 -0
  256. package/lib/typescript/module/utils/helpers.d.ts +26 -0
  257. package/lib/typescript/module/utils/helpers.d.ts.map +1 -0
  258. package/lib/typescript/module/utils/index.d.ts +6 -0
  259. package/lib/typescript/module/utils/index.d.ts.map +1 -0
  260. package/lib/typescript/module/utils/timestamp.d.ts +13 -0
  261. package/lib/typescript/module/utils/timestamp.d.ts.map +1 -0
  262. package/lib/typescript/module/utils/trafficSource.d.ts +46 -0
  263. package/lib/typescript/module/utils/trafficSource.d.ts.map +1 -0
  264. package/lib/typescript/module/version.d.ts +2 -0
  265. package/lib/typescript/module/version.d.ts.map +1 -0
  266. package/package.json +44 -49
  267. package/src/FormoAnalytics.ts +118 -16
  268. package/src/constants/events.ts +4 -0
  269. package/src/constants/storage.ts +7 -0
  270. package/src/lib/event/EventFactory.ts +129 -29
  271. package/src/lib/event/EventQueue.ts +14 -0
  272. package/src/lib/event/types.ts +0 -1
  273. package/src/lib/installReferrer/index.ts +225 -0
  274. package/src/lib/lifecycle/index.ts +10 -1
  275. package/src/lib/wagmi/WagmiEventHandler.ts +0 -4
  276. package/src/solana/address.ts +122 -0
  277. package/src/solana/index.ts +2 -0
  278. package/src/solana/types.ts +46 -0
  279. package/src/types/base.ts +41 -1
  280. package/src/types/events.ts +1 -1
  281. package/src/utils/address.ts +72 -6
  282. package/src/utils/hash.ts +51 -6
  283. package/src/utils/trafficSource.ts +73 -0
  284. package/src/version.ts +1 -1
  285. package/lib/typescript/FormoAnalytics.d.ts.map +0 -1
  286. package/lib/typescript/FormoAnalyticsProvider.d.ts.map +0 -1
  287. package/lib/typescript/constants/config.d.ts.map +0 -1
  288. package/lib/typescript/constants/events.d.ts.map +0 -1
  289. package/lib/typescript/constants/index.d.ts.map +0 -1
  290. package/lib/typescript/constants/storage.d.ts.map +0 -1
  291. package/lib/typescript/index.d.ts.map +0 -1
  292. package/lib/typescript/lib/consent/index.d.ts.map +0 -1
  293. package/lib/typescript/lib/event/EventFactory.d.ts.map +0 -1
  294. package/lib/typescript/lib/event/EventManager.d.ts.map +0 -1
  295. package/lib/typescript/lib/event/EventQueue.d.ts.map +0 -1
  296. package/lib/typescript/lib/event/index.d.ts.map +0 -1
  297. package/lib/typescript/lib/event/types.d.ts.map +0 -1
  298. package/lib/typescript/lib/lifecycle/index.d.ts.map +0 -1
  299. package/lib/typescript/lib/logger/index.d.ts.map +0 -1
  300. package/lib/typescript/lib/session/index.d.ts.map +0 -1
  301. package/lib/typescript/lib/storage/AsyncStorageAdapter.d.ts.map +0 -1
  302. package/lib/typescript/lib/storage/MemoryStorage.d.ts.map +0 -1
  303. package/lib/typescript/lib/storage/StorageBlueprint.d.ts.map +0 -1
  304. package/lib/typescript/lib/storage/StorageManager.d.ts.map +0 -1
  305. package/lib/typescript/lib/storage/index.d.ts.map +0 -1
  306. package/lib/typescript/lib/storage/types.d.ts.map +0 -1
  307. package/lib/typescript/lib/wagmi/WagmiEventHandler.d.ts.map +0 -1
  308. package/lib/typescript/lib/wagmi/index.d.ts.map +0 -1
  309. package/lib/typescript/lib/wagmi/types.d.ts.map +0 -1
  310. package/lib/typescript/types/base.d.ts.map +0 -1
  311. package/lib/typescript/types/events.d.ts.map +0 -1
  312. package/lib/typescript/types/index.d.ts.map +0 -1
  313. package/lib/typescript/utils/address.d.ts +0 -25
  314. package/lib/typescript/utils/address.d.ts.map +0 -1
  315. package/lib/typescript/utils/hash.d.ts +0 -10
  316. package/lib/typescript/utils/hash.d.ts.map +0 -1
  317. package/lib/typescript/utils/helpers.d.ts.map +0 -1
  318. package/lib/typescript/utils/index.d.ts.map +0 -1
  319. package/lib/typescript/utils/timestamp.d.ts.map +0 -1
  320. package/lib/typescript/utils/trafficSource.d.ts.map +0 -1
  321. package/lib/typescript/version.d.ts +0 -2
  322. package/lib/typescript/version.d.ts.map +0 -1
  323. /package/lib/typescript/{FormoAnalyticsProvider.d.ts → commonjs/FormoAnalyticsProvider.d.ts} +0 -0
  324. /package/lib/typescript/{constants → commonjs/constants}/config.d.ts +0 -0
  325. /package/lib/typescript/{constants → commonjs/constants}/index.d.ts +0 -0
  326. /package/lib/typescript/{index.d.ts → commonjs/index.d.ts} +0 -0
  327. /package/lib/typescript/{lib → commonjs/lib}/consent/index.d.ts +0 -0
  328. /package/lib/typescript/{lib → commonjs/lib}/event/EventManager.d.ts +0 -0
  329. /package/lib/typescript/{lib → commonjs/lib}/event/EventQueue.d.ts +0 -0
  330. /package/lib/typescript/{lib → commonjs/lib}/event/index.d.ts +0 -0
  331. /package/lib/typescript/{lib → commonjs/lib}/lifecycle/index.d.ts +0 -0
  332. /package/lib/typescript/{lib → commonjs/lib}/logger/index.d.ts +0 -0
  333. /package/lib/typescript/{lib → commonjs/lib}/session/index.d.ts +0 -0
  334. /package/lib/typescript/{lib → commonjs/lib}/storage/AsyncStorageAdapter.d.ts +0 -0
  335. /package/lib/typescript/{lib → commonjs/lib}/storage/MemoryStorage.d.ts +0 -0
  336. /package/lib/typescript/{lib → commonjs/lib}/storage/StorageBlueprint.d.ts +0 -0
  337. /package/lib/typescript/{lib → commonjs/lib}/storage/StorageManager.d.ts +0 -0
  338. /package/lib/typescript/{lib → commonjs/lib}/storage/index.d.ts +0 -0
  339. /package/lib/typescript/{lib → commonjs/lib}/storage/types.d.ts +0 -0
  340. /package/lib/typescript/{lib → commonjs/lib}/wagmi/index.d.ts +0 -0
  341. /package/lib/typescript/{lib → commonjs/lib}/wagmi/types.d.ts +0 -0
  342. /package/lib/typescript/{types → commonjs/types}/index.d.ts +0 -0
  343. /package/lib/typescript/{utils → commonjs/utils}/helpers.d.ts +0 -0
  344. /package/lib/typescript/{utils → commonjs/utils}/index.d.ts +0 -0
  345. /package/lib/typescript/{utils → commonjs/utils}/timestamp.d.ts +0 -0
package/README.md CHANGED
@@ -14,6 +14,31 @@ pnpm add @formo/analytics-react-native @react-native-async-storage/async-storage
14
14
  cd ios && pod install
15
15
  ```
16
16
 
17
+ ### Android Setup (web-to-mobile attribution)
18
+
19
+ To attribute installs to where the user came from (e.g. a link on `example.com`
20
+ → Play Store → install), install the Play Install Referrer module and rebuild
21
+ the native app:
22
+
23
+ ```bash
24
+ pnpm add react-native-play-install-referrer
25
+ cd android && ./gradlew clean && cd .. # then rebuild, e.g. npx expo run:android
26
+ ```
27
+
28
+ This is an **optional** peer dependency. Without it the SDK still works, but
29
+ Android install attribution is skipped (the SDK logs a warning on startup) and
30
+ `Application Installed` events will not carry `referrer` / `utm_*`.
31
+
32
+ Point your marketing links at the Play Store with a `referrer` parameter, e.g.:
33
+
34
+ ```
35
+ https://play.google.com/store/apps/details?id=<your.package>&referrer=utm_source%3Dexample.com%26utm_campaign%3Dspring
36
+ ```
37
+
38
+ <sub>iOS note: Apple exposes no install-referrer API, so web-to-mobile install
39
+ attribution is not possible on iOS from the SDK. It requires a third-party
40
+ attribution service (Branch/AppsFlyer).</sub>
41
+
17
42
  ## Quick Start
18
43
 
19
44
  ### 1. Wrap your app with the provider
@@ -4,16 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.FormoAnalytics = void 0;
7
- var _constants = require("./constants");
8
- var _storage = require("./lib/storage");
9
- var _event = require("./lib/event");
10
- var _logger = require("./lib/logger");
11
- var _consent = require("./lib/consent");
12
- var _session = require("./lib/session");
13
- var _wagmi = require("./lib/wagmi");
14
- var _lifecycle = require("./lib/lifecycle");
15
- var _utils = require("./utils");
16
- var _trafficSource = require("./utils/trafficSource");
7
+ var _index = require("./constants/index.js");
8
+ var _index2 = require("./lib/storage/index.js");
9
+ var _index3 = require("./lib/event/index.js");
10
+ var _index4 = require("./lib/logger/index.js");
11
+ var _index5 = require("./lib/consent/index.js");
12
+ var _index6 = require("./lib/session/index.js");
13
+ var _index7 = require("./lib/wagmi/index.js");
14
+ var _index8 = require("./lib/lifecycle/index.js");
15
+ var _index9 = require("./utils/index.js");
16
+ var _trafficSource = require("./utils/trafficSource.js");
17
+ var _index0 = require("./lib/installReferrer/index.js");
18
+ var _reactNative = require("react-native");
17
19
  /**
18
20
  * FormoAnalytics for React Native
19
21
  *
@@ -28,8 +30,8 @@ class FormoAnalytics {
28
30
  this.config = {
29
31
  writeKey
30
32
  };
31
- this.session = new _session.FormoAnalyticsSession();
32
- this.currentUserId = (0, _storage.storage)().get(_constants.SESSION_USER_ID_KEY) || undefined;
33
+ this.session = new _index6.FormoAnalyticsSession();
34
+ this.currentUserId = (0, _index2.storage)().get(_index.SESSION_USER_ID_KEY) || undefined;
33
35
 
34
36
  // Bind methods
35
37
  this.identify = this.identify.bind(this);
@@ -44,14 +46,14 @@ class FormoAnalytics {
44
46
  this.isAutocaptureEnabled = this.isAutocaptureEnabled.bind(this);
45
47
 
46
48
  // Initialize logger
47
- _logger.Logger.init({
49
+ _index4.Logger.init({
48
50
  enabled: options.logger?.enabled || false,
49
51
  enabledLevels: options.logger?.levels || []
50
52
  });
51
53
 
52
54
  // Initialize event queue
53
- this.eventQueue = new _event.EventQueue(this.config.writeKey, {
54
- apiHost: options.apiHost || _constants.EVENTS_API_HOST,
55
+ this.eventQueue = new _index3.EventQueue(this.config.writeKey, {
56
+ apiHost: options.apiHost || _index.EVENTS_API_HOST,
55
57
  flushAt: options.flushAt,
56
58
  retryCount: options.retryCount,
57
59
  maxQueueSize: options.maxQueueSize,
@@ -59,19 +61,19 @@ class FormoAnalytics {
59
61
  });
60
62
 
61
63
  // Initialize event manager
62
- this.eventManager = new _event.EventManager(this.eventQueue, options);
64
+ this.eventManager = new _index3.EventManager(this.eventQueue, options);
63
65
 
64
66
  // Check consent status
65
67
  if (this.hasOptedOutTracking()) {
66
- _logger.logger.info("User has previously opted out of tracking");
68
+ _index4.logger.info("User has previously opted out of tracking");
67
69
  }
68
70
 
69
71
  // Initialize Wagmi handler if provided and config is valid
70
72
  if (options.wagmi?.config) {
71
- _logger.logger.info("FormoAnalytics: Initializing in Wagmi mode");
72
- this.wagmiHandler = new _wagmi.WagmiEventHandler(this, options.wagmi.config, options.wagmi.queryClient);
73
+ _index4.logger.info("FormoAnalytics: Initializing in Wagmi mode");
74
+ this.wagmiHandler = new _index7.WagmiEventHandler(this, options.wagmi.config, options.wagmi.queryClient);
73
75
  } else if (options.wagmi) {
74
- _logger.logger.warn("FormoAnalytics: wagmi option provided but config is missing");
76
+ _index4.logger.warn("FormoAnalytics: wagmi option provided but config is missing");
75
77
  }
76
78
  }
77
79
 
@@ -82,7 +84,7 @@ class FormoAnalytics {
82
84
  * @param asyncStorage - AsyncStorage instance from @react-native-async-storage/async-storage
83
85
  */
84
86
  static async init(writeKey, options, asyncStorage) {
85
- const storageManager = (0, _storage.initStorageManager)(writeKey);
87
+ const storageManager = (0, _index2.initStorageManager)(writeKey);
86
88
 
87
89
  // Initialize storage with AsyncStorage if provided
88
90
  if (asyncStorage) {
@@ -90,14 +92,41 @@ class FormoAnalytics {
90
92
  }
91
93
  const analytics = new FormoAnalytics(writeKey, options);
92
94
 
95
+ // Capture attribution BEFORE lifecycle tracking so the first
96
+ // Application Installed/Opened events carry utm_*/ref/referrer.
97
+ //
98
+ // Both are awaited so the stored traffic source is populated before
99
+ // lifecycle fires — that's what lets Application Installed report the
100
+ // web-to-mobile referrer (e.g. referrer=example.com). Deep-link initial URL
101
+ // is a fast native bridge call; the Android Play Install Referrer is a fast
102
+ // one-shot native call (and no-ops instantly when the native module or the
103
+ // platform isn't Android), so awaiting it does not meaningfully delay init.
104
+ if (analytics.isAttributionEnabled("deeplinks")) {
105
+ try {
106
+ await analytics.startDeepLinkCapture();
107
+ } catch (error) {
108
+ _index4.logger.error("FormoAnalytics: Failed to initialize deep link capture", error);
109
+ }
110
+ }
111
+ if (analytics.isAttributionEnabled("installReferrer")) {
112
+ try {
113
+ await (0, _index0.captureInstallReferrer)({
114
+ customRefParams: analytics.options.referral?.queryParams,
115
+ pathPattern: analytics.options.referral?.pathPattern
116
+ });
117
+ } catch (error) {
118
+ _index4.logger.debug("FormoAnalytics: install referrer capture failed", error);
119
+ }
120
+ }
121
+
93
122
  // Initialize lifecycle tracking if enabled
94
123
  // Wrapped in try-catch so a transient storage failure doesn't prevent SDK init
95
124
  if (analytics.isAutocaptureEnabled("lifecycle")) {
96
125
  try {
97
- analytics.lifecycleManager = new _lifecycle.AppLifecycleManager(analytics);
126
+ analytics.lifecycleManager = new _index8.AppLifecycleManager(analytics);
98
127
  await analytics.lifecycleManager.start(options?.app);
99
128
  } catch (error) {
100
- _logger.logger.error("FormoAnalytics: Failed to initialize lifecycle tracking", error);
129
+ _index4.logger.error("FormoAnalytics: Failed to initialize lifecycle tracking", error);
101
130
  }
102
131
  }
103
132
 
@@ -108,12 +137,31 @@ class FormoAnalytics {
108
137
  return analytics;
109
138
  }
110
139
 
140
+ /**
141
+ * Hook into React Native's Linking API to auto-capture traffic source from
142
+ * the launch URL and any subsequent deep-link opens. Awaits the initial URL
143
+ * so attribution is in storage before the first lifecycle event fires.
144
+ */
145
+ async startDeepLinkCapture() {
146
+ try {
147
+ const url = await _reactNative.Linking.getInitialURL();
148
+ if (url) this.setTrafficSourceFromUrl(url);
149
+ } catch (error) {
150
+ _index4.logger.debug("FormoAnalytics: Linking.getInitialURL failed", error);
151
+ }
152
+
153
+ // Runtime deep links (foreground opens, universal links).
154
+ this.linkingSubscription = _reactNative.Linking.addEventListener("url", event => {
155
+ if (event?.url) this.setTrafficSourceFromUrl(event.url);
156
+ });
157
+ }
158
+
111
159
  /**
112
160
  * Track a screen view (mobile equivalent of page view)
113
161
  */
114
162
  async screen(name, category, properties, context, callback) {
115
163
  // Note: shouldTrack() is called in trackEvent() - no need to check here
116
- await this.trackEvent(_constants.EventType.SCREEN, {
164
+ await this.trackEvent(_index.EventType.SCREEN, {
117
165
  name,
118
166
  ...(category && {
119
167
  category
@@ -145,8 +193,11 @@ class FormoAnalytics {
145
193
  */
146
194
  setTrafficSourceFromUrl(url) {
147
195
  const trafficSource = (0, _trafficSource.parseTrafficSource)(url, this.options.referral?.queryParams, this.options.referral?.pathPattern);
148
- (0, _trafficSource.storeTrafficSource)(trafficSource);
149
- _logger.logger.debug("Traffic source set from URL:", trafficSource);
196
+ // Per-field merge: incoming non-empty fields win, empty fields preserve
197
+ // stored values. A non-marketing deep link (e.g. "myapp://home") with only
198
+ // a referrer will not destroy previously captured utm_*/ref attribution.
199
+ (0, _trafficSource.updateStoredTrafficSource)(trafficSource);
200
+ _index4.logger.debug("Traffic source set from URL:", trafficSource);
150
201
  }
151
202
 
152
203
  /**
@@ -154,8 +205,10 @@ class FormoAnalytics {
154
205
  */
155
206
  reset() {
156
207
  this.currentUserId = undefined;
157
- (0, _storage.storage)().remove(_constants.LOCAL_ANONYMOUS_ID_KEY);
158
- (0, _storage.storage)().remove(_constants.SESSION_USER_ID_KEY);
208
+ (0, _index2.storage)().remove(_index.LOCAL_ANONYMOUS_ID_KEY);
209
+ (0, _index2.storage)().remove(_index.LOCAL_SESSION_ID_KEY);
210
+ (0, _index2.storage)().remove(_index.LOCAL_SESSION_LAST_ACTIVITY_KEY);
211
+ (0, _index2.storage)().remove(_index.SESSION_USER_ID_KEY);
159
212
  this.session.clear();
160
213
  }
161
214
 
@@ -163,11 +216,15 @@ class FormoAnalytics {
163
216
  * Clean up resources
164
217
  */
165
218
  async cleanup() {
166
- _logger.logger.info("FormoAnalytics: Cleaning up resources");
219
+ _index4.logger.info("FormoAnalytics: Cleaning up resources");
167
220
  if (this.lifecycleManager) {
168
221
  this.lifecycleManager.cleanup();
169
222
  this.lifecycleManager = undefined;
170
223
  }
224
+ if (this.linkingSubscription) {
225
+ this.linkingSubscription.remove();
226
+ this.linkingSubscription = undefined;
227
+ }
171
228
  if (this.wagmiHandler) {
172
229
  this.wagmiHandler.cleanup();
173
230
  this.wagmiHandler = undefined;
@@ -175,7 +232,7 @@ class FormoAnalytics {
175
232
  if (this.eventQueue) {
176
233
  await this.eventQueue.cleanup();
177
234
  }
178
- _logger.logger.info("FormoAnalytics: Cleanup complete");
235
+ _index4.logger.info("FormoAnalytics: Cleanup complete");
179
236
  }
180
237
 
181
238
  /**
@@ -186,26 +243,26 @@ class FormoAnalytics {
186
243
  address
187
244
  }, properties, context, callback) {
188
245
  if (chainId === null || chainId === undefined || Number(chainId) === 0) {
189
- _logger.logger.warn("Connect: Chain ID cannot be null, undefined, or 0");
246
+ _index4.logger.warn("Connect: Chain ID cannot be null, undefined, or 0");
190
247
  return;
191
248
  }
192
249
  if (!address) {
193
- _logger.logger.warn("Connect: Address cannot be empty");
250
+ _index4.logger.warn("Connect: Address cannot be empty");
194
251
  return;
195
252
  }
196
- const checksummedAddress = this.validateAndChecksumAddress(address);
197
- if (!checksummedAddress) {
198
- _logger.logger.warn(`Connect: Invalid address provided ("${address}")`);
253
+ const validatedAddress = this.validateAndChecksumAddress(address, chainId);
254
+ if (!validatedAddress) {
255
+ _index4.logger.warn(`Connect: Invalid address provided ("${address}")`);
199
256
  return;
200
257
  }
201
258
 
202
259
  // Track event before updating state so connect events TO excluded chains are tracked
203
- await this.trackEvent(_constants.EventType.CONNECT, {
260
+ await this.trackEvent(_index.EventType.CONNECT, {
204
261
  chainId,
205
- address: checksummedAddress
262
+ address: validatedAddress
206
263
  }, properties, context, callback);
207
264
  this.currentChainId = chainId;
208
- this.currentAddress = checksummedAddress;
265
+ this.currentAddress = validatedAddress;
209
266
  }
210
267
 
211
268
  /**
@@ -214,11 +271,11 @@ class FormoAnalytics {
214
271
  async disconnect(params, properties, context, callback) {
215
272
  const chainId = params?.chainId || this.currentChainId;
216
273
  const address = params?.address || this.currentAddress;
217
- _logger.logger.info("Disconnect: Emitting disconnect event with:", {
274
+ _index4.logger.info("Disconnect: Emitting disconnect event with:", {
218
275
  chainId,
219
276
  address
220
277
  });
221
- await this.trackEvent(_constants.EventType.DISCONNECT, {
278
+ await this.trackEvent(_index.EventType.DISCONNECT, {
222
279
  ...(chainId && {
223
280
  chainId
224
281
  }),
@@ -238,21 +295,21 @@ class FormoAnalytics {
238
295
  address
239
296
  }, properties, context, callback) {
240
297
  if (!chainId || Number(chainId) === 0) {
241
- _logger.logger.warn("FormoAnalytics::chain: chainId cannot be empty or 0");
298
+ _index4.logger.warn("FormoAnalytics::chain: chainId cannot be empty or 0");
242
299
  return;
243
300
  }
244
301
  if (isNaN(Number(chainId))) {
245
- _logger.logger.warn("FormoAnalytics::chain: chainId must be a valid number");
302
+ _index4.logger.warn("FormoAnalytics::chain: chainId must be a valid number");
246
303
  return;
247
304
  }
248
305
  if (!address && !this.currentAddress) {
249
- _logger.logger.warn("FormoAnalytics::chain: address was empty and no previous address recorded");
306
+ _index4.logger.warn("FormoAnalytics::chain: address was empty and no previous address recorded");
250
307
  return;
251
308
  }
252
309
 
253
310
  // Track event before updating currentChainId so shouldTrack uses the previous chain
254
311
  // This ensures chain change events TO excluded chains are still tracked
255
- await this.trackEvent(_constants.EventType.CHAIN, {
312
+ await this.trackEvent(_index.EventType.CHAIN, {
256
313
  chainId,
257
314
  address: address || this.currentAddress
258
315
  }, properties, context, callback);
@@ -266,23 +323,19 @@ class FormoAnalytics {
266
323
  status,
267
324
  chainId,
268
325
  address,
269
- message,
270
- signatureHash
326
+ message
271
327
  }, properties, context, callback) {
272
328
  if (!address) {
273
- _logger.logger.warn("Signature: Address cannot be empty");
329
+ _index4.logger.warn("Signature: Address cannot be empty");
274
330
  return;
275
331
  }
276
- await this.trackEvent(_constants.EventType.SIGNATURE, {
332
+ await this.trackEvent(_index.EventType.SIGNATURE, {
277
333
  status,
278
334
  ...(chainId !== undefined && chainId !== null && {
279
335
  chainId
280
336
  }),
281
337
  address,
282
- message,
283
- ...(signatureHash && {
284
- signatureHash
285
- })
338
+ message
286
339
  }, properties, context, callback);
287
340
  }
288
341
 
@@ -301,14 +354,14 @@ class FormoAnalytics {
301
354
  function_args
302
355
  }, properties, context, callback) {
303
356
  if (chainId === null || chainId === undefined || Number(chainId) === 0) {
304
- _logger.logger.warn("Transaction: Chain ID cannot be null, undefined, or 0");
357
+ _index4.logger.warn("Transaction: Chain ID cannot be null, undefined, or 0");
305
358
  return;
306
359
  }
307
360
  if (!address) {
308
- _logger.logger.warn("Transaction: Address cannot be empty");
361
+ _index4.logger.warn("Transaction: Address cannot be empty");
309
362
  return;
310
363
  }
311
- await this.trackEvent(_constants.EventType.TRANSACTION, {
364
+ await this.trackEvent(_index.EventType.TRANSACTION, {
312
365
  status,
313
366
  chainId,
314
367
  address,
@@ -338,27 +391,29 @@ class FormoAnalytics {
338
391
  providerName,
339
392
  rdns
340
393
  } = params;
341
- _logger.logger.info("Identify", address, userId, providerName, rdns);
394
+ _index4.logger.info("Identify", address, userId, providerName, rdns);
342
395
  let validAddress = undefined;
343
396
  if (address) {
344
397
  validAddress = this.validateAndChecksumAddress(address);
345
398
  if (!validAddress) {
346
- _logger.logger.warn(`Identify: Invalid address provided ("${address}")`);
399
+ _index4.logger.warn(`Identify: Invalid address provided ("${address}")`);
347
400
  return;
348
401
  }
349
402
  this.currentAddress = validAddress;
403
+ // Note: validateAddress returns Solana addresses unchanged (Base58, case-sensitive)
404
+ // and EVM addresses checksummed.
350
405
  } else {
351
406
  this.currentAddress = undefined;
352
407
  }
353
408
  if (userId) {
354
409
  this.currentUserId = userId;
355
- (0, _storage.storage)().set(_constants.SESSION_USER_ID_KEY, userId);
410
+ (0, _index2.storage)().set(_index.SESSION_USER_ID_KEY, userId);
356
411
  }
357
412
 
358
413
  // Check for duplicate identify
359
414
  const isAlreadyIdentified = validAddress ? this.session.isWalletIdentified(validAddress, rdns || "") : false;
360
415
  if (isAlreadyIdentified) {
361
- _logger.logger.info(`Identify: Wallet ${providerName || "Unknown"} with address ${validAddress} already identified`);
416
+ _index4.logger.info(`Identify: Wallet ${providerName || "Unknown"} with address ${validAddress} already identified`);
362
417
  return;
363
418
  }
364
419
 
@@ -366,14 +421,14 @@ class FormoAnalytics {
366
421
  if (validAddress) {
367
422
  this.session.markWalletIdentified(validAddress, rdns || "");
368
423
  }
369
- await this.trackEvent(_constants.EventType.IDENTIFY, {
424
+ await this.trackEvent(_index.EventType.IDENTIFY, {
370
425
  address: validAddress,
371
426
  providerName,
372
427
  userId,
373
428
  rdns
374
429
  }, properties, context, callback);
375
430
  } catch (e) {
376
- _logger.logger.log("identify error", e);
431
+ _index4.logger.log("identify error", e);
377
432
  }
378
433
  }
379
434
 
@@ -385,11 +440,11 @@ class FormoAnalytics {
385
440
  rdns
386
441
  }, properties, context, callback) {
387
442
  if (this.session.isWalletDetected(rdns)) {
388
- _logger.logger.warn(`Detect: Wallet ${providerName} already detected in this session`);
443
+ _index4.logger.warn(`Detect: Wallet ${providerName} already detected in this session`);
389
444
  return;
390
445
  }
391
446
  this.session.markWalletDetected(rdns);
392
- await this.trackEvent(_constants.EventType.DETECT, {
447
+ await this.trackEvent(_index.EventType.DETECT, {
393
448
  providerName,
394
449
  rdns
395
450
  }, properties, context, callback);
@@ -399,7 +454,7 @@ class FormoAnalytics {
399
454
  * Track custom event
400
455
  */
401
456
  async track(event, properties, context, callback) {
402
- await this.trackEvent(_constants.EventType.TRACK, {
457
+ await this.trackEvent(_index.EventType.TRACK, {
403
458
  event
404
459
  }, properties, context, callback);
405
460
  }
@@ -408,31 +463,34 @@ class FormoAnalytics {
408
463
  * Opt out of tracking
409
464
  */
410
465
  optOutTracking() {
411
- _logger.logger.info("Opting out of tracking");
412
- (0, _consent.setConsentFlag)(this.writeKey, _constants.CONSENT_OPT_OUT_KEY, "true");
466
+ _index4.logger.info("Opting out of tracking");
467
+ (0, _index5.setConsentFlag)(this.writeKey, _index.CONSENT_OPT_OUT_KEY, "true");
413
468
  this.eventQueue.clear();
414
469
  this.reset();
415
- _logger.logger.info("Successfully opted out of tracking");
470
+ _index4.logger.info("Successfully opted out of tracking");
416
471
  }
417
472
 
418
473
  /**
419
474
  * Opt back into tracking
420
475
  */
421
476
  optInTracking() {
422
- _logger.logger.info("Opting back into tracking");
423
- (0, _consent.removeConsentFlag)(this.writeKey, _constants.CONSENT_OPT_OUT_KEY);
424
- _logger.logger.info("Successfully opted back into tracking");
477
+ _index4.logger.info("Opting back into tracking");
478
+ (0, _index5.removeConsentFlag)(this.writeKey, _index.CONSENT_OPT_OUT_KEY);
479
+ _index4.logger.info("Successfully opted back into tracking");
425
480
  }
426
481
 
427
482
  /**
428
483
  * Check if user has opted out
429
484
  */
430
485
  hasOptedOutTracking() {
431
- return (0, _consent.getConsentFlag)(this.writeKey, _constants.CONSENT_OPT_OUT_KEY) === "true";
486
+ return (0, _index5.getConsentFlag)(this.writeKey, _index.CONSENT_OPT_OUT_KEY) === "true";
432
487
  }
433
488
 
434
489
  /**
435
- * Check if autocapture is enabled for event type
490
+ * Check if autocapture is enabled for a given event type.
491
+ * Applies only to event-generating behaviors (wallet events, lifecycle
492
+ * events). Attribution is controlled separately via `options.attribution`
493
+ * because it enriches events rather than generating them.
436
494
  */
437
495
  isAutocaptureEnabled(eventType) {
438
496
  if (this.options.autocapture === undefined) {
@@ -448,6 +506,24 @@ class FormoAnalytics {
448
506
  return true;
449
507
  }
450
508
 
509
+ /**
510
+ * Check if an attribution source is enabled. Attribution is not an event
511
+ * type — it decorates every tracked event with `utm_*`, `ref`, and
512
+ * `referrer` context fields.
513
+ */
514
+ isAttributionEnabled(source) {
515
+ if (this.options.attribution === undefined) {
516
+ return true;
517
+ }
518
+ if (typeof this.options.attribution === "boolean") {
519
+ return this.options.attribution;
520
+ }
521
+ if (this.options.attribution !== null && typeof this.options.attribution === "object") {
522
+ return this.options.attribution[source] !== false;
523
+ }
524
+ return true;
525
+ }
526
+
451
527
  /**
452
528
  * Internal method to track events
453
529
  * This is the single enforcement point for shouldTrack() - all public tracking
@@ -456,7 +532,7 @@ class FormoAnalytics {
456
532
  async trackEvent(type, payload, properties, context, callback) {
457
533
  try {
458
534
  if (!this.shouldTrack()) {
459
- _logger.logger.info(`Skipping ${type} event due to tracking configuration`);
535
+ _index4.logger.info(`Skipping ${type} event due to tracking configuration`);
460
536
  return;
461
537
  }
462
538
  await this.eventManager.addEvent({
@@ -467,12 +543,12 @@ class FormoAnalytics {
467
543
  callback
468
544
  }, this.currentAddress, this.currentUserId);
469
545
  } catch (error) {
470
- _logger.logger.error("Error tracking event:", error);
546
+ _index4.logger.error("Error tracking event:", error);
471
547
  if (this.options.errorHandler) {
472
548
  try {
473
549
  this.options.errorHandler(error instanceof Error ? error : new Error(String(error)));
474
550
  } catch (handlerError) {
475
- _logger.logger.error("Error in errorHandler callback:", handlerError);
551
+ _index4.logger.error("Error in errorHandler callback:", handlerError);
476
552
  }
477
553
  }
478
554
  }
@@ -508,11 +584,14 @@ class FormoAnalytics {
508
584
  }
509
585
 
510
586
  /**
511
- * Validate and checksum address
587
+ * Validate and normalize an address for the given chain.
588
+ *
589
+ * EVM addresses are returned in EIP-55 checksum format.
590
+ * Solana addresses are returned as-is (Base58 is case-sensitive).
591
+ * When chainId is omitted, EVM is tried first with Solana as fallback.
512
592
  */
513
- validateAndChecksumAddress(address) {
514
- const validAddress = (0, _utils.getValidAddress)(address);
515
- return validAddress ? (0, _utils.toChecksumAddress)(validAddress) : undefined;
593
+ validateAndChecksumAddress(address, chainId) {
594
+ return (0, _index9.validateAddress)(address, chainId);
516
595
  }
517
596
 
518
597
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_storage","_event","_logger","_consent","_session","_wagmi","_lifecycle","_utils","_trafficSource","FormoAnalytics","currentUserId","constructor","writeKey","options","config","session","FormoAnalyticsSession","storage","get","SESSION_USER_ID_KEY","undefined","identify","bind","connect","disconnect","chain","signature","transaction","detect","track","screen","isAutocaptureEnabled","Logger","init","enabled","logger","enabledLevels","levels","eventQueue","EventQueue","apiHost","EVENTS_API_HOST","flushAt","retryCount","maxQueueSize","flushInterval","eventManager","EventManager","hasOptedOutTracking","info","wagmi","wagmiHandler","WagmiEventHandler","queryClient","warn","asyncStorage","storageManager","initStorageManager","initialize","analytics","lifecycleManager","AppLifecycleManager","start","app","error","ready","name","category","properties","context","callback","trackEvent","EventType","SCREEN","setTrafficSourceFromUrl","url","trafficSource","parseTrafficSource","referral","queryParams","pathPattern","storeTrafficSource","debug","reset","remove","LOCAL_ANONYMOUS_ID_KEY","clear","cleanup","chainId","address","Number","checksummedAddress","validateAndChecksumAddress","CONNECT","currentChainId","currentAddress","params","DISCONNECT","isNaN","CHAIN","status","message","signatureHash","SIGNATURE","data","to","value","transactionHash","function_name","function_args","TRANSACTION","userId","providerName","rdns","validAddress","set","isAlreadyIdentified","isWalletIdentified","markWalletIdentified","IDENTIFY","e","log","isWalletDetected","markWalletDetected","DETECT","event","TRACK","optOutTracking","setConsentFlag","CONSENT_OPT_OUT_KEY","optInTracking","removeConsentFlag","getConsentFlag","eventType","autocapture","eventConfig","type","payload","shouldTrack","addEvent","errorHandler","Error","String","handlerError","tracking","Array","isArray","excludeChains","length","includes","getValidAddress","toChecksumAddress","flush","exports"],"sourceRoot":"../../src","sources":["FormoAnalytics.ts"],"mappings":";;;;;;AAMA,IAAAA,UAAA,GAAAC,OAAA;AAQA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAKA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAaA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AAtCA;AACA;AACA;AACA;AACA;;AAoCO,MAAMU,cAAc,CAA4B;EAUrDC,aAAa,GAAY,EAAE;EAEnBC,WAAWA,CACDC,QAAgB,EACzBC,OAAgB,GAAG,CAAC,CAAC,EAC5B;IAAA,KAFgBD,QAAgB,GAAhBA,QAAgB;IAAA,KACzBC,OAAgB,GAAhBA,OAAgB;IAEvB,IAAI,CAACC,MAAM,GAAG;MAAEF;IAAS,CAAC;IAE1B,IAAI,CAACG,OAAO,GAAG,IAAIC,8BAAqB,CAAC,CAAC;IAC1C,IAAI,CAACN,aAAa,GACf,IAAAO,gBAAO,EAAC,CAAC,CAACC,GAAG,CAACC,8BAAmB,CAAC,IAAeC,SAAS;;IAE7D;IACA,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAACC,IAAI,CAAC,IAAI,CAAC;IACxC,IAAI,CAACC,OAAO,GAAG,IAAI,CAACA,OAAO,CAACD,IAAI,CAAC,IAAI,CAAC;IACtC,IAAI,CAACE,UAAU,GAAG,IAAI,CAACA,UAAU,CAACF,IAAI,CAAC,IAAI,CAAC;IAC5C,IAAI,CAACG,KAAK,GAAG,IAAI,CAACA,KAAK,CAACH,IAAI,CAAC,IAAI,CAAC;IAClC,IAAI,CAACI,SAAS,GAAG,IAAI,CAACA,SAAS,CAACJ,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACK,WAAW,GAAG,IAAI,CAACA,WAAW,CAACL,IAAI,CAAC,IAAI,CAAC;IAC9C,IAAI,CAACM,MAAM,GAAG,IAAI,CAACA,MAAM,CAACN,IAAI,CAAC,IAAI,CAAC;IACpC,IAAI,CAACO,KAAK,GAAG,IAAI,CAACA,KAAK,CAACP,IAAI,CAAC,IAAI,CAAC;IAClC,IAAI,CAACQ,MAAM,GAAG,IAAI,CAACA,MAAM,CAACR,IAAI,CAAC,IAAI,CAAC;IACpC,IAAI,CAACS,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACT,IAAI,CAAC,IAAI,CAAC;;IAEhE;IACAU,cAAM,CAACC,IAAI,CAAC;MACVC,OAAO,EAAErB,OAAO,CAACsB,MAAM,EAAED,OAAO,IAAI,KAAK;MACzCE,aAAa,EAAEvB,OAAO,CAACsB,MAAM,EAAEE,MAAM,IAAI;IAC3C,CAAC,CAAC;;IAEF;IACA,IAAI,CAACC,UAAU,GAAG,IAAIC,iBAAU,CAAC,IAAI,CAACzB,MAAM,CAACF,QAAQ,EAAE;MACrD4B,OAAO,EAAE3B,OAAO,CAAC2B,OAAO,IAAIC,0BAAe;MAC3CC,OAAO,EAAE7B,OAAO,CAAC6B,OAAO;MACxBC,UAAU,EAAE9B,OAAO,CAAC8B,UAAU;MAC9BC,YAAY,EAAE/B,OAAO,CAAC+B,YAAY;MAClCC,aAAa,EAAEhC,OAAO,CAACgC;IACzB,CAAC,CAAC;;IAEF;IACA,IAAI,CAACC,YAAY,GAAG,IAAIC,mBAAY,CAAC,IAAI,CAACT,UAAU,EAAEzB,OAAO,CAAC;;IAE9D;IACA,IAAI,IAAI,CAACmC,mBAAmB,CAAC,CAAC,EAAE;MAC9Bb,cAAM,CAACc,IAAI,CAAC,2CAA2C,CAAC;IAC1D;;IAEA;IACA,IAAIpC,OAAO,CAACqC,KAAK,EAAEpC,MAAM,EAAE;MACzBqB,cAAM,CAACc,IAAI,CAAC,4CAA4C,CAAC;MACzD,IAAI,CAACE,YAAY,GAAG,IAAIC,wBAAiB,CACvC,IAAI,EACJvC,OAAO,CAACqC,KAAK,CAACpC,MAAM,EACpBD,OAAO,CAACqC,KAAK,CAACG,WAChB,CAAC;IACH,CAAC,MAAM,IAAIxC,OAAO,CAACqC,KAAK,EAAE;MACxBf,cAAM,CAACmB,IAAI,CAAC,6DAA6D,CAAC;IAC5E;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,aAAarB,IAAIA,CACfrB,QAAgB,EAChBC,OAAiB,EACjB0C,YAAoC,EACX;IACzB,MAAMC,cAAc,GAAG,IAAAC,2BAAkB,EAAC7C,QAAQ,CAAC;;IAEnD;IACA,IAAI2C,YAAY,EAAE;MAChB,MAAMC,cAAc,CAACE,UAAU,CAACH,YAAY,CAAC;IAC/C;IAEA,MAAMI,SAAS,GAAG,IAAIlD,cAAc,CAACG,QAAQ,EAAEC,OAAO,CAAC;;IAEvD;IACA;IACA,IAAI8C,SAAS,CAAC5B,oBAAoB,CAAC,WAAW,CAAC,EAAE;MAC/C,IAAI;QACF4B,SAAS,CAACC,gBAAgB,GAAG,IAAIC,8BAAmB,CAACF,SAAS,CAAC;QAC/D,MAAMA,SAAS,CAACC,gBAAgB,CAACE,KAAK,CAACjD,OAAO,EAAEkD,GAAG,CAAC;MACtD,CAAC,CAAC,OAAOC,KAAK,EAAE;QACd7B,cAAM,CAAC6B,KAAK,CAAC,yDAAyD,EAAEA,KAAK,CAAC;MAChF;IACF;;IAEA;IACA,IAAInD,OAAO,EAAEoD,KAAK,EAAE;MAClBpD,OAAO,CAACoD,KAAK,CAACN,SAAS,CAAC;IAC1B;IAEA,OAAOA,SAAS;EAClB;;EAEA;AACF;AACA;EACE,MAAa7B,MAAMA,CACjBoC,IAAY,EACZC,QAAiB,EACjBC,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf;IACA,MAAM,IAAI,CAACC,UAAU,CACnBC,oBAAS,CAACC,MAAM,EAChB;MAAEP,IAAI;MAAE,IAAIC,QAAQ,IAAI;QAAEA;MAAS,CAAC;IAAE,CAAC,EACvCC,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACSI,uBAAuBA,CAACC,GAAW,EAAQ;IAChD,MAAMC,aAAa,GAAG,IAAAC,iCAAkB,EACtCF,GAAG,EACH,IAAI,CAAC9D,OAAO,CAACiE,QAAQ,EAAEC,WAAW,EAClC,IAAI,CAAClE,OAAO,CAACiE,QAAQ,EAAEE,WACzB,CAAC;IACD,IAAAC,iCAAkB,EAACL,aAAa,CAAC;IACjCzC,cAAM,CAAC+C,KAAK,CAAC,8BAA8B,EAAEN,aAAa,CAAC;EAC7D;;EAEA;AACF;AACA;EACSO,KAAKA,CAAA,EAAS;IACnB,IAAI,CAACzE,aAAa,GAAGU,SAAS;IAC9B,IAAAH,gBAAO,EAAC,CAAC,CAACmE,MAAM,CAACC,iCAAsB,CAAC;IACxC,IAAApE,gBAAO,EAAC,CAAC,CAACmE,MAAM,CAACjE,8BAAmB,CAAC;IACrC,IAAI,CAACJ,OAAO,CAACuE,KAAK,CAAC,CAAC;EACtB;;EAEA;AACF;AACA;EACE,MAAaC,OAAOA,CAAA,EAAkB;IACpCpD,cAAM,CAACc,IAAI,CAAC,uCAAuC,CAAC;IAEpD,IAAI,IAAI,CAACW,gBAAgB,EAAE;MACzB,IAAI,CAACA,gBAAgB,CAAC2B,OAAO,CAAC,CAAC;MAC/B,IAAI,CAAC3B,gBAAgB,GAAGxC,SAAS;IACnC;IAEA,IAAI,IAAI,CAAC+B,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACoC,OAAO,CAAC,CAAC;MAC3B,IAAI,CAACpC,YAAY,GAAG/B,SAAS;IAC/B;IAEA,IAAI,IAAI,CAACkB,UAAU,EAAE;MACnB,MAAM,IAAI,CAACA,UAAU,CAACiD,OAAO,CAAC,CAAC;IACjC;IAEApD,cAAM,CAACc,IAAI,CAAC,kCAAkC,CAAC;EACjD;;EAEA;AACF;AACA;EACE,MAAM1B,OAAOA,CACX;IAAEiE,OAAO;IAAEC;EAAgD,CAAC,EAC5DrB,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAIkB,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAKpE,SAAS,IAAIsE,MAAM,CAACF,OAAO,CAAC,KAAK,CAAC,EAAE;MACtErD,cAAM,CAACmB,IAAI,CAAC,mDAAmD,CAAC;MAChE;IACF;IACA,IAAI,CAACmC,OAAO,EAAE;MACZtD,cAAM,CAACmB,IAAI,CAAC,kCAAkC,CAAC;MAC/C;IACF;IAEA,MAAMqC,kBAAkB,GAAG,IAAI,CAACC,0BAA0B,CAACH,OAAO,CAAC;IACnE,IAAI,CAACE,kBAAkB,EAAE;MACvBxD,cAAM,CAACmB,IAAI,CAAC,uCAAuCmC,OAAO,IAAI,CAAC;MAC/D;IACF;;IAEA;IACA,MAAM,IAAI,CAAClB,UAAU,CACnBC,oBAAS,CAACqB,OAAO,EACjB;MAAEL,OAAO;MAAEC,OAAO,EAAEE;IAAmB,CAAC,EACxCvB,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;IAED,IAAI,CAACwB,cAAc,GAAGN,OAAO;IAC7B,IAAI,CAACO,cAAc,GAAGJ,kBAAkB;EAC1C;;EAEA;AACF;AACA;EACE,MAAMnE,UAAUA,CACdwE,MAAiD,EACjD5B,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,MAAMkB,OAAO,GAAGQ,MAAM,EAAER,OAAO,IAAI,IAAI,CAACM,cAAc;IACtD,MAAML,OAAO,GAAGO,MAAM,EAAEP,OAAO,IAAI,IAAI,CAACM,cAAc;IAEtD5D,cAAM,CAACc,IAAI,CAAC,6CAA6C,EAAE;MACzDuC,OAAO;MACPC;IACF,CAAC,CAAC;IAEF,MAAM,IAAI,CAAClB,UAAU,CACnBC,oBAAS,CAACyB,UAAU,EACpB;MACE,IAAIT,OAAO,IAAI;QAAEA;MAAQ,CAAC,CAAC;MAC3B,IAAIC,OAAO,IAAI;QAAEA;MAAQ,CAAC;IAC5B,CAAC,EACDrB,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;IAED,IAAI,CAACyB,cAAc,GAAG3E,SAAS;IAC/B,IAAI,CAAC0E,cAAc,GAAG1E,SAAS;EACjC;;EAEA;AACF;AACA;EACE,MAAMK,KAAKA,CACT;IAAE+D,OAAO;IAAEC;EAAiD,CAAC,EAC7DrB,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAI,CAACkB,OAAO,IAAIE,MAAM,CAACF,OAAO,CAAC,KAAK,CAAC,EAAE;MACrCrD,cAAM,CAACmB,IAAI,CAAC,qDAAqD,CAAC;MAClE;IACF;IACA,IAAI4C,KAAK,CAACR,MAAM,CAACF,OAAO,CAAC,CAAC,EAAE;MAC1BrD,cAAM,CAACmB,IAAI,CAAC,uDAAuD,CAAC;MACpE;IACF;IACA,IAAI,CAACmC,OAAO,IAAI,CAAC,IAAI,CAACM,cAAc,EAAE;MACpC5D,cAAM,CAACmB,IAAI,CAAC,2EAA2E,CAAC;MACxF;IACF;;IAEA;IACA;IACA,MAAM,IAAI,CAACiB,UAAU,CACnBC,oBAAS,CAAC2B,KAAK,EACf;MAAEX,OAAO;MAAEC,OAAO,EAAEA,OAAO,IAAI,IAAI,CAACM;IAAe,CAAC,EACpD3B,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;IAED,IAAI,CAACwB,cAAc,GAAGN,OAAO;EAC/B;;EAEA;AACF;AACA;EACE,MAAM9D,SAASA,CACb;IACE0E,MAAM;IACNZ,OAAO;IACPC,OAAO;IACPY,OAAO;IACPC;EAOF,CAAC,EACDlC,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAI,CAACmB,OAAO,EAAE;MACZtD,cAAM,CAACmB,IAAI,CAAC,oCAAoC,CAAC;MACjD;IACF;IACA,MAAM,IAAI,CAACiB,UAAU,CACnBC,oBAAS,CAAC+B,SAAS,EACnB;MACEH,MAAM;MACN,IAAIZ,OAAO,KAAKpE,SAAS,IAAIoE,OAAO,KAAK,IAAI,IAAI;QAAEA;MAAQ,CAAC,CAAC;MAC7DC,OAAO;MACPY,OAAO;MACP,IAAIC,aAAa,IAAI;QAAEA;MAAc,CAAC;IACxC,CAAC,EACDlC,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAM3C,WAAWA,CACf;IACEyE,MAAM;IACNZ,OAAO;IACPC,OAAO;IACPe,IAAI;IACJC,EAAE;IACFC,KAAK;IACLC,eAAe;IACfC,aAAa;IACbC;EAWF,CAAC,EACDzC,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAIkB,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAKpE,SAAS,IAAIsE,MAAM,CAACF,OAAO,CAAC,KAAK,CAAC,EAAE;MACtErD,cAAM,CAACmB,IAAI,CAAC,uDAAuD,CAAC;MACpE;IACF;IACA,IAAI,CAACmC,OAAO,EAAE;MACZtD,cAAM,CAACmB,IAAI,CAAC,sCAAsC,CAAC;MACnD;IACF;IACA,MAAM,IAAI,CAACiB,UAAU,CACnBC,oBAAS,CAACsC,WAAW,EACrB;MACEV,MAAM;MACNZ,OAAO;MACPC,OAAO;MACPe,IAAI;MACJC,EAAE;MACFC,KAAK;MACL,IAAIC,eAAe,IAAI;QAAEA;MAAgB,CAAC,CAAC;MAC3C,IAAIC,aAAa,IAAI;QAAEA;MAAc,CAAC,CAAC;MACvC,IAAIC,aAAa,IAAI;QAAEA;MAAc,CAAC;IACxC,CAAC,EACDzC,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMjD,QAAQA,CACZ2E,MAKC,EACD5B,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAI;MACF,MAAM;QAAEyC,MAAM;QAAEtB,OAAO;QAAEuB,YAAY;QAAEC;MAAK,CAAC,GAAGjB,MAAM;MACtD7D,cAAM,CAACc,IAAI,CAAC,UAAU,EAAEwC,OAAO,EAAEsB,MAAM,EAAEC,YAAY,EAAEC,IAAI,CAAC;MAE5D,IAAIC,YAAiC,GAAG9F,SAAS;MACjD,IAAIqE,OAAO,EAAE;QACXyB,YAAY,GAAG,IAAI,CAACtB,0BAA0B,CAACH,OAAO,CAAC;QACvD,IAAI,CAACyB,YAAY,EAAE;UACjB/E,cAAM,CAACmB,IAAI,CAAC,wCAAwCmC,OAAO,IAAI,CAAC;UAChE;QACF;QACA,IAAI,CAACM,cAAc,GAAGmB,YAAY;MACpC,CAAC,MAAM;QACL,IAAI,CAACnB,cAAc,GAAG3E,SAAS;MACjC;MAEA,IAAI2F,MAAM,EAAE;QACV,IAAI,CAACrG,aAAa,GAAGqG,MAAM;QAC3B,IAAA9F,gBAAO,EAAC,CAAC,CAACkG,GAAG,CAAChG,8BAAmB,EAAE4F,MAAM,CAAC;MAC5C;;MAEA;MACA,MAAMK,mBAAmB,GAAGF,YAAY,GACpC,IAAI,CAACnG,OAAO,CAACsG,kBAAkB,CAACH,YAAY,EAAED,IAAI,IAAI,EAAE,CAAC,GACzD,KAAK;MAET,IAAIG,mBAAmB,EAAE;QACvBjF,cAAM,CAACc,IAAI,CACT,oBAAoB+D,YAAY,IAAI,SAAS,iBAAiBE,YAAY,qBAC5E,CAAC;QACD;MACF;;MAEA;MACA,IAAIA,YAAY,EAAE;QAChB,IAAI,CAACnG,OAAO,CAACuG,oBAAoB,CAACJ,YAAY,EAAED,IAAI,IAAI,EAAE,CAAC;MAC7D;MAEA,MAAM,IAAI,CAAC1C,UAAU,CACnBC,oBAAS,CAAC+C,QAAQ,EAClB;QAAE9B,OAAO,EAAEyB,YAAY;QAAEF,YAAY;QAAED,MAAM;QAAEE;MAAK,CAAC,EACrD7C,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;IACH,CAAC,CAAC,OAAOkD,CAAC,EAAE;MACVrF,cAAM,CAACsF,GAAG,CAAC,gBAAgB,EAAED,CAAC,CAAC;IACjC;EACF;;EAEA;AACF;AACA;EACE,MAAM5F,MAAMA,CACV;IAAEoF,YAAY;IAAEC;EAA6C,CAAC,EAC9D7C,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAI,IAAI,CAACvD,OAAO,CAAC2G,gBAAgB,CAACT,IAAI,CAAC,EAAE;MACvC9E,cAAM,CAACmB,IAAI,CAAC,kBAAkB0D,YAAY,mCAAmC,CAAC;MAC9E;IACF;IAEA,IAAI,CAACjG,OAAO,CAAC4G,kBAAkB,CAACV,IAAI,CAAC;IACrC,MAAM,IAAI,CAAC1C,UAAU,CACnBC,oBAAS,CAACoD,MAAM,EAChB;MAAEZ,YAAY;MAAEC;IAAK,CAAC,EACtB7C,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMzC,KAAKA,CACTgG,KAAa,EACbzD,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,MAAM,IAAI,CAACC,UAAU,CACnBC,oBAAS,CAACsD,KAAK,EACf;MAAED;IAAM,CAAC,EACTzD,UAAU,EACVC,OAAO,EACPC,QACF,CAAC;EACH;;EAEA;AACF;AACA;EACSyD,cAAcA,CAAA,EAAS;IAC5B5F,cAAM,CAACc,IAAI,CAAC,wBAAwB,CAAC;IACrC,IAAA+E,uBAAc,EAAC,IAAI,CAACpH,QAAQ,EAAEqH,8BAAmB,EAAE,MAAM,CAAC;IAC1D,IAAI,CAAC3F,UAAU,CAACgD,KAAK,CAAC,CAAC;IACvB,IAAI,CAACH,KAAK,CAAC,CAAC;IACZhD,cAAM,CAACc,IAAI,CAAC,oCAAoC,CAAC;EACnD;;EAEA;AACF;AACA;EACSiF,aAAaA,CAAA,EAAS;IAC3B/F,cAAM,CAACc,IAAI,CAAC,2BAA2B,CAAC;IACxC,IAAAkF,0BAAiB,EAAC,IAAI,CAACvH,QAAQ,EAAEqH,8BAAmB,CAAC;IACrD9F,cAAM,CAACc,IAAI,CAAC,uCAAuC,CAAC;EACtD;;EAEA;AACF;AACA;EACSD,mBAAmBA,CAAA,EAAY;IACpC,OAAO,IAAAoF,uBAAc,EAAC,IAAI,CAACxH,QAAQ,EAAEqH,8BAAmB,CAAC,KAAK,MAAM;EACtE;;EAEA;AACF;AACA;EACSlG,oBAAoBA,CACzBsG,SAAyF,EAChF;IACT,IAAI,IAAI,CAACxH,OAAO,CAACyH,WAAW,KAAKlH,SAAS,EAAE;MAC1C,OAAO,IAAI;IACb;IAEA,IAAI,OAAO,IAAI,CAACP,OAAO,CAACyH,WAAW,KAAK,SAAS,EAAE;MACjD,OAAO,IAAI,CAACzH,OAAO,CAACyH,WAAW;IACjC;IAEA,IACE,IAAI,CAACzH,OAAO,CAACyH,WAAW,KAAK,IAAI,IACjC,OAAO,IAAI,CAACzH,OAAO,CAACyH,WAAW,KAAK,QAAQ,EAC5C;MACA,MAAMC,WAAW,GAAG,IAAI,CAAC1H,OAAO,CAACyH,WAAW,CAACD,SAAS,CAAC;MACvD,OAAOE,WAAW,KAAK,KAAK;IAC9B;IAEA,OAAO,IAAI;EACb;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAchE,UAAUA,CACtBiE,IAAgB,EAChBC,OAAiC,EACjCrE,UAAkC,EAClCC,OAA4B,EAC5BC,QAAuC,EACxB;IACf,IAAI;MACF,IAAI,CAAC,IAAI,CAACoE,WAAW,CAAC,CAAC,EAAE;QACvBvG,cAAM,CAACc,IAAI,CAAC,YAAYuF,IAAI,sCAAsC,CAAC;QACnE;MACF;MAEA,MAAM,IAAI,CAAC1F,YAAY,CAAC6F,QAAQ,CAC9B;QACEH,IAAI;QACJ,GAAGC,OAAO;QACVrE,UAAU;QACVC,OAAO;QACPC;MACF,CAAC,EACD,IAAI,CAACyB,cAAc,EACnB,IAAI,CAACrF,aACP,CAAC;IACH,CAAC,CAAC,OAAOsD,KAAK,EAAE;MACd7B,cAAM,CAAC6B,KAAK,CAAC,uBAAuB,EAAEA,KAAK,CAAC;MAC5C,IAAI,IAAI,CAACnD,OAAO,CAAC+H,YAAY,EAAE;QAC7B,IAAI;UACF,IAAI,CAAC/H,OAAO,CAAC+H,YAAY,CAAC5E,KAAK,YAAY6E,KAAK,GAAG7E,KAAK,GAAG,IAAI6E,KAAK,CAACC,MAAM,CAAC9E,KAAK,CAAC,CAAC,CAAC;QACtF,CAAC,CAAC,OAAO+E,YAAY,EAAE;UACrB5G,cAAM,CAAC6B,KAAK,CAAC,iCAAiC,EAAE+E,YAAY,CAAC;QAC/D;MACF;IACF;EACF;;EAEA;AACF;AACA;EACUL,WAAWA,CAAA,EAAY;IAC7B;IACA,IAAI,IAAI,CAAC1F,mBAAmB,CAAC,CAAC,EAAE;MAC9B,OAAO,KAAK;IACd;;IAEA;IACA,IAAI,OAAO,IAAI,CAACnC,OAAO,CAACmI,QAAQ,KAAK,SAAS,EAAE;MAC9C,OAAO,IAAI,CAACnI,OAAO,CAACmI,QAAQ;IAC9B;;IAEA;IACA,IACE,IAAI,CAACnI,OAAO,CAACmI,QAAQ,KAAK,IAAI,IAC9B,OAAO,IAAI,CAACnI,OAAO,CAACmI,QAAQ,KAAK,QAAQ,IACzC,CAACC,KAAK,CAACC,OAAO,CAAC,IAAI,CAACrI,OAAO,CAACmI,QAAQ,CAAC,EACrC;MACA,MAAM;QAAEG,aAAa,GAAG;MAAG,CAAC,GAAG,IAAI,CAACtI,OAAO,CAACmI,QAA2B;MAEvE,IACEG,aAAa,CAACC,MAAM,GAAG,CAAC,IACxB,IAAI,CAACtD,cAAc,IACnBqD,aAAa,CAACE,QAAQ,CAAC,IAAI,CAACvD,cAAc,CAAC,EAC3C;QACA,OAAO,KAAK;MACd;MAEA,OAAO,IAAI;IACb;;IAEA;IACA,OAAO,IAAI;EACb;;EAEA;AACF;AACA;EACUF,0BAA0BA,CAACH,OAAe,EAAuB;IACvE,MAAMyB,YAAY,GAAG,IAAAoC,sBAAe,EAAC7D,OAAO,CAAC;IAC7C,OAAOyB,YAAY,GAAG,IAAAqC,wBAAiB,EAACrC,YAAY,CAAC,GAAG9F,SAAS;EACnE;;EAEA;AACF;AACA;EACE,MAAaoI,KAAKA,CAAA,EAAkB;IAClC,MAAM,IAAI,CAAClH,UAAU,CAACkH,KAAK,CAAC,CAAC;EAC/B;AACF;AAACC,OAAA,CAAAhJ,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_index","require","_index2","_index3","_index4","_index5","_index6","_index7","_index8","_index9","_trafficSource","_index0","_reactNative","FormoAnalytics","currentUserId","constructor","writeKey","options","config","session","FormoAnalyticsSession","storage","get","SESSION_USER_ID_KEY","undefined","identify","bind","connect","disconnect","chain","signature","transaction","detect","track","screen","isAutocaptureEnabled","Logger","init","enabled","logger","enabledLevels","levels","eventQueue","EventQueue","apiHost","EVENTS_API_HOST","flushAt","retryCount","maxQueueSize","flushInterval","eventManager","EventManager","hasOptedOutTracking","info","wagmi","wagmiHandler","WagmiEventHandler","queryClient","warn","asyncStorage","storageManager","initStorageManager","initialize","analytics","isAttributionEnabled","startDeepLinkCapture","error","captureInstallReferrer","customRefParams","referral","queryParams","pathPattern","debug","lifecycleManager","AppLifecycleManager","start","app","ready","url","Linking","getInitialURL","setTrafficSourceFromUrl","linkingSubscription","addEventListener","event","name","category","properties","context","callback","trackEvent","EventType","SCREEN","trafficSource","parseTrafficSource","updateStoredTrafficSource","reset","remove","LOCAL_ANONYMOUS_ID_KEY","LOCAL_SESSION_ID_KEY","LOCAL_SESSION_LAST_ACTIVITY_KEY","clear","cleanup","chainId","address","Number","validatedAddress","validateAndChecksumAddress","CONNECT","currentChainId","currentAddress","params","DISCONNECT","isNaN","CHAIN","status","message","SIGNATURE","data","to","value","transactionHash","function_name","function_args","TRANSACTION","userId","providerName","rdns","validAddress","set","isAlreadyIdentified","isWalletIdentified","markWalletIdentified","IDENTIFY","e","log","isWalletDetected","markWalletDetected","DETECT","TRACK","optOutTracking","setConsentFlag","CONSENT_OPT_OUT_KEY","optInTracking","removeConsentFlag","getConsentFlag","eventType","autocapture","eventConfig","source","attribution","type","payload","shouldTrack","addEvent","errorHandler","Error","String","handlerError","tracking","Array","isArray","excludeChains","length","includes","validateAddress","flush","exports"],"sourceRoot":"../../src","sources":["FormoAnalytics.ts"],"mappings":"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","ignoreList":[]}