@amplitude/analytics-core 2.5.6 → 2.6.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 (389) hide show
  1. package/lib/cjs/analytics-connector.d.ts +5 -0
  2. package/lib/cjs/analytics-connector.d.ts.map +1 -0
  3. package/lib/cjs/analytics-connector.js +20 -0
  4. package/lib/cjs/analytics-connector.js.map +1 -0
  5. package/lib/cjs/config.d.ts +107 -3
  6. package/lib/cjs/config.d.ts.map +1 -1
  7. package/lib/cjs/config.js +3 -3
  8. package/lib/cjs/config.js.map +1 -1
  9. package/lib/cjs/cookie-name.d.ts +3 -0
  10. package/lib/cjs/cookie-name.d.ts.map +1 -0
  11. package/lib/cjs/cookie-name.js +15 -0
  12. package/lib/cjs/cookie-name.js.map +1 -0
  13. package/lib/cjs/core-client.d.ts +154 -14
  14. package/lib/cjs/core-client.d.ts.map +1 -1
  15. package/lib/cjs/core-client.js +1 -1
  16. package/lib/cjs/core-client.js.map +1 -1
  17. package/lib/cjs/event-bridge/event-bridge-channel.d.ts +4 -3
  18. package/lib/cjs/event-bridge/event-bridge-channel.d.ts.map +1 -1
  19. package/lib/cjs/event-bridge/event-bridge-channel.js.map +1 -1
  20. package/lib/cjs/event-bridge/event-bridge-container.d.ts +1 -1
  21. package/lib/cjs/event-bridge/event-bridge-container.d.ts.map +1 -1
  22. package/lib/cjs/event-bridge/event-bridge-container.js.map +1 -1
  23. package/lib/cjs/event-bridge/event-bridge.d.ts +9 -2
  24. package/lib/cjs/event-bridge/event-bridge.d.ts.map +1 -1
  25. package/lib/cjs/event-bridge/event-bridge.js.map +1 -1
  26. package/lib/cjs/global-scope.d.ts +2 -0
  27. package/lib/cjs/global-scope.d.ts.map +1 -0
  28. package/lib/cjs/global-scope.js +28 -0
  29. package/lib/cjs/global-scope.js.map +1 -0
  30. package/lib/cjs/identify.d.ts +48 -1
  31. package/lib/cjs/identify.d.ts.map +1 -1
  32. package/lib/cjs/identify.js +32 -16
  33. package/lib/cjs/identify.js.map +1 -1
  34. package/lib/cjs/index.d.ts +37 -8
  35. package/lib/cjs/index.d.ts.map +1 -1
  36. package/lib/cjs/index.js +39 -6
  37. package/lib/cjs/index.js.map +1 -1
  38. package/lib/cjs/language.d.ts +2 -0
  39. package/lib/cjs/language.d.ts.map +1 -0
  40. package/lib/cjs/language.js +13 -0
  41. package/lib/cjs/language.js.map +1 -0
  42. package/lib/cjs/logger.d.ts +27 -1
  43. package/lib/cjs/logger.d.ts.map +1 -1
  44. package/lib/cjs/logger.js +8 -8
  45. package/lib/cjs/logger.js.map +1 -1
  46. package/lib/cjs/plugins/destination.d.ts +14 -3
  47. package/lib/cjs/plugins/destination.d.ts.map +1 -1
  48. package/lib/cjs/plugins/destination.js +8 -8
  49. package/lib/cjs/plugins/destination.js.map +1 -1
  50. package/lib/cjs/plugins/identity.d.ts +11 -0
  51. package/lib/cjs/plugins/identity.d.ts.map +1 -0
  52. package/lib/cjs/plugins/identity.js +37 -0
  53. package/lib/cjs/plugins/identity.js.map +1 -0
  54. package/lib/cjs/query-params.d.ts +3 -0
  55. package/lib/cjs/query-params.d.ts.map +1 -0
  56. package/lib/cjs/query-params.js +36 -0
  57. package/lib/cjs/query-params.js.map +1 -0
  58. package/lib/cjs/revenue.d.ts +43 -1
  59. package/lib/cjs/revenue.d.ts.map +1 -1
  60. package/lib/cjs/revenue.js +28 -8
  61. package/lib/cjs/revenue.js.map +1 -1
  62. package/lib/cjs/session.d.ts +2 -0
  63. package/lib/cjs/session.d.ts.map +1 -0
  64. package/lib/cjs/session.js +11 -0
  65. package/lib/cjs/session.js.map +1 -0
  66. package/lib/cjs/storage/cookie.d.ts +13 -0
  67. package/lib/cjs/storage/cookie.d.ts.map +1 -0
  68. package/lib/cjs/storage/cookie.js +172 -0
  69. package/lib/cjs/storage/cookie.js.map +1 -0
  70. package/lib/cjs/storage/helpers.d.ts +2 -0
  71. package/lib/cjs/storage/helpers.d.ts.map +1 -0
  72. package/lib/cjs/storage/helpers.js +11 -0
  73. package/lib/cjs/storage/helpers.js.map +1 -0
  74. package/lib/cjs/storage/memory.d.ts +1 -1
  75. package/lib/cjs/storage/memory.d.ts.map +1 -1
  76. package/lib/cjs/storage/memory.js.map +1 -1
  77. package/lib/cjs/timeline.d.ts +8 -3
  78. package/lib/cjs/timeline.d.ts.map +1 -1
  79. package/lib/cjs/timeline.js.map +1 -1
  80. package/lib/cjs/transports/base.d.ts +4 -1
  81. package/lib/cjs/transports/base.d.ts.map +1 -1
  82. package/lib/cjs/transports/base.js +13 -16
  83. package/lib/cjs/transports/base.js.map +1 -1
  84. package/lib/cjs/transports/fetch.d.ts +8 -0
  85. package/lib/cjs/transports/fetch.d.ts.map +1 -0
  86. package/lib/cjs/transports/fetch.js +50 -0
  87. package/lib/cjs/transports/fetch.js.map +1 -0
  88. package/lib/cjs/types/browser-client.d.ts +131 -0
  89. package/lib/cjs/types/browser-client.d.ts.map +1 -0
  90. package/lib/cjs/types/browser-client.js +3 -0
  91. package/lib/cjs/types/browser-client.js.map +1 -0
  92. package/lib/cjs/types/browser-config.d.ts +216 -0
  93. package/lib/cjs/types/browser-config.d.ts.map +1 -0
  94. package/lib/cjs/types/browser-config.js +3 -0
  95. package/lib/cjs/types/browser-config.js.map +1 -0
  96. package/lib/cjs/types/constants.d.ts.map +1 -0
  97. package/lib/cjs/types/constants.js.map +1 -0
  98. package/lib/cjs/types/element-interactions.d.ts +73 -0
  99. package/lib/cjs/types/element-interactions.d.ts.map +1 -0
  100. package/lib/cjs/types/element-interactions.js +34 -0
  101. package/lib/cjs/types/element-interactions.js.map +1 -0
  102. package/lib/cjs/types/event/base-event.d.ts +64 -0
  103. package/lib/cjs/types/event/base-event.d.ts.map +1 -0
  104. package/lib/cjs/types/event/base-event.js +3 -0
  105. package/lib/cjs/types/event/base-event.js.map +1 -0
  106. package/lib/cjs/types/event/event.d.ts +68 -0
  107. package/lib/cjs/types/event/event.d.ts.map +1 -0
  108. package/lib/cjs/types/event/event.js +31 -0
  109. package/lib/cjs/types/event/event.js.map +1 -0
  110. package/lib/cjs/types/event/ingestion-metadata.d.ts +19 -0
  111. package/lib/cjs/types/event/ingestion-metadata.d.ts.map +1 -0
  112. package/lib/cjs/types/event/ingestion-metadata.js +3 -0
  113. package/lib/cjs/types/event/ingestion-metadata.js.map +1 -0
  114. package/lib/cjs/types/event/plan.d.ts +14 -0
  115. package/lib/cjs/types/event/plan.d.ts.map +1 -0
  116. package/lib/cjs/types/event/plan.js +3 -0
  117. package/lib/cjs/types/event/plan.js.map +1 -0
  118. package/lib/cjs/types/event-callback.d.ts +3 -0
  119. package/lib/cjs/types/event-callback.d.ts.map +1 -0
  120. package/lib/cjs/types/event-callback.js +3 -0
  121. package/lib/cjs/types/event-callback.js.map +1 -0
  122. package/lib/cjs/types/loglevel.d.ts +8 -0
  123. package/lib/cjs/types/loglevel.d.ts.map +1 -0
  124. package/lib/cjs/types/loglevel.js +12 -0
  125. package/lib/cjs/types/loglevel.js.map +1 -0
  126. package/lib/cjs/types/messages.d.ts.map +1 -0
  127. package/lib/cjs/types/messages.js.map +1 -0
  128. package/lib/cjs/types/offline.d.ts +2 -0
  129. package/lib/cjs/types/offline.d.ts.map +1 -0
  130. package/lib/cjs/types/offline.js +5 -0
  131. package/lib/cjs/types/offline.js.map +1 -0
  132. package/lib/cjs/types/page-view-tracking.d.ts +9 -0
  133. package/lib/cjs/types/page-view-tracking.d.ts.map +1 -0
  134. package/lib/cjs/types/page-view-tracking.js +3 -0
  135. package/lib/cjs/types/page-view-tracking.js.map +1 -0
  136. package/lib/cjs/types/payload.d.ts +13 -0
  137. package/lib/cjs/types/payload.d.ts.map +1 -0
  138. package/lib/cjs/types/payload.js +3 -0
  139. package/lib/cjs/types/payload.js.map +1 -0
  140. package/lib/cjs/types/plugin.d.ts +30 -0
  141. package/lib/cjs/types/plugin.d.ts.map +1 -0
  142. package/lib/cjs/types/plugin.js +3 -0
  143. package/lib/cjs/types/plugin.js.map +1 -0
  144. package/lib/cjs/types/response.d.ts +81 -0
  145. package/lib/cjs/types/response.d.ts.map +1 -0
  146. package/lib/cjs/types/response.js +3 -0
  147. package/lib/cjs/types/response.js.map +1 -0
  148. package/lib/cjs/types/result.d.ts +7 -0
  149. package/lib/cjs/types/result.d.ts.map +1 -0
  150. package/lib/cjs/types/result.js +3 -0
  151. package/lib/cjs/types/result.js.map +1 -0
  152. package/lib/cjs/types/server-zone.d.ts +9 -0
  153. package/lib/cjs/types/server-zone.d.ts.map +1 -0
  154. package/lib/cjs/types/server-zone.js +12 -0
  155. package/lib/cjs/types/server-zone.js.map +1 -0
  156. package/lib/cjs/types/status.d.ts +22 -0
  157. package/lib/cjs/types/status.d.ts.map +1 -0
  158. package/lib/cjs/types/status.js +26 -0
  159. package/lib/cjs/types/status.js.map +1 -0
  160. package/lib/cjs/types/storage.d.ts +16 -0
  161. package/lib/cjs/types/storage.d.ts.map +1 -0
  162. package/lib/cjs/types/storage.js +3 -0
  163. package/lib/cjs/types/storage.js.map +1 -0
  164. package/lib/cjs/types/transport.d.ts +7 -0
  165. package/lib/cjs/types/transport.d.ts.map +1 -0
  166. package/lib/cjs/types/transport.js +3 -0
  167. package/lib/cjs/types/transport.js.map +1 -0
  168. package/lib/cjs/types/user-session.d.ts +11 -0
  169. package/lib/cjs/types/user-session.d.ts.map +1 -0
  170. package/lib/cjs/types/user-session.js +3 -0
  171. package/lib/cjs/types/user-session.js.map +1 -0
  172. package/lib/cjs/utils/debug.d.ts +1 -1
  173. package/lib/cjs/utils/debug.d.ts.map +1 -1
  174. package/lib/cjs/utils/debug.js +2 -6
  175. package/lib/cjs/utils/debug.js.map +1 -1
  176. package/lib/cjs/utils/event-builder.d.ts +5 -2
  177. package/lib/cjs/utils/event-builder.d.ts.map +1 -1
  178. package/lib/cjs/utils/event-builder.js +5 -5
  179. package/lib/cjs/utils/event-builder.js.map +1 -1
  180. package/lib/cjs/utils/result-builder.d.ts +2 -1
  181. package/lib/cjs/utils/result-builder.d.ts.map +1 -1
  182. package/lib/cjs/utils/result-builder.js +2 -2
  183. package/lib/cjs/utils/result-builder.js.map +1 -1
  184. package/lib/cjs/utils/return-wrapper.d.ts +3 -1
  185. package/lib/cjs/utils/return-wrapper.d.ts.map +1 -1
  186. package/lib/cjs/utils/return-wrapper.js.map +1 -1
  187. package/lib/esm/analytics-connector.d.ts +5 -0
  188. package/lib/esm/analytics-connector.d.ts.map +1 -0
  189. package/lib/esm/analytics-connector.js +14 -0
  190. package/lib/esm/analytics-connector.js.map +1 -0
  191. package/lib/esm/config.d.ts +107 -3
  192. package/lib/esm/config.d.ts.map +1 -1
  193. package/lib/esm/config.js +2 -2
  194. package/lib/esm/config.js.map +1 -1
  195. package/lib/esm/cookie-name.d.ts +3 -0
  196. package/lib/esm/cookie-name.d.ts.map +1 -0
  197. package/lib/esm/cookie-name.js +10 -0
  198. package/lib/esm/cookie-name.js.map +1 -0
  199. package/lib/esm/core-client.d.ts +154 -14
  200. package/lib/esm/core-client.d.ts.map +1 -1
  201. package/lib/esm/core-client.js +1 -1
  202. package/lib/esm/core-client.js.map +1 -1
  203. package/lib/esm/event-bridge/event-bridge-channel.d.ts +4 -3
  204. package/lib/esm/event-bridge/event-bridge-channel.d.ts.map +1 -1
  205. package/lib/esm/event-bridge/event-bridge-channel.js.map +1 -1
  206. package/lib/esm/event-bridge/event-bridge-container.d.ts +1 -1
  207. package/lib/esm/event-bridge/event-bridge-container.d.ts.map +1 -1
  208. package/lib/esm/event-bridge/event-bridge-container.js.map +1 -1
  209. package/lib/esm/event-bridge/event-bridge.d.ts +9 -2
  210. package/lib/esm/event-bridge/event-bridge.d.ts.map +1 -1
  211. package/lib/esm/event-bridge/event-bridge.js.map +1 -1
  212. package/lib/esm/global-scope.d.ts +2 -0
  213. package/lib/esm/global-scope.d.ts.map +1 -0
  214. package/lib/esm/global-scope.js +24 -0
  215. package/lib/esm/global-scope.js.map +1 -0
  216. package/lib/esm/identify.d.ts +48 -1
  217. package/lib/esm/identify.d.ts.map +1 -1
  218. package/lib/esm/identify.js +18 -2
  219. package/lib/esm/identify.js.map +1 -1
  220. package/lib/esm/index.d.ts +37 -8
  221. package/lib/esm/index.d.ts.map +1 -1
  222. package/lib/esm/index.js +16 -2
  223. package/lib/esm/index.js.map +1 -1
  224. package/lib/esm/language.d.ts +2 -0
  225. package/lib/esm/language.d.ts.map +1 -0
  226. package/lib/esm/language.js +9 -0
  227. package/lib/esm/language.js.map +1 -0
  228. package/lib/esm/logger.d.ts +27 -1
  229. package/lib/esm/logger.d.ts.map +1 -1
  230. package/lib/esm/logger.js +1 -1
  231. package/lib/esm/logger.js.map +1 -1
  232. package/lib/esm/plugins/destination.d.ts +14 -3
  233. package/lib/esm/plugins/destination.d.ts.map +1 -1
  234. package/lib/esm/plugins/destination.js +3 -3
  235. package/lib/esm/plugins/destination.js.map +1 -1
  236. package/lib/esm/plugins/identity.d.ts +11 -0
  237. package/lib/esm/plugins/identity.d.ts.map +1 -0
  238. package/lib/esm/plugins/identity.js +34 -0
  239. package/lib/esm/plugins/identity.js.map +1 -0
  240. package/lib/esm/query-params.d.ts +3 -0
  241. package/lib/esm/query-params.d.ts.map +1 -0
  242. package/lib/esm/query-params.js +31 -0
  243. package/lib/esm/query-params.js.map +1 -0
  244. package/lib/esm/revenue.d.ts +43 -1
  245. package/lib/esm/revenue.d.ts.map +1 -1
  246. package/lib/esm/revenue.js +21 -1
  247. package/lib/esm/revenue.js.map +1 -1
  248. package/lib/esm/session.d.ts +2 -0
  249. package/lib/esm/session.d.ts.map +1 -0
  250. package/lib/esm/session.js +7 -0
  251. package/lib/esm/session.js.map +1 -0
  252. package/lib/esm/storage/cookie.d.ts +13 -0
  253. package/lib/esm/storage/cookie.d.ts.map +1 -0
  254. package/lib/esm/storage/cookie.js +169 -0
  255. package/lib/esm/storage/cookie.js.map +1 -0
  256. package/lib/esm/storage/helpers.d.ts +2 -0
  257. package/lib/esm/storage/helpers.d.ts.map +1 -0
  258. package/lib/esm/storage/helpers.js +7 -0
  259. package/lib/esm/storage/helpers.js.map +1 -0
  260. package/lib/esm/storage/memory.d.ts +1 -1
  261. package/lib/esm/storage/memory.d.ts.map +1 -1
  262. package/lib/esm/storage/memory.js.map +1 -1
  263. package/lib/esm/timeline.d.ts +8 -3
  264. package/lib/esm/timeline.d.ts.map +1 -1
  265. package/lib/esm/timeline.js.map +1 -1
  266. package/lib/esm/transports/base.d.ts +4 -1
  267. package/lib/esm/transports/base.d.ts.map +1 -1
  268. package/lib/esm/transports/base.js +1 -4
  269. package/lib/esm/transports/base.js.map +1 -1
  270. package/lib/esm/transports/fetch.d.ts +8 -0
  271. package/lib/esm/transports/fetch.d.ts.map +1 -0
  272. package/lib/esm/transports/fetch.js +47 -0
  273. package/lib/esm/transports/fetch.js.map +1 -0
  274. package/lib/esm/types/browser-client.d.ts +131 -0
  275. package/lib/esm/types/browser-client.d.ts.map +1 -0
  276. package/lib/esm/types/browser-client.js +2 -0
  277. package/lib/esm/types/browser-client.js.map +1 -0
  278. package/lib/esm/types/browser-config.d.ts +216 -0
  279. package/lib/esm/types/browser-config.d.ts.map +1 -0
  280. package/lib/esm/types/browser-config.js +2 -0
  281. package/lib/esm/types/browser-config.js.map +1 -0
  282. package/lib/esm/types/constants.d.ts.map +1 -0
  283. package/lib/esm/types/constants.js.map +1 -0
  284. package/lib/esm/types/element-interactions.d.ts +73 -0
  285. package/lib/esm/types/element-interactions.d.ts.map +1 -0
  286. package/lib/esm/types/element-interactions.js +31 -0
  287. package/lib/esm/types/element-interactions.js.map +1 -0
  288. package/lib/esm/types/event/base-event.d.ts +64 -0
  289. package/lib/esm/types/event/base-event.d.ts.map +1 -0
  290. package/lib/esm/types/event/base-event.js +2 -0
  291. package/lib/esm/types/event/base-event.js.map +1 -0
  292. package/lib/esm/types/event/event.d.ts +68 -0
  293. package/lib/esm/types/event/event.d.ts.map +1 -0
  294. package/lib/esm/types/event/event.js +28 -0
  295. package/lib/esm/types/event/event.js.map +1 -0
  296. package/lib/esm/types/event/ingestion-metadata.d.ts +19 -0
  297. package/lib/esm/types/event/ingestion-metadata.d.ts.map +1 -0
  298. package/lib/esm/types/event/ingestion-metadata.js +2 -0
  299. package/lib/esm/types/event/ingestion-metadata.js.map +1 -0
  300. package/lib/esm/types/event/plan.d.ts +14 -0
  301. package/lib/esm/types/event/plan.d.ts.map +1 -0
  302. package/lib/esm/types/event/plan.js +2 -0
  303. package/lib/esm/types/event/plan.js.map +1 -0
  304. package/lib/esm/types/event-callback.d.ts +3 -0
  305. package/lib/esm/types/event-callback.d.ts.map +1 -0
  306. package/lib/esm/types/event-callback.js +2 -0
  307. package/lib/esm/types/event-callback.js.map +1 -0
  308. package/lib/esm/types/loglevel.d.ts +8 -0
  309. package/lib/esm/types/loglevel.d.ts.map +1 -0
  310. package/lib/esm/types/loglevel.js +9 -0
  311. package/lib/esm/types/loglevel.js.map +1 -0
  312. package/lib/esm/types/messages.d.ts.map +1 -0
  313. package/lib/esm/types/messages.js.map +1 -0
  314. package/lib/esm/types/offline.d.ts +2 -0
  315. package/lib/esm/types/offline.d.ts.map +1 -0
  316. package/lib/esm/types/offline.js +2 -0
  317. package/lib/esm/types/offline.js.map +1 -0
  318. package/lib/esm/types/page-view-tracking.d.ts +9 -0
  319. package/lib/esm/types/page-view-tracking.d.ts.map +1 -0
  320. package/lib/esm/types/page-view-tracking.js +2 -0
  321. package/lib/esm/types/page-view-tracking.js.map +1 -0
  322. package/lib/esm/types/payload.d.ts +13 -0
  323. package/lib/esm/types/payload.d.ts.map +1 -0
  324. package/lib/esm/types/payload.js +2 -0
  325. package/lib/esm/types/payload.js.map +1 -0
  326. package/lib/esm/types/plugin.d.ts +30 -0
  327. package/lib/esm/types/plugin.d.ts.map +1 -0
  328. package/lib/esm/types/plugin.js +2 -0
  329. package/lib/esm/types/plugin.js.map +1 -0
  330. package/lib/esm/types/response.d.ts +81 -0
  331. package/lib/esm/types/response.d.ts.map +1 -0
  332. package/lib/esm/types/response.js +2 -0
  333. package/lib/esm/types/response.js.map +1 -0
  334. package/lib/esm/types/result.d.ts +7 -0
  335. package/lib/esm/types/result.d.ts.map +1 -0
  336. package/lib/esm/types/result.js +2 -0
  337. package/lib/esm/types/result.js.map +1 -0
  338. package/lib/esm/types/server-zone.d.ts +9 -0
  339. package/lib/esm/types/server-zone.d.ts.map +1 -0
  340. package/lib/esm/types/server-zone.js +9 -0
  341. package/lib/esm/types/server-zone.js.map +1 -0
  342. package/lib/esm/types/status.d.ts +22 -0
  343. package/lib/esm/types/status.d.ts.map +1 -0
  344. package/lib/esm/types/status.js +23 -0
  345. package/lib/esm/types/status.js.map +1 -0
  346. package/lib/esm/types/storage.d.ts +16 -0
  347. package/lib/esm/types/storage.d.ts.map +1 -0
  348. package/lib/esm/types/storage.js +2 -0
  349. package/lib/esm/types/storage.js.map +1 -0
  350. package/lib/esm/types/transport.d.ts +7 -0
  351. package/lib/esm/types/transport.d.ts.map +1 -0
  352. package/lib/esm/types/transport.js +2 -0
  353. package/lib/esm/types/transport.js.map +1 -0
  354. package/lib/esm/types/user-session.d.ts +11 -0
  355. package/lib/esm/types/user-session.d.ts.map +1 -0
  356. package/lib/esm/types/user-session.js +2 -0
  357. package/lib/esm/types/user-session.js.map +1 -0
  358. package/lib/esm/utils/debug.d.ts +1 -1
  359. package/lib/esm/utils/debug.d.ts.map +1 -1
  360. package/lib/esm/utils/debug.js +1 -5
  361. package/lib/esm/utils/debug.js.map +1 -1
  362. package/lib/esm/utils/event-builder.d.ts +5 -2
  363. package/lib/esm/utils/event-builder.d.ts.map +1 -1
  364. package/lib/esm/utils/event-builder.js +1 -1
  365. package/lib/esm/utils/event-builder.js.map +1 -1
  366. package/lib/esm/utils/result-builder.d.ts +2 -1
  367. package/lib/esm/utils/result-builder.d.ts.map +1 -1
  368. package/lib/esm/utils/result-builder.js +1 -1
  369. package/lib/esm/utils/result-builder.js.map +1 -1
  370. package/lib/esm/utils/return-wrapper.d.ts +3 -1
  371. package/lib/esm/utils/return-wrapper.d.ts.map +1 -1
  372. package/lib/esm/utils/return-wrapper.js.map +1 -1
  373. package/package.json +2 -3
  374. package/lib/cjs/constants.d.ts.map +0 -1
  375. package/lib/cjs/constants.js.map +0 -1
  376. package/lib/cjs/messages.d.ts.map +0 -1
  377. package/lib/cjs/messages.js.map +0 -1
  378. package/lib/esm/constants.d.ts.map +0 -1
  379. package/lib/esm/constants.js.map +0 -1
  380. package/lib/esm/messages.d.ts.map +0 -1
  381. package/lib/esm/messages.js.map +0 -1
  382. /package/lib/cjs/{constants.d.ts → types/constants.d.ts} +0 -0
  383. /package/lib/cjs/{constants.js → types/constants.js} +0 -0
  384. /package/lib/cjs/{messages.d.ts → types/messages.d.ts} +0 -0
  385. /package/lib/cjs/{messages.js → types/messages.js} +0 -0
  386. /package/lib/esm/{constants.d.ts → types/constants.d.ts} +0 -0
  387. /package/lib/esm/{constants.js → types/constants.js} +0 -0
  388. /package/lib/esm/{messages.d.ts → types/messages.d.ts} +0 -0
  389. /package/lib/esm/{messages.js → types/messages.js} +0 -0
