@customerio/cdp-analytics-browser 0.0.1

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 (516) hide show
  1. package/LICENSE.MD +22 -0
  2. package/README.md +21 -0
  3. package/dist/cjs/browser/browser-umd.js +20 -0
  4. package/dist/cjs/browser/browser-umd.js.map +1 -0
  5. package/dist/cjs/browser/index.js +310 -0
  6. package/dist/cjs/browser/index.js.map +1 -0
  7. package/dist/cjs/browser/standalone-analytics.js +60 -0
  8. package/dist/cjs/browser/standalone-analytics.js.map +1 -0
  9. package/dist/cjs/browser/standalone.js +83 -0
  10. package/dist/cjs/browser/standalone.js.map +1 -0
  11. package/dist/cjs/core/analytics/index.js +544 -0
  12. package/dist/cjs/core/analytics/index.js.map +1 -0
  13. package/dist/cjs/core/analytics/interfaces.js +3 -0
  14. package/dist/cjs/core/analytics/interfaces.js.map +1 -0
  15. package/dist/cjs/core/arguments-resolver/index.js +106 -0
  16. package/dist/cjs/core/arguments-resolver/index.js.map +1 -0
  17. package/dist/cjs/core/auto-track.js +108 -0
  18. package/dist/cjs/core/auto-track.js.map +1 -0
  19. package/dist/cjs/core/buffer/index.js +237 -0
  20. package/dist/cjs/core/buffer/index.js.map +1 -0
  21. package/dist/cjs/core/buffer/snippet.js +30 -0
  22. package/dist/cjs/core/buffer/snippet.js.map +1 -0
  23. package/dist/cjs/core/callback/index.js +7 -0
  24. package/dist/cjs/core/callback/index.js.map +1 -0
  25. package/dist/cjs/core/connection/index.js +16 -0
  26. package/dist/cjs/core/connection/index.js.map +1 -0
  27. package/dist/cjs/core/context/index.js +19 -0
  28. package/dist/cjs/core/context/index.js.map +1 -0
  29. package/dist/cjs/core/environment/index.js +12 -0
  30. package/dist/cjs/core/environment/index.js.map +1 -0
  31. package/dist/cjs/core/events/index.js +134 -0
  32. package/dist/cjs/core/events/index.js.map +1 -0
  33. package/dist/cjs/core/events/interfaces.js +3 -0
  34. package/dist/cjs/core/events/interfaces.js.map +1 -0
  35. package/dist/cjs/core/inspector/index.js +14 -0
  36. package/dist/cjs/core/inspector/index.js.map +1 -0
  37. package/dist/cjs/core/plugin/index.js +3 -0
  38. package/dist/cjs/core/plugin/index.js.map +1 -0
  39. package/dist/cjs/core/query-string/gracefulDecodeURIComponent.js +20 -0
  40. package/dist/cjs/core/query-string/gracefulDecodeURIComponent.js.map +1 -0
  41. package/dist/cjs/core/query-string/index.js +48 -0
  42. package/dist/cjs/core/query-string/index.js.map +1 -0
  43. package/dist/cjs/core/query-string/pickPrefix.js +20 -0
  44. package/dist/cjs/core/query-string/pickPrefix.js.map +1 -0
  45. package/dist/cjs/core/queue/event-queue.js +15 -0
  46. package/dist/cjs/core/queue/event-queue.js.map +1 -0
  47. package/dist/cjs/core/stats/index.js +23 -0
  48. package/dist/cjs/core/stats/index.js.map +1 -0
  49. package/dist/cjs/core/stats/remote-metrics.js +107 -0
  50. package/dist/cjs/core/stats/remote-metrics.js.map +1 -0
  51. package/dist/cjs/core/user/index.js +422 -0
  52. package/dist/cjs/core/user/index.js.map +1 -0
  53. package/dist/cjs/core/user/tld.js +64 -0
  54. package/dist/cjs/core/user/tld.js.map +1 -0
  55. package/dist/cjs/generated/version.js +6 -0
  56. package/dist/cjs/generated/version.js.map +1 -0
  57. package/dist/cjs/index.js +11 -0
  58. package/dist/cjs/index.js.map +1 -0
  59. package/dist/cjs/lib/bind-all.js +17 -0
  60. package/dist/cjs/lib/bind-all.js.map +1 -0
  61. package/dist/cjs/lib/browser-polyfill.js +22 -0
  62. package/dist/cjs/lib/browser-polyfill.js.map +1 -0
  63. package/dist/cjs/lib/create-deferred.js +21 -0
  64. package/dist/cjs/lib/create-deferred.js.map +1 -0
  65. package/dist/cjs/lib/csp-detection.js +33 -0
  66. package/dist/cjs/lib/csp-detection.js.map +1 -0
  67. package/dist/cjs/lib/embedded-write-key.js +22 -0
  68. package/dist/cjs/lib/embedded-write-key.js.map +1 -0
  69. package/dist/cjs/lib/fetch.js +19 -0
  70. package/dist/cjs/lib/fetch.js.map +1 -0
  71. package/dist/cjs/lib/get-global.js +21 -0
  72. package/dist/cjs/lib/get-global.js.map +1 -0
  73. package/dist/cjs/lib/get-process-env.js +15 -0
  74. package/dist/cjs/lib/get-process-env.js.map +1 -0
  75. package/dist/cjs/lib/group-by.js +28 -0
  76. package/dist/cjs/lib/group-by.js.map +1 -0
  77. package/dist/cjs/lib/is-plan-event-enabled.js +20 -0
  78. package/dist/cjs/lib/is-plan-event-enabled.js.map +1 -0
  79. package/dist/cjs/lib/is-thenable.js +15 -0
  80. package/dist/cjs/lib/is-thenable.js.map +1 -0
  81. package/dist/cjs/lib/load-script.js +56 -0
  82. package/dist/cjs/lib/load-script.js.map +1 -0
  83. package/dist/cjs/lib/merged-options.js +31 -0
  84. package/dist/cjs/lib/merged-options.js.map +1 -0
  85. package/dist/cjs/lib/on-page-leave.js +35 -0
  86. package/dist/cjs/lib/on-page-leave.js.map +1 -0
  87. package/dist/cjs/lib/p-while.js +25 -0
  88. package/dist/cjs/lib/p-while.js.map +1 -0
  89. package/dist/cjs/lib/parse-cdn.js +79 -0
  90. package/dist/cjs/lib/parse-cdn.js.map +1 -0
  91. package/dist/cjs/lib/priority-queue/backoff.js +10 -0
  92. package/dist/cjs/lib/priority-queue/backoff.js.map +1 -0
  93. package/dist/cjs/lib/priority-queue/index.js +7 -0
  94. package/dist/cjs/lib/priority-queue/index.js.map +1 -0
  95. package/dist/cjs/lib/priority-queue/persisted.js +108 -0
  96. package/dist/cjs/lib/priority-queue/persisted.js.map +1 -0
  97. package/dist/cjs/lib/sleep.js +10 -0
  98. package/dist/cjs/lib/sleep.js.map +1 -0
  99. package/dist/cjs/lib/to-facade.js +32 -0
  100. package/dist/cjs/lib/to-facade.js.map +1 -0
  101. package/dist/cjs/node/index.js +43 -0
  102. package/dist/cjs/node/index.js.map +1 -0
  103. package/dist/cjs/node/node.browser.js +13 -0
  104. package/dist/cjs/node/node.browser.js.map +1 -0
  105. package/dist/cjs/plugins/ajs-destination/index.js +345 -0
  106. package/dist/cjs/plugins/ajs-destination/index.js.map +1 -0
  107. package/dist/cjs/plugins/ajs-destination/loader.js +110 -0
  108. package/dist/cjs/plugins/ajs-destination/loader.js.map +1 -0
  109. package/dist/cjs/plugins/ajs-destination/types.js +3 -0
  110. package/dist/cjs/plugins/ajs-destination/types.js.map +1 -0
  111. package/dist/cjs/plugins/ajs-destination/utils.js +23 -0
  112. package/dist/cjs/plugins/ajs-destination/utils.js.map +1 -0
  113. package/dist/cjs/plugins/analytics-node/index.js +65 -0
  114. package/dist/cjs/plugins/analytics-node/index.js.map +1 -0
  115. package/dist/cjs/plugins/customerio/batched-dispatcher.js +102 -0
  116. package/dist/cjs/plugins/customerio/batched-dispatcher.js.map +1 -0
  117. package/dist/cjs/plugins/customerio/fetch-dispatcher.js +18 -0
  118. package/dist/cjs/plugins/customerio/fetch-dispatcher.js.map +1 -0
  119. package/dist/cjs/plugins/customerio/index.js +97 -0
  120. package/dist/cjs/plugins/customerio/index.js.map +1 -0
  121. package/dist/cjs/plugins/customerio/normalize.js +176 -0
  122. package/dist/cjs/plugins/customerio/normalize.js.map +1 -0
  123. package/dist/cjs/plugins/customerio/schedule-flush.js +76 -0
  124. package/dist/cjs/plugins/customerio/schedule-flush.js.map +1 -0
  125. package/dist/cjs/plugins/legacy-video-plugins/index.js +25 -0
  126. package/dist/cjs/plugins/legacy-video-plugins/index.js.map +1 -0
  127. package/dist/cjs/plugins/middleware/index.js +124 -0
  128. package/dist/cjs/plugins/middleware/index.js.map +1 -0
  129. package/dist/cjs/plugins/page-enrichment/index.js +98 -0
  130. package/dist/cjs/plugins/page-enrichment/index.js.map +1 -0
  131. package/dist/cjs/plugins/remote-loader/index.js +211 -0
  132. package/dist/cjs/plugins/remote-loader/index.js.map +1 -0
  133. package/dist/cjs/plugins/remote-middleware/index.js +70 -0
  134. package/dist/cjs/plugins/remote-middleware/index.js.map +1 -0
  135. package/dist/cjs/plugins/routing-middleware/index.js +26 -0
  136. package/dist/cjs/plugins/routing-middleware/index.js.map +1 -0
  137. package/dist/cjs/plugins/schema-filter/index.js +67 -0
  138. package/dist/cjs/plugins/schema-filter/index.js.map +1 -0
  139. package/dist/cjs/plugins/validation/index.js +70 -0
  140. package/dist/cjs/plugins/validation/index.js.map +1 -0
  141. package/dist/pkg/browser/browser-umd.js +17 -0
  142. package/dist/pkg/browser/browser-umd.js.map +1 -0
  143. package/dist/pkg/browser/index.js +306 -0
  144. package/dist/pkg/browser/index.js.map +1 -0
  145. package/dist/pkg/browser/standalone-analytics.js +56 -0
  146. package/dist/pkg/browser/standalone-analytics.js.map +1 -0
  147. package/dist/pkg/browser/standalone.js +81 -0
  148. package/dist/pkg/browser/standalone.js.map +1 -0
  149. package/dist/pkg/core/analytics/index.js +541 -0
  150. package/dist/pkg/core/analytics/index.js.map +1 -0
  151. package/dist/pkg/core/analytics/interfaces.js +2 -0
  152. package/dist/pkg/core/analytics/interfaces.js.map +1 -0
  153. package/dist/pkg/core/arguments-resolver/index.js +99 -0
  154. package/dist/pkg/core/arguments-resolver/index.js.map +1 -0
  155. package/dist/pkg/core/auto-track.js +103 -0
  156. package/dist/pkg/core/auto-track.js.map +1 -0
  157. package/dist/pkg/core/buffer/index.js +231 -0
  158. package/dist/pkg/core/buffer/index.js.map +1 -0
  159. package/dist/pkg/core/buffer/snippet.js +25 -0
  160. package/dist/pkg/core/buffer/snippet.js.map +1 -0
  161. package/dist/pkg/core/callback/index.js +2 -0
  162. package/dist/pkg/core/callback/index.js.map +1 -0
  163. package/dist/pkg/core/connection/index.js +11 -0
  164. package/dist/pkg/core/connection/index.js.map +1 -0
  165. package/dist/pkg/core/context/index.js +16 -0
  166. package/dist/pkg/core/context/index.js.map +1 -0
  167. package/dist/pkg/core/environment/index.js +7 -0
  168. package/dist/pkg/core/environment/index.js.map +1 -0
  169. package/dist/pkg/core/events/index.js +131 -0
  170. package/dist/pkg/core/events/index.js.map +1 -0
  171. package/dist/pkg/core/events/interfaces.js +2 -0
  172. package/dist/pkg/core/events/interfaces.js.map +1 -0
  173. package/dist/pkg/core/inspector/index.js +10 -0
  174. package/dist/pkg/core/inspector/index.js.map +1 -0
  175. package/dist/pkg/core/plugin/index.js +2 -0
  176. package/dist/pkg/core/plugin/index.js.map +1 -0
  177. package/dist/pkg/core/query-string/gracefulDecodeURIComponent.js +16 -0
  178. package/dist/pkg/core/query-string/gracefulDecodeURIComponent.js.map +1 -0
  179. package/dist/pkg/core/query-string/index.js +44 -0
  180. package/dist/pkg/core/query-string/index.js.map +1 -0
  181. package/dist/pkg/core/query-string/pickPrefix.js +16 -0
  182. package/dist/pkg/core/query-string/pickPrefix.js.map +1 -0
  183. package/dist/pkg/core/queue/event-queue.js +12 -0
  184. package/dist/pkg/core/queue/event-queue.js.map +1 -0
  185. package/dist/pkg/core/stats/index.js +20 -0
  186. package/dist/pkg/core/stats/index.js.map +1 -0
  187. package/dist/pkg/core/stats/remote-metrics.js +104 -0
  188. package/dist/pkg/core/stats/remote-metrics.js.map +1 -0
  189. package/dist/pkg/core/user/index.js +418 -0
  190. package/dist/pkg/core/user/index.js.map +1 -0
  191. package/dist/pkg/core/user/tld.js +59 -0
  192. package/dist/pkg/core/user/tld.js.map +1 -0
  193. package/dist/pkg/generated/version.js +3 -0
  194. package/dist/pkg/generated/version.js.map +1 -0
  195. package/dist/pkg/index.js +8 -0
  196. package/dist/pkg/index.js.map +1 -0
  197. package/dist/pkg/lib/bind-all.js +14 -0
  198. package/dist/pkg/lib/bind-all.js.map +1 -0
  199. package/dist/pkg/lib/browser-polyfill.js +18 -0
  200. package/dist/pkg/lib/browser-polyfill.js.map +1 -0
  201. package/dist/pkg/lib/create-deferred.js +17 -0
  202. package/dist/pkg/lib/create-deferred.js.map +1 -0
  203. package/dist/pkg/lib/csp-detection.js +29 -0
  204. package/dist/pkg/lib/csp-detection.js.map +1 -0
  205. package/dist/pkg/lib/embedded-write-key.js +18 -0
  206. package/dist/pkg/lib/embedded-write-key.js.map +1 -0
  207. package/dist/pkg/lib/fetch.js +14 -0
  208. package/dist/pkg/lib/fetch.js.map +1 -0
  209. package/dist/pkg/lib/get-global.js +17 -0
  210. package/dist/pkg/lib/get-global.js.map +1 -0
  211. package/dist/pkg/lib/get-process-env.js +11 -0
  212. package/dist/pkg/lib/get-process-env.js.map +1 -0
  213. package/dist/pkg/lib/group-by.js +24 -0
  214. package/dist/pkg/lib/group-by.js.map +1 -0
  215. package/dist/pkg/lib/is-plan-event-enabled.js +16 -0
  216. package/dist/pkg/lib/is-plan-event-enabled.js.map +1 -0
  217. package/dist/pkg/lib/is-thenable.js +11 -0
  218. package/dist/pkg/lib/is-thenable.js.map +1 -0
  219. package/dist/pkg/lib/load-script.js +51 -0
  220. package/dist/pkg/lib/load-script.js.map +1 -0
  221. package/dist/pkg/lib/merged-options.js +27 -0
  222. package/dist/pkg/lib/merged-options.js.map +1 -0
  223. package/dist/pkg/lib/on-page-leave.js +31 -0
  224. package/dist/pkg/lib/on-page-leave.js.map +1 -0
  225. package/dist/pkg/lib/p-while.js +21 -0
  226. package/dist/pkg/lib/p-while.js.map +1 -0
  227. package/dist/pkg/lib/parse-cdn.js +72 -0
  228. package/dist/pkg/lib/parse-cdn.js.map +1 -0
  229. package/dist/pkg/lib/priority-queue/backoff.js +6 -0
  230. package/dist/pkg/lib/priority-queue/backoff.js.map +1 -0
  231. package/dist/pkg/lib/priority-queue/index.js +3 -0
  232. package/dist/pkg/lib/priority-queue/index.js.map +1 -0
  233. package/dist/pkg/lib/priority-queue/persisted.js +105 -0
  234. package/dist/pkg/lib/priority-queue/persisted.js.map +1 -0
  235. package/dist/pkg/lib/sleep.js +6 -0
  236. package/dist/pkg/lib/sleep.js.map +1 -0
  237. package/dist/pkg/lib/to-facade.js +28 -0
  238. package/dist/pkg/lib/to-facade.js.map +1 -0
  239. package/dist/pkg/node/index.js +40 -0
  240. package/dist/pkg/node/index.js.map +1 -0
  241. package/dist/pkg/node/node.browser.js +10 -0
  242. package/dist/pkg/node/node.browser.js.map +1 -0
  243. package/dist/pkg/plugins/ajs-destination/index.js +341 -0
  244. package/dist/pkg/plugins/ajs-destination/index.js.map +1 -0
  245. package/dist/pkg/plugins/ajs-destination/loader.js +102 -0
  246. package/dist/pkg/plugins/ajs-destination/loader.js.map +1 -0
  247. package/dist/pkg/plugins/ajs-destination/types.js +2 -0
  248. package/dist/pkg/plugins/ajs-destination/types.js.map +1 -0
  249. package/dist/pkg/plugins/ajs-destination/utils.js +18 -0
  250. package/dist/pkg/plugins/ajs-destination/utils.js.map +1 -0
  251. package/dist/pkg/plugins/analytics-node/index.js +60 -0
  252. package/dist/pkg/plugins/analytics-node/index.js.map +1 -0
  253. package/dist/pkg/plugins/customerio/batched-dispatcher.js +99 -0
  254. package/dist/pkg/plugins/customerio/batched-dispatcher.js.map +1 -0
  255. package/dist/pkg/plugins/customerio/fetch-dispatcher.js +15 -0
  256. package/dist/pkg/plugins/customerio/fetch-dispatcher.js.map +1 -0
  257. package/dist/pkg/plugins/customerio/index.js +93 -0
  258. package/dist/pkg/plugins/customerio/index.js.map +1 -0
  259. package/dist/pkg/plugins/customerio/normalize.js +168 -0
  260. package/dist/pkg/plugins/customerio/normalize.js.map +1 -0
  261. package/dist/pkg/plugins/customerio/schedule-flush.js +72 -0
  262. package/dist/pkg/plugins/customerio/schedule-flush.js.map +1 -0
  263. package/dist/pkg/plugins/legacy-video-plugins/index.js +25 -0
  264. package/dist/pkg/plugins/legacy-video-plugins/index.js.map +1 -0
  265. package/dist/pkg/plugins/middleware/index.js +119 -0
  266. package/dist/pkg/plugins/middleware/index.js.map +1 -0
  267. package/dist/pkg/plugins/page-enrichment/index.js +93 -0
  268. package/dist/pkg/plugins/page-enrichment/index.js.map +1 -0
  269. package/dist/pkg/plugins/remote-loader/index.js +207 -0
  270. package/dist/pkg/plugins/remote-loader/index.js.map +1 -0
  271. package/dist/pkg/plugins/remote-middleware/index.js +66 -0
  272. package/dist/pkg/plugins/remote-middleware/index.js.map +1 -0
  273. package/dist/pkg/plugins/routing-middleware/index.js +21 -0
  274. package/dist/pkg/plugins/routing-middleware/index.js.map +1 -0
  275. package/dist/pkg/plugins/schema-filter/index.js +63 -0
  276. package/dist/pkg/plugins/schema-filter/index.js.map +1 -0
  277. package/dist/pkg/plugins/validation/index.js +63 -0
  278. package/dist/pkg/plugins/validation/index.js.map +1 -0
  279. package/dist/types/browser/browser-umd.d.ts +2 -0
  280. package/dist/types/browser/browser-umd.d.ts.map +1 -0
  281. package/dist/types/browser/index.d.ts +86 -0
  282. package/dist/types/browser/index.d.ts.map +1 -0
  283. package/dist/types/browser/standalone-analytics.d.ts +16 -0
  284. package/dist/types/browser/standalone-analytics.d.ts.map +1 -0
  285. package/dist/types/browser/standalone.d.ts +2 -0
  286. package/dist/types/browser/standalone.d.ts.map +1 -0
  287. package/dist/types/core/analytics/index.d.ts +116 -0
  288. package/dist/types/core/analytics/index.d.ts.map +1 -0
  289. package/dist/types/core/analytics/interfaces.d.ts +77 -0
  290. package/dist/types/core/analytics/interfaces.d.ts.map +1 -0
  291. package/dist/types/core/arguments-resolver/index.d.ts +34 -0
  292. package/dist/types/core/arguments-resolver/index.d.ts.map +1 -0
  293. package/dist/types/core/auto-track.d.ts +10 -0
  294. package/dist/types/core/auto-track.d.ts.map +1 -0
  295. package/dist/types/core/buffer/index.d.ts +86 -0
  296. package/dist/types/core/buffer/index.d.ts.map +1 -0
  297. package/dist/types/core/buffer/snippet.d.ts +10 -0
  298. package/dist/types/core/buffer/snippet.d.ts.map +1 -0
  299. package/dist/types/core/callback/index.d.ts +2 -0
  300. package/dist/types/core/callback/index.d.ts.map +1 -0
  301. package/dist/types/core/connection/index.d.ts +3 -0
  302. package/dist/types/core/connection/index.d.ts.map +1 -0
  303. package/dist/types/core/context/index.d.ts +9 -0
  304. package/dist/types/core/context/index.d.ts.map +1 -0
  305. package/dist/types/core/environment/index.d.ts +3 -0
  306. package/dist/types/core/environment/index.d.ts.map +1 -0
  307. package/dist/types/core/events/index.d.ts +21 -0
  308. package/dist/types/core/events/index.d.ts.map +1 -0
  309. package/dist/types/core/events/interfaces.d.ts +9 -0
  310. package/dist/types/core/events/interfaces.d.ts.map +1 -0
  311. package/dist/types/core/inspector/index.d.ts +3 -0
  312. package/dist/types/core/inspector/index.d.ts.map +1 -0
  313. package/dist/types/core/plugin/index.d.ts +11 -0
  314. package/dist/types/core/plugin/index.d.ts.map +1 -0
  315. package/dist/types/core/query-string/gracefulDecodeURIComponent.d.ts +9 -0
  316. package/dist/types/core/query-string/gracefulDecodeURIComponent.d.ts.map +1 -0
  317. package/dist/types/core/query-string/index.d.ts +7 -0
  318. package/dist/types/core/query-string/index.d.ts.map +1 -0
  319. package/dist/types/core/query-string/pickPrefix.d.ts +9 -0
  320. package/dist/types/core/query-string/pickPrefix.d.ts.map +1 -0
  321. package/dist/types/core/queue/event-queue.d.ts +8 -0
  322. package/dist/types/core/queue/event-queue.d.ts.map +1 -0
  323. package/dist/types/core/stats/index.d.ts +7 -0
  324. package/dist/types/core/stats/index.d.ts.map +1 -0
  325. package/dist/types/core/stats/remote-metrics.d.ts +29 -0
  326. package/dist/types/core/stats/remote-metrics.d.ts.map +1 -0
  327. package/dist/types/core/user/index.d.ts +128 -0
  328. package/dist/types/core/user/index.d.ts.map +1 -0
  329. package/dist/types/core/user/tld.d.ts +2 -0
  330. package/dist/types/core/user/tld.d.ts.map +1 -0
  331. package/dist/types/generated/version.d.ts +2 -0
  332. package/dist/types/generated/version.d.ts.map +1 -0
  333. package/dist/types/index.d.ts +9 -0
  334. package/dist/types/index.d.ts.map +1 -0
  335. package/dist/types/lib/bind-all.d.ts +4 -0
  336. package/dist/types/lib/bind-all.d.ts.map +1 -0
  337. package/dist/types/lib/browser-polyfill.d.ts +2 -0
  338. package/dist/types/lib/browser-polyfill.d.ts.map +1 -0
  339. package/dist/types/lib/create-deferred.d.ts +9 -0
  340. package/dist/types/lib/create-deferred.d.ts.map +1 -0
  341. package/dist/types/lib/csp-detection.d.ts +4 -0
  342. package/dist/types/lib/csp-detection.d.ts.map +1 -0
  343. package/dist/types/lib/embedded-write-key.d.ts +7 -0
  344. package/dist/types/lib/embedded-write-key.d.ts.map +1 -0
  345. package/dist/types/lib/fetch.d.ts +5 -0
  346. package/dist/types/lib/fetch.d.ts.map +1 -0
  347. package/dist/types/lib/get-global.d.ts +2 -0
  348. package/dist/types/lib/get-global.d.ts.map +1 -0
  349. package/dist/types/lib/get-process-env.d.ts +8 -0
  350. package/dist/types/lib/get-process-env.d.ts.map +1 -0
  351. package/dist/types/lib/group-by.d.ts +4 -0
  352. package/dist/types/lib/group-by.d.ts.map +1 -0
  353. package/dist/types/lib/is-plan-event-enabled.d.ts +9 -0
  354. package/dist/types/lib/is-plan-event-enabled.d.ts.map +1 -0
  355. package/dist/types/lib/is-thenable.d.ts +6 -0
  356. package/dist/types/lib/is-thenable.d.ts.map +1 -0
  357. package/dist/types/lib/load-script.d.ts +3 -0
  358. package/dist/types/lib/load-script.d.ts.map +1 -0
  359. package/dist/types/lib/merged-options.d.ts +13 -0
  360. package/dist/types/lib/merged-options.d.ts.map +1 -0
  361. package/dist/types/lib/on-page-leave.d.ts +11 -0
  362. package/dist/types/lib/on-page-leave.d.ts.map +1 -0
  363. package/dist/types/lib/p-while.d.ts +2 -0
  364. package/dist/types/lib/p-while.d.ts.map +1 -0
  365. package/dist/types/lib/parse-cdn.d.ts +10 -0
  366. package/dist/types/lib/parse-cdn.d.ts.map +1 -0
  367. package/dist/types/lib/priority-queue/backoff.d.ts +13 -0
  368. package/dist/types/lib/priority-queue/backoff.d.ts.map +1 -0
  369. package/dist/types/lib/priority-queue/index.d.ts +3 -0
  370. package/dist/types/lib/priority-queue/index.d.ts.map +1 -0
  371. package/dist/types/lib/priority-queue/persisted.d.ts +6 -0
  372. package/dist/types/lib/priority-queue/persisted.d.ts.map +1 -0
  373. package/dist/types/lib/sleep.d.ts +2 -0
  374. package/dist/types/lib/sleep.d.ts.map +1 -0
  375. package/dist/types/lib/to-facade.d.ts +7 -0
  376. package/dist/types/lib/to-facade.d.ts.map +1 -0
  377. package/dist/types/node/index.d.ts +8 -0
  378. package/dist/types/node/index.d.ts.map +1 -0
  379. package/dist/types/node/node.browser.d.ts +4 -0
  380. package/dist/types/node/node.browser.d.ts.map +1 -0
  381. package/dist/types/plugins/ajs-destination/index.d.ts +42 -0
  382. package/dist/types/plugins/ajs-destination/index.d.ts.map +1 -0
  383. package/dist/types/plugins/ajs-destination/loader.d.ts +12 -0
  384. package/dist/types/plugins/ajs-destination/loader.d.ts.map +1 -0
  385. package/dist/types/plugins/ajs-destination/types.d.ts +36 -0
  386. package/dist/types/plugins/ajs-destination/types.d.ts.map +1 -0
  387. package/dist/types/plugins/ajs-destination/utils.d.ts +5 -0
  388. package/dist/types/plugins/ajs-destination/utils.d.ts.map +1 -0
  389. package/dist/types/plugins/analytics-node/index.d.ts +12 -0
  390. package/dist/types/plugins/analytics-node/index.d.ts.map +1 -0
  391. package/dist/types/plugins/customerio/batched-dispatcher.d.ts +8 -0
  392. package/dist/types/plugins/customerio/batched-dispatcher.d.ts.map +1 -0
  393. package/dist/types/plugins/customerio/fetch-dispatcher.d.ts +8 -0
  394. package/dist/types/plugins/customerio/fetch-dispatcher.d.ts.map +1 -0
  395. package/dist/types/plugins/customerio/index.d.ts +26 -0
  396. package/dist/types/plugins/customerio/index.d.ts.map +1 -0
  397. package/dist/types/plugins/customerio/normalize.d.ts +12 -0
  398. package/dist/types/plugins/customerio/normalize.d.ts.map +1 -0
  399. package/dist/types/plugins/customerio/schedule-flush.d.ts +5 -0
  400. package/dist/types/plugins/customerio/schedule-flush.d.ts.map +1 -0
  401. package/dist/types/plugins/legacy-video-plugins/index.d.ts +3 -0
  402. package/dist/types/plugins/legacy-video-plugins/index.d.ts.map +1 -0
  403. package/dist/types/plugins/middleware/index.d.ts +18 -0
  404. package/dist/types/plugins/middleware/index.d.ts.map +1 -0
  405. package/dist/types/plugins/page-enrichment/index.d.ts +21 -0
  406. package/dist/types/plugins/page-enrichment/index.d.ts.map +1 -0
  407. package/dist/types/plugins/remote-loader/index.d.ts +43 -0
  408. package/dist/types/plugins/remote-loader/index.d.ts.map +1 -0
  409. package/dist/types/plugins/remote-middleware/index.d.ts +5 -0
  410. package/dist/types/plugins/remote-middleware/index.d.ts.map +1 -0
  411. package/dist/types/plugins/routing-middleware/index.d.ts +13 -0
  412. package/dist/types/plugins/routing-middleware/index.d.ts.map +1 -0
  413. package/dist/types/plugins/schema-filter/index.d.ts +5 -0
  414. package/dist/types/plugins/schema-filter/index.d.ts.map +1 -0
  415. package/dist/types/plugins/validation/index.d.ts +7 -0
  416. package/dist/types/plugins/validation/index.d.ts.map +1 -0
  417. package/dist/umd/799.bundle.f804d7b881cf284fbd56.js +1 -0
  418. package/dist/umd/799.bundle.f804d7b881cf284fbd56.js.gz +0 -0
  419. package/dist/umd/870.bundle.e0b7bfa4797bb87217c9.js +1 -0
  420. package/dist/umd/870.bundle.e0b7bfa4797bb87217c9.js.gz +0 -0
  421. package/dist/umd/ajs-destination.bundle.847bf422720e5616c9d5.js +1 -0
  422. package/dist/umd/ajs-destination.bundle.847bf422720e5616c9d5.js.gz +0 -0
  423. package/dist/umd/auto-track.bundle.758629f7a47544af2d44.js +1 -0
  424. package/dist/umd/auto-track.bundle.758629f7a47544af2d44.js.gz +0 -0
  425. package/dist/umd/index.js +1 -0
  426. package/dist/umd/index.js.gz +0 -0
  427. package/dist/umd/legacyVideos.bundle.d7ac356ab28fab36e111.js +1 -0
  428. package/dist/umd/legacyVideos.bundle.d7ac356ab28fab36e111.js.gz +0 -0
  429. package/dist/umd/queryString.bundle.913501e40ce64ef92884.js +1 -0
  430. package/dist/umd/queryString.bundle.913501e40ce64ef92884.js.gz +0 -0
  431. package/dist/umd/remoteMiddleware.bundle.3bc569811c4c2c93d90c.js +1 -0
  432. package/dist/umd/remoteMiddleware.bundle.3bc569811c4c2c93d90c.js.gz +0 -0
  433. package/dist/umd/schemaFilter.bundle.bb8180ae95843c8f138e.js +1 -0
  434. package/dist/umd/schemaFilter.bundle.bb8180ae95843c8f138e.js.gz +0 -0
  435. package/dist/umd/standalone.js +1 -0
  436. package/dist/umd/standalone.js.gz +0 -0
  437. package/dist/umd/tsub-middleware.bundle.af0f402084ddd2b605cc.js +1 -0
  438. package/dist/umd/tsub-middleware.bundle.af0f402084ddd2b605cc.js.gz +0 -0
  439. package/package.json +103 -0
  440. package/src/browser/browser-umd.ts +19 -0
  441. package/src/browser/index.ts +397 -0
  442. package/src/browser/standalone-analytics.ts +74 -0
  443. package/src/browser/standalone.ts +78 -0
  444. package/src/core/analytics/index.ts +567 -0
  445. package/src/core/analytics/interfaces.ts +100 -0
  446. package/src/core/arguments-resolver/index.ts +166 -0
  447. package/src/core/auto-track.ts +152 -0
  448. package/src/core/buffer/index.ts +289 -0
  449. package/src/core/buffer/snippet.ts +43 -0
  450. package/src/core/callback/index.ts +1 -0
  451. package/src/core/connection/index.ts +13 -0
  452. package/src/core/context/index.ts +21 -0
  453. package/src/core/environment/index.ts +7 -0
  454. package/src/core/events/index.ts +254 -0
  455. package/src/core/events/interfaces.ts +36 -0
  456. package/src/core/inspector/index.ts +14 -0
  457. package/src/core/plugin/index.ts +12 -0
  458. package/src/core/query-string/gracefulDecodeURIComponent.ts +16 -0
  459. package/src/core/query-string/index.ts +64 -0
  460. package/src/core/query-string/pickPrefix.ts +20 -0
  461. package/src/core/queue/event-queue.ts +11 -0
  462. package/src/core/stats/index.ts +15 -0
  463. package/src/core/stats/remote-metrics.ts +137 -0
  464. package/src/core/user/index.ts +534 -0
  465. package/src/core/user/tld.ts +65 -0
  466. package/src/generated/version.ts +2 -0
  467. package/src/index.ts +10 -0
  468. package/src/lib/bind-all.ts +19 -0
  469. package/src/lib/browser-polyfill.ts +23 -0
  470. package/src/lib/create-deferred.ts +16 -0
  471. package/src/lib/csp-detection.ts +26 -0
  472. package/src/lib/embedded-write-key.ts +24 -0
  473. package/src/lib/fetch.ts +10 -0
  474. package/src/lib/get-global.ts +16 -0
  475. package/src/lib/get-process-env.ts +11 -0
  476. package/src/lib/group-by.ts +30 -0
  477. package/src/lib/is-plan-event-enabled.ts +20 -0
  478. package/src/lib/is-thenable.ts +9 -0
  479. package/src/lib/load-script.ts +66 -0
  480. package/src/lib/merged-options.ts +46 -0
  481. package/src/lib/on-page-leave.ts +29 -0
  482. package/src/lib/p-while.ts +12 -0
  483. package/src/lib/parse-cdn.ts +85 -0
  484. package/src/lib/priority-queue/backoff.ts +24 -0
  485. package/src/lib/priority-queue/index.ts +6 -0
  486. package/src/lib/priority-queue/persisted.ts +127 -0
  487. package/src/lib/sleep.ts +4 -0
  488. package/src/lib/to-facade.ts +53 -0
  489. package/src/node/index.ts +36 -0
  490. package/src/node/node.browser.ts +7 -0
  491. package/src/plugins/ajs-destination/index.ts +388 -0
  492. package/src/plugins/ajs-destination/loader.ts +127 -0
  493. package/src/plugins/ajs-destination/types.ts +44 -0
  494. package/src/plugins/ajs-destination/utils.ts +34 -0
  495. package/src/plugins/analytics-node/index.ts +64 -0
  496. package/src/plugins/customerio/batched-dispatcher.ts +115 -0
  497. package/src/plugins/customerio/fetch-dispatcher.ts +24 -0
  498. package/src/plugins/customerio/index.ts +142 -0
  499. package/src/plugins/customerio/normalize.ts +223 -0
  500. package/src/plugins/customerio/schedule-flush.ts +58 -0
  501. package/src/plugins/legacy-video-plugins/index.ts +16 -0
  502. package/src/plugins/middleware/index.ts +131 -0
  503. package/src/plugins/page-enrichment/index.ts +127 -0
  504. package/src/plugins/remote-loader/index.ts +240 -0
  505. package/src/plugins/remote-middleware/index.ts +44 -0
  506. package/src/plugins/routing-middleware/index.ts +37 -0
  507. package/src/plugins/schema-filter/index.ts +90 -0
  508. package/src/plugins/validation/index.ts +80 -0
  509. package/src/test-helpers/browser-storage.ts +72 -0
  510. package/src/test-helpers/factories.ts +18 -0
  511. package/src/test-helpers/fetch-parse.ts +8 -0
  512. package/src/test-helpers/fixtures/cdn-settings.ts +299 -0
  513. package/src/test-helpers/fixtures/classic-destination.ts +25 -0
  514. package/src/test-helpers/fixtures/create-fetch-method.ts +24 -0
  515. package/src/test-helpers/test-writekeys.ts +5 -0
  516. package/src/test-helpers/type-assertions.ts +11 -0
