@grainql/analytics-web 2.5.4 → 2.7.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 (99) hide show
  1. package/README.md +3 -1
  2. package/dist/activity.js +1 -1
  3. package/dist/attention-quality.d.ts +128 -0
  4. package/dist/attention-quality.d.ts.map +1 -0
  5. package/dist/attention-quality.js +246 -0
  6. package/dist/cjs/activity.js +1 -1
  7. package/dist/cjs/activity.js.map +1 -1
  8. package/dist/cjs/attention-quality.d.ts +128 -0
  9. package/dist/cjs/attention-quality.d.ts.map +1 -0
  10. package/dist/cjs/attention-quality.js +246 -0
  11. package/dist/cjs/attention-quality.js.map +1 -0
  12. package/dist/cjs/consent.js +4 -4
  13. package/dist/cjs/consent.js.map +1 -1
  14. package/dist/cjs/heartbeat.d.ts.map +1 -1
  15. package/dist/cjs/heartbeat.js +0 -6
  16. package/dist/cjs/heartbeat.js.map +1 -1
  17. package/dist/cjs/heatmap-tracking.d.ts +93 -0
  18. package/dist/cjs/heatmap-tracking.d.ts.map +1 -0
  19. package/dist/cjs/heatmap-tracking.js +499 -0
  20. package/dist/cjs/heatmap-tracking.js.map +1 -0
  21. package/dist/cjs/index.d.ts +11 -0
  22. package/dist/cjs/index.d.ts.map +1 -1
  23. package/dist/cjs/index.js.map +1 -1
  24. package/dist/cjs/interaction-tracking.d.ts.map +1 -1
  25. package/dist/cjs/interaction-tracking.js +9 -18
  26. package/dist/cjs/interaction-tracking.js.map +1 -1
  27. package/dist/cjs/page-tracking.d.ts.map +1 -1
  28. package/dist/cjs/page-tracking.js +0 -9
  29. package/dist/cjs/page-tracking.js.map +1 -1
  30. package/dist/cjs/section-tracking.d.ts +3 -0
  31. package/dist/cjs/section-tracking.d.ts.map +1 -1
  32. package/dist/cjs/section-tracking.js +30 -7
  33. package/dist/cjs/section-tracking.js.map +1 -1
  34. package/dist/cjs/types/auto-tracking.d.ts +3 -0
  35. package/dist/cjs/types/auto-tracking.d.ts.map +1 -1
  36. package/dist/cjs/types/heatmap-tracking.d.ts +44 -0
  37. package/dist/cjs/types/heatmap-tracking.d.ts.map +1 -0
  38. package/dist/cjs/types/heatmap-tracking.js +6 -0
  39. package/dist/cjs/types/heatmap-tracking.js.map +1 -0
  40. package/dist/consent.js +4 -4
  41. package/dist/esm/activity.js +1 -1
  42. package/dist/esm/activity.js.map +1 -1
  43. package/dist/esm/attention-quality.d.ts +128 -0
  44. package/dist/esm/attention-quality.d.ts.map +1 -0
  45. package/dist/esm/attention-quality.js +242 -0
  46. package/dist/esm/attention-quality.js.map +1 -0
  47. package/dist/esm/consent.js +4 -4
  48. package/dist/esm/consent.js.map +1 -1
  49. package/dist/esm/heartbeat.d.ts.map +1 -1
  50. package/dist/esm/heartbeat.js +0 -6
  51. package/dist/esm/heartbeat.js.map +1 -1
  52. package/dist/esm/heatmap-tracking.d.ts +93 -0
  53. package/dist/esm/heatmap-tracking.d.ts.map +1 -0
  54. package/dist/esm/heatmap-tracking.js +495 -0
  55. package/dist/esm/heatmap-tracking.js.map +1 -0
  56. package/dist/esm/index.d.ts +11 -0
  57. package/dist/esm/index.d.ts.map +1 -1
  58. package/dist/esm/index.js.map +1 -1
  59. package/dist/esm/interaction-tracking.d.ts.map +1 -1
  60. package/dist/esm/interaction-tracking.js +9 -18
  61. package/dist/esm/interaction-tracking.js.map +1 -1
  62. package/dist/esm/page-tracking.d.ts.map +1 -1
  63. package/dist/esm/page-tracking.js +0 -9
  64. package/dist/esm/page-tracking.js.map +1 -1
  65. package/dist/esm/section-tracking.d.ts +3 -0
  66. package/dist/esm/section-tracking.d.ts.map +1 -1
  67. package/dist/esm/section-tracking.js +30 -7
  68. package/dist/esm/section-tracking.js.map +1 -1
  69. package/dist/esm/types/auto-tracking.d.ts +3 -0
  70. package/dist/esm/types/auto-tracking.d.ts.map +1 -1
  71. package/dist/esm/types/heatmap-tracking.d.ts +44 -0
  72. package/dist/esm/types/heatmap-tracking.d.ts.map +1 -0
  73. package/dist/esm/types/heatmap-tracking.js +5 -0
  74. package/dist/esm/types/heatmap-tracking.js.map +1 -0
  75. package/dist/heartbeat.d.ts.map +1 -1
  76. package/dist/heartbeat.js +0 -6
  77. package/dist/heatmap-tracking.d.ts +93 -0
  78. package/dist/heatmap-tracking.d.ts.map +1 -0
  79. package/dist/heatmap-tracking.js +499 -0
  80. package/dist/index.d.ts +11 -0
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.global.dev.js +801 -80
  83. package/dist/index.global.dev.js.map +4 -4
  84. package/dist/index.global.js +2 -2
  85. package/dist/index.global.js.map +4 -4
  86. package/dist/index.js +70 -38
  87. package/dist/index.mjs +70 -38
  88. package/dist/interaction-tracking.d.ts.map +1 -1
  89. package/dist/interaction-tracking.js +9 -18
  90. package/dist/page-tracking.d.ts.map +1 -1
  91. package/dist/page-tracking.js +0 -9
  92. package/dist/section-tracking.d.ts +3 -0
  93. package/dist/section-tracking.d.ts.map +1 -1
  94. package/dist/section-tracking.js +30 -7
  95. package/dist/types/auto-tracking.d.ts +3 -0
  96. package/dist/types/auto-tracking.d.ts.map +1 -1
  97. package/dist/types/heatmap-tracking.d.ts +44 -0
  98. package/dist/types/heatmap-tracking.d.ts.map +1 -0
  99. package/package.json +1 -1