@@ -0,0 +1,216 @@
1
+ import { UserSession } from './user-session';
2
+ import { IdentityStorageType, Storage } from './storage';
3
+ import { Transport } from './transport';
4
+ import { IConfig } from '../config';
5
+ import { ElementInteractionsOptions } from './element-interactions';
6
+ import { PageTrackingOptions } from './page-view-tracking';
7
+ export interface BrowserConfig extends ExternalBrowserConfig, InternalBrowserConfig {
8
+ }
9
+ export interface ExternalBrowserConfig extends IConfig {
10
+ /**
11
+ * An app version for events tracked. This can be the version of your application.
12
+ * @defaultValue `undefined`
13
+ */
14
+ appVersion?: string;
15
+ /**
16
+ * @deprecated This property is deprecated and will be removed in future versions. Please migrate to using `autocapture` instead.
17
+ * The default event tracking configuration.
18
+ * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/#tracking-default-events}.
19
+ * @defaultValue `true`
20
+ */
21
+ defaultTracking?: boolean | DefaultTrackingOptions;
22
+ /**
23
+ * The configurations for auto-captured events.
24
+ * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/autocapture/}.
25
+ */
26
+ autocapture?: boolean | AutocaptureOptions;
27
+ /**
28
+ * The identifier for the device running your application.
29
+ * @defaultValue `UUID()`
30
+ */
31
+ deviceId?: string;
32
+ /**
33
+ * Configuration for cookie.
34
+ */
35
+ cookieOptions?: CookieOptions;
36
+ /**
37
+ * The storage for user identify.
38
+ * @defaultValue `"cookie"`
39
+ */
40
+ identityStorage?: IdentityStorageType;
41
+ /**
42
+ * The partner identifier.
43
+ * Amplitude requires the customer who built an event ingestion integration to add the partner identifier to partner_id.
44
+ * @defaultValue `undefined`
45
+ */
46
+ partnerId?: string;
47
+ /**
48
+ * The custom Session ID for the current session.
49
+ * @defaultValue `timestamp`
50
+ */
51
+ sessionId?: number;
52
+ /**
53
+ * The period of inactivity from the last tracked event before a session expires in milliseconds.
54
+ * @defaultValue `1,800,000` (30 minutes)
55
+ */
56
+ sessionTimeout: number;
57
+ /**
58
+ * The configurations for tracking additional properties.
59
+ * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/#optional-tracking}.
60
+ */
61
+ trackingOptions: TrackingOptions;
62
+ /**
63
+ * Network transport mechanism used to send events.
64
+ * @defaultValue `"fetch"`
65
+ */
66
+ transport?: 'fetch' | 'xhr' | 'beacon';
67
+ /**
68
+ * The identifier for the user being tracked.
69
+ * @defaultValue `undefined`
70
+ */
71
+ userId?: string;
72
+ /**
73
+ * User's Nth instance of performing a default Page Viewed event within a session.
74
+ * Used for landing page analysis.
75
+ */
76
+ pageCounter?: number;
77
+ /**
78
+ * Whether to fetch remote configuration.
79
+ * @defaultValue `false`
80
+ */
81
+ fetchRemoteConfig?: boolean;
82
+ }
83
+ interface InternalBrowserConfig {
84
+ cookieStorage: Storage<UserSession>;
85
+ lastEventTime?: number;
86
+ lastEventId?: number;
87
+ transportProvider: Transport;
88
+ }
89
+ /**
90
+ * @deprecated This interface is deprecated and will be removed in future versions. Please migrate to using `AutocaptureOptions` instead.
91
+ */
92
+ export interface DefaultTrackingOptions {
93
+ /**
94
+ * Enables/disables marketing attribution tracking or config with detailed attribution options.
95
+ * @defaultValue `true`
96
+ */
97
+ attribution?: boolean | AttributionOptions;
98
+ /**
99
+ * Enables/disables form downloads tracking.
100
+ * @defaultValue `true`
101
+ */
102
+ fileDownloads?: boolean;
103
+ /**
104
+ * Enables/disables form interaction tracking.
105
+ * @defaultValue `true`
106
+ */
107
+ formInteractions?: boolean;
108
+ /**
109
+ * Enables/disables default page view tracking.
110
+ * @defaultValue `true`
111
+ */
112
+ pageViews?: boolean | PageTrackingOptions;
113
+ /**
114
+ * Enables/disables session tracking.
115
+ * @defaultValue `true`
116
+ */
117
+ sessions?: boolean;
118
+ }
119
+ export interface AutocaptureOptions {
120
+ /**
121
+ * Enables/disables marketing attribution tracking or config with detailed attribution options.
122
+ * @defaultValue `true`
123
+ */
124
+ attribution?: boolean | AttributionOptions;
125
+ /**
126
+ * Enables/disables form downloads tracking.
127
+ * @defaultValue `true`
128
+ */
129
+ fileDownloads?: boolean;
130
+ /**
131
+ * Enables/disables form interaction tracking.
132
+ * @defaultValue `true`
133
+ */
134
+ formInteractions?: boolean;
135
+ /**
136
+ * Enables/disables default page view tracking.
137
+ * @defaultValue `true`
138
+ */
139
+ pageViews?: boolean | PageTrackingOptions;
140
+ /**
141
+ * Enables/disables session tracking.
142
+ * @defaultValue `true`
143
+ */
144
+ sessions?: boolean;
145
+ /**
146
+ * Enables/disables user interactions tracking.
147
+ * @defaultValue `false`
148
+ */
149
+ elementInteractions?: boolean | ElementInteractionsOptions;
150
+ }
151
+ export interface TrackingOptions {
152
+ /**
153
+ * Enables/disables ip address tracking.
154
+ * @defaultValue `true`
155
+ */
156
+ ipAddress?: boolean;
157
+ /**
158
+ * Enables/disables language tracking.
159
+ * @defaultValue `true`
160
+ */
161
+ language?: boolean;
162
+ /**
163
+ * Enables/disables plantform tracking.
164
+ * @defaultValue `true`
165
+ */
166
+ platform?: boolean;
167
+ }
168
+ export interface AttributionOptions {
169
+ /**
170
+ * The rules to determine which referrers are excluded from being tracked as traffic source.
171
+ * @defaultValue `[/your-domain\.com$/]`
172
+ */
173
+ excludeReferrers?: (string | RegExp)[];
174
+ /**
175
+ * The value to represent undefined/no initial campaign parameter for first-touch attribution.
176
+ * @defaultValue `"EMPTY"`
177
+ */
178
+ initialEmptyValue?: string;
179
+ /**
180
+ * The flag of if Amplitude to start a new session if any campaign parameter changes.
181
+ * @defaultValue `false`
182
+ */
183
+ resetSessionOnNewCampaign?: boolean;
184
+ }
185
+ export interface CookieOptions {
186
+ /**
187
+ * The domain property of cookies created.
188
+ * @defaultValue `Your top level domain`
189
+ */
190
+ domain?: string;
191
+ /**
192
+ * The expiration of cookies created in days.
193
+ * @defaultValue `365`
194
+ */
195
+ expiration?: number;
196
+ /**
197
+ * How cookies are sent with cross-site requests.
198
+ * @defaultValue `"Lax"`
199
+ */
200
+ sameSite?: 'Strict' | 'Lax' | 'None';
201
+ /**
202
+ * The flag of if send cookies over secure protocols.
203
+ * @defaultValue `false`
204
+ */
205
+ secure?: boolean;
206
+ /**
207
+ * The flag of if upgrade the cookies created by maintenance Browser SDK.
208
+ * @defaultValue `true`
209
+ */
210
+ upgrade?: boolean;
211
+ }
212
+ type HiddenOptions = 'apiKey' | 'transportProvider' | 'requestMetadata';
213
+ export interface BrowserOptions extends Omit<Partial<ExternalBrowserConfig>, HiddenOptions> {
214
+ }
215
+ export {};
216
+ //# sourceMappingURL=browser-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-config.d.ts","sourceRoot":"","sources":["../../../src/types/browser-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,aAAc,SAAQ,qBAAqB,EAAE,qBAAqB;CAAG;AAEtF,MAAM,WAAW,qBAAsB,SAAQ,OAAO;IACpD;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,GAAG,sBAAsB,CAAC;IACnD;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,eAAe,EAAE,eAAe,CAAC;IACjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;IACvC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,UAAU,qBAAqB;IAC7B,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,SAAS,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,0BAA0B,CAAC;CAC5D;AAED,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACvC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IACrC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,KAAK,aAAa,GAAG,QAAQ,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAGxE,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,aAAa,CAAC;CAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=browser-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-config.js","sourceRoot":"","sources":["../../../src/types/browser-config.ts"],"names":[],"mappings":"","sourcesContent":["import { UserSession } from './user-session';\nimport { IdentityStorageType, Storage } from './storage';\nimport { Transport } from './transport';\nimport { IConfig } from '../config';\nimport { ElementInteractionsOptions } from './element-interactions';\nimport { PageTrackingOptions } from './page-view-tracking';\n\nexport interface BrowserConfig extends ExternalBrowserConfig, InternalBrowserConfig {}\n\nexport interface ExternalBrowserConfig extends IConfig {\n /**\n * An app version for events tracked. This can be the version of your application.\n * @defaultValue `undefined`\n */\n appVersion?: string;\n /**\n * @deprecated This property is deprecated and will be removed in future versions. Please migrate to using `autocapture` instead.\n * The default event tracking configuration.\n * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/#tracking-default-events}.\n * @defaultValue `true`\n */\n defaultTracking?: boolean | DefaultTrackingOptions;\n /**\n * The configurations for auto-captured events.\n * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/autocapture/}.\n */\n autocapture?: boolean | AutocaptureOptions;\n /**\n * The identifier for the device running your application.\n * @defaultValue `UUID()`\n */\n deviceId?: string;\n /**\n * Configuration for cookie.\n */\n cookieOptions?: CookieOptions;\n /**\n * The storage for user identify.\n * @defaultValue `\"cookie\"`\n */\n identityStorage?: IdentityStorageType;\n /**\n * The partner identifier.\n * Amplitude requires the customer who built an event ingestion integration to add the partner identifier to partner_id.\n * @defaultValue `undefined`\n */\n partnerId?: string;\n /**\n * The custom Session ID for the current session.\n * @defaultValue `timestamp`\n */\n sessionId?: number;\n /**\n * The period of inactivity from the last tracked event before a session expires in milliseconds.\n * @defaultValue `1,800,000` (30 minutes)\n */\n sessionTimeout: number;\n /**\n * The configurations for tracking additional properties.\n * See {@link https://www.docs.developers.amplitude.com/data/sdks/browser-2/#optional-tracking}.\n */\n trackingOptions: TrackingOptions;\n /**\n * Network transport mechanism used to send events.\n * @defaultValue `\"fetch\"`\n */\n transport?: 'fetch' | 'xhr' | 'beacon';\n /**\n * The identifier for the user being tracked.\n * @defaultValue `undefined`\n */\n userId?: string;\n /**\n * User's Nth instance of performing a default Page Viewed event within a session.\n * Used for landing page analysis.\n */\n pageCounter?: number;\n /**\n * Whether to fetch remote configuration.\n * @defaultValue `false`\n */\n fetchRemoteConfig?: boolean;\n}\n\ninterface InternalBrowserConfig {\n cookieStorage: Storage<UserSession>;\n lastEventTime?: number;\n lastEventId?: number;\n transportProvider: Transport;\n}\n\n/**\n * @deprecated This interface is deprecated and will be removed in future versions. Please migrate to using `AutocaptureOptions` instead.\n */\nexport interface DefaultTrackingOptions {\n /**\n * Enables/disables marketing attribution tracking or config with detailed attribution options.\n * @defaultValue `true`\n */\n attribution?: boolean | AttributionOptions;\n /**\n * Enables/disables form downloads tracking.\n * @defaultValue `true`\n */\n fileDownloads?: boolean;\n /**\n * Enables/disables form interaction tracking.\n * @defaultValue `true`\n */\n formInteractions?: boolean;\n /**\n * Enables/disables default page view tracking.\n * @defaultValue `true`\n */\n pageViews?: boolean | PageTrackingOptions;\n /**\n * Enables/disables session tracking.\n * @defaultValue `true`\n */\n sessions?: boolean;\n}\n\nexport interface AutocaptureOptions {\n /**\n * Enables/disables marketing attribution tracking or config with detailed attribution options.\n * @defaultValue `true`\n */\n attribution?: boolean | AttributionOptions;\n /**\n * Enables/disables form downloads tracking.\n * @defaultValue `true`\n */\n fileDownloads?: boolean;\n /**\n * Enables/disables form interaction tracking.\n * @defaultValue `true`\n */\n formInteractions?: boolean;\n /**\n * Enables/disables default page view tracking.\n * @defaultValue `true`\n */\n pageViews?: boolean | PageTrackingOptions;\n /**\n * Enables/disables session tracking.\n * @defaultValue `true`\n */\n sessions?: boolean;\n /**\n * Enables/disables user interactions tracking.\n * @defaultValue `false`\n */\n elementInteractions?: boolean | ElementInteractionsOptions;\n}\n\nexport interface TrackingOptions {\n /**\n * Enables/disables ip address tracking.\n * @defaultValue `true`\n */\n ipAddress?: boolean;\n /**\n * Enables/disables language tracking.\n * @defaultValue `true`\n */\n language?: boolean;\n /**\n * Enables/disables plantform tracking.\n * @defaultValue `true`\n */\n platform?: boolean;\n}\n\nexport interface AttributionOptions {\n /**\n * The rules to determine which referrers are excluded from being tracked as traffic source.\n * @defaultValue `[/your-domain\\.com$/]`\n */\n excludeReferrers?: (string | RegExp)[];\n /**\n * The value to represent undefined/no initial campaign parameter for first-touch attribution.\n * @defaultValue `\"EMPTY\"`\n */\n initialEmptyValue?: string;\n /**\n * The flag of if Amplitude to start a new session if any campaign parameter changes.\n * @defaultValue `false`\n */\n resetSessionOnNewCampaign?: boolean;\n}\n\nexport interface CookieOptions {\n /**\n * The domain property of cookies created.\n * @defaultValue `Your top level domain`\n */\n domain?: string;\n /**\n * The expiration of cookies created in days.\n * @defaultValue `365`\n */\n expiration?: number;\n /**\n * How cookies are sent with cross-site requests.\n * @defaultValue `\"Lax\"`\n */\n sameSite?: 'Strict' | 'Lax' | 'None';\n /**\n * The flag of if send cookies over secure protocols.\n * @defaultValue `false`\n */\n secure?: boolean;\n /**\n * The flag of if upgrade the cookies created by maintenance Browser SDK.\n * @defaultValue `true`\n */\n upgrade?: boolean;\n}\n\ntype HiddenOptions = 'apiKey' | 'transportProvider' | 'requestMetadata';\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface BrowserOptions extends Omit<Partial<ExternalBrowserConfig>, HiddenOptions> {}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/types/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,MAAM,CAAC;AAC/B,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AACtC,eAAO,MAAM,cAAc,QAA+B,CAAC;AAC3D,eAAO,MAAM,oBAAoB,yCAAyC,CAAC;AAC3E,eAAO,MAAM,uBAAuB,2CAA2C,CAAC;AAChF,eAAO,MAAM,0BAA0B,qCAAqC,CAAC;AAC7E,eAAO,MAAM,6BAA6B,uCAAuC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/types/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG,GAAG,CAAC;AAC/B,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC;AACtC,MAAM,CAAC,IAAM,cAAc,GAAG,UAAG,gBAAgB,YAAS,CAAC;AAC3D,MAAM,CAAC,IAAM,oBAAoB,GAAG,sCAAsC,CAAC;AAC3E,MAAM,CAAC,IAAM,uBAAuB,GAAG,wCAAwC,CAAC;AAChF,MAAM,CAAC,IAAM,0BAA0B,GAAG,kCAAkC,CAAC;AAC7E,MAAM,CAAC,IAAM,6BAA6B,GAAG,oCAAoC,CAAC","sourcesContent":["export const UNSET_VALUE = '-';\nexport const AMPLITUDE_PREFIX = 'AMP';\nexport const STORAGE_PREFIX = `${AMPLITUDE_PREFIX}_unsent`;\nexport const AMPLITUDE_SERVER_URL = 'https://api2.amplitude.com/2/httpapi';\nexport const EU_AMPLITUDE_SERVER_URL = 'https://api.eu.amplitude.com/2/httpapi';\nexport const AMPLITUDE_BATCH_SERVER_URL = 'https://api2.amplitude.com/batch';\nexport const EU_AMPLITUDE_BATCH_SERVER_URL = 'https://api.eu.amplitude.com/batch';\n"]}
@@ -0,0 +1,73 @@
1
+ import { ILogger } from '../logger';
2
+ export type ActionType = 'click' | 'change';
3
+ /**
4
+ * Default CSS selectors to define which elements on the page to track.
5
+ * Extend this list to include additional elements to track. For example:
6
+ * ```
7
+ * autocapturePlugin({
8
+ * cssSelectorAllowlist: [...DEFAULT_CSS_SELECTOR_ALLOWLIST, ".my-class"],
9
+ * })
10
+ * ```
11
+ */
12
+ export declare const DEFAULT_CSS_SELECTOR_ALLOWLIST: string[];
13
+ /**
14
+ * Default prefix to allow the plugin to capture data attributes as an event property.
15
+ */
16
+ export declare const DEFAULT_DATA_ATTRIBUTE_PREFIX = "data-amp-track-";
17
+ /**
18
+ * Default list of elements on the page should be tracked when the page changes.
19
+ */
20
+ export declare const DEFAULT_ACTION_CLICK_ALLOWLIST: string[];
21
+ export interface ElementInteractionsOptions {
22
+ /**
23
+ * List of CSS selectors to allow auto tracking on.
24
+ * When provided, allow elements matching any selector to be tracked.
25
+ * Default is ['a', 'button', 'input', 'select', 'textarea', 'label', '[data-amp-default-track]', '.amp-default-track'].
26
+ */
27
+ cssSelectorAllowlist?: string[];
28
+ /**
29
+ * List of page URLs to allow auto tracking on.
30
+ * When provided, only allow tracking on these URLs.
31
+ * Both full URLs and regex are supported.
32
+ */
33
+ pageUrlAllowlist?: (string | RegExp)[];
34
+ /**
35
+ * Function to determine whether an event should be tracked.
36
+ * When provided, this function overwrites all other allowlists and configurations.
37
+ * If the function returns true, the event will be tracked.
38
+ * If the function returns false, the event will not be tracked.
39
+ * @param actionType - The type of action that triggered the event.
40
+ * @param element - The [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) that triggered the event.
41
+ */
42
+ shouldTrackEventResolver?: (actionType: ActionType, element: DomElement) => boolean;
43
+ /**
44
+ * Prefix for data attributes to allow auto collecting.
45
+ * Default is 'data-amp-track-'.
46
+ */
47
+ dataAttributePrefix?: string;
48
+ /**
49
+ * Options for integrating visual tagging selector.
50
+ */
51
+ visualTaggingOptions?: {
52
+ enabled?: boolean;
53
+ messenger?: Messenger;
54
+ };
55
+ /**
56
+ * Debounce time in milliseconds for tracking events.
57
+ * This is used to detect rage clicks.
58
+ */
59
+ debounceTime?: number;
60
+ /**
61
+ * CSS selector allowlist for tracking clicks that result in a DOM change/navigation on elements not already allowed by the cssSelectorAllowlist
62
+ */
63
+ actionClickAllowlist?: string[];
64
+ }
65
+ export interface Messenger {
66
+ logger?: ILogger;
67
+ setup: () => void;
68
+ }
69
+ type DomElement = typeof globalThis extends {
70
+ Element: new (...args: any) => infer T;
71
+ } ? T : never;
72
+ export {};
73
+ //# sourceMappingURL=element-interactions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-interactions.d.ts","sourceRoot":"","sources":["../../../src/types/element-interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE5C;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B,UAY1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,8BAA8B,UAAsD,CAAC;AAElG,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAEvC;;;;;;;OAOG;IACH,wBAAwB,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC;IAEpF;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,oBAAoB,CAAC,EAAE;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB,CAAC;IAEF;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAKD,KAAK,UAAU,GAAG,OAAO,UAAU,SAAS;IAC1C,OAAO,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;CACxC,GACG,CAAC,GACD,KAAK,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Default CSS selectors to define which elements on the page to track.
3
+ * Extend this list to include additional elements to track. For example:
4
+ * ```
5
+ * autocapturePlugin({
6
+ * cssSelectorAllowlist: [...DEFAULT_CSS_SELECTOR_ALLOWLIST, ".my-class"],
7
+ * })
8
+ * ```
9
+ */
10
+ export var DEFAULT_CSS_SELECTOR_ALLOWLIST = [
11
+ 'a',
12
+ 'button',
13
+ 'input',
14
+ 'select',
15
+ 'textarea',
16
+ 'label',
17
+ 'video',
18
+ 'audio',
19
+ '[contenteditable="true" i]',
20
+ '[data-amp-default-track]',
21
+ '.amp-default-track',
22
+ ];
23
+ /**
24
+ * Default prefix to allow the plugin to capture data attributes as an event property.
25
+ */
26
+ export var DEFAULT_DATA_ATTRIBUTE_PREFIX = 'data-amp-track-';
27
+ /**
28
+ * Default list of elements on the page should be tracked when the page changes.
29
+ */
30
+ export var DEFAULT_ACTION_CLICK_ALLOWLIST = ['div', 'span', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
31
+ //# sourceMappingURL=element-interactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-interactions.js","sourceRoot":"","sources":["../../../src/types/element-interactions.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,MAAM,CAAC,IAAM,8BAA8B,GAAG;IAC5C,GAAG;IACH,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,4BAA4B;IAC5B,0BAA0B;IAC1B,oBAAoB;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,6BAA6B,GAAG,iBAAiB,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,IAAM,8BAA8B,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC","sourcesContent":["import { ILogger } from '../logger';\n\nexport type ActionType = 'click' | 'change';\n\n/**\n * Default CSS selectors to define which elements on the page to track.\n * Extend this list to include additional elements to track. For example:\n * ```\n * autocapturePlugin({\n * cssSelectorAllowlist: [...DEFAULT_CSS_SELECTOR_ALLOWLIST, \".my-class\"],\n * })\n * ```\n */\nexport const DEFAULT_CSS_SELECTOR_ALLOWLIST = [\n 'a',\n 'button',\n 'input',\n 'select',\n 'textarea',\n 'label',\n 'video',\n 'audio',\n '[contenteditable=\"true\" i]',\n '[data-amp-default-track]',\n '.amp-default-track',\n];\n\n/**\n * Default prefix to allow the plugin to capture data attributes as an event property.\n */\nexport const DEFAULT_DATA_ATTRIBUTE_PREFIX = 'data-amp-track-';\n\n/**\n * Default list of elements on the page should be tracked when the page changes.\n */\nexport const DEFAULT_ACTION_CLICK_ALLOWLIST = ['div', 'span', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'];\n\nexport interface ElementInteractionsOptions {\n /**\n * List of CSS selectors to allow auto tracking on.\n * When provided, allow elements matching any selector to be tracked.\n * Default is ['a', 'button', 'input', 'select', 'textarea', 'label', '[data-amp-default-track]', '.amp-default-track'].\n */\n cssSelectorAllowlist?: string[];\n\n /**\n * List of page URLs to allow auto tracking on.\n * When provided, only allow tracking on these URLs.\n * Both full URLs and regex are supported.\n */\n pageUrlAllowlist?: (string | RegExp)[];\n\n /**\n * Function to determine whether an event should be tracked.\n * When provided, this function overwrites all other allowlists and configurations.\n * If the function returns true, the event will be tracked.\n * If the function returns false, the event will not be tracked.\n * @param actionType - The type of action that triggered the event.\n * @param element - The [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) that triggered the event.\n */\n shouldTrackEventResolver?: (actionType: ActionType, element: DomElement) => boolean;\n\n /**\n * Prefix for data attributes to allow auto collecting.\n * Default is 'data-amp-track-'.\n */\n dataAttributePrefix?: string;\n\n /**\n * Options for integrating visual tagging selector.\n */\n visualTaggingOptions?: {\n enabled?: boolean;\n messenger?: Messenger;\n };\n\n /**\n * Debounce time in milliseconds for tracking events.\n * This is used to detect rage clicks.\n */\n debounceTime?: number;\n\n /**\n * CSS selector allowlist for tracking clicks that result in a DOM change/navigation on elements not already allowed by the cssSelectorAllowlist\n */\n actionClickAllowlist?: string[];\n}\n\nexport interface Messenger {\n logger?: ILogger;\n setup: () => void;\n}\n\n// DomElement is [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) if the dom library is included in tsconfig.json\n// and never if it is not included\n// eslint-disable-next-line no-restricted-globals\ntype DomElement = typeof globalThis extends {\n Element: new (...args: any) => infer T;\n}\n ? T\n : never;\n"]}
@@ -0,0 +1,64 @@
1
+ import { Plan } from './plan';
2
+ import { IngestionMetadataEventProperty } from './ingestion-metadata';
3
+ export interface BaseEvent extends EventOptions {
4
+ event_type: string;
5
+ event_properties?: {
6
+ [key: string]: any;
7
+ } | undefined;
8
+ user_properties?: {
9
+ [key: string]: any;
10
+ } | undefined;
11
+ group_properties?: {
12
+ [key: string]: any;
13
+ } | undefined;
14
+ }
15
+ export interface EventOptions {
16
+ user_id?: string;
17
+ device_id?: string;
18
+ time?: number;
19
+ location_lat?: number;
20
+ location_lng?: number;
21
+ app_version?: string;
22
+ version_name?: string;
23
+ library?: string;
24
+ platform?: string;
25
+ os_name?: string;
26
+ os_version?: string;
27
+ device_brand?: string;
28
+ device_manufacturer?: string;
29
+ device_model?: string;
30
+ carrier?: string;
31
+ country?: string;
32
+ region?: string;
33
+ city?: string;
34
+ dma?: string;
35
+ idfa?: string;
36
+ idfv?: string;
37
+ adid?: string;
38
+ android_id?: string;
39
+ language?: string;
40
+ ip?: string;
41
+ price?: number;
42
+ quantity?: number;
43
+ revenue?: number;
44
+ receipt?: string;
45
+ receiptSig?: string;
46
+ productId?: string;
47
+ revenueType?: string;
48
+ currency?: string;
49
+ event_id?: number;
50
+ session_id?: number;
51
+ insert_id?: string;
52
+ plan?: Plan;
53
+ ingestion_metadata?: IngestionMetadataEventProperty;
54
+ partner_id?: string;
55
+ user_agent?: string;
56
+ android_app_set_id?: string;
57
+ extra?: {
58
+ [key: string]: any;
59
+ };
60
+ groups?: {
61
+ [key: string]: any;
62
+ } | undefined;
63
+ }
64
+ //# sourceMappingURL=base-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-event.d.ts","sourceRoot":"","sources":["../../../../src/types/event/base-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAEtE,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,SAAS,CAAC;IACtD,eAAe,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,SAAS,CAAC;IACrD,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,SAAS,CAAC;CACvD;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAC/B,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,SAAS,CAAC;CAC7C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=base-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-event.js","sourceRoot":"","sources":["../../../../src/types/event/base-event.ts"],"names":[],"mappings":"","sourcesContent":["import { Plan } from './plan';\nimport { IngestionMetadataEventProperty } from './ingestion-metadata';\n\nexport interface BaseEvent extends EventOptions {\n event_type: string;\n event_properties?: { [key: string]: any } | undefined;\n user_properties?: { [key: string]: any } | undefined;\n group_properties?: { [key: string]: any } | undefined;\n}\n\nexport interface EventOptions {\n user_id?: string;\n device_id?: string;\n time?: number;\n location_lat?: number;\n location_lng?: number;\n app_version?: string;\n version_name?: string;\n library?: string;\n platform?: string;\n os_name?: string;\n os_version?: string;\n device_brand?: string;\n device_manufacturer?: string;\n device_model?: string;\n carrier?: string;\n country?: string;\n region?: string;\n city?: string;\n dma?: string;\n idfa?: string;\n idfv?: string;\n adid?: string;\n android_id?: string;\n language?: string;\n ip?: string;\n price?: number;\n quantity?: number;\n revenue?: number;\n receipt?: string;\n receiptSig?: string;\n productId?: string;\n revenueType?: string;\n currency?: string;\n event_id?: number;\n session_id?: number;\n insert_id?: string;\n plan?: Plan;\n ingestion_metadata?: IngestionMetadataEventProperty;\n partner_id?: string;\n user_agent?: string;\n android_app_set_id?: string;\n extra?: { [key: string]: any };\n groups?: { [key: string]: any } | undefined;\n}\n"]}
@@ -0,0 +1,68 @@
1
+ import { BaseEvent } from './base-event';
2
+ import { RevenueEventProperties } from '../../revenue';
3
+ export declare enum IdentifyOperation {
4
+ SET = "$set",
5
+ SET_ONCE = "$setOnce",
6
+ ADD = "$add",
7
+ APPEND = "$append",
8
+ PREPEND = "$prepend",
9
+ REMOVE = "$remove",
10
+ PREINSERT = "$preInsert",
11
+ POSTINSERT = "$postInsert",
12
+ UNSET = "$unset",
13
+ CLEAR_ALL = "$clearAll"
14
+ }
15
+ export type ValidPropertyType = number | string | boolean | Array<string | number> | {
16
+ [key: string]: ValidPropertyType;
17
+ } | Array<{
18
+ [key: string]: ValidPropertyType;
19
+ }>;
20
+ interface BaseOperationConfig {
21
+ [key: string]: ValidPropertyType;
22
+ }
23
+ export interface IdentifyUserProperties {
24
+ [IdentifyOperation.ADD]?: {
25
+ [key: string]: number;
26
+ };
27
+ [IdentifyOperation.UNSET]?: BaseOperationConfig;
28
+ [IdentifyOperation.CLEAR_ALL]?: any;
29
+ [IdentifyOperation.SET]?: BaseOperationConfig;
30
+ [IdentifyOperation.SET_ONCE]?: BaseOperationConfig;
31
+ [IdentifyOperation.APPEND]?: BaseOperationConfig;
32
+ [IdentifyOperation.PREPEND]?: BaseOperationConfig;
33
+ [IdentifyOperation.POSTINSERT]?: BaseOperationConfig;
34
+ [IdentifyOperation.PREINSERT]?: BaseOperationConfig;
35
+ [IdentifyOperation.REMOVE]?: BaseOperationConfig;
36
+ }
37
+ export type UserProperties = IdentifyUserProperties | {
38
+ [key in Exclude<string, IdentifyOperation>]: any;
39
+ };
40
+ /**
41
+ * Strings that have special meaning when used as an event's type
42
+ * and have different specifications.
43
+ */
44
+ export declare enum SpecialEventType {
45
+ IDENTIFY = "$identify",
46
+ GROUP_IDENTIFY = "$groupidentify",
47
+ REVENUE = "revenue_amount"
48
+ }
49
+ export interface TrackEvent extends BaseEvent {
50
+ event_type: Exclude<string, SpecialEventType>;
51
+ }
52
+ export interface IdentifyEvent extends BaseEvent {
53
+ event_type: SpecialEventType.IDENTIFY;
54
+ user_properties: UserProperties;
55
+ }
56
+ export interface GroupIdentifyEvent extends BaseEvent {
57
+ event_type: SpecialEventType.GROUP_IDENTIFY;
58
+ group_properties: UserProperties;
59
+ }
60
+ export interface RevenueEvent extends BaseEvent {
61
+ event_type: SpecialEventType.REVENUE;
62
+ event_properties: RevenueEventProperties | {
63
+ [key: string]: any;
64
+ };
65
+ }
66
+ export type Event = TrackEvent | IdentifyEvent | GroupIdentifyEvent | RevenueEvent;
67
+ export {};
68
+ //# sourceMappingURL=event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../../src/types/event/event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEvD,oBAAY,iBAAiB;IAE3B,GAAG,SAAS;IACZ,QAAQ,aAAa;IAGrB,GAAG,SAAS;IACZ,MAAM,YAAY;IAClB,OAAO,aAAa;IACpB,MAAM,YAAY;IAGlB,SAAS,eAAe;IACxB,UAAU,gBAAgB;IAG1B,KAAK,WAAW;IAChB,SAAS,cAAc;CACxB;AAED,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACtB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAA;CAAE,GACpC,KAAK,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAA;CAAE,CAAC,CAAC;AAEhD,UAAU,mBAAmB;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IAErC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAGpD,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAEhD,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;IAGpC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAC9C,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,EAAE,mBAAmB,CAAC;IACnD,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC;IACjD,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,mBAAmB,CAAC;IAClD,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,EAAE,mBAAmB,CAAC;IACrD,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,EAAE,mBAAmB,CAAC;IACpD,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC;CAClD;AAED,MAAM,MAAM,cAAc,GACtB,sBAAsB,GACtB;KACG,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,GAAG;CACjD,CAAC;AAEN;;;GAGG;AACH,oBAAY,gBAAgB;IAC1B,QAAQ,cAAc;IACtB,cAAc,mBAAmB;IACjC,OAAO,mBAAmB;CAC3B;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,UAAU,EAAE,gBAAgB,CAAC,QAAQ,CAAC;IACtC,eAAe,EAAE,cAAc,CAAC;CACjC;AAED,MAAM,WAAW,kBAAmB,SAAQ,SAAS;IACnD,UAAU,EAAE,gBAAgB,CAAC,cAAc,CAAC;IAC5C,gBAAgB,EAAE,cAAc,CAAC;CAClC;AAED,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,UAAU,EAAE,gBAAgB,CAAC,OAAO,CAAC;IACrC,gBAAgB,EACZ,sBAAsB,GACtB;QACE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACP;AAED,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,aAAa,GAAG,kBAAkB,GAAG,YAAY,CAAC"}
@@ -0,0 +1,28 @@
1
+ export var IdentifyOperation;
2
+ (function (IdentifyOperation) {
3
+ // Base Operations to set values
4
+ IdentifyOperation["SET"] = "$set";
5
+ IdentifyOperation["SET_ONCE"] = "$setOnce";
6
+ // Operations around modifying existing values
7
+ IdentifyOperation["ADD"] = "$add";
8
+ IdentifyOperation["APPEND"] = "$append";
9
+ IdentifyOperation["PREPEND"] = "$prepend";
10
+ IdentifyOperation["REMOVE"] = "$remove";
11
+ // Operations around appending values *if* they aren't present
12
+ IdentifyOperation["PREINSERT"] = "$preInsert";
13
+ IdentifyOperation["POSTINSERT"] = "$postInsert";
14
+ // Operations around removing properties/values
15
+ IdentifyOperation["UNSET"] = "$unset";
16
+ IdentifyOperation["CLEAR_ALL"] = "$clearAll";
17
+ })(IdentifyOperation || (IdentifyOperation = {}));
18
+ /**
19
+ * Strings that have special meaning when used as an event's type
20
+ * and have different specifications.
21
+ */
22
+ export var SpecialEventType;
23
+ (function (SpecialEventType) {
24
+ SpecialEventType["IDENTIFY"] = "$identify";
25
+ SpecialEventType["GROUP_IDENTIFY"] = "$groupidentify";
26
+ SpecialEventType["REVENUE"] = "revenue_amount";
27
+ })(SpecialEventType || (SpecialEventType = {}));
28
+ //# sourceMappingURL=event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/types/event/event.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,iBAkBX;AAlBD,WAAY,iBAAiB;IAC3B,gCAAgC;IAChC,iCAAY,CAAA;IACZ,0CAAqB,CAAA;IAErB,8CAA8C;IAC9C,iCAAY,CAAA;IACZ,uCAAkB,CAAA;IAClB,yCAAoB,CAAA;IACpB,uCAAkB,CAAA;IAElB,8DAA8D;IAC9D,6CAAwB,CAAA;IACxB,+CAA0B,CAAA;IAE1B,+CAA+C;IAC/C,qCAAgB,CAAA;IAChB,4CAAuB,CAAA;AACzB,CAAC,EAlBW,iBAAiB,KAAjB,iBAAiB,QAkB5B;AAuCD;;;GAGG;AACH,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,0CAAsB,CAAA;IACtB,qDAAiC,CAAA;IACjC,8CAA0B,CAAA;AAC5B,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B","sourcesContent":["import { BaseEvent } from './base-event';\nimport { RevenueEventProperties } from '../../revenue';\n\nexport enum IdentifyOperation {\n // Base Operations to set values\n SET = '$set',\n SET_ONCE = '$setOnce',\n\n // Operations around modifying existing values\n ADD = '$add',\n APPEND = '$append',\n PREPEND = '$prepend',\n REMOVE = '$remove',\n\n // Operations around appending values *if* they aren't present\n PREINSERT = '$preInsert',\n POSTINSERT = '$postInsert',\n\n // Operations around removing properties/values\n UNSET = '$unset',\n CLEAR_ALL = '$clearAll',\n}\n\nexport type ValidPropertyType =\n | number\n | string\n | boolean\n | Array<string | number>\n | { [key: string]: ValidPropertyType }\n | Array<{ [key: string]: ValidPropertyType }>;\n\ninterface BaseOperationConfig {\n [key: string]: ValidPropertyType;\n}\n\nexport interface IdentifyUserProperties {\n // Add operations can only take numbers\n [IdentifyOperation.ADD]?: { [key: string]: number };\n\n // This reads the keys of the passed object, but the values are not used\n [IdentifyOperation.UNSET]?: BaseOperationConfig;\n // This option does not read the key as it unsets all user properties\n [IdentifyOperation.CLEAR_ALL]?: any;\n\n // These operations can take numbers, strings, or arrays of both.\n [IdentifyOperation.SET]?: BaseOperationConfig;\n [IdentifyOperation.SET_ONCE]?: BaseOperationConfig;\n [IdentifyOperation.APPEND]?: BaseOperationConfig;\n [IdentifyOperation.PREPEND]?: BaseOperationConfig;\n [IdentifyOperation.POSTINSERT]?: BaseOperationConfig;\n [IdentifyOperation.PREINSERT]?: BaseOperationConfig;\n [IdentifyOperation.REMOVE]?: BaseOperationConfig;\n}\n\nexport type UserProperties =\n | IdentifyUserProperties\n | {\n [key in Exclude<string, IdentifyOperation>]: any;\n };\n\n/**\n * Strings that have special meaning when used as an event's type\n * and have different specifications.\n */\nexport enum SpecialEventType {\n IDENTIFY = '$identify',\n GROUP_IDENTIFY = '$groupidentify',\n REVENUE = 'revenue_amount',\n}\n\nexport interface TrackEvent extends BaseEvent {\n event_type: Exclude<string, SpecialEventType>;\n}\n\nexport interface IdentifyEvent extends BaseEvent {\n event_type: SpecialEventType.IDENTIFY;\n user_properties: UserProperties;\n}\n\nexport interface GroupIdentifyEvent extends BaseEvent {\n event_type: SpecialEventType.GROUP_IDENTIFY;\n group_properties: UserProperties;\n}\n\nexport interface RevenueEvent extends BaseEvent {\n event_type: SpecialEventType.REVENUE;\n event_properties:\n | RevenueEventProperties\n | {\n [key: string]: any;\n };\n}\n\nexport type Event = TrackEvent | IdentifyEvent | GroupIdentifyEvent | RevenueEvent;\n"]}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Ingestion metadata
3
+ */
4
+ export interface IngestionMetadata {
5
+ /** The source name of ingestion metadata e.g. "ampli" */
6
+ sourceName?: string;
7
+ /** The source version of ingestion metadata e.g. "2.0.0" */
8
+ sourceVersion?: string;
9
+ }
10
+ /**
11
+ * Ingestion metadata event property, snake-case
12
+ */
13
+ export interface IngestionMetadataEventProperty {
14
+ /** The source name of ingestion metadata e.g. "ampli" */
15
+ source_name?: string;
16
+ /** The source version of ingestion metadata e.g. "2.0.0" */
17
+ source_version?: string;
18
+ }
19
+ //# sourceMappingURL=ingestion-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingestion-metadata.d.ts","sourceRoot":"","sources":["../../../../src/types/event/ingestion-metadata.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ingestion-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingestion-metadata.js","sourceRoot":"","sources":["../../../../src/types/event/ingestion-metadata.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Ingestion metadata\n */\nexport interface IngestionMetadata {\n /** The source name of ingestion metadata e.g. \"ampli\" */\n sourceName?: string;\n /** The source version of ingestion metadata e.g. \"2.0.0\" */\n sourceVersion?: string;\n}\n\n/**\n * Ingestion metadata event property, snake-case\n */\nexport interface IngestionMetadataEventProperty {\n /** The source name of ingestion metadata e.g. \"ampli\" */\n source_name?: string;\n /** The source version of ingestion metadata e.g. \"2.0.0\" */\n source_version?: string;\n}\n"]}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Tracking plan
3
+ */
4
+ export interface Plan {
5
+ /** The tracking plan branch name e.g. "main" */
6
+ branch?: string;
7
+ /** The tracking plan source e.g. "web" */
8
+ source?: string;
9
+ /** The tracking plan version e.g. "1", "15" */
10
+ version?: string;
11
+ /** The tracking plan version Id e.g. "9ec23ba0-275f-468f-80d1-66b88bff9529" */
12
+ versionId?: string;
13
+ }
14
+ //# sourceMappingURL=plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../../src/types/event/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/types/event/plan.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Tracking plan\n */\nexport interface Plan {\n /** The tracking plan branch name e.g. \"main\" */\n branch?: string;\n /** The tracking plan source e.g. \"web\" */\n source?: string;\n /** The tracking plan version e.g. \"1\", \"15\" */\n version?: string;\n /** The tracking plan version Id e.g. \"9ec23ba0-275f-468f-80d1-66b88bff9529\" */\n versionId?: string;\n}\n"]}
@@ -0,0 +1,3 @@
1
+ import { Result } from './result';
2
+ export type EventCallback = (result: Result) => void;
3
+ //# sourceMappingURL=event-callback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-callback.d.ts","sourceRoot":"","sources":["../../../src/types/event-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=event-callback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-callback.js","sourceRoot":"","sources":["../../../src/types/event-callback.ts"],"names":[],"mappings":"","sourcesContent":["import { Result } from './result';\n\nexport type EventCallback = (result: Result) => void;\n"]}