@@ -0,0 +1,63 @@
1
+ import { __assign } from "tslib";
2
+ import { isPlanEventEnabled } from '../../lib/is-plan-event-enabled';
3
+ function disabledActionDestinations(plan, settings) {
4
+ var _a, _b;
5
+ if (!plan || !Object.keys(plan)) {
6
+ return {};
7
+ }
8
+ var disabledIntegrations = plan.integrations
9
+ ? Object.keys(plan.integrations).filter(function (i) { return plan.integrations[i] === false; })
10
+ : [];
11
+ // This accounts for cases like Fullstory, where the settings.integrations
12
+ // contains a "Fullstory" object but settings.remotePlugins contains "Fullstory (Actions)"
13
+ var disabledRemotePlugins = [];
14
+ ((_a = settings.remotePlugins) !== null && _a !== void 0 ? _a : []).forEach(function (p) {
15
+ disabledIntegrations.forEach(function (int) {
16
+ if (p.name.includes(int) || int.includes(p.name)) {
17
+ disabledRemotePlugins.push(p.name);
18
+ }
19
+ });
20
+ });
21
+ return ((_b = settings.remotePlugins) !== null && _b !== void 0 ? _b : []).reduce(function (acc, p) {
22
+ if (p.settings['subscriptions']) {
23
+ if (disabledRemotePlugins.includes(p.name)) {
24
+ // @ts-expect-error element implicitly has an 'any' type because p.settings is a JSONObject
25
+ p.settings['subscriptions'].forEach(
26
+ // @ts-expect-error parameter 'sub' implicitly has an 'any' type
27
+ function (sub) { return (acc["".concat(p.name, " ").concat(sub.partnerAction)] = false); });
28
+ }
29
+ }
30
+ return acc;
31
+ }, {});
32
+ }
33
+ export function schemaFilter(track, settings) {
34
+ function filter(ctx) {
35
+ var plan = track;
36
+ var ev = ctx.event.event;
37
+ if (plan && ev) {
38
+ var planEvent = plan[ev];
39
+ if (!isPlanEventEnabled(plan, planEvent)) {
40
+ ctx.updateEvent('integrations', __assign(__assign({}, ctx.event.integrations), { All: false, 'Customer.io Data Pipelines': true }));
41
+ return ctx;
42
+ }
43
+ else {
44
+ var disabledActions = disabledActionDestinations(planEvent, settings);
45
+ ctx.updateEvent('integrations', __assign(__assign(__assign({}, ctx.event.integrations), planEvent === null || planEvent === void 0 ? void 0 : planEvent.integrations), disabledActions));
46
+ }
47
+ }
48
+ return ctx;
49
+ }
50
+ return {
51
+ name: 'Schema Filter',
52
+ version: '0.1.0',
53
+ isLoaded: function () { return true; },
54
+ load: function () { return Promise.resolve(); },
55
+ type: 'before',
56
+ page: filter,
57
+ alias: filter,
58
+ track: filter,
59
+ identify: filter,
60
+ group: filter,
61
+ };
62
+ }
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/schema-filter/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { __extends } from "tslib";
2
+ export function isString(obj) {
3
+ return typeof obj === 'string';
4
+ }
5
+ export function isNumber(obj) {
6
+ return typeof obj === 'number';
7
+ }
8
+ export function isFunction(obj) {
9
+ return typeof obj === 'function';
10
+ }
11
+ export function isPlainObject(obj) {
12
+ return (Object.prototype.toString.call(obj).slice(8, -1).toLowerCase() === 'object');
13
+ }
14
+ function hasUser(event) {
15
+ var _a, _b, _c;
16
+ var id = (_c = (_b = (_a = event.userId) !== null && _a !== void 0 ? _a : event.anonymousId) !== null && _b !== void 0 ? _b : event.groupId) !== null && _c !== void 0 ? _c : event.previousId;
17
+ return isString(id);
18
+ }
19
+ var ValidationError = /** @class */ (function (_super) {
20
+ __extends(ValidationError, _super);
21
+ function ValidationError(field, message) {
22
+ var _this = _super.call(this, message) || this;
23
+ _this.field = field;
24
+ return _this;
25
+ }
26
+ return ValidationError;
27
+ }(Error));
28
+ function validate(ctx) {
29
+ var _a;
30
+ var eventType = ctx && ctx.event && ctx.event.type;
31
+ var event = ctx.event;
32
+ if (event === undefined) {
33
+ throw new ValidationError('event', 'Event is missing');
34
+ }
35
+ if (!isString(eventType)) {
36
+ throw new ValidationError('event', 'Event is not a string');
37
+ }
38
+ if (eventType === 'track' && !isString(event.event)) {
39
+ throw new ValidationError('event', 'Event is not a string');
40
+ }
41
+ var props = (_a = event.properties) !== null && _a !== void 0 ? _a : event.traits;
42
+ if (eventType !== 'alias' && !isPlainObject(props)) {
43
+ throw new ValidationError('properties', 'properties is not an object');
44
+ }
45
+ if (!hasUser(event)) {
46
+ throw new ValidationError('userId', 'Missing userId or anonymousId');
47
+ }
48
+ return ctx;
49
+ }
50
+ export var validation = {
51
+ name: 'Event Validation',
52
+ type: 'before',
53
+ version: '1.0.0',
54
+ isLoaded: function () { return true; },
55
+ load: function () { return Promise.resolve(); },
56
+ track: validate,
57
+ identify: validate,
58
+ page: validate,
59
+ alias: validate,
60
+ group: validate,
61
+ screen: validate,
62
+ };
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/validation/index.ts"],"names":[],"mappings":";AAIA,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAY;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAA;AAChC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAY;IACrC,OAAO,OAAO,GAAG,KAAK,UAAU,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,OAAO,CACL,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAC5E,CAAA;AACH,CAAC;AAED,SAAS,OAAO,CAAC,KAAsB;;IACrC,IAAM,EAAE,GACN,MAAA,MAAA,MAAA,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC,WAAW,mCAAI,KAAK,CAAC,OAAO,mCAAI,KAAK,CAAC,UAAU,CAAA;IACxE,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAA;AACrB,CAAC;AAED;IAA8B,mCAAK;IAGjC,yBAAY,KAAa,EAAE,OAAe;QAA1C,YACE,kBAAM,OAAO,CAAC,SAEf;QADC,KAAI,CAAC,KAAK,GAAG,KAAK,CAAA;;IACpB,CAAC;IACH,sBAAC;AAAD,CAAC,AAPD,CAA8B,KAAK,GAOlC;AAED,SAAS,QAAQ,CAAC,GAAY;;IAC5B,IAAM,SAAS,GAAY,GAAG,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAA;IAC7D,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;IAEvB,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAA;KACvD;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QACxB,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAA;KAC5D;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QACnD,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAA;KAC5D;IAED,IAAM,KAAK,GAAG,MAAA,KAAK,CAAC,UAAU,mCAAI,KAAK,CAAC,MAAM,CAAA;IAC9C,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;QAClD,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,6BAA6B,CAAC,CAAA;KACvE;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnB,MAAM,IAAI,eAAe,CAAC,QAAQ,EAAE,+BAA+B,CAAC,CAAA;KACrE;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,IAAM,UAAU,GAAW;IAChC,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,OAAO;IAEhB,QAAQ,EAAE,cAAM,OAAA,IAAI,EAAJ,CAAI;IACpB,IAAI,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,EAAE,EAAjB,CAAiB;IAE7B,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,QAAQ;IAClB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;CACjB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from '.';
2
+ //# sourceMappingURL=browser-umd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-umd.d.ts","sourceRoot":"","sources":["../../../src/browser/browser-umd.ts"],"names":[],"mappings":"AAkBA,cAAc,GAAG,CAAA"}
@@ -0,0 +1,86 @@
1
+ import { Analytics, AnalyticsSettings, InitOptions } from '../core/analytics';
2
+ import { Plan } from '../core/events';
3
+ import { MetricsOptions } from '../core/stats/remote-metrics';
4
+ import { RemotePlugin } from '../plugins/remote-loader';
5
+ import type { RoutingRule } from '../plugins/routing-middleware';
6
+ import { AnalyticsBuffered } from '../core/buffer';
7
+ export interface LegacyIntegrationConfiguration {
8
+ type?: string;
9
+ versionSettings?: {
10
+ version?: string;
11
+ override?: string;
12
+ componentTypes?: Array<'browser' | 'android' | 'ios' | 'server'>;
13
+ };
14
+ bundlingStatus?: string;
15
+ retryQueue?: boolean;
16
+ [key: string]: any;
17
+ }
18
+ export interface LegacySettings {
19
+ integrations: {
20
+ [name: string]: LegacyIntegrationConfiguration;
21
+ };
22
+ middlewareSettings?: {
23
+ routingRules: RoutingRule[];
24
+ };
25
+ enabledMiddleware?: Record<string, boolean>;
26
+ metrics?: MetricsOptions;
27
+ plan?: Plan;
28
+ legacyVideoPluginsEnabled?: boolean;
29
+ remotePlugins?: RemotePlugin[];
30
+ }
31
+ export interface AnalyticsBrowserSettings extends AnalyticsSettings {
32
+ /**
33
+ * The settings for the Customer.io Source.
34
+ * If provided, `AnalyticsBrowser` will not fetch remote settings
35
+ * for the source.
36
+ */
37
+ cdnSettings?: LegacySettings & Record<string, unknown>;
38
+ /**
39
+ * If provided, will override the default CDN for this application.
40
+ */
41
+ cdnURL?: string;
42
+ }
43
+ export declare function loadLegacySettings(writeKey: string, cdnURL?: string): Promise<LegacySettings>;
44
+ /**
45
+ * The public browser interface for Customer.io Data Pipelines
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * export const analytics = new AnalyticsBrowser()
50
+ * analytics.load({ writeKey: 'foo' })
51
+ */
52
+ export declare class AnalyticsBrowser extends AnalyticsBuffered {
53
+ private _resolveLoadStart;
54
+ constructor();
55
+ /**
56
+ * Fully initialize an analytics instance, including:
57
+ *
58
+ * * Fetching settings from the CDN (by default).
59
+ * * Fetching all remote destinations configured by the user (if applicable).
60
+ * * Flushing buffered analytics events.
61
+ * * Loading all middleware.
62
+ *
63
+ * Note:️ This method should only be called *once* in your application.
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * export const analytics = new AnalyticsBrowser()
68
+ * analytics.load({ writeKey: 'foo' })
69
+ * ```
70
+ */
71
+ load(settings: AnalyticsBrowserSettings, options?: InitOptions): AnalyticsBrowser;
72
+ /**
73
+ * Instantiates an object exposing Analytics methods.
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * const ajs = AnalyticsBrowser.load({ writeKey: '<YOUR_WRITE_KEY>' })
78
+ *
79
+ * ajs.track("foo")
80
+ * ...
81
+ * ```
82
+ */
83
+ static load(settings: AnalyticsBrowserSettings, options?: InitOptions): AnalyticsBrowser;
84
+ static standalone(writeKey: string, options?: InitOptions): Promise<Analytics>;
85
+ }
86
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE7E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAI7D,OAAO,EAAgB,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAGhE,OAAO,EACL,iBAAiB,EAMlB,MAAM,gBAAgB,CAAA;AAMvB,MAAM,WAAW,8BAA8B;IAE7C,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,eAAe,CAAC,EAAE;QAChB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAA;KACjE,CAAA;IAED,cAAc,CAAC,EAAE,MAAM,CAAA;IAGvB,UAAU,CAAC,EAAE,OAAO,CAAA;IAIpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE;QACZ,CAAC,IAAI,EAAE,MAAM,GAAG,8BAA8B,CAAA;KAC/C,CAAA;IAED,kBAAkB,CAAC,EAAE;QACnB,YAAY,EAAE,WAAW,EAAE,CAAA;KAC5B,CAAA;IAED,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,OAAO,CAAC,EAAE,cAAc,CAAA;IAExB,IAAI,CAAC,EAAE,IAAI,CAAA;IAEX,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAEnC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE;;;;OAIG;IACH,WAAW,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,CAAC,CAgBzB;AA4ND;;;;;;;GAOG;AACH,qBAAa,gBAAiB,SAAQ,iBAAiB;IACrD,OAAO,CAAC,iBAAiB,CAGhB;;IAgBT;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CACF,QAAQ,EAAE,wBAAwB,EAClC,OAAO,GAAE,WAAgB,GACxB,gBAAgB;IAKnB;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CACT,QAAQ,EAAE,wBAAwB,EAClC,OAAO,GAAE,WAAgB,GACxB,gBAAgB;IAInB,MAAM,CAAC,UAAU,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,SAAS,CAAC;CAGtB"}
@@ -0,0 +1,16 @@
1
+ import { Analytics, InitOptions } from '../core/analytics';
2
+ export interface AnalyticsSnippet extends AnalyticsStandalone {
3
+ load: (writeKey: string, options?: InitOptions) => void;
4
+ }
5
+ export interface AnalyticsStandalone extends Analytics {
6
+ _loadOptions?: InitOptions;
7
+ _writeKey?: string;
8
+ _cdn?: string;
9
+ }
10
+ declare global {
11
+ interface Window {
12
+ analytics: AnalyticsSnippet;
13
+ }
14
+ }
15
+ export declare function install(): Promise<void>;
16
+ //# sourceMappingURL=standalone-analytics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standalone-analytics.d.ts","sourceRoot":"","sources":["../../../src/browser/standalone-analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAI1D,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC3D,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,IAAI,CAAA;CACxD;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,YAAY,CAAC,EAAE,WAAW,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,EAAE,gBAAgB,CAAA;KAC5B;CACF;AAyCD,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAc7C"}
@@ -0,0 +1,2 @@
1
+ import '../lib/csp-detection';
2
+ //# sourceMappingURL=standalone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../../../src/browser/standalone.ts"],"names":[],"mappings":"AAsBA,OAAO,sBAAsB,CAAA"}
@@ -0,0 +1,116 @@
1
+ import { AliasParams, DispatchedEvent, EventParams, GroupParams, PageParams, IdentifyParams } from '../arguments-resolver';
2
+ import type { FormArgs, LinkArgs } from '../auto-track';
3
+ import { Context } from '../context';
4
+ import { Emitter } from '@customerio/cdp-analytics-core';
5
+ import { Integrations, Plan, CustomerioEvent } from '../events';
6
+ import type { Plugin } from '../plugin';
7
+ import { EventQueue } from '../queue/event-queue';
8
+ import { CookieOptions, Group, ID, UniversalStorage, User, UserOptions } from '../user';
9
+ import type { LegacyIntegration, ClassicIntegrationSource } from '../../plugins/ajs-destination/types';
10
+ import type { DestinationMiddlewareFunction, MiddlewareFunction } from '../../plugins/middleware';
11
+ import { AnalyticsClassic, AnalyticsCore } from './interfaces';
12
+ export interface AnalyticsSettings {
13
+ writeKey: string;
14
+ timeout?: number;
15
+ plugins?: Plugin[];
16
+ classicIntegrations?: ClassicIntegrationSource[];
17
+ }
18
+ export interface InitOptions {
19
+ /**
20
+ * Disables storing any data on the client-side via cookies or localstorage.
21
+ * Defaults to `false`.
22
+ *
23
+ */
24
+ disableClientPersistence?: boolean;
25
+ /**
26
+ * Disables automatically converting ISO string event properties into Dates.
27
+ * ISO string to Date conversions occur right before sending events to a classic device mode integration,
28
+ * after any destination middleware have been ran.
29
+ * Defaults to `false`.
30
+ */
31
+ disableAutoISOConversion?: boolean;
32
+ initialPageview?: boolean;
33
+ cookie?: CookieOptions;
34
+ user?: UserOptions;
35
+ group?: UserOptions;
36
+ integrations?: Integrations;
37
+ plan?: Plan;
38
+ retryQueue?: boolean;
39
+ obfuscate?: boolean;
40
+ /**
41
+ * Disables or sets constraints on processing of query string parameters
42
+ */
43
+ useQueryString?: boolean | {
44
+ aid?: RegExp;
45
+ uid?: RegExp;
46
+ };
47
+ }
48
+ declare function _stub(this: never): void;
49
+ export declare class Analytics extends Emitter implements AnalyticsCore, AnalyticsClassic {
50
+ protected settings: AnalyticsSettings;
51
+ private _user;
52
+ private _group;
53
+ private eventFactory;
54
+ private _debug;
55
+ private _universalStorage;
56
+ initialized: boolean;
57
+ integrations: Integrations;
58
+ options: InitOptions;
59
+ queue: EventQueue;
60
+ constructor(settings: AnalyticsSettings, options?: InitOptions, queue?: EventQueue, user?: User, group?: Group);
61
+ user: () => User;
62
+ get storage(): UniversalStorage;
63
+ track(...args: EventParams): Promise<DispatchedEvent>;
64
+ page(...args: PageParams): Promise<DispatchedEvent>;
65
+ identify(...args: IdentifyParams): Promise<DispatchedEvent>;
66
+ group(): Group;
67
+ group(...args: GroupParams): Promise<DispatchedEvent>;
68
+ alias(...args: AliasParams): Promise<DispatchedEvent>;
69
+ screen(...args: PageParams): Promise<DispatchedEvent>;
70
+ trackClick(...args: LinkArgs): Promise<Analytics>;
71
+ trackLink(...args: LinkArgs): Promise<Analytics>;
72
+ trackSubmit(...args: FormArgs): Promise<Analytics>;
73
+ trackForm(...args: FormArgs): Promise<Analytics>;
74
+ register(...plugins: Plugin[]): Promise<Context>;
75
+ deregister(...plugins: string[]): Promise<Context>;
76
+ debug(toggle: boolean): Analytics;
77
+ reset(): void;
78
+ timeout(timeout: number): void;
79
+ private _dispatch;
80
+ addSourceMiddleware(fn: MiddlewareFunction): Promise<Analytics>;
81
+ addDestinationMiddleware(integrationName: string, ...middlewares: DestinationMiddlewareFunction[]): Promise<Analytics>;
82
+ setAnonymousId(id?: string): ID;
83
+ queryString(query: string): Promise<Context[]>;
84
+ /**
85
+ * @deprecated This function does not register a destination plugin.
86
+ *
87
+ * Instantiates a legacy Analytics.js destination.
88
+ *
89
+ * This function does not register the destination as an Analytics.JS plugin,
90
+ * all the it does it to invoke the factory function back.
91
+ */
92
+ use(legacyPluginFactory: (analytics: Analytics) => void): Analytics;
93
+ ready(callback?: Function): Promise<unknown>;
94
+ noConflict(): Analytics;
95
+ normalize(msg: CustomerioEvent): CustomerioEvent;
96
+ get failedInitializations(): string[];
97
+ get VERSION(): string;
98
+ initialize(_settings?: AnalyticsSettings, _options?: InitOptions): Promise<Analytics>;
99
+ init: (_settings?: AnalyticsSettings, _options?: InitOptions) => Promise<Analytics>;
100
+ pageview(url: string): Promise<Analytics>;
101
+ get plugins(): any;
102
+ get Integrations(): Record<string, LegacyIntegration>;
103
+ log: typeof _stub;
104
+ addIntegrationMiddleware: typeof _stub;
105
+ listeners: typeof _stub;
106
+ addEventListener: typeof _stub;
107
+ removeAllListeners: typeof _stub;
108
+ removeListener: typeof _stub;
109
+ removeEventListener: typeof _stub;
110
+ hasListeners: typeof _stub;
111
+ add: typeof _stub;
112
+ addIntegration: typeof _stub;
113
+ push(args: any[]): void;
114
+ }
115
+ export {};
116
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/analytics/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import type { Analytics, AnalyticsSettings, InitOptions } from '.';
2
+ import type { Plugin } from '../plugin';
3
+ import type { EventParams, DispatchedEvent, PageParams, IdentifyParams, AliasParams, GroupParams } from '../arguments-resolver';
4
+ import type { Context } from '../context';
5
+ import type { CustomerioEvent } from '../events';
6
+ import type { Group, User } from '../user';
7
+ import type { LegacyIntegration } from '../../plugins/ajs-destination/types';
8
+ import { CoreAnalytics } from '@customerio/cdp-analytics-core';
9
+ /**
10
+ * All of these methods are a no-op.
11
+ */
12
+ /** @deprecated */
13
+ interface AnalyticsClassicStubs {
14
+ /** @deprecated */
15
+ log(this: never): void;
16
+ /** @deprecated */
17
+ addIntegrationMiddleware(this: never): void;
18
+ /** @deprecated */
19
+ listeners(this: never): void;
20
+ /** @deprecated */
21
+ addEventListener(this: never): void;
22
+ /** @deprecated */
23
+ removeAllListeners(this: never): void;
24
+ /** @deprecated */
25
+ removeListener(this: never): void;
26
+ /** @deprecated */
27
+ removeEventListener(this: never): void;
28
+ /** @deprecated */
29
+ hasListeners(this: never): void;
30
+ /** @deprecated */
31
+ addIntegration(this: never): void;
32
+ /** @deprecated */
33
+ add(this: never): void;
34
+ }
35
+ /** @deprecated */
36
+ export interface AnalyticsClassic extends AnalyticsClassicStubs {
37
+ /** @deprecated */
38
+ initialize(settings?: AnalyticsSettings, options?: InitOptions): Promise<Analytics>;
39
+ /** @deprecated */
40
+ noConflict(): Analytics;
41
+ /** @deprecated */
42
+ normalize(msg: CustomerioEvent): CustomerioEvent;
43
+ /** @deprecated */
44
+ readonly failedInitializations: string[];
45
+ /** @deprecated */
46
+ pageview(url: string): Promise<Analytics>;
47
+ /** @deprecated*/
48
+ readonly plugins: any;
49
+ /** @deprecated */
50
+ readonly Integrations: Record<string, LegacyIntegration>;
51
+ }
52
+ /**
53
+ * Interface implemented by concrete Analytics class (commonly accessible if you use "await" on AnalyticsBrowser.load())
54
+ */
55
+ export interface AnalyticsCore extends CoreAnalytics {
56
+ track(...args: EventParams): Promise<DispatchedEvent>;
57
+ page(...args: PageParams): Promise<DispatchedEvent>;
58
+ identify(...args: IdentifyParams): Promise<DispatchedEvent>;
59
+ group(): Group;
60
+ group(...args: GroupParams): Promise<DispatchedEvent>;
61
+ alias(...args: AliasParams): Promise<DispatchedEvent>;
62
+ screen(...args: PageParams): Promise<DispatchedEvent>;
63
+ register(...plugins: Plugin[]): Promise<Context>;
64
+ deregister(...plugins: string[]): Promise<Context>;
65
+ user(): User;
66
+ readonly VERSION: string;
67
+ }
68
+ /**
69
+ * Interface implemented by AnalyticsBrowser (buffered version of analytics) (commonly accessible through AnalyticsBrowser.load())
70
+ */
71
+ export type AnalyticsBrowserCore = Omit<AnalyticsCore, 'group' | 'user'> & {
72
+ group(): Promise<Group>;
73
+ group(...args: GroupParams): Promise<DispatchedEvent>;
74
+ user(): Promise<User>;
75
+ };
76
+ export {};
77
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/core/analytics/interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { Context } from '../context';
2
+ import { Callback, Options, EventProperties, CustomerioEvent, Traits, GroupTraits, UserTraits } from '../events';
3
+ import { ID, User } from '../user';
4
+ /**
5
+ * Helper for the track method
6
+ */
7
+ export declare function resolveArguments(eventName: string | CustomerioEvent, properties?: EventProperties | Callback, options?: Options | Callback, callback?: Callback): [string, EventProperties | Callback, Options, Callback | undefined];
8
+ /**
9
+ * Helper for page, screen methods
10
+ */
11
+ export declare function resolvePageArguments(category?: string | object, name?: string | object | Callback, properties?: EventProperties | Options | Callback | null, options?: Options | Callback, callback?: Callback): [
12
+ string | null,
13
+ string | null,
14
+ EventProperties,
15
+ Options,
16
+ Callback | undefined
17
+ ];
18
+ /**
19
+ * Helper for group, identify methods
20
+ */
21
+ export declare const resolveUserArguments: <T extends Traits, U extends User>(user: U) => ResolveUser<T>;
22
+ /**
23
+ * Helper for alias method
24
+ */
25
+ export declare function resolveAliasArguments(to: string | number, from?: string | number | Options, options?: Options | Callback, callback?: Callback): [string, string | null, Options, Callback | undefined];
26
+ type ResolveUser<T extends Traits> = (id?: ID | object, traits?: T | Callback | null, options?: Options | Callback, callback?: Callback) => [ID, T, Options, Callback | undefined];
27
+ export type IdentifyParams = Parameters<ResolveUser<UserTraits>>;
28
+ export type GroupParams = Parameters<ResolveUser<GroupTraits>>;
29
+ export type EventParams = Parameters<typeof resolveArguments>;
30
+ export type PageParams = Parameters<typeof resolvePageArguments>;
31
+ export type AliasParams = Parameters<typeof resolveAliasArguments>;
32
+ export type DispatchedEvent = Context;
33
+ export {};
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/arguments-resolver/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EACL,QAAQ,EAER,OAAO,EACP,eAAe,EACf,eAAe,EACf,MAAM,EACN,WAAW,EACX,UAAU,EACX,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAElC;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,eAAe,EACnC,UAAU,CAAC,EAAE,eAAe,GAAG,QAAQ,EACvC,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,EAC5B,QAAQ,CAAC,EAAE,QAAQ,GAClB,CAAC,MAAM,EAAE,eAAe,GAAG,QAAQ,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC,CAyBrE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,EACjC,UAAU,CAAC,EAAE,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,EACxD,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,EAC5B,QAAQ,CAAC,EAAE,QAAQ,GAClB;IACC,MAAM,GAAG,IAAI;IACb,MAAM,GAAG,IAAI;IACb,eAAe;IACf,OAAO;IACP,QAAQ,GAAG,SAAS;CACrB,CAmCF;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,+DAqBhC,CAAA;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAChC,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,EAC5B,QAAQ,CAAC,EAAE,QAAQ,GAClB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC,CAUxD;AAED,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,CACnC,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,GAAG,QAAQ,GAAG,IAAI,EAC5B,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,EAC5B,QAAQ,CAAC,EAAE,QAAQ,KAChB,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAA;AAE3C,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;AAChE,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAA;AAC9D,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAC7D,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAChE,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAElE,MAAM,MAAM,eAAe,GAAG,OAAO,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { Analytics } from './analytics';
2
+ import { EventProperties, Options } from './events';
3
+ export interface JQueryShim<TElement = HTMLElement> {
4
+ toArray(): TElement[];
5
+ }
6
+ export declare function link(this: Analytics, links: Element | Array<Element> | JQueryShim | null, event: string | Function, properties?: EventProperties | Function, options?: Options): Analytics;
7
+ export type LinkArgs = Parameters<typeof link>;
8
+ export declare function form(this: Analytics, forms: HTMLFormElement | Array<HTMLFormElement> | null, event: string | Function, properties?: EventProperties | Function, options?: Options): Analytics;
9
+ export type FormArgs = Parameters<typeof form>;
10
+ //# sourceMappingURL=auto-track.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-track.d.ts","sourceRoot":"","sources":["../../../src/core/auto-track.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AA8BnD,MAAM,WAAW,UAAU,CAAC,QAAQ,GAAG,WAAW;IAChD,OAAO,IAAI,QAAQ,EAAE,CAAA;CACtB;AAED,wBAAgB,IAAI,CAClB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,UAAU,GAAG,IAAI,EACnD,KAAK,EAAE,MAAM,GAAG,QAAQ,EACxB,UAAU,CAAC,EAAE,eAAe,GAAG,QAAQ,EACvC,OAAO,CAAC,EAAE,OAAO,GAChB,SAAS,CAsDX;AAED,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAA;AAE9C,wBAAgB,IAAI,CAClB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC,GAAG,IAAI,EACtD,KAAK,EAAE,MAAM,GAAG,QAAQ,EACxB,UAAU,CAAC,EAAE,eAAe,GAAG,QAAQ,EACvC,OAAO,CAAC,EAAE,OAAO,GAChB,SAAS,CA4CX;AAED,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAA"}
@@ -0,0 +1,86 @@
1
+ import { Analytics } from '../analytics';
2
+ import { Context } from '../context';
3
+ import { AnalyticsBrowserCore } from '../analytics/interfaces';
4
+ /**
5
+ * The names of any AnalyticsBrowser methods that also exist on Analytics
6
+ */
7
+ export type PreInitMethodName = 'screen' | 'register' | 'deregister' | 'user' | 'trackSubmit' | 'trackClick' | 'trackLink' | 'trackForm' | 'pageview' | 'identify' | 'reset' | 'group' | 'track' | 'ready' | 'alias' | 'debug' | 'page' | 'once' | 'off' | 'on' | 'addSourceMiddleware' | 'setAnonymousId' | 'addDestinationMiddleware';
8
+ export declare const flushAddSourceMiddleware: (analytics: Analytics, buffer: PreInitMethodCallBuffer) => Promise<void>;
9
+ export declare const flushOn: (analytics: Analytics, buffer: PreInitMethodCallBuffer) => void;
10
+ export declare const flushSetAnonymousID: (analytics: Analytics, buffer: PreInitMethodCallBuffer) => void;
11
+ export declare const flushAnalyticsCallsInNewTask: (analytics: Analytics, buffer: PreInitMethodCallBuffer) => void;
12
+ /**
13
+ * Represents a buffered method call that occurred before initialization.
14
+ */
15
+ export interface PreInitMethodCall<MethodName extends PreInitMethodName = PreInitMethodName> {
16
+ method: MethodName;
17
+ args: PreInitMethodParams<MethodName>;
18
+ called: boolean;
19
+ resolve: (v: ReturnType<Analytics[MethodName]>) => void;
20
+ reject: (reason: any) => void;
21
+ }
22
+ export type PreInitMethodParams<MethodName extends PreInitMethodName> = Parameters<Analytics[MethodName]>;
23
+ /**
24
+ * Represents any and all the buffered method calls that occurred before initialization.
25
+ */
26
+ export declare class PreInitMethodCallBuffer {
27
+ private _value;
28
+ toArray(): PreInitMethodCall[];
29
+ getCalls<T extends PreInitMethodName>(methodName: T): PreInitMethodCall<T>[];
30
+ push(...calls: PreInitMethodCall[]): PreInitMethodCallBuffer;
31
+ clear(): PreInitMethodCallBuffer;
32
+ }
33
+ /**
34
+ * Call method and mark as "called"
35
+ * This function should never throw an error
36
+ */
37
+ export declare function callAnalyticsMethod<T extends PreInitMethodName>(analytics: Analytics, call: PreInitMethodCall<T>): Promise<void>;
38
+ export type AnalyticsLoader = (preInitBuffer: PreInitMethodCallBuffer) => Promise<[Analytics, Context]>;
39
+ export declare class AnalyticsBuffered implements PromiseLike<[Analytics, Context]>, AnalyticsBrowserCore {
40
+ instance?: Analytics;
41
+ ctx?: Context;
42
+ private _preInitBuffer;
43
+ private _promise;
44
+ constructor(loader: AnalyticsLoader);
45
+ then<T1, T2 = never>(...args: [
46
+ onfulfilled: ((instance: [Analytics, Context]) => T1 | PromiseLike<T1>) | null | undefined,
47
+ onrejected?: (reason: unknown) => T2 | PromiseLike<T2>
48
+ ]): Promise<T1 | T2>;
49
+ catch<TResult = never>(...args: [
50
+ onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null
51
+ ]): Promise<[Analytics, Context] | TResult>;
52
+ finally(...args: [onfinally?: (() => void) | undefined | null]): Promise<[Analytics, Context]>;
53
+ trackSubmit: (forms: HTMLFormElement | HTMLFormElement[] | null, event: string | Function, properties?: Function | import("../events").EventProperties | undefined, options?: import("../events").Options | undefined) => Promise<Analytics>;
54
+ trackClick: (links: Element | Element[] | import("../auto-track").JQueryShim<HTMLElement> | null, event: string | Function, properties?: Function | import("../events").EventProperties | undefined, options?: import("../events").Options | undefined) => Promise<Analytics>;
55
+ trackLink: (links: Element | Element[] | import("../auto-track").JQueryShim<HTMLElement> | null, event: string | Function, properties?: Function | import("../events").EventProperties | undefined, options?: import("../events").Options | undefined) => Promise<Analytics>;
56
+ pageView: (url: string) => Promise<Analytics>;
57
+ identify: (id?: object | import("../user").ID, traits?: import("@customerio/cdp-analytics-core").UserTraits | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | null | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined) => Promise<Context>;
58
+ reset: () => Promise<void>;
59
+ group: {
60
+ (): Promise<import("../user").Group>;
61
+ (id?: object | import("../user").ID, traits?: import("@customerio/cdp-analytics-core").GroupTraits | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | null | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined): Promise<Context>;
62
+ };
63
+ track: (eventName: string | import("../events").CustomerioEvent, properties?: import("../events").EventProperties | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined) => Promise<Context>;
64
+ ready: (callback?: Function | undefined) => Promise<unknown>;
65
+ alias: (to: string | number, from?: string | number | import("../events").Options | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined) => Promise<Context>;
66
+ debug: (toggle: boolean) => AnalyticsBuffered;
67
+ page: (category?: string | object | undefined, name?: string | object | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, properties?: import("../events").Options | import("../events").EventProperties | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | null | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined) => Promise<Context>;
68
+ once: (event: string, callback: (...args: any[]) => void) => AnalyticsBuffered;
69
+ off: (event: string, callback: (...args: any[]) => void) => AnalyticsBuffered;
70
+ on: (event: string, callback: (...args: any[]) => void) => AnalyticsBuffered;
71
+ addSourceMiddleware: (fn: import("../../plugins/middleware").MiddlewareFunction) => Promise<Analytics>;
72
+ setAnonymousId: (id?: string | undefined) => Promise<import("../user").ID>;
73
+ addDestinationMiddleware: (integrationName: string, ...middlewares: import("../../plugins/middleware").DestinationMiddlewareFunction[]) => Promise<Analytics>;
74
+ screen: (category?: string | object | undefined, name?: string | object | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, properties?: import("../events").Options | import("../events").EventProperties | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | null | undefined, options?: import("../events").Options | import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined, callback?: import("@customerio/cdp-analytics-core").Callback<import("@customerio/cdp-analytics-core").CoreContext<import("@customerio/cdp-analytics-core").CoreCustomerioEvent>> | undefined) => Promise<Context>;
75
+ register: (...args: import("../plugin").Plugin[]) => Promise<Context>;
76
+ deregister: (...args: string[]) => Promise<Context>;
77
+ user: () => Promise<import("../user").User>;
78
+ readonly VERSION = "0.0.1";
79
+ private _createMethod;
80
+ /**
81
+ * These are for methods that where determining when the method gets "flushed" is not important.
82
+ * These methods will resolve when analytics is fully initialized, and return type (other than Analytics)will not be available.
83
+ */
84
+ private _createChainableMethod;
85
+ }
86
+ //# sourceMappingURL=index.d.ts.map