@@ -0,0 +1,499 @@
1
+ "use strict";
2
+ /**
3
+ * Heatmap Tracking Manager for Grain Analytics
4
+ * Tracks click interactions and scroll depth across all pages
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.HeatmapTrackingManager = void 0;
8
+ const attention_quality_1 = require("./attention-quality");
9
+ const DEFAULT_OPTIONS = {
10
+ scrollDebounceDelay: 100,
11
+ batchDelay: 2000,
12
+ maxBatchSize: 20,
13
+ debug: false,
14
+ };
15
+ class HeatmapTrackingManager {
16
+ constructor(tracker, options = {}) {
17
+ this.isDestroyed = false;
18
+ // Tracking state
19
+ this.currentScrollState = null;
20
+ this.pendingClicks = [];
21
+ this.pendingScrolls = [];
22
+ // Timers
23
+ this.scrollDebounceTimer = null;
24
+ this.batchTimer = null;
25
+ this.scrollTrackingTimer = null;
26
+ this.periodicScrollTimer = null;
27
+ // Scroll tracking
28
+ this.lastScrollPosition = 0;
29
+ this.lastScrollTime = Date.now();
30
+ this.SPLIT_DURATION = 3000; // 3 seconds - same as section tracking
31
+ this.tracker = tracker;
32
+ this.options = { ...DEFAULT_OPTIONS, ...options };
33
+ // Initialize attention quality manager
34
+ this.attentionQuality = new attention_quality_1.AttentionQualityManager(tracker.getActivityDetector(), {
35
+ maxSectionDuration: 9000, // 9 seconds per viewport section
36
+ minScrollDistance: 100, // 100 pixels
37
+ idleThreshold: 30000, // 30 seconds
38
+ debug: this.options.debug,
39
+ });
40
+ if (typeof window !== 'undefined' && typeof document !== 'undefined') {
41
+ // Initialize after DOM is ready
42
+ if (document.readyState === 'loading') {
43
+ document.addEventListener('DOMContentLoaded', () => this.initialize());
44
+ }
45
+ else {
46
+ setTimeout(() => this.initialize(), 0);
47
+ }
48
+ }
49
+ }
50
+ /**
51
+ * Initialize heatmap tracking
52
+ */
53
+ initialize() {
54
+ if (this.isDestroyed)
55
+ return;
56
+ this.log('Initializing heatmap tracking');
57
+ // Setup click tracking
58
+ this.setupClickTracking();
59
+ // Setup scroll tracking
60
+ this.setupScrollTracking();
61
+ // Start periodic scroll state tracking
62
+ this.startScrollTracking();
63
+ // Setup page unload handler for beaconing
64
+ this.setupUnloadHandler();
65
+ }
66
+ /**
67
+ * Setup click event tracking
68
+ */
69
+ setupClickTracking() {
70
+ if (typeof document === 'undefined')
71
+ return;
72
+ const clickHandler = (event) => {
73
+ if (this.isDestroyed)
74
+ return;
75
+ if (!this.tracker.hasConsent('analytics'))
76
+ return;
77
+ this.handleClick(event);
78
+ };
79
+ document.addEventListener('click', clickHandler, { passive: true, capture: true });
80
+ }
81
+ /**
82
+ * Setup scroll event tracking
83
+ */
84
+ setupScrollTracking() {
85
+ if (typeof window === 'undefined')
86
+ return;
87
+ const scrollHandler = () => {
88
+ if (this.scrollDebounceTimer !== null) {
89
+ clearTimeout(this.scrollDebounceTimer);
90
+ }
91
+ this.scrollDebounceTimer = window.setTimeout(() => {
92
+ this.handleScroll();
93
+ this.scrollDebounceTimer = null;
94
+ }, this.options.scrollDebounceDelay);
95
+ };
96
+ window.addEventListener('scroll', scrollHandler, { passive: true });
97
+ }
98
+ /**
99
+ * Start periodic scroll state tracking
100
+ */
101
+ startScrollTracking() {
102
+ if (typeof window === 'undefined')
103
+ return;
104
+ // Track initial scroll position
105
+ this.updateScrollState();
106
+ // Update scroll state every 500ms (for detecting section changes)
107
+ this.scrollTrackingTimer = window.setInterval(() => {
108
+ if (this.isDestroyed)
109
+ return;
110
+ this.updateScrollState();
111
+ }, 500);
112
+ // Start periodic 3-second scroll duration tracking
113
+ this.startPeriodicScrollTracking();
114
+ }
115
+ /**
116
+ * Start periodic scroll tracking (sends events every 3 seconds)
117
+ */
118
+ startPeriodicScrollTracking() {
119
+ if (typeof window === 'undefined')
120
+ return;
121
+ this.periodicScrollTimer = window.setInterval(() => {
122
+ if (this.isDestroyed || !this.currentScrollState)
123
+ return;
124
+ if (!this.tracker.hasConsent('analytics'))
125
+ return;
126
+ // Check attention quality policies
127
+ if (!this.attentionQuality.shouldTrack()) {
128
+ this.log('Scroll tracking paused:', this.attentionQuality.getLastFilterReason());
129
+ return;
130
+ }
131
+ const currentTime = Date.now();
132
+ const duration = currentTime - this.currentScrollState.entryTime;
133
+ // Only send if meaningful duration (> 1 second)
134
+ if (duration > 1000) {
135
+ const scrollY = window.scrollY || window.pageYOffset;
136
+ const viewportHeight = window.innerHeight;
137
+ const pageHeight = document.documentElement.scrollHeight;
138
+ // Check section-specific attention quality
139
+ const sectionKey = `viewport_section_${this.currentScrollState.viewportSection}`;
140
+ const attentionCheck = this.attentionQuality.shouldTrackSection(sectionKey, scrollY);
141
+ // If attention was reset due to scroll, reset our entry time
142
+ if (attentionCheck.resetAttention) {
143
+ this.log(`Viewport section ${this.currentScrollState.viewportSection}: Attention reset`);
144
+ this.currentScrollState.entryTime = currentTime;
145
+ return;
146
+ }
147
+ // If max duration reached for this viewport section
148
+ if (!attentionCheck.shouldTrack) {
149
+ this.log(`Viewport section ${this.currentScrollState.viewportSection}: ${attentionCheck.reason}`);
150
+ return;
151
+ }
152
+ const scrollData = {
153
+ pageUrl: window.location.href,
154
+ viewportSection: this.currentScrollState.viewportSection,
155
+ scrollDepthPx: scrollY,
156
+ durationMs: duration,
157
+ entryTimestamp: this.currentScrollState.entryTime,
158
+ exitTimestamp: currentTime,
159
+ pageHeight,
160
+ viewportHeight,
161
+ };
162
+ // Send immediately using beacon to ensure delivery
163
+ this.tracker.trackSystemEvent('_grain_heatmap_scroll', {
164
+ page_url: scrollData.pageUrl,
165
+ viewport_section: scrollData.viewportSection,
166
+ scroll_depth_px: scrollData.scrollDepthPx,
167
+ duration_ms: scrollData.durationMs,
168
+ entry_timestamp: scrollData.entryTimestamp,
169
+ exit_timestamp: scrollData.exitTimestamp,
170
+ page_height: scrollData.pageHeight,
171
+ viewport_height: scrollData.viewportHeight,
172
+ is_split: true, // Flag to indicate periodic tracking, not final exit
173
+ }, { flush: true });
174
+ // Update attention quality duration tracker
175
+ this.attentionQuality.updateSectionDuration(sectionKey, duration);
176
+ // Reset entry time for next period
177
+ this.currentScrollState.entryTime = currentTime;
178
+ }
179
+ }, this.SPLIT_DURATION);
180
+ }
181
+ /**
182
+ * Setup page unload handler to beacon remaining data
183
+ */
184
+ setupUnloadHandler() {
185
+ if (typeof window === 'undefined')
186
+ return;
187
+ const unloadHandler = () => {
188
+ // Finalize current scroll state
189
+ if (this.currentScrollState) {
190
+ const currentTime = Date.now();
191
+ const duration = currentTime - this.currentScrollState.entryTime;
192
+ if (duration > 100) {
193
+ const scrollData = {
194
+ pageUrl: window.location.href,
195
+ viewportSection: this.currentScrollState.viewportSection,
196
+ scrollDepthPx: this.currentScrollState.scrollDepthPx,
197
+ durationMs: duration,
198
+ entryTimestamp: this.currentScrollState.entryTime,
199
+ exitTimestamp: currentTime,
200
+ pageHeight: document.documentElement.scrollHeight,
201
+ viewportHeight: window.innerHeight,
202
+ };
203
+ this.pendingScrolls.push(scrollData);
204
+ }
205
+ }
206
+ // Flush all pending events with beacon
207
+ this.flushPendingEventsWithBeacon();
208
+ };
209
+ // Use both events for better compatibility
210
+ window.addEventListener('beforeunload', unloadHandler);
211
+ window.addEventListener('pagehide', unloadHandler);
212
+ }
213
+ /**
214
+ * Handle click event
215
+ */
216
+ handleClick(event) {
217
+ if (!this.tracker.hasConsent('analytics'))
218
+ return;
219
+ const element = event.target;
220
+ if (!element)
221
+ return;
222
+ const pageUrl = window.location.href;
223
+ const xpath = this.generateXPath(element);
224
+ // Get viewport coordinates
225
+ const viewportX = Math.round(event.clientX);
226
+ const viewportY = Math.round(event.clientY);
227
+ // Get page coordinates (including scroll offset)
228
+ const pageX = Math.round(event.pageX);
229
+ const pageY = Math.round(event.pageY);
230
+ const elementTag = element.tagName?.toLowerCase() || 'unknown';
231
+ const elementText = element.textContent?.trim().substring(0, 100);
232
+ const clickData = {
233
+ pageUrl,
234
+ xpath,
235
+ viewportX,
236
+ viewportY,
237
+ pageX,
238
+ pageY,
239
+ elementTag,
240
+ elementText: elementText || undefined,
241
+ timestamp: Date.now(),
242
+ };
243
+ // Check if this is a navigation link
244
+ const isNavigationLink = element instanceof HTMLAnchorElement && element.href;
245
+ // Send immediately with beacon for navigation links to ensure delivery
246
+ if (isNavigationLink) {
247
+ this.tracker.trackSystemEvent('_grain_heatmap_click', {
248
+ page_url: clickData.pageUrl,
249
+ xpath: clickData.xpath,
250
+ viewport_x: clickData.viewportX,
251
+ viewport_y: clickData.viewportY,
252
+ page_x: clickData.pageX,
253
+ page_y: clickData.pageY,
254
+ element_tag: clickData.elementTag,
255
+ element_text: clickData.elementText,
256
+ timestamp: clickData.timestamp,
257
+ }, { flush: true });
258
+ }
259
+ else {
260
+ this.pendingClicks.push(clickData);
261
+ // Check if we should flush
262
+ this.considerBatchFlush();
263
+ }
264
+ }
265
+ /**
266
+ * Handle scroll event
267
+ */
268
+ handleScroll() {
269
+ if (!this.tracker.hasConsent('analytics'))
270
+ return;
271
+ this.updateScrollState();
272
+ }
273
+ /**
274
+ * Update current scroll state
275
+ */
276
+ updateScrollState() {
277
+ if (typeof window === 'undefined')
278
+ return;
279
+ if (!this.tracker.hasConsent('analytics'))
280
+ return;
281
+ const currentTime = Date.now();
282
+ const scrollY = window.scrollY || window.pageYOffset;
283
+ const viewportHeight = window.innerHeight;
284
+ const pageHeight = document.documentElement.scrollHeight;
285
+ // Calculate which viewport section we're in
286
+ const viewportSection = Math.floor(scrollY / viewportHeight);
287
+ // If we're in a new section, record the previous one
288
+ if (this.currentScrollState && this.currentScrollState.viewportSection !== viewportSection) {
289
+ const duration = currentTime - this.currentScrollState.entryTime;
290
+ // Only record if duration is meaningful (> 100ms)
291
+ if (duration > 100) {
292
+ const scrollData = {
293
+ pageUrl: window.location.href,
294
+ viewportSection: this.currentScrollState.viewportSection,
295
+ scrollDepthPx: this.currentScrollState.scrollDepthPx,
296
+ durationMs: duration,
297
+ entryTimestamp: this.currentScrollState.entryTime,
298
+ exitTimestamp: currentTime,
299
+ pageHeight,
300
+ viewportHeight,
301
+ };
302
+ this.pendingScrolls.push(scrollData);
303
+ }
304
+ // Reset attention for previous viewport section
305
+ const prevSectionKey = `viewport_section_${this.currentScrollState.viewportSection}`;
306
+ this.attentionQuality.resetSection(prevSectionKey);
307
+ }
308
+ // Update current state
309
+ if (!this.currentScrollState || this.currentScrollState.viewportSection !== viewportSection) {
310
+ this.currentScrollState = {
311
+ viewportSection,
312
+ entryTime: currentTime,
313
+ scrollDepthPx: scrollY,
314
+ };
315
+ }
316
+ this.lastScrollPosition = scrollY;
317
+ this.lastScrollTime = currentTime;
318
+ // Check if we should flush
319
+ this.considerBatchFlush();
320
+ }
321
+ /**
322
+ * Generate XPath for an element
323
+ */
324
+ generateXPath(element) {
325
+ if (!element)
326
+ return '';
327
+ // If element has an ID, use that for simpler XPath
328
+ if (element.id) {
329
+ return `//*[@id="${element.id}"]`;
330
+ }
331
+ const paths = [];
332
+ let currentElement = element;
333
+ while (currentElement && currentElement.nodeType === Node.ELEMENT_NODE) {
334
+ let index = 0;
335
+ let sibling = currentElement;
336
+ // Count preceding siblings of the same tag
337
+ while (sibling) {
338
+ sibling = sibling.previousElementSibling;
339
+ if (sibling && sibling.nodeName === currentElement.nodeName) {
340
+ index++;
341
+ }
342
+ }
343
+ const tagName = currentElement.nodeName.toLowerCase();
344
+ const pathIndex = index > 0 ? `[${index + 1}]` : '';
345
+ paths.unshift(`${tagName}${pathIndex}`);
346
+ currentElement = currentElement.parentElement;
347
+ }
348
+ return paths.length ? `/${paths.join('/')}` : '';
349
+ }
350
+ /**
351
+ * Consider flushing batched events
352
+ */
353
+ considerBatchFlush() {
354
+ const totalEvents = this.pendingClicks.length + this.pendingScrolls.length;
355
+ // Flush if we've hit the batch size
356
+ if (totalEvents >= this.options.maxBatchSize) {
357
+ this.flushPendingEvents();
358
+ return;
359
+ }
360
+ // Otherwise, schedule a batch flush
361
+ if (this.batchTimer === null && totalEvents > 0) {
362
+ this.batchTimer = window.setTimeout(() => {
363
+ this.flushPendingEvents();
364
+ this.batchTimer = null;
365
+ }, this.options.batchDelay);
366
+ }
367
+ }
368
+ /**
369
+ * Flush pending events
370
+ */
371
+ flushPendingEvents() {
372
+ if (this.isDestroyed)
373
+ return;
374
+ if (!this.tracker.hasConsent('analytics')) {
375
+ // Clear pending events if consent is revoked
376
+ this.pendingClicks = [];
377
+ this.pendingScrolls = [];
378
+ return;
379
+ }
380
+ // Send click events
381
+ if (this.pendingClicks.length > 0) {
382
+ for (const clickData of this.pendingClicks) {
383
+ this.tracker.trackSystemEvent('_grain_heatmap_click', {
384
+ page_url: clickData.pageUrl,
385
+ xpath: clickData.xpath,
386
+ viewport_x: clickData.viewportX,
387
+ viewport_y: clickData.viewportY,
388
+ page_x: clickData.pageX,
389
+ page_y: clickData.pageY,
390
+ element_tag: clickData.elementTag,
391
+ element_text: clickData.elementText,
392
+ timestamp: clickData.timestamp,
393
+ });
394
+ }
395
+ this.pendingClicks = [];
396
+ }
397
+ // Send scroll events
398
+ if (this.pendingScrolls.length > 0) {
399
+ for (const scrollData of this.pendingScrolls) {
400
+ this.tracker.trackSystemEvent('_grain_heatmap_scroll', {
401
+ page_url: scrollData.pageUrl,
402
+ viewport_section: scrollData.viewportSection,
403
+ scroll_depth_px: scrollData.scrollDepthPx,
404
+ duration_ms: scrollData.durationMs,
405
+ entry_timestamp: scrollData.entryTimestamp,
406
+ exit_timestamp: scrollData.exitTimestamp,
407
+ page_height: scrollData.pageHeight,
408
+ viewport_height: scrollData.viewportHeight,
409
+ });
410
+ }
411
+ this.pendingScrolls = [];
412
+ }
413
+ // Clear batch timer
414
+ if (this.batchTimer !== null) {
415
+ clearTimeout(this.batchTimer);
416
+ this.batchTimer = null;
417
+ }
418
+ }
419
+ /**
420
+ * Flush pending events with beacon (for page unload)
421
+ */
422
+ flushPendingEventsWithBeacon() {
423
+ if (!this.tracker.hasConsent('analytics')) {
424
+ this.pendingClicks = [];
425
+ this.pendingScrolls = [];
426
+ return;
427
+ }
428
+ // Send click events with beacon
429
+ if (this.pendingClicks.length > 0) {
430
+ for (const clickData of this.pendingClicks) {
431
+ this.tracker.trackSystemEvent('_grain_heatmap_click', {
432
+ page_url: clickData.pageUrl,
433
+ xpath: clickData.xpath,
434
+ viewport_x: clickData.viewportX,
435
+ viewport_y: clickData.viewportY,
436
+ page_x: clickData.pageX,
437
+ page_y: clickData.pageY,
438
+ element_tag: clickData.elementTag,
439
+ element_text: clickData.elementText,
440
+ timestamp: clickData.timestamp,
441
+ }, { flush: true });
442
+ }
443
+ this.pendingClicks = [];
444
+ }
445
+ // Send scroll events with beacon
446
+ if (this.pendingScrolls.length > 0) {
447
+ for (const scrollData of this.pendingScrolls) {
448
+ this.tracker.trackSystemEvent('_grain_heatmap_scroll', {
449
+ page_url: scrollData.pageUrl,
450
+ viewport_section: scrollData.viewportSection,
451
+ scroll_depth_px: scrollData.scrollDepthPx,
452
+ duration_ms: scrollData.durationMs,
453
+ entry_timestamp: scrollData.entryTimestamp,
454
+ exit_timestamp: scrollData.exitTimestamp,
455
+ page_height: scrollData.pageHeight,
456
+ viewport_height: scrollData.viewportHeight,
457
+ }, { flush: true });
458
+ }
459
+ this.pendingScrolls = [];
460
+ }
461
+ }
462
+ /**
463
+ * Log debug message
464
+ */
465
+ log(...args) {
466
+ if (this.options.debug) {
467
+ this.tracker.log('[Heatmap Tracking]', ...args);
468
+ }
469
+ }
470
+ /**
471
+ * Destroy the tracking manager
472
+ */
473
+ destroy() {
474
+ this.isDestroyed = true;
475
+ // Clear timers
476
+ if (this.scrollDebounceTimer !== null) {
477
+ clearTimeout(this.scrollDebounceTimer);
478
+ this.scrollDebounceTimer = null;
479
+ }
480
+ if (this.batchTimer !== null) {
481
+ clearTimeout(this.batchTimer);
482
+ this.batchTimer = null;
483
+ }
484
+ if (this.scrollTrackingTimer !== null) {
485
+ clearInterval(this.scrollTrackingTimer);
486
+ this.scrollTrackingTimer = null;
487
+ }
488
+ if (this.periodicScrollTimer !== null) {
489
+ clearInterval(this.periodicScrollTimer);
490
+ this.periodicScrollTimer = null;
491
+ }
492
+ // Destroy attention quality manager
493
+ this.attentionQuality.destroy();
494
+ // Flush any remaining events
495
+ this.flushPendingEvents();
496
+ }
497
+ }
498
+ exports.HeatmapTrackingManager = HeatmapTrackingManager;
499
+ //# sourceMappingURL=heatmap-tracking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heatmap-tracking.js","sourceRoot":"","sources":["../../src/heatmap-tracking.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { ConsentState, ConsentMode } from './consent';
6
6
  import { CookieConfig } from './cookies';
