flowgrid-sdk 1.2.0 → 1.3.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 (314) hide show
  1. package/README.md +224 -250
  2. package/dist/237.flowgrid.min.js +2 -0
  3. package/dist/237.flowgrid.min.js.map +1 -0
  4. package/dist/546.flowgrid.min.js +3 -0
  5. package/dist/546.flowgrid.min.js.LICENSE.txt +14 -0
  6. package/dist/546.flowgrid.min.js.map +1 -0
  7. package/dist/EXAMPLE.d.ts +1 -0
  8. package/dist/EXAMPLE.js +55 -0
  9. package/dist/EXAMPLE.js.map +1 -0
  10. package/dist/browser.d.ts +46 -103
  11. package/dist/browser.js +102 -0
  12. package/dist/browser.js.map +1 -0
  13. package/dist/flowgrid.min.js +1 -1
  14. package/dist/flowgrid.min.js.map +1 -1
  15. package/dist/index.d.ts +7 -8
  16. package/dist/index.js +64 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/lib/client/transport.d.ts +14 -4
  19. package/dist/lib/client/transport.js +432 -0
  20. package/dist/lib/client/transport.js.map +1 -0
  21. package/dist/lib/consent/index.d.ts +0 -5
  22. package/dist/lib/consent/index.js +32 -0
  23. package/dist/lib/consent/index.js.map +1 -0
  24. package/dist/lib/consent/manager.js +336 -0
  25. package/dist/lib/consent/manager.js.map +1 -0
  26. package/dist/lib/consent/types.d.ts +3 -20
  27. package/dist/lib/consent/types.js +10 -0
  28. package/dist/lib/consent/types.js.map +1 -0
  29. package/dist/lib/features/analytics/attribution.d.ts +6 -47
  30. package/dist/lib/features/analytics/attribution.js +181 -0
  31. package/dist/lib/features/analytics/attribution.js.map +1 -0
  32. package/dist/lib/features/analytics/events.d.ts +1 -28
  33. package/dist/lib/features/analytics/events.js +256 -0
  34. package/dist/lib/features/analytics/events.js.map +1 -0
  35. package/dist/lib/features/analytics/funnels.js +260 -0
  36. package/dist/lib/features/analytics/funnels.js.map +1 -0
  37. package/dist/lib/features/analytics/heatmaps.d.ts +12 -19
  38. package/dist/lib/features/analytics/heatmaps.js +258 -0
  39. package/dist/lib/features/analytics/heatmaps.js.map +1 -0
  40. package/dist/lib/features/analytics/identify.d.ts +1 -21
  41. package/dist/lib/features/analytics/identify.js +213 -0
  42. package/dist/lib/features/analytics/identify.js.map +1 -0
  43. package/dist/lib/features/analytics/index.d.ts +2 -0
  44. package/dist/lib/features/analytics/index.js +15 -0
  45. package/dist/lib/features/analytics/index.js.map +1 -0
  46. package/dist/lib/features/analytics/page-views.d.ts +13 -30
  47. package/dist/lib/features/analytics/page-views.js +268 -0
  48. package/dist/lib/features/analytics/page-views.js.map +1 -0
  49. package/dist/lib/features/analytics/performance.d.ts +18 -24
  50. package/dist/lib/features/analytics/performance.js +232 -0
  51. package/dist/lib/features/analytics/performance.js.map +1 -0
  52. package/dist/lib/features/analytics/replay.d.ts +170 -0
  53. package/dist/lib/features/analytics/replay.js +381 -0
  54. package/dist/lib/features/analytics/replay.js.map +1 -0
  55. package/dist/lib/features/analytics/retention.d.ts +1 -76
  56. package/dist/lib/features/analytics/retention.js +135 -0
  57. package/dist/lib/features/analytics/retention.js.map +1 -0
  58. package/dist/lib/features/analytics/sessions.d.ts +12 -37
  59. package/dist/lib/features/analytics/sessions.js +213 -0
  60. package/dist/lib/features/analytics/sessions.js.map +1 -0
  61. package/dist/lib/features/core/activation.d.ts +1 -24
  62. package/dist/lib/features/core/activation.js +175 -0
  63. package/dist/lib/features/core/activation.js.map +1 -0
  64. package/dist/lib/features/core/experiment.d.ts +53 -21
  65. package/dist/lib/features/core/experiment.js +554 -0
  66. package/dist/lib/features/core/experiment.js.map +1 -0
  67. package/dist/lib/features/core/index.js +9 -0
  68. package/dist/lib/features/core/index.js.map +1 -0
  69. package/dist/lib/features/core/track-feature.d.ts +1 -8
  70. package/dist/lib/features/core/track-feature.js +119 -0
  71. package/dist/lib/features/core/track-feature.js.map +1 -0
  72. package/dist/lib/features/core/track-prompt.d.ts +5 -8
  73. package/dist/lib/features/core/track-prompt.js +181 -0
  74. package/dist/lib/features/core/track-prompt.js.map +1 -0
  75. package/dist/lib/features/ecommerce/cart.d.ts +1 -24
  76. package/dist/lib/features/ecommerce/cart.js +244 -0
  77. package/dist/lib/features/ecommerce/cart.js.map +1 -0
  78. package/dist/lib/features/ecommerce/checkout.d.ts +1 -28
  79. package/dist/lib/features/ecommerce/checkout.js +254 -0
  80. package/dist/lib/features/ecommerce/checkout.js.map +1 -0
  81. package/dist/lib/features/ecommerce/index.d.ts +0 -2
  82. package/dist/lib/features/ecommerce/index.js +15 -0
  83. package/dist/lib/features/ecommerce/index.js.map +1 -0
  84. package/dist/lib/features/ecommerce/ltv.d.ts +1 -69
  85. package/dist/lib/features/ecommerce/ltv.js +114 -0
  86. package/dist/lib/features/ecommerce/ltv.js.map +1 -0
  87. package/dist/lib/features/ecommerce/products.d.ts +1 -33
  88. package/dist/lib/features/ecommerce/products.js +223 -0
  89. package/dist/lib/features/ecommerce/products.js.map +1 -0
  90. package/dist/lib/features/ecommerce/promotions.d.ts +1 -30
  91. package/dist/lib/features/ecommerce/promotions.js +197 -0
  92. package/dist/lib/features/ecommerce/promotions.js.map +1 -0
  93. package/dist/lib/features/ecommerce/purchases.d.ts +1 -48
  94. package/dist/lib/features/ecommerce/purchases.js +193 -0
  95. package/dist/lib/features/ecommerce/purchases.js.map +1 -0
  96. package/dist/lib/features/ecommerce/refunds.d.ts +1 -27
  97. package/dist/lib/features/ecommerce/refunds.js +195 -0
  98. package/dist/lib/features/ecommerce/refunds.js.map +1 -0
  99. package/dist/lib/features/ecommerce/search.d.ts +1 -24
  100. package/dist/lib/features/ecommerce/search.js +156 -0
  101. package/dist/lib/features/ecommerce/search.js.map +1 -0
  102. package/dist/lib/features/ecommerce/subscriptions.d.ts +1 -28
  103. package/dist/lib/features/ecommerce/subscriptions.js +207 -0
  104. package/dist/lib/features/ecommerce/subscriptions.js.map +1 -0
  105. package/dist/lib/features/ecommerce/wishlist.d.ts +1 -28
  106. package/dist/lib/features/ecommerce/wishlist.js +186 -0
  107. package/dist/lib/features/ecommerce/wishlist.js.map +1 -0
  108. package/dist/lib/features/enterprise/acquisition.d.ts +2 -57
  109. package/dist/lib/features/enterprise/acquisition.js +166 -0
  110. package/dist/lib/features/enterprise/acquisition.js.map +1 -0
  111. package/dist/lib/features/enterprise/alerts.d.ts +1 -37
  112. package/dist/lib/features/enterprise/alerts.js +246 -0
  113. package/dist/lib/features/enterprise/alerts.js.map +1 -0
  114. package/dist/lib/features/enterprise/churn.d.ts +1 -42
  115. package/dist/lib/features/enterprise/churn.js +175 -0
  116. package/dist/lib/features/enterprise/churn.js.map +1 -0
  117. package/dist/lib/features/enterprise/cohorts.d.ts +1 -37
  118. package/dist/lib/features/enterprise/cohorts.js +201 -0
  119. package/dist/lib/features/enterprise/cohorts.js.map +1 -0
  120. package/dist/lib/features/enterprise/engagement.d.ts +40 -46
  121. package/dist/lib/features/enterprise/engagement.js +335 -0
  122. package/dist/lib/features/enterprise/engagement.js.map +1 -0
  123. package/dist/lib/features/enterprise/forecasting.d.ts +0 -50
  124. package/dist/lib/features/enterprise/forecasting.js +232 -0
  125. package/dist/lib/features/enterprise/forecasting.js.map +1 -0
  126. package/dist/lib/features/enterprise/index.d.ts +1 -1
  127. package/dist/lib/features/enterprise/index.js +76 -0
  128. package/dist/lib/features/enterprise/index.js.map +1 -0
  129. package/dist/lib/features/enterprise/monetization.d.ts +1 -60
  130. package/dist/lib/features/enterprise/monetization.js +146 -0
  131. package/dist/lib/features/enterprise/monetization.js.map +1 -0
  132. package/dist/lib/features/enterprise/multi-path-funnels.d.ts +1 -17
  133. package/dist/lib/features/enterprise/multi-path-funnels.js +205 -0
  134. package/dist/lib/features/enterprise/multi-path-funnels.js.map +1 -0
  135. package/dist/lib/features/enterprise/paths.d.ts +1 -56
  136. package/dist/lib/features/enterprise/paths.js +149 -0
  137. package/dist/lib/features/enterprise/paths.js.map +1 -0
  138. package/dist/lib/features/enterprise/security.d.ts +8 -57
  139. package/dist/lib/features/enterprise/security.js +202 -0
  140. package/dist/lib/features/enterprise/security.js.map +1 -0
  141. package/dist/lib/features/enterprise/support.d.ts +3 -42
  142. package/dist/lib/features/enterprise/support.js +162 -0
  143. package/dist/lib/features/enterprise/support.js.map +1 -0
  144. package/dist/lib/flowgrid.d.ts +278 -0
  145. package/dist/lib/flowgrid.js +323 -0
  146. package/dist/lib/flowgrid.js.map +1 -0
  147. package/dist/lib/frameworks/index.d.ts +13 -6
  148. package/dist/lib/frameworks/index.js +18 -0
  149. package/dist/lib/frameworks/index.js.map +1 -0
  150. package/dist/lib/frameworks/nextjs/client.js +355 -0
  151. package/dist/lib/frameworks/nextjs/client.js.map +1 -0
  152. package/dist/lib/frameworks/nextjs/index.js +31 -0
  153. package/dist/lib/frameworks/nextjs/index.js.map +1 -0
  154. package/dist/lib/frameworks/nextjs/server.js +259 -0
  155. package/dist/lib/frameworks/nextjs/server.js.map +1 -0
  156. package/dist/lib/frameworks/node/index.js +391 -0
  157. package/dist/lib/frameworks/node/index.js.map +1 -0
  158. package/dist/lib/frameworks/nuxt/index.js +288 -0
  159. package/dist/lib/frameworks/nuxt/index.js.map +1 -0
  160. package/dist/lib/frameworks/react/CookieBanner.js +166 -0
  161. package/dist/lib/frameworks/react/CookieBanner.js.map +1 -0
  162. package/dist/lib/frameworks/react/index.d.ts +2 -2
  163. package/dist/lib/frameworks/react/index.js +271 -0
  164. package/dist/lib/frameworks/react/index.js.map +1 -0
  165. package/dist/lib/frameworks/vue/CookieBanner.js +165 -0
  166. package/dist/lib/frameworks/vue/CookieBanner.js.map +1 -0
  167. package/dist/lib/frameworks/vue/index.d.ts +2 -2
  168. package/dist/lib/frameworks/vue/index.js +390 -0
  169. package/dist/lib/frameworks/vue/index.js.map +1 -0
  170. package/dist/lib/tracking/analytics/attribution.d.ts +14 -0
  171. package/dist/lib/tracking/analytics/attribution.js +18 -0
  172. package/dist/lib/tracking/analytics/attribution.js.map +1 -0
  173. package/dist/lib/tracking/analytics/events.d.ts +26 -0
  174. package/dist/lib/tracking/analytics/events.js +30 -0
  175. package/dist/lib/tracking/analytics/events.js.map +1 -0
  176. package/dist/lib/tracking/analytics/funnels.d.ts +16 -0
  177. package/dist/lib/tracking/analytics/funnels.js +22 -0
  178. package/dist/lib/tracking/analytics/funnels.js.map +1 -0
  179. package/dist/lib/tracking/analytics/heatmaps.d.ts +27 -0
  180. package/dist/lib/tracking/analytics/heatmaps.js +22 -0
  181. package/dist/lib/tracking/analytics/heatmaps.js.map +1 -0
  182. package/dist/lib/tracking/analytics/identify.d.ts +16 -0
  183. package/dist/lib/tracking/analytics/identify.js +22 -0
  184. package/dist/lib/tracking/analytics/identify.js.map +1 -0
  185. package/dist/lib/tracking/analytics/index.d.ts +10 -0
  186. package/dist/lib/tracking/analytics/index.js +11 -0
  187. package/dist/lib/tracking/analytics/index.js.map +1 -0
  188. package/dist/lib/tracking/analytics/page-views.d.ts +29 -0
  189. package/dist/lib/tracking/analytics/page-views.js +50 -0
  190. package/dist/lib/tracking/analytics/page-views.js.map +1 -0
  191. package/dist/lib/tracking/analytics/performance.d.ts +22 -0
  192. package/dist/lib/tracking/analytics/performance.js +22 -0
  193. package/dist/lib/tracking/analytics/performance.js.map +1 -0
  194. package/dist/lib/tracking/analytics/replay.d.ts +34 -0
  195. package/dist/lib/tracking/analytics/replay.js +46 -0
  196. package/dist/lib/tracking/analytics/replay.js.map +1 -0
  197. package/dist/lib/tracking/analytics/retention.d.ts +10 -0
  198. package/dist/lib/tracking/analytics/retention.js +10 -0
  199. package/dist/lib/tracking/analytics/retention.js.map +1 -0
  200. package/dist/lib/tracking/analytics/sessions.d.ts +20 -0
  201. package/dist/lib/tracking/analytics/sessions.js +26 -0
  202. package/dist/lib/tracking/analytics/sessions.js.map +1 -0
  203. package/dist/lib/tracking/core/activation.d.ts +23 -0
  204. package/dist/lib/tracking/core/activation.js +33 -0
  205. package/dist/lib/tracking/core/activation.js.map +1 -0
  206. package/dist/lib/tracking/core/experiment.d.ts +122 -0
  207. package/dist/lib/tracking/core/experiment.js +150 -0
  208. package/dist/lib/tracking/core/experiment.js.map +1 -0
  209. package/dist/lib/tracking/core/feature.d.ts +13 -0
  210. package/dist/lib/tracking/core/feature.js +14 -0
  211. package/dist/lib/tracking/core/feature.js.map +1 -0
  212. package/dist/lib/tracking/core/index.d.ts +4 -0
  213. package/dist/lib/tracking/core/index.js +5 -0
  214. package/dist/lib/tracking/core/index.js.map +1 -0
  215. package/dist/lib/tracking/core/prompt.d.ts +18 -0
  216. package/dist/lib/tracking/core/prompt.js +26 -0
  217. package/dist/lib/tracking/core/prompt.js.map +1 -0
  218. package/dist/lib/tracking/ecommerce/cart.d.ts +17 -0
  219. package/dist/lib/tracking/ecommerce/cart.js +22 -0
  220. package/dist/lib/tracking/ecommerce/cart.js.map +1 -0
  221. package/dist/lib/tracking/ecommerce/checkout.d.ts +17 -0
  222. package/dist/lib/tracking/ecommerce/checkout.js +22 -0
  223. package/dist/lib/tracking/ecommerce/checkout.js.map +1 -0
  224. package/dist/lib/tracking/ecommerce/index.d.ts +10 -0
  225. package/dist/lib/tracking/ecommerce/index.js +11 -0
  226. package/dist/lib/tracking/ecommerce/index.js.map +1 -0
  227. package/dist/lib/tracking/ecommerce/ltv.d.ts +15 -0
  228. package/dist/lib/tracking/ecommerce/ltv.js +14 -0
  229. package/dist/lib/tracking/ecommerce/ltv.js.map +1 -0
  230. package/dist/lib/tracking/ecommerce/products.d.ts +15 -0
  231. package/dist/lib/tracking/ecommerce/products.js +18 -0
  232. package/dist/lib/tracking/ecommerce/products.js.map +1 -0
  233. package/dist/lib/tracking/ecommerce/promotions.d.ts +14 -0
  234. package/dist/lib/tracking/ecommerce/promotions.js +25 -0
  235. package/dist/lib/tracking/ecommerce/promotions.js.map +1 -0
  236. package/dist/lib/tracking/ecommerce/purchases.d.ts +11 -0
  237. package/dist/lib/tracking/ecommerce/purchases.js +10 -0
  238. package/dist/lib/tracking/ecommerce/purchases.js.map +1 -0
  239. package/dist/lib/tracking/ecommerce/refunds.d.ts +17 -0
  240. package/dist/lib/tracking/ecommerce/refunds.js +22 -0
  241. package/dist/lib/tracking/ecommerce/refunds.js.map +1 -0
  242. package/dist/lib/tracking/ecommerce/search.d.ts +24 -0
  243. package/dist/lib/tracking/ecommerce/search.js +22 -0
  244. package/dist/lib/tracking/ecommerce/search.js.map +1 -0
  245. package/dist/lib/tracking/ecommerce/subscriptions.d.ts +21 -0
  246. package/dist/lib/tracking/ecommerce/subscriptions.js +38 -0
  247. package/dist/lib/tracking/ecommerce/subscriptions.js.map +1 -0
  248. package/dist/lib/tracking/ecommerce/wishlist.d.ts +19 -0
  249. package/dist/lib/tracking/ecommerce/wishlist.js +26 -0
  250. package/dist/lib/tracking/ecommerce/wishlist.js.map +1 -0
  251. package/dist/lib/tracking/enterprise/acquisition.d.ts +25 -0
  252. package/dist/lib/tracking/enterprise/acquisition.js +22 -0
  253. package/dist/lib/tracking/enterprise/acquisition.js.map +1 -0
  254. package/dist/lib/tracking/enterprise/alerts.d.ts +32 -0
  255. package/dist/lib/tracking/enterprise/alerts.js +30 -0
  256. package/dist/lib/tracking/enterprise/alerts.js.map +1 -0
  257. package/dist/lib/tracking/enterprise/churn.d.ts +23 -0
  258. package/dist/lib/tracking/enterprise/churn.js +22 -0
  259. package/dist/lib/tracking/enterprise/churn.js.map +1 -0
  260. package/dist/lib/tracking/enterprise/cohorts.d.ts +18 -0
  261. package/dist/lib/tracking/enterprise/cohorts.js +18 -0
  262. package/dist/lib/tracking/enterprise/cohorts.js.map +1 -0
  263. package/dist/lib/tracking/enterprise/engagement.d.ts +31 -0
  264. package/dist/lib/tracking/enterprise/engagement.js +44 -0
  265. package/dist/lib/tracking/enterprise/engagement.js.map +1 -0
  266. package/dist/lib/tracking/enterprise/forecasting.d.ts +18 -0
  267. package/dist/lib/tracking/enterprise/forecasting.js +22 -0
  268. package/dist/lib/tracking/enterprise/forecasting.js.map +1 -0
  269. package/dist/lib/tracking/enterprise/index.d.ts +11 -0
  270. package/dist/lib/tracking/enterprise/index.js +12 -0
  271. package/dist/lib/tracking/enterprise/index.js.map +1 -0
  272. package/dist/lib/tracking/enterprise/monetization.d.ts +14 -0
  273. package/dist/lib/tracking/enterprise/monetization.js +10 -0
  274. package/dist/lib/tracking/enterprise/monetization.js.map +1 -0
  275. package/dist/lib/tracking/enterprise/multi-path-funnels.d.ts +20 -0
  276. package/dist/lib/tracking/enterprise/multi-path-funnels.js +18 -0
  277. package/dist/lib/tracking/enterprise/multi-path-funnels.js.map +1 -0
  278. package/dist/lib/tracking/enterprise/paths.d.ts +20 -0
  279. package/dist/lib/tracking/enterprise/paths.js +18 -0
  280. package/dist/lib/tracking/enterprise/paths.js.map +1 -0
  281. package/dist/lib/tracking/enterprise/security.d.ts +28 -0
  282. package/dist/lib/tracking/enterprise/security.js +26 -0
  283. package/dist/lib/tracking/enterprise/security.js.map +1 -0
  284. package/dist/lib/tracking/enterprise/support.d.ts +25 -0
  285. package/dist/lib/tracking/enterprise/support.js +22 -0
  286. package/dist/lib/tracking/enterprise/support.js.map +1 -0
  287. package/dist/lib/tracking/index.d.ts +4 -0
  288. package/dist/lib/tracking/index.js +5 -0
  289. package/dist/lib/tracking/index.js.map +1 -0
  290. package/dist/lib/types/analytics.d.ts +10 -2
  291. package/dist/lib/types/analytics.js +6 -0
  292. package/dist/lib/types/analytics.js.map +1 -0
  293. package/dist/lib/types/common.js +6 -0
  294. package/dist/lib/types/common.js.map +1 -0
  295. package/dist/lib/types/ecommerce.js +6 -0
  296. package/dist/lib/types/ecommerce.js.map +1 -0
  297. package/dist/lib/types/index.js +8 -0
  298. package/dist/lib/types/index.js.map +1 -0
  299. package/dist/lib/utils/browser.d.ts +16 -0
  300. package/dist/lib/utils/browser.js +32 -0
  301. package/dist/lib/utils/browser.js.map +1 -0
  302. package/dist/lib/utils/identity.js +346 -0
  303. package/dist/lib/utils/identity.js.map +1 -0
  304. package/dist/lib/utils/storage.js +105 -0
  305. package/dist/lib/utils/storage.js.map +1 -0
  306. package/dist/umd/237.index.js +2 -0
  307. package/dist/umd/237.index.js.map +1 -0
  308. package/dist/umd/546.index.js +3 -0
  309. package/dist/umd/546.index.js.LICENSE.txt +14 -0
  310. package/dist/umd/546.index.js.map +1 -0
  311. package/dist/umd/index.js +2 -0
  312. package/dist/umd/index.js.map +1 -0
  313. package/package.json +27 -80
  314. package/dist/lib/features/ecommerce/inventory.d.ts +0 -219
