@grainql/analytics-web 2.4.0 → 2.5.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 (47) hide show
  1. package/dist/cjs/index.d.ts +28 -1
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/interaction-tracking.d.ts +71 -0
  5. package/dist/cjs/interaction-tracking.d.ts.map +1 -0
  6. package/dist/cjs/interaction-tracking.js +270 -0
  7. package/dist/cjs/interaction-tracking.js.map +1 -0
  8. package/dist/cjs/section-tracking.d.ts +91 -0
  9. package/dist/cjs/section-tracking.d.ts.map +1 -0
  10. package/dist/cjs/section-tracking.js +373 -0
  11. package/dist/cjs/section-tracking.js.map +1 -0
  12. package/dist/cjs/types/auto-tracking.d.ts +55 -0
  13. package/dist/cjs/types/auto-tracking.d.ts.map +1 -0
  14. package/dist/cjs/types/auto-tracking.js +6 -0
  15. package/dist/cjs/types/auto-tracking.js.map +1 -0
  16. package/dist/esm/index.d.ts +28 -1
  17. package/dist/esm/index.d.ts.map +1 -1
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/interaction-tracking.d.ts +71 -0
  20. package/dist/esm/interaction-tracking.d.ts.map +1 -0
  21. package/dist/esm/interaction-tracking.js +266 -0
  22. package/dist/esm/interaction-tracking.js.map +1 -0
  23. package/dist/esm/section-tracking.d.ts +91 -0
  24. package/dist/esm/section-tracking.d.ts.map +1 -0
  25. package/dist/esm/section-tracking.js +369 -0
  26. package/dist/esm/section-tracking.js.map +1 -0
  27. package/dist/esm/types/auto-tracking.d.ts +55 -0
  28. package/dist/esm/types/auto-tracking.d.ts.map +1 -0
  29. package/dist/esm/types/auto-tracking.js +5 -0
  30. package/dist/esm/types/auto-tracking.js.map +1 -0
  31. package/dist/index.d.ts +28 -1
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.global.dev.js +711 -1
  34. package/dist/index.global.dev.js.map +4 -4
  35. package/dist/index.global.js +2 -2
  36. package/dist/index.global.js.map +4 -4
  37. package/dist/index.js +124 -0
  38. package/dist/index.mjs +91 -0
  39. package/dist/interaction-tracking.d.ts +71 -0
  40. package/dist/interaction-tracking.d.ts.map +1 -0
  41. package/dist/interaction-tracking.js +270 -0
  42. package/dist/section-tracking.d.ts +91 -0
  43. package/dist/section-tracking.d.ts.map +1 -0
  44. package/dist/section-tracking.js +373 -0
  45. package/dist/types/auto-tracking.d.ts +55 -0
  46. package/dist/types/auto-tracking.d.ts.map +1 -0
  47. package/package.json +1 -1
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Section Tracking Manager for Grain Analytics
3
+ * Intelligent scroll tracking with viewport metrics, visible sections, and engagement analysis
4
+ */
5
+ import type { SectionConfig, SectionTrackingOptions } from './types/auto-tracking';
6
+ export interface SectionTracker {
7
+ trackSystemEvent(eventName: string, properties: Record<string, unknown>): void;
8
+ hasConsent(category: 'analytics' | 'marketing' | 'functional'): boolean;
9
+ log(...args: unknown[]): void;
10
+ }
11
+ export declare class SectionTrackingManager {
12
+ private tracker;
13
+ private sections;
14
+ private options;
15
+ private isDestroyed;
16
+ private sectionStates;
17
+ private intersectionObserver;
18
+ private xpathCache;
19
+ private lastScrollPosition;
20
+ private lastScrollTime;
21
+ private scrollVelocity;
22
+ private scrollDebounceTimer;
23
+ private pendingEvents;
24
+ private batchTimer;
25
+ constructor(tracker: SectionTracker, sections: SectionConfig[], options?: Partial<SectionTrackingOptions>);
26
+ /**
27
+ * Initialize section tracking
28
+ */
29
+ private initialize;
30
+ /**
31
+ * Setup IntersectionObserver for section visibility
32
+ */
33
+ private setupIntersectionObserver;
34
+ /**
35
+ * Setup scroll listener for velocity calculation
36
+ */
37
+ private setupScrollListener;
38
+ /**
39
+ * Initialize sections and start observing
40
+ */
41
+ private initializeSections;
42
+ /**
43
+ * Handle intersection observer entry
44
+ */
45
+ private handleIntersection;
46
+ /**
47
+ * Handle section entry (became visible)
48
+ */
49
+ private handleSectionEntry;
50
+ /**
51
+ * Handle section exit (became invisible)
52
+ */
53
+ private handleSectionExit;
54
+ /**
55
+ * Update scroll velocity
56
+ */
57
+ private updateScrollVelocity;
58
+ /**
59
+ * Calculate current scroll depth as percentage
60
+ */
61
+ private calculateScrollDepth;
62
+ /**
63
+ * Determine if section view should be tracked (sanitization)
64
+ */
65
+ private shouldTrackSection;
66
+ /**
67
+ * Queue section view for batching
68
+ */
69
+ private queueSectionView;
70
+ /**
71
+ * Flush pending section view events
72
+ */
73
+ private flushPendingEvents;
74
+ /**
75
+ * Find element by XPath selector
76
+ */
77
+ private findElementByXPath;
78
+ /**
79
+ * Log debug messages
80
+ */
81
+ private log;
82
+ /**
83
+ * Update sections configuration
84
+ */
85
+ updateSections(sections: SectionConfig[]): void;
86
+ /**
87
+ * Cleanup and destroy
88
+ */
89
+ destroy(): void;
90
+ }
91
+ //# sourceMappingURL=section-tracking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-tracking.d.ts","sourceRoot":"","sources":["../../src/section-tracking.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAmB,sBAAsB,EAAwB,MAAM,uBAAuB,CAAC;AAE1H,MAAM,WAAW,cAAc;IAC7B,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/E,UAAU,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC;IACxE,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;CAC/B;AAWD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,aAAa,CAAgD;IACrE,OAAO,CAAC,oBAAoB,CAAqC;IACjE,OAAO,CAAC,UAAU,CAA0C;IAG5D,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,mBAAmB,CAAuB;IAGlD,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,UAAU,CAAuB;gBAGvC,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAgB/C;;OAEG;IACH,OAAO,CAAC,UAAU;IAelB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAqBjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAe5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA+B1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;OAEG;IACH,OAAO,CAAC,GAAG;IAMX;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,IAAI;IAsB/C;;OAEG;IACH,OAAO,IAAI,IAAI;CAgChB"}
@@ -0,0 +1,369 @@
1
+ /**
2
+ * Section Tracking Manager for Grain Analytics
3
+ * Intelligent scroll tracking with viewport metrics, visible sections, and engagement analysis
4
+ */
5
+ const DEFAULT_OPTIONS = {
6
+ minDwellTime: 1000, // 1 second minimum
7
+ scrollVelocityThreshold: 500, // 500px/s
8
+ intersectionThreshold: 0.1, // 10% visible
9
+ debounceDelay: 100,
10
+ batchDelay: 2000, // 2 seconds
11
+ debug: false,
12
+ };
13
+ export class SectionTrackingManager {
14
+ constructor(tracker, sections, options = {}) {
15
+ this.isDestroyed = false;
16
+ // Tracking state
17
+ this.sectionStates = new Map();
18
+ this.intersectionObserver = null;
19
+ this.xpathCache = new Map();
20
+ // Scroll tracking
21
+ this.lastScrollPosition = 0;
22
+ this.lastScrollTime = Date.now();
23
+ this.scrollVelocity = 0;
24
+ this.scrollDebounceTimer = null;
25
+ // Event batching
26
+ this.pendingEvents = [];
27
+ this.batchTimer = null;
28
+ this.tracker = tracker;
29
+ this.sections = sections;
30
+ this.options = { ...DEFAULT_OPTIONS, ...options };
31
+ if (typeof window !== 'undefined' && typeof document !== 'undefined') {
32
+ // Initialize after DOM is ready
33
+ if (document.readyState === 'loading') {
34
+ document.addEventListener('DOMContentLoaded', () => this.initialize());
35
+ }
36
+ else {
37
+ setTimeout(() => this.initialize(), 0);
38
+ }
39
+ }
40
+ }
41
+ /**
42
+ * Initialize section tracking
43
+ */
44
+ initialize() {
45
+ if (this.isDestroyed)
46
+ return;
47
+ this.log('Initializing section tracking for', this.sections.length, 'sections');
48
+ // Setup intersection observer
49
+ this.setupIntersectionObserver();
50
+ // Setup scroll listener for velocity tracking
51
+ this.setupScrollListener();
52
+ // Initialize sections
53
+ this.initializeSections();
54
+ }
55
+ /**
56
+ * Setup IntersectionObserver for section visibility
57
+ */
58
+ setupIntersectionObserver() {
59
+ if (typeof IntersectionObserver === 'undefined') {
60
+ this.log('IntersectionObserver not supported');
61
+ return;
62
+ }
63
+ this.intersectionObserver = new IntersectionObserver((entries) => {
64
+ entries.forEach((entry) => {
65
+ this.handleIntersection(entry);
66
+ });
67
+ }, {
68
+ threshold: [0, 0.1, 0.25, 0.5, 0.75, 1.0],
69
+ rootMargin: '0px',
70
+ });
71
+ this.log('IntersectionObserver created');
72
+ }
73
+ /**
74
+ * Setup scroll listener for velocity calculation
75
+ */
76
+ setupScrollListener() {
77
+ if (typeof window === 'undefined')
78
+ return;
79
+ const scrollHandler = () => {
80
+ if (this.scrollDebounceTimer !== null) {
81
+ clearTimeout(this.scrollDebounceTimer);
82
+ }
83
+ this.scrollDebounceTimer = window.setTimeout(() => {
84
+ this.updateScrollVelocity();
85
+ this.scrollDebounceTimer = null;
86
+ }, this.options.debounceDelay);
87
+ };
88
+ window.addEventListener('scroll', scrollHandler, { passive: true });
89
+ this.log('Scroll listener attached');
90
+ }
91
+ /**
92
+ * Initialize sections and start observing
93
+ */
94
+ initializeSections() {
95
+ for (const section of this.sections) {
96
+ const element = this.findElementByXPath(section.selector);
97
+ if (!element) {
98
+ this.log('Section element not found:', section.sectionName, 'selector:', section.selector);
99
+ continue;
100
+ }
101
+ // Initialize state
102
+ const state = {
103
+ element,
104
+ config: section,
105
+ entryTime: null,
106
+ exitTime: null,
107
+ isVisible: false,
108
+ lastScrollPosition: window.scrollY,
109
+ lastScrollTime: Date.now(),
110
+ entryScrollSpeed: 0,
111
+ exitScrollSpeed: 0,
112
+ maxVisibleArea: 0,
113
+ };
114
+ this.sectionStates.set(section.sectionName, state);
115
+ // Start observing
116
+ if (this.intersectionObserver) {
117
+ this.intersectionObserver.observe(element);
118
+ }
119
+ this.log('Section initialized and observed:', section.sectionName);
120
+ }
121
+ }
122
+ /**
123
+ * Handle intersection observer entry
124
+ */
125
+ handleIntersection(entry) {
126
+ if (this.isDestroyed)
127
+ return;
128
+ // Find which section this element belongs to
129
+ const state = Array.from(this.sectionStates.values()).find((s) => s.element === entry.target);
130
+ if (!state)
131
+ return;
132
+ const isVisible = entry.isIntersecting && entry.intersectionRatio >= this.options.intersectionThreshold;
133
+ const visibleArea = entry.intersectionRatio;
134
+ // Update max visible area
135
+ if (visibleArea > state.maxVisibleArea) {
136
+ state.maxVisibleArea = visibleArea;
137
+ }
138
+ // Handle visibility change
139
+ if (isVisible && !state.isVisible) {
140
+ // Section became visible
141
+ this.handleSectionEntry(state);
142
+ }
143
+ else if (!isVisible && state.isVisible) {
144
+ // Section became invisible
145
+ this.handleSectionExit(state);
146
+ }
147
+ state.isVisible = isVisible;
148
+ }
149
+ /**
150
+ * Handle section entry (became visible)
151
+ */
152
+ handleSectionEntry(state) {
153
+ this.log('Section entered view:', state.config.sectionName);
154
+ state.entryTime = Date.now();
155
+ state.entryScrollSpeed = this.scrollVelocity;
156
+ state.lastScrollPosition = window.scrollY;
157
+ state.lastScrollTime = Date.now();
158
+ state.maxVisibleArea = 0;
159
+ }
160
+ /**
161
+ * Handle section exit (became invisible)
162
+ */
163
+ handleSectionExit(state) {
164
+ this.log('Section exited view:', state.config.sectionName);
165
+ if (state.entryTime === null)
166
+ return;
167
+ state.exitTime = Date.now();
168
+ state.exitScrollSpeed = this.scrollVelocity;
169
+ const duration = state.exitTime - state.entryTime;
170
+ // Create section view data
171
+ const viewData = {
172
+ sectionName: state.config.sectionName,
173
+ sectionType: state.config.sectionType,
174
+ entryTime: state.entryTime,
175
+ exitTime: state.exitTime,
176
+ duration,
177
+ viewportWidth: window.innerWidth,
178
+ viewportHeight: window.innerHeight,
179
+ scrollDepth: this.calculateScrollDepth(),
180
+ visibleAreaPercentage: Math.round(state.maxVisibleArea * 100),
181
+ scrollSpeedAtEntry: state.entryScrollSpeed,
182
+ scrollSpeedAtExit: state.exitScrollSpeed,
183
+ };
184
+ // Apply sanitization and track if valid
185
+ if (this.shouldTrackSection(viewData)) {
186
+ this.queueSectionView(viewData);
187
+ }
188
+ else {
189
+ this.log('Section view filtered out:', state.config.sectionName, 'duration:', duration);
190
+ }
191
+ // Reset entry time
192
+ state.entryTime = null;
193
+ }
194
+ /**
195
+ * Update scroll velocity
196
+ */
197
+ updateScrollVelocity() {
198
+ const now = Date.now();
199
+ const currentPosition = window.scrollY;
200
+ const timeDelta = now - this.lastScrollTime;
201
+ const positionDelta = Math.abs(currentPosition - this.lastScrollPosition);
202
+ if (timeDelta > 0) {
203
+ this.scrollVelocity = (positionDelta / timeDelta) * 1000; // pixels per second
204
+ }
205
+ this.lastScrollPosition = currentPosition;
206
+ this.lastScrollTime = now;
207
+ }
208
+ /**
209
+ * Calculate current scroll depth as percentage
210
+ */
211
+ calculateScrollDepth() {
212
+ if (typeof window === 'undefined' || typeof document === 'undefined')
213
+ return 0;
214
+ const windowHeight = window.innerHeight;
215
+ const documentHeight = Math.max(document.body.scrollHeight, document.body.offsetHeight, document.documentElement.clientHeight, document.documentElement.scrollHeight, document.documentElement.offsetHeight);
216
+ const scrollTop = window.scrollY;
217
+ const scrollableHeight = documentHeight - windowHeight;
218
+ if (scrollableHeight <= 0)
219
+ return 100;
220
+ return Math.round((scrollTop / scrollableHeight) * 100);
221
+ }
222
+ /**
223
+ * Determine if section view should be tracked (sanitization)
224
+ */
225
+ shouldTrackSection(viewData) {
226
+ // Minimum dwell time check
227
+ if (viewData.duration < this.options.minDwellTime) {
228
+ return false;
229
+ }
230
+ // Check if user was rapidly scrolling through
231
+ const avgScrollSpeed = (viewData.scrollSpeedAtEntry + viewData.scrollSpeedAtExit) / 2;
232
+ if (avgScrollSpeed > this.options.scrollVelocityThreshold * 2) {
233
+ // Very fast scroll - likely not engaged
234
+ return false;
235
+ }
236
+ // Must have had some meaningful visible area
237
+ if (viewData.visibleAreaPercentage < 10) {
238
+ return false;
239
+ }
240
+ return true;
241
+ }
242
+ /**
243
+ * Queue section view for batching
244
+ */
245
+ queueSectionView(viewData) {
246
+ this.pendingEvents.push(viewData);
247
+ this.log('Queued section view:', viewData.sectionName, 'duration:', viewData.duration);
248
+ // Setup batch timer if not already set
249
+ if (this.batchTimer === null) {
250
+ this.batchTimer = window.setTimeout(() => {
251
+ this.flushPendingEvents();
252
+ }, this.options.batchDelay);
253
+ }
254
+ }
255
+ /**
256
+ * Flush pending section view events
257
+ */
258
+ flushPendingEvents() {
259
+ if (this.isDestroyed || this.pendingEvents.length === 0)
260
+ return;
261
+ if (!this.tracker.hasConsent('analytics')) {
262
+ this.pendingEvents = [];
263
+ return;
264
+ }
265
+ this.log('Flushing', this.pendingEvents.length, 'section view events');
266
+ // Track each section view
267
+ for (const viewData of this.pendingEvents) {
268
+ this.tracker.trackSystemEvent('_grain_section_view', {
269
+ section_name: viewData.sectionName,
270
+ section_type: viewData.sectionType,
271
+ duration_ms: viewData.duration,
272
+ viewport_width: viewData.viewportWidth,
273
+ viewport_height: viewData.viewportHeight,
274
+ scroll_depth_percent: viewData.scrollDepth,
275
+ visible_area_percent: viewData.visibleAreaPercentage,
276
+ scroll_speed_entry: Math.round(viewData.scrollSpeedAtEntry || 0),
277
+ scroll_speed_exit: Math.round(viewData.scrollSpeedAtExit || 0),
278
+ entry_timestamp: viewData.entryTime,
279
+ exit_timestamp: viewData.exitTime,
280
+ });
281
+ }
282
+ // Clear pending events
283
+ this.pendingEvents = [];
284
+ this.batchTimer = null;
285
+ }
286
+ /**
287
+ * Find element by XPath selector
288
+ */
289
+ findElementByXPath(xpath) {
290
+ // Check cache first
291
+ if (this.xpathCache.has(xpath)) {
292
+ const cached = this.xpathCache.get(xpath);
293
+ if (cached && document.contains(cached)) {
294
+ return cached;
295
+ }
296
+ this.xpathCache.delete(xpath);
297
+ }
298
+ try {
299
+ const result = document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);
300
+ const element = result.singleNodeValue;
301
+ if (element) {
302
+ this.xpathCache.set(xpath, element);
303
+ }
304
+ return element;
305
+ }
306
+ catch (error) {
307
+ this.log('Error evaluating XPath:', xpath, error);
308
+ return null;
309
+ }
310
+ }
311
+ /**
312
+ * Log debug messages
313
+ */
314
+ log(...args) {
315
+ if (this.options.debug) {
316
+ console.log('[SectionTracking]', ...args);
317
+ }
318
+ }
319
+ /**
320
+ * Update sections configuration
321
+ */
322
+ updateSections(sections) {
323
+ if (this.isDestroyed)
324
+ return;
325
+ this.log('Updating sections configuration');
326
+ // Disconnect observer
327
+ if (this.intersectionObserver) {
328
+ this.intersectionObserver.disconnect();
329
+ }
330
+ // Clear state
331
+ this.sectionStates.clear();
332
+ this.xpathCache.clear();
333
+ // Update configuration
334
+ this.sections = sections;
335
+ // Reinitialize
336
+ this.setupIntersectionObserver();
337
+ this.initializeSections();
338
+ }
339
+ /**
340
+ * Cleanup and destroy
341
+ */
342
+ destroy() {
343
+ if (this.isDestroyed)
344
+ return;
345
+ this.log('Destroying section tracking manager');
346
+ this.isDestroyed = true;
347
+ // Flush any pending events
348
+ this.flushPendingEvents();
349
+ // Clear timers
350
+ if (this.scrollDebounceTimer !== null) {
351
+ clearTimeout(this.scrollDebounceTimer);
352
+ this.scrollDebounceTimer = null;
353
+ }
354
+ if (this.batchTimer !== null) {
355
+ clearTimeout(this.batchTimer);
356
+ this.batchTimer = null;
357
+ }
358
+ // Disconnect intersection observer
359
+ if (this.intersectionObserver) {
360
+ this.intersectionObserver.disconnect();
361
+ this.intersectionObserver = null;
362
+ }
363
+ // Clear state
364
+ this.sectionStates.clear();
365
+ this.xpathCache.clear();
366
+ this.pendingEvents = [];
367
+ }
368
+ }
369
+ //# sourceMappingURL=section-tracking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"section-tracking.js","sourceRoot":"","sources":["../../src/section-tracking.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Auto-tracking types for Grain Analytics SDK
3
+ */
4
+ export interface InteractionConfig {
5
+ eventName: string;
6
+ description: string;
7
+ selector: string;
8
+ priority: number;
9
+ label: string;
10
+ }
11
+ export interface SectionConfig {
12
+ sectionName: string;
13
+ description: string;
14
+ sectionType: string;
15
+ selector: string;
16
+ importance: number;
17
+ }
18
+ export interface AutoTrackingConfig {
19
+ interactions: InteractionConfig[];
20
+ sections: SectionConfig[];
21
+ }
22
+ export interface SectionViewData {
23
+ sectionName: string;
24
+ sectionType: string;
25
+ entryTime: number;
26
+ exitTime: number;
27
+ duration: number;
28
+ viewportWidth: number;
29
+ viewportHeight: number;
30
+ scrollDepth: number;
31
+ visibleAreaPercentage: number;
32
+ scrollSpeedAtEntry?: number;
33
+ scrollSpeedAtExit?: number;
34
+ }
35
+ export interface SectionTrackingOptions {
36
+ minDwellTime: number;
37
+ scrollVelocityThreshold: number;
38
+ intersectionThreshold: number;
39
+ debounceDelay: number;
40
+ batchDelay: number;
41
+ debug?: boolean;
42
+ }
43
+ export interface SectionTrackingState {
44
+ element: Element;
45
+ config: SectionConfig;
46
+ entryTime: number | null;
47
+ exitTime: number | null;
48
+ isVisible: boolean;
49
+ lastScrollPosition: number;
50
+ lastScrollTime: number;
51
+ entryScrollSpeed: number;
52
+ exitScrollSpeed: number;
53
+ maxVisibleArea: number;
54
+ }
55
+ //# sourceMappingURL=auto-tracking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-tracking.d.ts","sourceRoot":"","sources":["../../../src/types/auto-tracking.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,iBAAiB,EAAE,CAAC;IAClC,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;CACxB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Auto-tracking types for Grain Analytics SDK
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=auto-tracking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-tracking.js","sourceRoot":"","sources":["../../../src/types/auto-tracking.ts"],"names":[],"mappings":"AAAA;;GAEG"}
package/dist/index.d.ts CHANGED
@@ -10,6 +10,7 @@ import { categorizeReferrer, parseUTMParameters, type ReferrerCategory, type UTM
10
10
  export type { ReferrerCategory, UTMParameters, FirstTouchAttribution };
11
11
  export { categorizeReferrer, parseUTMParameters };
12
12
  export { getCountry, getCountryCodeFromTimezone, getState } from './countries';
13
+ export type { InteractionConfig, SectionConfig, AutoTrackingConfig, SectionViewData, SectionTrackingOptions, } from './types/auto-tracking';
13
14
  export interface GrainEvent {
14
15
  eventName: string;
15
16
  userId?: string;
@@ -85,6 +86,22 @@ export interface RemoteConfigResponse {
85
86
  qualifiedRuleSets: string[];
86
87
  timestamp: string;
87
88
  isFromCache: boolean;
89
+ autoTrackingConfig?: {
90
+ interactions: Array<{
91
+ eventName: string;
92
+ description: string;
93
+ selector: string;
94
+ priority: number;
95
+ label: string;
96
+ }>;
97
+ sections: Array<{
98
+ sectionName: string;
99
+ description: string;
100
+ sectionType: string;
101
+ selector: string;
102
+ importance: number;
103
+ }>;
104
+ };
88
105
  }
89
106
  export interface RemoteConfigOptions {
90
107
  immediateKeys?: string[];
@@ -217,6 +234,8 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
217
234
  private pageTrackingManager;
218
235
  private ephemeralSessionId;
219
236
  private eventCountSinceLastHeartbeat;
237
+ private interactionTrackingManager;
238
+ private sectionTrackingManager;
220
239
  private sessionStartTime;
221
240
  private sessionEventCount;
222
241
  constructor(config: GrainConfig);
@@ -262,7 +281,7 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
262
281
  * this should not be called. Use getEphemeralSessionId() instead.
263
282
  */
264
283
  private getEffectiveUserIdInternal;
265
- private log;
284
+ log(...args: unknown[]): void;
266
285
  /**
267
286
  * Create error digest from events
268
287
  */
@@ -291,6 +310,14 @@ export declare class GrainAnalytics implements HeartbeatTracker, PageTracker {
291
310
  * Initialize automatic tracking (heartbeat and page views)
292
311
  */
293
312
  private initializeAutomaticTracking;
313
+ /**
314
+ * Initialize auto-tracking (interactions and sections)
315
+ */
316
+ private initializeAutoTracking;
317
+ /**
318
+ * Setup auto-tracking managers
319
+ */
320
+ private setupAutoTrackingManagers;
294
321
  /**
295
322
  * Track session start event
296
323
  */
@@ -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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"}