7
+ import { ActivityDetector } from './activity';
7
8
  import { type HeartbeatTracker } from './heartbeat';
8
9
  import { type PageTracker } from './page-tracking';
9
10
  import { categorizeReferrer, parseUTMParameters, type ReferrerCategory, type UTMParameters, type FirstTouchAttribution } from './attribution';
@@ -56,6 +57,7 @@ export interface GrainConfig {
56
57
  heartbeatInactiveInterval?: number;
57
58
  enableAutoPageView?: boolean;
58
59
  stripQueryParams?: boolean;
60
+ enableHeatmapTracking?: boolean;
59
61
  }
60
62
  export interface SendEventOptions {
61
63
  flush?: boolean;
@@ -237,6 +239,7 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
237
239
  private eventCountSinceLastHeartbeat;
238
240
  private interactionTrackingManager;
239
241
  private sectionTrackingManager;
242
+ private heatmapTrackingManager;
240
243
  private sessionStartTime;
241
244
  private sessionEventCount;
242
245
  constructor(config: GrainConfig);
@@ -311,6 +314,10 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
311
314
  * Initialize automatic tracking (heartbeat and page views)
312
315
  */
313
316
  private initializeAutomaticTracking;
317
+ /**
318
+ * Initialize heatmap tracking
319
+ */
320
+ private initializeHeatmapTracking;
314
321
  /**
315
322
  * Initialize auto-tracking (interactions and sections)
316
323
  */
@@ -363,6 +370,10 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
363
370
  * Reset event count since last heartbeat
364
371
  */
365
372
  resetEventCountSinceLastHeartbeat(): void;
373
+ /**
374
+ * Get the activity detector (for internal use by tracking managers)
375
+ */
376
+ getActivityDetector(): ActivityDetector;
366
377
  /**
367
378
  * Get the effective user ID (public method)
368
379
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}