@zaplier/sdk 1.8.0 → 1.8.2

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 (144) hide show
  1. package/dist/core-ultra.min.js +10 -0
  2. package/dist/index.cjs +1615 -34
  3. package/dist/index.d.ts +11 -7
  4. package/dist/index.esm.js +1615 -34
  5. package/dist/v2/chunks/browser-apis-AyU2utpF.min.js +6 -0
  6. package/dist/v2/chunks/confidence-BslwbUCt.min.js +6 -0
  7. package/dist/v2/chunks/device-signals-2L_62qNZ.min.js +6 -0
  8. package/dist/v2/chunks/dom-blockers-C467-IRd.min.js +6 -0
  9. package/dist/v2/chunks/fingerprint-FfUEEIAd.min.js +6 -0
  10. package/dist/v2/chunks/hardware-9ikfSEs-.min.js +6 -0
  11. package/dist/v2/chunks/incognito-CkKAdE8Z.min.js +6 -0
  12. package/dist/v2/chunks/math-Q4s6nkVD.min.js +6 -0
  13. package/dist/v2/chunks/plugins-enhanced-mUjU1EXe.min.js +6 -0
  14. package/dist/v2/chunks/session-replay-C5Tp0d16.min.js +6 -0
  15. package/dist/v2/chunks/storage-Bl_8oytT.min.js +6 -0
  16. package/dist/v2/chunks/system-DTjxyOZF.min.js +6 -0
  17. package/dist/v2/core.d.ts +7 -0
  18. package/dist/v2/core.js +2 -2
  19. package/dist/v2/core.min.js +2 -2
  20. package/dist/v2/modules/anti-adblock.js +2 -2
  21. package/dist/v2/modules/browser-apis-C32PGYAh.js +6 -0
  22. package/dist/v2/modules/browser-apis-DzzjRXFN.js +6 -0
  23. package/dist/v2/modules/confidence-CLylpqVh.js +6 -0
  24. package/dist/v2/modules/device-signals-ChNkNSJR.js +6 -0
  25. package/dist/v2/modules/device-signals-D-VQg-o6.js +6 -0
  26. package/dist/v2/modules/dom-blockers-BamKJxCs.js +6 -0
  27. package/dist/v2/modules/dom-blockers-D9M2aO9M.js +6 -0
  28. package/dist/v2/modules/fingerprint-CRCL21-p.js +6 -0
  29. package/dist/v2/modules/fingerprint-Ddq30bun.js +6 -0
  30. package/dist/v2/modules/fingerprint.js +2 -2
  31. package/dist/v2/modules/hardware-BxWqOjae.js +6 -0
  32. package/dist/v2/modules/heatmap.js +1 -1
  33. package/dist/v2/modules/incognito-CBxUhUOT.js +6 -0
  34. package/dist/v2/modules/incognito-DpuYoC8S.js +6 -0
  35. package/dist/v2/modules/math-B13vt1ND.js +6 -0
  36. package/dist/v2/modules/plugins-enhanced-CnBdC9_k.js +6 -0
  37. package/dist/v2/modules/plugins-enhanced-D5ft0k0e.js +6 -0
  38. package/dist/v2/modules/replay.js +2 -2
  39. package/dist/v2/modules/storage-D8dcMojB.js +6 -0
  40. package/dist/v2/modules/system-ZMflVbka.js +6 -0
  41. package/package.json +47 -22
  42. package/dist/index.cjs.map +0 -1
  43. package/dist/index.esm.js.map +0 -1
  44. package/dist/index.js +0 -3517
  45. package/dist/index.js.map +0 -1
  46. package/dist/sdk.js +0 -26960
  47. package/dist/sdk.js.map +0 -1
  48. package/dist/sdk.legacy.min.js +0 -6
  49. package/dist/sdk.min.js +0 -7
  50. package/dist/src/core.d.ts +0 -87
  51. package/dist/src/core.d.ts.map +0 -1
  52. package/dist/src/index.d.ts +0 -15
  53. package/dist/src/index.d.ts.map +0 -1
  54. package/dist/src/modules/anti-adblock.d.ts +0 -113
  55. package/dist/src/modules/anti-adblock.d.ts.map +0 -1
  56. package/dist/src/modules/auto-tracker.d.ts +0 -240
  57. package/dist/src/modules/auto-tracker.d.ts.map +0 -1
  58. package/dist/src/modules/bot-detection.d.ts +0 -15
  59. package/dist/src/modules/bot-detection.d.ts.map +0 -1
  60. package/dist/src/modules/fingerprint/accessibility.d.ts +0 -155
  61. package/dist/src/modules/fingerprint/accessibility.d.ts.map +0 -1
  62. package/dist/src/modules/fingerprint/audio.d.ts +0 -15
  63. package/dist/src/modules/fingerprint/audio.d.ts.map +0 -1
  64. package/dist/src/modules/fingerprint/browser-apis.d.ts +0 -108
  65. package/dist/src/modules/fingerprint/browser-apis.d.ts.map +0 -1
  66. package/dist/src/modules/fingerprint/browser.d.ts +0 -14
  67. package/dist/src/modules/fingerprint/browser.d.ts.map +0 -1
  68. package/dist/src/modules/fingerprint/canvas.d.ts +0 -14
  69. package/dist/src/modules/fingerprint/canvas.d.ts.map +0 -1
  70. package/dist/src/modules/fingerprint/confidence.d.ts +0 -89
  71. package/dist/src/modules/fingerprint/confidence.d.ts.map +0 -1
  72. package/dist/src/modules/fingerprint/datetime-locale.d.ts +0 -76
  73. package/dist/src/modules/fingerprint/datetime-locale.d.ts.map +0 -1
  74. package/dist/src/modules/fingerprint/device-signals.d.ts +0 -29
  75. package/dist/src/modules/fingerprint/device-signals.d.ts.map +0 -1
  76. package/dist/src/modules/fingerprint/dom-blockers.d.ts +0 -56
  77. package/dist/src/modules/fingerprint/dom-blockers.d.ts.map +0 -1
  78. package/dist/src/modules/fingerprint/font-preferences.d.ts +0 -70
  79. package/dist/src/modules/fingerprint/font-preferences.d.ts.map +0 -1
  80. package/dist/src/modules/fingerprint/fonts-enhanced.d.ts +0 -43
  81. package/dist/src/modules/fingerprint/fonts-enhanced.d.ts.map +0 -1
  82. package/dist/src/modules/fingerprint/fonts.d.ts +0 -14
  83. package/dist/src/modules/fingerprint/fonts.d.ts.map +0 -1
  84. package/dist/src/modules/fingerprint/hardware.d.ts +0 -40
  85. package/dist/src/modules/fingerprint/hardware.d.ts.map +0 -1
  86. package/dist/src/modules/fingerprint/hashing.d.ts +0 -29
  87. package/dist/src/modules/fingerprint/hashing.d.ts.map +0 -1
  88. package/dist/src/modules/fingerprint/incognito.d.ts +0 -6
  89. package/dist/src/modules/fingerprint/incognito.d.ts.map +0 -1
  90. package/dist/src/modules/fingerprint/math-enhanced.d.ts +0 -70
  91. package/dist/src/modules/fingerprint/math-enhanced.d.ts.map +0 -1
  92. package/dist/src/modules/fingerprint/math.d.ts +0 -32
  93. package/dist/src/modules/fingerprint/math.d.ts.map +0 -1
  94. package/dist/src/modules/fingerprint/plugins-enhanced.d.ts +0 -97
  95. package/dist/src/modules/fingerprint/plugins-enhanced.d.ts.map +0 -1
  96. package/dist/src/modules/fingerprint/screen.d.ts +0 -15
  97. package/dist/src/modules/fingerprint/screen.d.ts.map +0 -1
  98. package/dist/src/modules/fingerprint/storage.d.ts +0 -45
  99. package/dist/src/modules/fingerprint/storage.d.ts.map +0 -1
  100. package/dist/src/modules/fingerprint/system.d.ts +0 -40
  101. package/dist/src/modules/fingerprint/system.d.ts.map +0 -1
  102. package/dist/src/modules/fingerprint/webgl.d.ts +0 -15
  103. package/dist/src/modules/fingerprint/webgl.d.ts.map +0 -1
  104. package/dist/src/modules/fingerprint.d.ts +0 -35
  105. package/dist/src/modules/fingerprint.d.ts.map +0 -1
  106. package/dist/src/modules/global-interface.d.ts +0 -157
  107. package/dist/src/modules/global-interface.d.ts.map +0 -1
  108. package/dist/src/modules/heatmap.d.ts +0 -145
  109. package/dist/src/modules/heatmap.d.ts.map +0 -1
  110. package/dist/src/modules/incognito-detection.d.ts +0 -23
  111. package/dist/src/modules/incognito-detection.d.ts.map +0 -1
  112. package/dist/src/modules/session-replay.d.ts +0 -93
  113. package/dist/src/modules/session-replay.d.ts.map +0 -1
  114. package/dist/src/modules/user-agent.d.ts +0 -35
  115. package/dist/src/modules/user-agent.d.ts.map +0 -1
  116. package/dist/src/modules/visitor-persistence.d.ts +0 -51
  117. package/dist/src/modules/visitor-persistence.d.ts.map +0 -1
  118. package/dist/src/sdk.d.ts +0 -289
  119. package/dist/src/sdk.d.ts.map +0 -1
  120. package/dist/src/types/config.d.ts +0 -44
  121. package/dist/src/types/config.d.ts.map +0 -1
  122. package/dist/src/types/detection.d.ts +0 -114
  123. package/dist/src/types/detection.d.ts.map +0 -1
  124. package/dist/src/types/events.d.ts +0 -174
  125. package/dist/src/types/events.d.ts.map +0 -1
  126. package/dist/src/types/fingerprint.d.ts +0 -252
  127. package/dist/src/types/fingerprint.d.ts.map +0 -1
  128. package/dist/src/types/index.d.ts +0 -83
  129. package/dist/src/types/index.d.ts.map +0 -1
  130. package/dist/src/types/methods.d.ts +0 -83
  131. package/dist/src/types/methods.d.ts.map +0 -1
  132. package/dist/src/types/visitor.d.ts +0 -90
  133. package/dist/src/types/visitor.d.ts.map +0 -1
  134. package/dist/src/utils/browser.d.ts +0 -114
  135. package/dist/src/utils/browser.d.ts.map +0 -1
  136. package/dist/src/utils/lazy-loader.d.ts +0 -60
  137. package/dist/src/utils/lazy-loader.d.ts.map +0 -1
  138. package/dist/src/utils/session-utils.d.ts +0 -58
  139. package/dist/src/utils/session-utils.d.ts.map +0 -1
  140. package/dist/src/utils/webgl-cache.d.ts +0 -43
  141. package/dist/src/utils/webgl-cache.d.ts.map +0 -1
  142. package/dist/v2/chunks/fingerprint-ergvAID6.js +0 -8461
  143. package/dist/v2/chunks/replay-CM8dTFmL.js +0 -12158
  144. package/dist/v2/chunks/session-replay-C_UkGoTj.js +0 -240