@@ -0,0 +1,10 @@
1
+ export class PurchaseTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Track a completed purchase. */
6
+ complete(order) {
7
+ return this.client.track({ order });
8
+ }
9
+ }
10
+ //# sourceMappingURL=purchases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"purchases.js","sourceRoot":"","sources":["../../../../src/lib/tracking/ecommerce/purchases.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,eAAe;IAC1B,YAA4B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAEjD,kCAAkC;IAClC,QAAQ,CAAC,KAAY;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Refund shortcuts.
3
+ */
4
+ import { Refunds } from "../../features/ecommerce/refunds";
5
+ import type { CartItem } from "../../types";
6
+ export declare class RefundTracker {
7
+ readonly client: Refunds;
8
+ constructor(client: Refunds);
9
+ /** Customer requested a refund. */
10
+ request(orderId: string, items?: CartItem[], reason?: string): Promise<import("../../features/ecommerce/refunds").RefundResponse>;
11
+ /** Refund approved. */
12
+ approve(refundId: string, approvedAmount: number): Promise<import("../../features/ecommerce/refunds").RefundResponse>;
13
+ /** Refund denied. */
14
+ deny(refundId: string, reason: string): Promise<import("../../features/ecommerce/refunds").RefundResponse>;
15
+ /** Track a completed refund (partial or full). */
16
+ complete(orderId: string, refundId: string, amount: number, currency: string, reason: string, isFullRefund?: boolean): Promise<import("../../features/ecommerce/refunds").RefundResponse>;
17
+ }
@@ -0,0 +1,22 @@
1
+ export class RefundTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Customer requested a refund. */
6
+ request(orderId, items, reason) {
7
+ return this.client.request(orderId, items, reason);
8
+ }
9
+ /** Refund approved. */
10
+ approve(refundId, approvedAmount) {
11
+ return this.client.approve(refundId, approvedAmount);
12
+ }
13
+ /** Refund denied. */
14
+ deny(refundId, reason) {
15
+ return this.client.deny(refundId, reason);
16
+ }
17
+ /** Track a completed refund (partial or full). */
18
+ complete(orderId, refundId, amount, currency, reason, isFullRefund = false) {
19
+ return this.client.track({ orderId, refundId, amount, currency, reason, isFullRefund });
20
+ }
21
+ }
22
+ //# sourceMappingURL=refunds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refunds.js","sourceRoot":"","sources":["../../../../src/lib/tracking/ecommerce/refunds.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,aAAa;IACxB,YAA4B,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAE/C,mCAAmC;IACnC,OAAO,CAAC,OAAe,EAAE,KAAkB,EAAE,MAAe;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,uBAAuB;IACvB,OAAO,CAAC,QAAgB,EAAE,cAAsB;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC,QAAgB,EAAE,MAAc;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,kDAAkD;IAClD,QAAQ,CACN,OAAe,EACf,QAAgB,EAChB,MAAc,EACd,QAAgB,EAChB,MAAc,EACd,YAAY,GAAG,KAAK;QAEpB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC1F,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Site search shortcuts.
3
+ */
4
+ import { SearchAnalytics } from "../../features/ecommerce/search";
5
+ import type { Product } from "../../types";
6
+ type RefinementType = "query_change" | "add_filter" | "remove_filter" | "sort_change";
7
+ export declare class SearchTracker {
8
+ readonly client: SearchAnalytics;
9
+ constructor(client: SearchAnalytics);
10
+ /** A user searched. */
11
+ query(query: string, resultsCount: number, extra?: {
12
+ category?: string;
13
+ filters?: Record<string, string | string[]>;
14
+ userId?: string;
15
+ sessionId?: string;
16
+ }): Promise<import("../../features/ecommerce/search").SearchResponse>;
17
+ /** A user clicked a search result. */
18
+ click(query: string, product: Product, position: number): Promise<import("../../features/ecommerce/search").SearchResponse>;
19
+ /** A user refined an existing search. */
20
+ refine(originalQuery: string, refinedQuery: string, refinementType: RefinementType): Promise<import("../../features/ecommerce/search").SearchResponse>;
21
+ /** Autocomplete suggestion accepted. */
22
+ suggestion(partialQuery: string, selectedSuggestion: string, suggestionPosition: number): Promise<import("../../features/ecommerce/search").SearchResponse>;
23
+ }
24
+ export {};
@@ -0,0 +1,22 @@
1
+ export class SearchTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** A user searched. */
6
+ query(query, resultsCount, extra) {
7
+ return this.client.track({ query, resultsCount, ...extra });
8
+ }
9
+ /** A user clicked a search result. */
10
+ click(query, product, position) {
11
+ return this.client.trackClick({ query, product, position });
12
+ }
13
+ /** A user refined an existing search. */
14
+ refine(originalQuery, refinedQuery, refinementType) {
15
+ return this.client.trackRefinement(originalQuery, refinedQuery, refinementType);
16
+ }
17
+ /** Autocomplete suggestion accepted. */
18
+ suggestion(partialQuery, selectedSuggestion, suggestionPosition) {
19
+ return this.client.trackSuggestion(partialQuery, selectedSuggestion, suggestionPosition);
20
+ }
21
+ }
22
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/lib/tracking/ecommerce/search.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,aAAa;IACxB,YAA4B,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IAEvD,uBAAuB;IACvB,KAAK,CAAC,KAAa,EAAE,YAAoB,EAAE,KAA+G;QACxJ,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,sCAAsC;IACtC,KAAK,CAAC,KAAa,EAAE,OAAgB,EAAE,QAAgB;QACrD,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,yCAAyC;IACzC,MAAM,CAAC,aAAqB,EAAE,YAAoB,EAAE,cAA8B;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;IAClF,CAAC;IAED,wCAAwC;IACxC,UAAU,CAAC,YAAoB,EAAE,kBAA0B,EAAE,kBAA0B;QACrF,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;IAC3F,CAAC;CACF"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Subscription shortcuts.
3
+ */
4
+ import { Subscriptions } from "../../features/ecommerce/subscriptions";
5
+ import type { MoneyValue } from "../../types";
6
+ export declare class SubscriptionTracker {
7
+ readonly client: Subscriptions;
8
+ constructor(client: Subscriptions);
9
+ /** New subscription started. */
10
+ start(subscriptionId: string, userId: string, plan: string, mrr: MoneyValue, billingCycle: "monthly" | "quarterly" | "yearly"): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
11
+ /** Plan changed (upgrade / downgrade). */
12
+ change(subscriptionId: string, userId: string, previousPlan: string, newPlan: string, previousMrr: MoneyValue, newMrr: MoneyValue, changeType: "upgrade" | "downgrade" | "cross_grade"): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
13
+ /** Subscription cancelled. */
14
+ cancel(subscriptionId: string, userId: string, plan: string, lostMrr: MoneyValue, immediate?: boolean): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
15
+ /** Subscription renewed. */
16
+ renew(subscriptionId: string, userId: string, mrr: MoneyValue): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
17
+ /** Trial converted to paid. */
18
+ trialConverted(subscriptionId: string, userId: string, plan: string, mrr: MoneyValue): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
19
+ /** Trial expired without converting. */
20
+ trialExpired(subscriptionId: string, userId: string): Promise<import("../../features/ecommerce/subscriptions").SubscriptionResponse>;
21
+ }
@@ -0,0 +1,38 @@
1
+ export class SubscriptionTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** New subscription started. */
6
+ start(subscriptionId, userId, plan, mrr, billingCycle) {
7
+ return this.client.start({ subscriptionId, userId, plan, mrr, billingCycle });
8
+ }
9
+ /** Plan changed (upgrade / downgrade). */
10
+ change(subscriptionId, userId, previousPlan, newPlan, previousMrr, newMrr, changeType) {
11
+ return this.client.change({
12
+ subscriptionId,
13
+ userId,
14
+ previousPlan,
15
+ newPlan,
16
+ previousMrr,
17
+ newMrr,
18
+ changeType,
19
+ });
20
+ }
21
+ /** Subscription cancelled. */
22
+ cancel(subscriptionId, userId, plan, lostMrr, immediate = false) {
23
+ return this.client.cancel({ subscriptionId, userId, plan, lostMrr, immediate });
24
+ }
25
+ /** Subscription renewed. */
26
+ renew(subscriptionId, userId, mrr) {
27
+ return this.client.renew(subscriptionId, userId, mrr);
28
+ }
29
+ /** Trial converted to paid. */
30
+ trialConverted(subscriptionId, userId, plan, mrr) {
31
+ return this.client.trialConverted(subscriptionId, userId, plan, mrr);
32
+ }
33
+ /** Trial expired without converting. */
34
+ trialExpired(subscriptionId, userId) {
35
+ return this.client.trialExpired(subscriptionId, userId);
36
+ }
37
+ }
38
+ //# sourceMappingURL=subscriptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscriptions.js","sourceRoot":"","sources":["../../../../src/lib/tracking/ecommerce/subscriptions.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,mBAAmB;IAC9B,YAA4B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAErD,gCAAgC;IAChC,KAAK,CACH,cAAsB,EACtB,MAAc,EACd,IAAY,EACZ,GAAe,EACf,YAAgD;QAEhD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,0CAA0C;IAC1C,MAAM,CACJ,cAAsB,EACtB,MAAc,EACd,YAAoB,EACpB,OAAe,EACf,WAAuB,EACvB,MAAkB,EAClB,UAAmD;QAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACxB,cAAc;YACd,MAAM;YACN,YAAY;YACZ,OAAO;YACP,WAAW;YACX,MAAM;YACN,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,MAAM,CAAC,cAAsB,EAAE,MAAc,EAAE,IAAY,EAAE,OAAmB,EAAE,SAAS,GAAG,KAAK;QACjG,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,4BAA4B;IAC5B,KAAK,CAAC,cAAsB,EAAE,MAAc,EAAE,GAAe;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IAED,+BAA+B;IAC/B,cAAc,CACZ,cAAsB,EACtB,MAAc,EACd,IAAY,EACZ,GAAe;QAEf,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;IAED,wCAAwC;IACxC,YAAY,CAAC,cAAsB,EAAE,MAAc;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;CACF"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Wishlist shortcuts.
3
+ */
4
+ import { WishlistTracking } from "../../features/ecommerce/wishlist";
5
+ import type { Product, Wishlist } from "../../types";
6
+ export declare class WishlistTracker {
7
+ readonly client: WishlistTracking;
8
+ constructor(client: WishlistTracking);
9
+ /** Add a product to wishlist. */
10
+ add(product: Product, wishlistId?: string): Promise<import("../../features/ecommerce/wishlist").WishlistResponse>;
11
+ /** Remove a product from wishlist. */
12
+ remove(product: Product, wishlistId?: string): Promise<import("../../features/ecommerce/wishlist").WishlistResponse>;
13
+ /** Track a wishlist view. */
14
+ view(wishlist: Wishlist): Promise<import("../../features/ecommerce/wishlist").WishlistResponse>;
15
+ /** Move a wishlist item into the cart. */
16
+ moveToCart(product: Product, wishlistId?: string): Promise<import("../../features/ecommerce/wishlist").WishlistResponse>;
17
+ /** Wishlist was shared. */
18
+ share(wishlistId: string, method: "email" | "link" | "social"): Promise<import("../../features/ecommerce/wishlist").WishlistResponse>;
19
+ }
@@ -0,0 +1,26 @@
1
+ export class WishlistTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Add a product to wishlist. */
6
+ add(product, wishlistId) {
7
+ return this.client.add({ product, wishlistId });
8
+ }
9
+ /** Remove a product from wishlist. */
10
+ remove(product, wishlistId) {
11
+ return this.client.remove({ product, wishlistId });
12
+ }
13
+ /** Track a wishlist view. */
14
+ view(wishlist) {
15
+ return this.client.view(wishlist);
16
+ }
17
+ /** Move a wishlist item into the cart. */
18
+ moveToCart(product, wishlistId) {
19
+ return this.client.moveToCart(product, wishlistId);
20
+ }
21
+ /** Wishlist was shared. */
22
+ share(wishlistId, method) {
23
+ return this.client.share(wishlistId, method);
24
+ }
25
+ }
26
+ //# sourceMappingURL=wishlist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wishlist.js","sourceRoot":"","sources":["../../../../src/lib/tracking/ecommerce/wishlist.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,eAAe;IAC1B,YAA4B,MAAwB;QAAxB,WAAM,GAAN,MAAM,CAAkB;IAAG,CAAC;IAExD,iCAAiC;IACjC,GAAG,CAAC,OAAgB,EAAE,UAAmB;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,sCAAsC;IACtC,MAAM,CAAC,OAAgB,EAAE,UAAmB;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,6BAA6B;IAC7B,IAAI,CAAC,QAAkB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,0CAA0C;IAC1C,UAAU,CAAC,OAAgB,EAAE,UAAmB;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrD,CAAC;IAED,2BAA2B;IAC3B,KAAK,CAAC,UAAkB,EAAE,MAAmC;QAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Acquisition shortcuts.
3
+ */
4
+ import { AcquisitionAnalytics, AcquisitionSource, LifecycleStage } from "../../features/enterprise/acquisition";
5
+ import type { MoneyValue } from "../../types";
6
+ export declare class AcquisitionTracker {
7
+ readonly client: AcquisitionAnalytics;
8
+ constructor(client: AcquisitionAnalytics);
9
+ /** Track how a user was acquired. */
10
+ acquired(userId: string, source: AcquisitionSource, properties?: Record<string, unknown>): Promise<{
11
+ tracked: boolean;
12
+ }>;
13
+ /** Create a marketing campaign. */
14
+ campaign(definition: Parameters<AcquisitionAnalytics["createCampaign"]>[0]): Promise<{
15
+ created: boolean;
16
+ }>;
17
+ /** Record campaign spend. */
18
+ spend(campaignId: string, amount: MoneyValue, date: string): Promise<{
19
+ tracked: boolean;
20
+ }>;
21
+ /** Track a lifecycle stage transition. */
22
+ lifecycle(userId: string, fromStage: LifecycleStage, toStage: LifecycleStage): Promise<{
23
+ tracked: boolean;
24
+ }>;
25
+ }
@@ -0,0 +1,22 @@
1
+ export class AcquisitionTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Track how a user was acquired. */
6
+ acquired(userId, source, properties) {
7
+ return this.client.trackAcquisition({ userId, source, properties });
8
+ }
9
+ /** Create a marketing campaign. */
10
+ campaign(definition) {
11
+ return this.client.createCampaign(definition);
12
+ }
13
+ /** Record campaign spend. */
14
+ spend(campaignId, amount, date) {
15
+ return this.client.trackCampaignSpend({ campaignId, amount, date });
16
+ }
17
+ /** Track a lifecycle stage transition. */
18
+ lifecycle(userId, fromStage, toStage) {
19
+ return this.client.trackLifecycleTransition({ userId, fromStage, toStage });
20
+ }
21
+ }
22
+ //# sourceMappingURL=acquisition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acquisition.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/acquisition.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,kBAAkB;IAC7B,YAA4B,MAA4B;QAA5B,WAAM,GAAN,MAAM,CAAsB;IAAG,CAAC;IAE5D,qCAAqC;IACrC,QAAQ,CAAC,MAAc,EAAE,MAAyB,EAAE,UAAoC;QACtF,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,mCAAmC;IACnC,QAAQ,CAAC,UAAiE;QACxE,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,6BAA6B;IAC7B,KAAK,CAAC,UAAkB,EAAE,MAAkB,EAAE,IAAY;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,0CAA0C;IAC1C,SAAS,CAAC,MAAc,EAAE,SAAyB,EAAE,OAAuB;QAC1E,OAAO,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9E,CAAC;CACF"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Alert shortcuts.
3
+ */
4
+ import { AlertsAnalytics } from "../../features/enterprise/alerts";
5
+ export declare class AlertTracker {
6
+ readonly client: AlertsAnalytics;
7
+ constructor(client: AlertsAnalytics);
8
+ /** Create an alert rule. */
9
+ create(definition: Parameters<AlertsAnalytics["createAlert"]>[0]): Promise<{
10
+ alertId: string;
11
+ }>;
12
+ /** Update an alert rule. */
13
+ update(alertId: string, updates: Record<string, unknown>): Promise<{
14
+ updated: boolean;
15
+ }>;
16
+ /** Delete an alert rule. */
17
+ delete(alertId: string): Promise<{
18
+ deleted: boolean;
19
+ }>;
20
+ /** Acknowledge a triggered alert instance. */
21
+ acknowledge(instanceId: string, acknowledgedBy: string): Promise<{
22
+ acknowledged: boolean;
23
+ }>;
24
+ /** Resolve a triggered alert instance. */
25
+ resolve(instanceId: string, notes?: string): Promise<{
26
+ resolved: boolean;
27
+ }>;
28
+ /** Mute an alert rule for a number of minutes. */
29
+ mute(alertId: string, durationMinutes: number): Promise<{
30
+ muted: boolean;
31
+ }>;
32
+ }
@@ -0,0 +1,30 @@
1
+ export class AlertTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Create an alert rule. */
6
+ create(definition) {
7
+ return this.client.createAlert(definition);
8
+ }
9
+ /** Update an alert rule. */
10
+ update(alertId, updates) {
11
+ return this.client.updateAlert(alertId, updates);
12
+ }
13
+ /** Delete an alert rule. */
14
+ delete(alertId) {
15
+ return this.client.deleteAlert(alertId);
16
+ }
17
+ /** Acknowledge a triggered alert instance. */
18
+ acknowledge(instanceId, acknowledgedBy) {
19
+ return this.client.acknowledgeAlert(instanceId, acknowledgedBy);
20
+ }
21
+ /** Resolve a triggered alert instance. */
22
+ resolve(instanceId, notes) {
23
+ return this.client.resolveAlert(instanceId, notes);
24
+ }
25
+ /** Mute an alert rule for a number of minutes. */
26
+ mute(alertId, durationMinutes) {
27
+ return this.client.muteAlert(alertId, durationMinutes);
28
+ }
29
+ }
30
+ //# sourceMappingURL=alerts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/alerts.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,YAAY;IACvB,YAA4B,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IAEvD,4BAA4B;IAC5B,MAAM,CAAC,UAAyD;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,4BAA4B;IAC5B,MAAM,CAAC,OAAe,EAAE,OAAgC;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,4BAA4B;IAC5B,MAAM,CAAC,OAAe;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,8CAA8C;IAC9C,WAAW,CAAC,UAAkB,EAAE,cAAsB;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAClE,CAAC;IAED,0CAA0C;IAC1C,OAAO,CAAC,UAAkB,EAAE,KAAc;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,kDAAkD;IAClD,IAAI,CAAC,OAAe,EAAE,eAAuB;QAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC;CACF"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Churn shortcuts.
3
+ */
4
+ import { ChurnAnalytics, UsageDecayConfig, PreventionActionConfig } from "../../features/enterprise/churn";
5
+ export declare class ChurnTracker {
6
+ readonly client: ChurnAnalytics;
7
+ constructor(client: ChurnAnalytics);
8
+ /** Track usage decay over time. */
9
+ decay(userId: string, metric: UsageDecayConfig["metric"], periods: UsageDecayConfig["periods"]): Promise<import("../../features/enterprise/churn").UsageDecay>;
10
+ /** Record an NPS / CSAT-style score. */
11
+ nps(userId: string, score: number, feedback?: string): Promise<{
12
+ tracked: boolean;
13
+ }>;
14
+ /** Record an actual churn event. */
15
+ churned(userId: string, churnType: "voluntary" | "involuntary", reason?: string): Promise<{
16
+ tracked: boolean;
17
+ churnId: string;
18
+ }>;
19
+ /** Record a retention/save action. */
20
+ prevention(userId: string, actionType: PreventionActionConfig["actionType"], details?: Record<string, unknown>): Promise<{
21
+ tracked: boolean;
22
+ }>;
23
+ }
@@ -0,0 +1,22 @@
1
+ export class ChurnTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Track usage decay over time. */
6
+ decay(userId, metric, periods) {
7
+ return this.client.trackUsageDecay({ userId, metric, periods });
8
+ }
9
+ /** Record an NPS / CSAT-style score. */
10
+ nps(userId, score, feedback) {
11
+ return this.client.trackNPS({ userId, score, feedback });
12
+ }
13
+ /** Record an actual churn event. */
14
+ churned(userId, churnType, reason) {
15
+ return this.client.trackChurn({ userId, churnType, reason });
16
+ }
17
+ /** Record a retention/save action. */
18
+ prevention(userId, actionType, details) {
19
+ return this.client.trackPreventionAction({ userId, actionType, details });
20
+ }
21
+ }
22
+ //# sourceMappingURL=churn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"churn.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/churn.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,YAAY;IACvB,YAA4B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAEtD,mCAAmC;IACnC,KAAK,CAAC,MAAc,EAAE,MAAkC,EAAE,OAAoC;QAC5F,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,wCAAwC;IACxC,GAAG,CAAC,MAAc,EAAE,KAAa,EAAE,QAAiB;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,oCAAoC;IACpC,OAAO,CAAC,MAAc,EAAE,SAAsC,EAAE,MAAe;QAC7E,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,sCAAsC;IACtC,UAAU,CAAC,MAAc,EAAE,UAAgD,EAAE,OAAiC;QAC5G,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Cohort shortcuts.
3
+ */
4
+ import { Cohorts } from "../../features/enterprise/cohorts";
5
+ export declare class CohortTracker {
6
+ readonly client: Cohorts;
7
+ constructor(client: Cohorts);
8
+ /** Define a new cohort (admin / setup). */
9
+ create(definition: Parameters<Cohorts["createCohort"]>[0]): Promise<import("../../features/enterprise/cohorts").CohortResponse>;
10
+ /** Define a new segment. */
11
+ segment(definition: Parameters<Cohorts["createSegment"]>[0]): Promise<{
12
+ segmentId: string;
13
+ }>;
14
+ /** Check whether a user is in a cohort. */
15
+ isMember(userId: string, cohortId: string): Promise<{
16
+ isMember: boolean;
17
+ }>;
18
+ }
@@ -0,0 +1,18 @@
1
+ export class CohortTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Define a new cohort (admin / setup). */
6
+ create(definition) {
7
+ return this.client.createCohort(definition);
8
+ }
9
+ /** Define a new segment. */
10
+ segment(definition) {
11
+ return this.client.createSegment(definition);
12
+ }
13
+ /** Check whether a user is in a cohort. */
14
+ isMember(userId, cohortId) {
15
+ return this.client.isUserInCohort(userId, cohortId);
16
+ }
17
+ }
18
+ //# sourceMappingURL=cohorts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cohorts.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/cohorts.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,aAAa;IACxB,YAA4B,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAE/C,2CAA2C;IAC3C,MAAM,CAAC,UAAkD;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,4BAA4B;IAC5B,OAAO,CAAC,UAAmD;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,2CAA2C;IAC3C,QAAQ,CAAC,MAAc,EAAE,QAAgB;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Engagement shortcuts.
3
+ */
4
+ import { Engagement, ContentConsumptionConfig, UserActivityConfig } from "../../features/enterprise/engagement";
5
+ export declare class EngagementTracker {
6
+ readonly client: Engagement;
7
+ constructor(client: Engagement);
8
+ /** Time spent dwelling on a feature (ms). */
9
+ dwell(featureId: string, dwellTimeMs: number, properties?: Record<string, unknown>): Promise<import("../../features/enterprise/engagement").EngagementResponse>;
10
+ /** End-of-session depth metrics. */
11
+ sessionDepth(sessionId: string, pagesVisited: number, featuresUsed: number, actionsTaken: number, durationMs: number): Promise<import("../../features/enterprise/engagement").EngagementResponse>;
12
+ /** How much of a content piece a user consumed. */
13
+ contentConsumption(contentId: string, contentType: ContentConsumptionConfig["contentType"], percentageConsumed: number, timeSpentMs: number): Promise<import("../../features/enterprise/engagement").EngagementResponse>;
14
+ /** User activity ping. */
15
+ activity(userId: string, activityType: UserActivityConfig["activityType"], durationMs: number): Promise<import("../../features/enterprise/engagement").EngagementResponse>;
16
+ /** Auto-track dwell time on a feature; returns a teardown that emits the event. */
17
+ autoTrackDwell(featureId: string, options?: {
18
+ userId?: string;
19
+ sessionId?: string;
20
+ }): import("../../utils/browser").Teardown;
21
+ /**
22
+ * Auto-track session-level engagement (session depth + activity transitions).
23
+ * Returns a teardown function. Safe no-op outside the browser.
24
+ */
25
+ autoTrack(options?: {
26
+ userId?: string;
27
+ sessionId?: string;
28
+ idleAfterMs?: number;
29
+ pollMs?: number;
30
+ }): import("../../utils/browser").Teardown;
31
+ }
@@ -0,0 +1,44 @@
1
+ export class EngagementTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Time spent dwelling on a feature (ms). */
6
+ dwell(featureId, dwellTimeMs, properties) {
7
+ return this.client.trackDwellTime({ featureId, dwellTimeMs, properties });
8
+ }
9
+ /** End-of-session depth metrics. */
10
+ sessionDepth(sessionId, pagesVisited, featuresUsed, actionsTaken, durationMs) {
11
+ return this.client.trackSessionDepth({
12
+ sessionId,
13
+ pagesVisited,
14
+ featuresUsed,
15
+ actionsTaken,
16
+ durationMs,
17
+ });
18
+ }
19
+ /** How much of a content piece a user consumed. */
20
+ contentConsumption(contentId, contentType, percentageConsumed, timeSpentMs) {
21
+ return this.client.trackContentConsumption({
22
+ contentId,
23
+ contentType,
24
+ percentageConsumed,
25
+ timeSpentMs,
26
+ });
27
+ }
28
+ /** User activity ping. */
29
+ activity(userId, activityType, durationMs) {
30
+ return this.client.trackUserActivity({ userId, activityType, durationMs });
31
+ }
32
+ /** Auto-track dwell time on a feature; returns a teardown that emits the event. */
33
+ autoTrackDwell(featureId, options) {
34
+ return this.client.autoTrackDwell(featureId, options);
35
+ }
36
+ /**
37
+ * Auto-track session-level engagement (session depth + activity transitions).
38
+ * Returns a teardown function. Safe no-op outside the browser.
39
+ */
40
+ autoTrack(options) {
41
+ return this.client.autoTrack(options);
42
+ }
43
+ }
44
+ //# sourceMappingURL=engagement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engagement.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/engagement.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,iBAAiB;IAC5B,YAA4B,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAElD,6CAA6C;IAC7C,KAAK,CAAC,SAAiB,EAAE,WAAmB,EAAE,UAAoC;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,oCAAoC;IACpC,YAAY,CACV,SAAiB,EACjB,YAAoB,EACpB,YAAoB,EACpB,YAAoB,EACpB,UAAkB;QAElB,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACnC,SAAS;YACT,YAAY;YACZ,YAAY;YACZ,YAAY;YACZ,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,mDAAmD;IACnD,kBAAkB,CAChB,SAAiB,EACjB,WAAoD,EACpD,kBAA0B,EAC1B,WAAmB;QAEnB,OAAO,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC;YACzC,SAAS;YACT,WAAW;YACX,kBAAkB;YAClB,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,QAAQ,CAAC,MAAc,EAAE,YAAgD,EAAE,UAAkB;QAC3F,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,mFAAmF;IACnF,cAAc,CAAC,SAAiB,EAAE,OAAiD;QACjF,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,OAAwF;QAChG,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Forecasting shortcuts.
3
+ */
4
+ import { Forecasting, ForecastMetric } from "../../features/enterprise/forecasting";
5
+ type Granularity = "day" | "week" | "month";
6
+ export declare class ForecastingTracker {
7
+ readonly client: Forecasting;
8
+ constructor(client: Forecasting);
9
+ /** Forecast active users. */
10
+ activeUsers(metric: ForecastMetric, periods: number, granularity: Granularity): Promise<import("../../features/enterprise/forecasting").ForecastResult>;
11
+ /** Forecast revenue. */
12
+ revenue(periods: number, granularity: Granularity): Promise<import("../../features/enterprise/forecasting").RevenueForecastResult>;
13
+ /** Forecast adoption of a specific feature. */
14
+ featureAdoption(featureId: string, periods: number, granularity: Granularity): Promise<import("../../features/enterprise/forecasting").ForecastResult>;
15
+ /** Forecast churn. */
16
+ churn(periods: number, granularity: Granularity): Promise<import("../../features/enterprise/forecasting").ChurnForecastResult>;
17
+ }
18
+ export {};
@@ -0,0 +1,22 @@
1
+ export class ForecastingTracker {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ /** Forecast active users. */
6
+ activeUsers(metric, periods, granularity) {
7
+ return this.client.forecastActiveUsers({ metric, periods, granularity });
8
+ }
9
+ /** Forecast revenue. */
10
+ revenue(periods, granularity) {
11
+ return this.client.forecastRevenue({ periods, granularity });
12
+ }
13
+ /** Forecast adoption of a specific feature. */
14
+ featureAdoption(featureId, periods, granularity) {
15
+ return this.client.forecastFeatureAdoption({ featureId, periods, granularity });
16
+ }
17
+ /** Forecast churn. */
18
+ churn(periods, granularity) {
19
+ return this.client.forecastChurn({ periods, granularity });
20
+ }
21
+ }
22
+ //# sourceMappingURL=forecasting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forecasting.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/forecasting.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,kBAAkB;IAC7B,YAA4B,MAAmB;QAAnB,WAAM,GAAN,MAAM,CAAa;IAAG,CAAC;IAEnD,6BAA6B;IAC7B,WAAW,CAAC,MAAsB,EAAE,OAAe,EAAE,WAAwB;QAC3E,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,wBAAwB;IACxB,OAAO,CAAC,OAAe,EAAE,WAAwB;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,+CAA+C;IAC/C,eAAe,CAAC,SAAiB,EAAE,OAAe,EAAE,WAAwB;QAC1E,OAAO,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,OAAe,EAAE,WAAwB;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ export { EngagementTracker } from "./engagement";
2
+ export { CohortTracker } from "./cohorts";
3
+ export { ChurnTracker } from "./churn";
4
+ export { MonetizationTracker } from "./monetization";
5
+ export { MultiPathFunnelTracker } from "./multi-path-funnels";
6
+ export { SupportTracker } from "./support";
7
+ export { AcquisitionTracker } from "./acquisition";
8
+ export { PathTracker } from "./paths";
9
+ export { AlertTracker } from "./alerts";
10
+ export { SecurityTracker } from "./security";
11
+ export { ForecastingTracker } from "./forecasting";
@@ -0,0 +1,12 @@
1
+ export { EngagementTracker } from "./engagement";
2
+ export { CohortTracker } from "./cohorts";
3
+ export { ChurnTracker } from "./churn";
4
+ export { MonetizationTracker } from "./monetization";
5
+ export { MultiPathFunnelTracker } from "./multi-path-funnels";
6
+ export { SupportTracker } from "./support";
7
+ export { AcquisitionTracker } from "./acquisition";
8
+ export { PathTracker } from "./paths";
9
+ export { AlertTracker } from "./alerts";
10
+ export { SecurityTracker } from "./security";
11
+ export { ForecastingTracker } from "./forecasting";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/tracking/enterprise/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Monetization shortcuts.
3
+ */
4
+ import { Monetization, RevenueType } from "../../features/enterprise/monetization";
5
+ import type { CurrencyCode } from "../../types";
6
+ export declare class MonetizationTracker {
7
+ readonly client: Monetization;
8
+ constructor(client: Monetization);
9
+ /** Track a revenue event. */
10
+ revenue(userId: string, amount: number, currency: CurrencyCode, type: RevenueType, properties?: Record<string, unknown>): Promise<{
11
+ tracked: boolean;
12
+ revenueId: string;
13
+ }>;
14
+ }