@@ -1,145 +0,0 @@
1
- /**
2
- * Heatmap Engine
3
- * Captures click coordinates, scroll depth, mouse movements and rage clicks
4
- * for visual analytics and user behavior insights
5
- */
6
- export interface HeatmapClick {
7
- x: number;
8
- y: number;
9
- absoluteX: number;
10
- absoluteY: number;
11
- element: string;
12
- timestamp: number;
13
- button: number;
14
- rageClick?: boolean;
15
- }
16
- export interface HeatmapScroll {
17
- depth: number;
18
- maxDepth: number;
19
- timestamp: number;
20
- viewport: {
21
- width: number;
22
- height: number;
23
- };
24
- }
25
- export interface HeatmapMouseMove {
26
- path: Array<{
27
- x: number;
28
- y: number;
29
- timestamp: number;
30
- }>;
31
- timestamp: number;
32
- }
33
- export interface HeatmapConfig {
34
- enabled: boolean;
35
- trackClicks: boolean;
36
- trackScrollDepth: boolean;
37
- trackMouseMoves: boolean;
38
- trackRageClicks: boolean;
39
- mouseMoveThrottle: number;
40
- batchInterval: number;
41
- maxClickBuffer: number;
42
- rageClickThreshold: number;
43
- rageClickTimeWindow: number;
44
- }
45
- export declare class HeatmapEngine {
46
- private config;
47
- private clicks;
48
- private scrollData;
49
- private mouseMoves;
50
- private lastMouseMove;
51
- private maxScrollDepth;
52
- private batchTimer?;
53
- private isActive;
54
- private sessionId;
55
- private antiAdblockManager?;
56
- private recentClicks;
57
- constructor(sessionId: string, config?: Partial<HeatmapConfig>);
58
- /**
59
- * Start heatmap tracking
60
- */
61
- start(): boolean;
62
- /**
63
- * Stop heatmap tracking
64
- */
65
- stop(): void;
66
- /**
67
- * Setup event listeners
68
- */
69
- private setupEventListeners;
70
- /**
71
- * Remove event listeners
72
- */
73
- private removeEventListeners;
74
- /**
75
- * Track initial viewport for context
76
- */
77
- private trackInitialViewport;
78
- /**
79
- * Handle click events
80
- */
81
- private handleClick;
82
- /**
83
- * Handle scroll events
84
- */
85
- private handleScroll;
86
- /**
87
- * Handle mouse move events (throttled)
88
- */
89
- private handleMouseMove;
90
- /**
91
- * Handle viewport resize
92
- */
93
- private handleResize;
94
- /**
95
- * Calculate current scroll depth as percentage
96
- */
97
- private calculateScrollDepth;
98
- /**
99
- * Detect rage clicks (multiple clicks in same area within time window)
100
- */
101
- private detectRageClick;
102
- /**
103
- * Get element selector for targeting
104
- */
105
- private getElementSelector;
106
- /**
107
- * Start batch timer
108
- */
109
- private startBatchTimer;
110
- /**
111
- * Send batch of heatmap data
112
- */
113
- private sendBatch;
114
- /**
115
- * Set anti-adblock manager for WebRTC transport
116
- */
117
- setAntiAdblockManager(manager: any): void;
118
- /**
119
- * Send data via WebRTC (anti-adblock) or fallback to standard fetch
120
- */
121
- private sendToBackend;
122
- /**
123
- * Get current statistics
124
- */
125
- getStats(): {
126
- clickCount: number;
127
- maxScrollDepth: number;
128
- isRecording: boolean;
129
- mouseMovements: number;
130
- rageClicks: number;
131
- };
132
- /**
133
- * Enable mouse movement tracking
134
- */
135
- enableMouseTracking(): void;
136
- /**
137
- * Disable mouse movement tracking
138
- */
139
- disableMouseTracking(): void;
140
- /**
141
- * Check if heatmap is recording
142
- */
143
- isRecording(): boolean;
144
- }
145
- //# sourceMappingURL=heatmap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"heatmap.d.ts","sourceRoot":"","sources":["../../../src/modules/heatmap.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Incognito Mode Detection (Analytics Only)
3
- *
4
- * Detects private/incognito browsing mode for analytics purposes only.
5
- * Does NOT use localStorage/sessionStorage for tracking or data persistence.
6
- * Used only to enrich analytics data with browser context information.
7
- */
8
- import type { IncognitoDetectionResult } from "../types/detection";
9
- /**
10
- * Main incognito detection function (IMPROVED - 2024)
11
- *
12
- * Enhanced with:
13
- * - Weighted scoring system to reduce false positives
14
- * - Browser-specific detection weights
15
- * - Multi-signal validation requirements
16
- * - Improved confidence thresholds
17
- */
18
- export declare function detectIncognitoMode(): Promise<IncognitoDetectionResult>;
19
- /**
20
- * Quick incognito detection (less comprehensive but faster)
21
- */
22
- export declare function quickIncognitoDetection(): Promise<boolean>;
23
- //# sourceMappingURL=incognito-detection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"incognito-detection.d.ts","sourceRoot":"","sources":["../../../src/modules/incognito-detection.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAGV,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAmpB5B;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CA4L7E;AAoFD;;GAEG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC,CAYhE"}
@@ -1,93 +0,0 @@
1
- /**
2
- * Session Replay Engine - Simplified Implementation
3
- * Based on official rrweb example for maximum compatibility
4
- */
5
- import type { eventWithTime } from "@rrweb/types";
6
- export type ReplayEvent = eventWithTime;
7
- export interface ReplayConfig {
8
- enabled: boolean;
9
- sampleRate: number;
10
- batchInterval: number;
11
- inactivityTimeout: number;
12
- pauseOnInactive: boolean;
13
- }
14
- export declare class SessionReplayEngine {
15
- private config;
16
- private events;
17
- private batchTimer?;
18
- private inactivityTimer?;
19
- private isActive;
20
- private isPaused;
21
- private sessionId;
22
- private visitorId;
23
- private sdkInstance?;
24
- private rrwebStopRecord?;
25
- private lastActivityTime;
26
- private sessionStartTime;
27
- constructor(sessionId: string, visitorId: string, config?: Partial<ReplayConfig>);
28
- /**
29
- * Start session replay recording - Simplified like official example
30
- */
31
- start(): boolean;
32
- /**
33
- * Stop session replay recording
34
- */
35
- stop(): void;
36
- /**
37
- * Start batch timer
38
- */
39
- private startBatchTimer;
40
- /**
41
- * Send batch of events - Simplified like official example
42
- */
43
- private sendBatch;
44
- /**
45
- * Set SDK instance for transport
46
- */
47
- setSDKInstance(sdk: any): void;
48
- /**
49
- * Send replay batch via SDK's transport system
50
- */
51
- private sendToBackend;
52
- /**
53
- * Get current event count
54
- */
55
- getEventCount(): number;
56
- /**
57
- * Check if recording is active
58
- */
59
- isRecording(): boolean;
60
- /**
61
- * Check if recording is paused
62
- */
63
- isPausedState(): boolean;
64
- /**
65
- * Start inactivity tracking
66
- */
67
- private startInactivityTracking;
68
- /**
69
- * Handle activity event
70
- */
71
- private onActivity;
72
- /**
73
- * Reset inactivity timer
74
- */
75
- private resetInactivityTimer;
76
- /**
77
- * Pause recording due to inactivity
78
- */
79
- private pauseForInactivity;
80
- /**
81
- * Resume recording after activity
82
- */
83
- private resume;
84
- /**
85
- * Get total active time (excluding paused periods)
86
- */
87
- private getActiveTime;
88
- /**
89
- * Get visitor ID
90
- */
91
- getVisitorId(): string;
92
- }
93
- //# sourceMappingURL=session-replay.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-replay.d.ts","sourceRoot":"","sources":["../../../src/modules/session-replay.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD,MAAM,MAAM,WAAW,GAAG,aAAa,CAAC;AAExC,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAM;IAC1B,OAAO,CAAC,eAAe,CAAC,CAAa;IACrC,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,gBAAgB,CAAc;gBAE1B,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,CAAC,YAAY,CAAM;IAapF;;OAEG;IACH,KAAK,IAAI,OAAO;IAoChB;;OAEG;IACH,IAAI,IAAI,IAAI;IAyBZ;;OAEG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,SAAS;IAgCjB;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI9B;;OAEG;YACW,aAAa;IAsB3B;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAa/B;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,MAAM;IAOd;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
@@ -1,35 +0,0 @@
1
- /**
2
- * Enhanced User Agent Parser
3
- * Based on FingerprintJS browser detection with advanced engine and version parsing
4
- */
5
- import type { UserAgentAnalysis } from '../types/detection';
6
- /**
7
- * Browser engine detection (based on FingerprintJS)
8
- */
9
- export declare function isChromium(): boolean;
10
- export declare function isWebKit(): boolean;
11
- export declare function isGecko(): boolean;
12
- export declare function isSamsungInternet(): boolean;
13
- export declare function isIPad(): boolean;
14
- export declare function isAndroid(): boolean;
15
- /**
16
- * Enhanced user agent analysis
17
- */
18
- export declare function analyzeUserAgent(userAgent?: string): UserAgentAnalysis;
19
- /**
20
- * Get browser engine type
21
- */
22
- export declare function getBrowserEngine(): 'chromium' | 'webkit' | 'gecko' | 'trident' | 'unknown';
23
- /**
24
- * Check if running on mobile device
25
- */
26
- export declare function isMobile(): boolean;
27
- /**
28
- * Check if running on tablet
29
- */
30
- export declare function isTablet(): boolean;
31
- /**
32
- * Check if running on desktop
33
- */
34
- export declare function isDesktop(): boolean;
35
- //# sourceMappingURL=user-agent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-agent.d.ts","sourceRoot":"","sources":["../../../src/modules/user-agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAQpC;AAED,wBAAgB,QAAQ,IAAI,OAAO,CAGlC;AAED,wBAAgB,OAAO,IAAI,OAAO,CAGjC;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAG3C;AAED,wBAAgB,MAAM,IAAI,OAAO,CAIhC;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AA4VD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAoCtE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAS1F;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC"}
@@ -1,51 +0,0 @@
1
- /**
2
- * Visitor Persistence Manager for SDK
3
- * Implements client-side visitor identification with localStorage camouflage
4
- */
5
- interface VisitorIdentity {
6
- visitorId?: string;
7
- sessionId: string;
8
- stableCoreHash: string;
9
- deviceFingerprint?: string;
10
- persistenceMethod: "localStorage" | "sessionStorage" | "cookie" | "memory";
11
- confidence: number;
12
- createdAt: number;
13
- lastSeen: number;
14
- reused: boolean;
15
- pendingBackendResponse?: boolean;
16
- }
17
- /**
18
- * Advanced Visitor Identity Manager with Camouflaged Storage
19
- * REFACTORED: No longer generates visitor IDs locally - only manages persistence
20
- * Backend is the single source of truth for visitor IDs
21
- */
22
- export declare class VisitorIdentityManager {
23
- private generateSessionId;
24
- private createCamouflageData;
25
- private extractFromCamouflage;
26
- /**
27
- * REFACTORED: Get existing visitor identity or prepare for backend response
28
- * No longer generates visitor IDs - waits for backend to provide them
29
- */
30
- getOrCreateVisitorIdentity(params: {
31
- fingerprintHash: string;
32
- stableCoreHash: string;
33
- deviceFingerprint: string;
34
- sessionId?: string;
35
- userAgent?: string;
36
- ipAddress?: string;
37
- }): Promise<VisitorIdentity>;
38
- /**
39
- * NEW: Update visitor identity with visitor ID received from backend
40
- * This is called after backend responds with the definitive visitor ID
41
- */
42
- updateVisitorIdFromBackend(visitorId: string, stableCoreHash: string, sessionId?: string): Promise<boolean>;
43
- /**
44
- * Get current session ID from storage
45
- */
46
- getCurrentSessionId(): string | null;
47
- getCurrentVisitorId(): string | null;
48
- clearIdentity(): void;
49
- }
50
- export {};
51
- //# sourceMappingURL=visitor-persistence.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"visitor-persistence.d.ts","sourceRoot":"","sources":["../../../src/modules/visitor-persistence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,UAAU,eAAe;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,cAAc,GAAG,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAmKD;;;;GAIG;AACH,qBAAa,sBAAsB;IAIjC,OAAO,CAAC,iBAAiB;IAqBzB,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,qBAAqB;IAgC7B;;;OAGG;IACG,0BAA0B,CAAC,MAAM,EAAE;QACvC,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,eAAe,CAAC;IAuD5B;;;OAGG;IACG,0BAA0B,CAC9B,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC;IAwCnB;;OAEG;IACH,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAUpC,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAUpC,aAAa,IAAI,IAAI;CAetB"}
package/dist/src/sdk.d.ts DELETED
@@ -1,289 +0,0 @@
1
- /**
2
- * Zaplier SDK v1.0.0
3
- * 100% Cookieless Analytics Tracking
4
- *
5
- * Main SDK class for client-side tracking integration
6
- */
7
- import type { InternalConfig, ZaplierSDK as IZaplierSDK, PageViewEvent, SDKConfig, UserData, VisitorHistory, VisitorInfo } from "./types";
8
- /**
9
- * Main Zaplier SDK Class
10
- */
11
- export declare class ZaplierSDK implements IZaplierSDK {
12
- config: InternalConfig;
13
- version: string;
14
- private visitorId?;
15
- private backendVisitorId?;
16
- private sessionId?;
17
- private fingerprint?;
18
- private isInitialized;
19
- private eventQueue;
20
- private replayEngine?;
21
- private heatmapEngine?;
22
- private antiAdblockManager?;
23
- private autoTracker?;
24
- private visitorIdentityManager?;
25
- constructor(userConfig: SDKConfig);
26
- /**
27
- * Initialize SDK - Non-blocking approach
28
- */
29
- private initialize;
30
- /**
31
- * Defer heavy operations to avoid blocking main thread
32
- */
33
- private deferHeavyOperations;
34
- /**
35
- * Initialize tracking engines (Session Replay & Heatmap)
36
- */
37
- private initializeTrackingEngines;
38
- /**
39
- * Initialize Auto Tracker for data-* attributes
40
- */
41
- private initializeAutoTracker;
42
- /**
43
- * Generate session ID using standardized format
44
- */
45
- private generateSessionId;
46
- /**
47
- * Update tracking engines with new session ID to maintain consistency
48
- */
49
- private updateTrackingEnginesSessionId;
50
- /**
51
- * Initialize Anti-Adblock Manager
52
- */
53
- private initializeAntiAdblock;
54
- /**
55
- * Collect fingerprint and generate visitor ID (IMPROVED - 2024)
56
- * Enhanced with better incognito detection and localStorage persistence
57
- */
58
- private collectFingerprint;
59
- /**
60
- * Check if running on localhost
61
- */
62
- private isLocalhost;
63
- /**
64
- * Extract UTM parameters from current URL
65
- */
66
- private extractUTMParameters;
67
- /**
68
- * Send event to backend
69
- */
70
- private sendEvent;
71
- /**
72
- * Send session replay batch to backend
73
- */
74
- sendReplayBatch(replayData: {
75
- sessionId: string;
76
- events: any[];
77
- metadata: any;
78
- }): Promise<any>;
79
- /**
80
- * Make HTTP request to backend using anti-adblock system
81
- */
82
- private makeRequest;
83
- /**
84
- * Process queued events
85
- */
86
- private processEventQueue;
87
- /**
88
- * Track generic event
89
- */
90
- track(eventType: string, eventData?: Record<string, any>): void;
91
- /**
92
- * Track custom event
93
- */
94
- trackCustomEvent(eventName: string, metadata?: Record<string, any>): boolean;
95
- /**
96
- * Track conversion event
97
- */
98
- trackConversion(eventName: string, value?: number, currency?: string, metadata?: Record<string, any>): boolean;
99
- /**
100
- * Track page view
101
- */
102
- trackPageView(data?: Partial<PageViewEvent>): void;
103
- /**
104
- * Track purchase
105
- */
106
- trackPurchase(data: {
107
- value?: number;
108
- revenue?: number;
109
- currency?: string;
110
- quantity?: number;
111
- productId?: string;
112
- productName?: string;
113
- orderId?: string;
114
- customData?: Record<string, any>;
115
- }): void;
116
- /**
117
- * Track add to cart
118
- */
119
- trackAddToCart(data?: {
120
- productId?: string;
121
- productName?: string;
122
- price?: number;
123
- quantity?: number;
124
- customData?: Record<string, any>;
125
- }): void;
126
- /**
127
- * Track view content
128
- */
129
- trackViewContent(data?: {
130
- productId?: string;
131
- productName?: string;
132
- category?: string;
133
- customData?: Record<string, any>;
134
- }): void;
135
- /**
136
- * Track initiate checkout
137
- */
138
- trackInitiateCheckout(data?: {
139
- value?: number;
140
- currency?: string;
141
- numItems?: number;
142
- customData?: Record<string, any>;
143
- }): void;
144
- /**
145
- * Track lead
146
- */
147
- trackLead(data?: Record<string, any>): void;
148
- /**
149
- * Identify user
150
- */
151
- identify(userData: {
152
- email?: string;
153
- phone?: string;
154
- [key: string]: any;
155
- }): void;
156
- /**
157
- * Track SPA navigation
158
- */
159
- trackSPANavigation(url?: string, title?: string): void;
160
- /**
161
- * Reset scroll tracking
162
- */
163
- resetScrollTracking(): void;
164
- /**
165
- * Start presence tracking
166
- */
167
- startPresenceTracking(): void;
168
- /**
169
- * Stop presence tracking
170
- */
171
- stopPresenceTracking(): void;
172
- /**
173
- * Heatmap API
174
- */
175
- heatmap: {
176
- enable: () => void;
177
- disable: () => void;
178
- enableMouseTracking: () => void;
179
- disableMouseTracking: () => void;
180
- getStats: () => {
181
- clickCount: number;
182
- maxScrollDepth: number;
183
- isRecording: boolean;
184
- mouseMovements: number;
185
- rageClicks: number;
186
- } | null;
187
- isRecording: () => boolean;
188
- };
189
- /**
190
- * Replay API
191
- */
192
- replay: {
193
- enable: () => void;
194
- disable: () => void;
195
- start: () => boolean;
196
- stop: () => void;
197
- isRecording: () => boolean;
198
- getEventCount: () => number;
199
- addFunnelStep: (stepData: Record<string, any>) => void;
200
- markConversion: (data: Record<string, any>) => void;
201
- };
202
- /**
203
- * Auto Tracker API
204
- */
205
- autoTrack: {
206
- enable: () => void;
207
- disable: () => void;
208
- configure: (config: {
209
- trackClicks?: boolean;
210
- trackScrolls?: boolean;
211
- trackViews?: boolean;
212
- trackHovers?: boolean;
213
- trackForms?: boolean;
214
- }) => void;
215
- /**
216
- * Refresh tracking for dynamic content (React/SPA route changes)
217
- * Modern alternative to rescan() - follows GA4/industry best practices
218
- */
219
- refreshTracking: () => void;
220
- /**
221
- * Legacy rescan method - use refreshTracking() instead
222
- * @deprecated Use refreshTracking() for better performance
223
- */
224
- rescan: () => void;
225
- /**
226
- * Get diagnostic information for debugging
227
- */
228
- getDiagnostics: () => object | null;
229
- getStats: () => {
230
- observedElements: number;
231
- config: import("./modules/auto-tracker").AutoTrackerConfig;
232
- isModern: boolean;
233
- diagnostics?: object;
234
- } | null;
235
- isEnabled: () => boolean;
236
- };
237
- /**
238
- * Enable enhanced tracking
239
- */
240
- enableEnhancedTracking(): boolean;
241
- /**
242
- * Disable enhanced tracking
243
- */
244
- disableEnhancedTracking(): void;
245
- /**
246
- * Check if enhanced mode is active
247
- */
248
- isEnhancedMode(): boolean;
249
- /**
250
- * Get visitor ID (prioritizes backend, then persistent storage)
251
- * ENHANCED: Checks persistent storage if memory values are missing
252
- */
253
- getVisitorId(): string | null;
254
- /**
255
- * Get visitor information from backend
256
- * Returns detailed visitor data including location, device info, and stats
257
- *
258
- * IMPORTANT: Only uses backendVisitorId (UUID), not the local visitorId with 'vis_' prefix
259
- */
260
- getVisitorInfo(): Promise<VisitorInfo | null>;
261
- /**
262
- * Get visitor history (visits/events)
263
- * Returns visit history with location, IP, incognito, VPN detection
264
- */
265
- getVisitorHistory(): Promise<VisitorHistory | null>;
266
- /**
267
- * Get user data
268
- */
269
- getUserData(): UserData;
270
- /**
271
- * Get conversion likelihood (mock implementation)
272
- */
273
- getConversionLikelihood(): {
274
- score: number;
275
- factors: string[];
276
- };
277
- /**
278
- * Get user segment (mock implementation)
279
- */
280
- getUserSegment(): {
281
- type: "high_intent" | "medium_intent" | "exploring";
282
- confidence: number;
283
- };
284
- }
285
- /**
286
- * Default export for ES modules
287
- */
288
- export default ZaplierSDK;
289
- //# sourceMappingURL=sdk.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/sdk.ts"],"names":[],"mappings":"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"}