wisetrack 2.0.0 → 2.0.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 (122) hide show
  1. package/LICENSE +18 -2
  2. package/README.md +200 -40
  3. package/dist/cdn/sdk.bundle.min.js +1 -1
  4. package/dist/cjs/index.js +1 -3599
  5. package/dist/esm/index.js +1 -3594
  6. package/package.json +5 -3
  7. package/dist/cdn/constants/constants.d.ts +0 -20
  8. package/dist/cdn/constants/endpoints.d.ts +0 -11
  9. package/dist/cdn/constants/environments.d.ts +0 -25
  10. package/dist/cdn/core/caching/queue-data.d.ts +0 -25
  11. package/dist/cdn/core/caching/request-queue-manager.d.ts +0 -54
  12. package/dist/cdn/core/fields/event-fields-builder.d.ts +0 -8
  13. package/dist/cdn/core/fields/fields-builder.d.ts +0 -9
  14. package/dist/cdn/core/network/api-client.d.ts +0 -9
  15. package/dist/cdn/core/network/network-error.d.ts +0 -17
  16. package/dist/cdn/core/network/network-manager.d.ts +0 -22
  17. package/dist/cdn/core/network/retry-policy.d.ts +0 -8
  18. package/dist/cdn/core/storage/storage-manager.d.ts +0 -52
  19. package/dist/cdn/core/wisetrack.d.ts +0 -125
  20. package/dist/cdn/core/wt-tracker.d.ts +0 -25
  21. package/dist/cdn/index.d.ts +0 -4
  22. package/dist/cdn/sdk.bundle.js +0 -3604
  23. package/dist/cdn/sdk.bundle.js.map +0 -1
  24. package/dist/cdn/types/config/initial-config.d.ts +0 -43
  25. package/dist/cdn/types/config/wt-app-settings.d.ts +0 -15
  26. package/dist/cdn/types/config/wt-config.d.ts +0 -18
  27. package/dist/cdn/types/event/revenue-currency.d.ts +0 -39
  28. package/dist/cdn/types/event/wt-event.d.ts +0 -94
  29. package/dist/cdn/utils/activity-ticker.d.ts +0 -12
  30. package/dist/cdn/utils/country-finder.d.ts +0 -9
  31. package/dist/cdn/utils/crypto-helper.d.ts +0 -4
  32. package/dist/cdn/utils/device-detector.d.ts +0 -41
  33. package/dist/cdn/utils/logger.d.ts +0 -36
  34. package/dist/cdn/utils/storage-support.d.ts +0 -16
  35. package/dist/cdn/utils/utils.d.ts +0 -5
  36. package/dist/cdn/utils/webgl-fingerprint.d.ts +0 -7
  37. package/dist/cjs/index.js.map +0 -1
  38. package/dist/constants/constants.d.ts +0 -20
  39. package/dist/constants/constants.js +0 -19
  40. package/dist/constants/constants.js.map +0 -1
  41. package/dist/constants/endpoints.d.ts +0 -11
  42. package/dist/constants/endpoints.js +0 -10
  43. package/dist/constants/endpoints.js.map +0 -1
  44. package/dist/constants/environments.d.ts +0 -25
  45. package/dist/constants/environments.js +0 -37
  46. package/dist/constants/environments.js.map +0 -1
  47. package/dist/core/caching/queue-data.d.ts +0 -25
  48. package/dist/core/caching/queue-data.js +0 -50
  49. package/dist/core/caching/queue-data.js.map +0 -1
  50. package/dist/core/caching/request-queue-manager.d.ts +0 -54
  51. package/dist/core/caching/request-queue-manager.js +0 -333
  52. package/dist/core/caching/request-queue-manager.js.map +0 -1
  53. package/dist/core/fields/event-fields-builder.d.ts +0 -8
  54. package/dist/core/fields/event-fields-builder.js +0 -29
  55. package/dist/core/fields/event-fields-builder.js.map +0 -1
  56. package/dist/core/fields/fields-builder.d.ts +0 -9
  57. package/dist/core/fields/fields-builder.js +0 -120
  58. package/dist/core/fields/fields-builder.js.map +0 -1
  59. package/dist/core/network/api-client.d.ts +0 -9
  60. package/dist/core/network/api-client.js +0 -88
  61. package/dist/core/network/api-client.js.map +0 -1
  62. package/dist/core/network/network-error.d.ts +0 -17
  63. package/dist/core/network/network-error.js +0 -35
  64. package/dist/core/network/network-error.js.map +0 -1
  65. package/dist/core/network/network-manager.d.ts +0 -22
  66. package/dist/core/network/network-manager.js +0 -72
  67. package/dist/core/network/network-manager.js.map +0 -1
  68. package/dist/core/network/retry-policy.d.ts +0 -8
  69. package/dist/core/network/retry-policy.js +0 -26
  70. package/dist/core/network/retry-policy.js.map +0 -1
  71. package/dist/core/storage/storage-manager.d.ts +0 -52
  72. package/dist/core/storage/storage-manager.js +0 -221
  73. package/dist/core/storage/storage-manager.js.map +0 -1
  74. package/dist/core/wisetrack.d.ts +0 -125
  75. package/dist/core/wisetrack.js +0 -277
  76. package/dist/core/wisetrack.js.map +0 -1
  77. package/dist/core/wt-tracker.d.ts +0 -25
  78. package/dist/core/wt-tracker.js +0 -239
  79. package/dist/core/wt-tracker.js.map +0 -1
  80. package/dist/esm/index.js.map +0 -1
  81. package/dist/index.d.ts +0 -4
  82. package/dist/index.js +0 -4
  83. package/dist/index.js.map +0 -1
  84. package/dist/types/config/initial-config.d.ts +0 -43
  85. package/dist/types/config/initial-config.js +0 -2
  86. package/dist/types/config/initial-config.js.map +0 -1
  87. package/dist/types/config/wt-app-settings.d.ts +0 -15
  88. package/dist/types/config/wt-app-settings.js +0 -25
  89. package/dist/types/config/wt-app-settings.js.map +0 -1
  90. package/dist/types/config/wt-config.d.ts +0 -18
  91. package/dist/types/config/wt-config.js +0 -28
  92. package/dist/types/config/wt-config.js.map +0 -1
  93. package/dist/types/event/revenue-currency.d.ts +0 -39
  94. package/dist/types/event/revenue-currency.js +0 -39
  95. package/dist/types/event/revenue-currency.js.map +0 -1
  96. package/dist/types/event/wt-event.d.ts +0 -94
  97. package/dist/types/event/wt-event.js +0 -93
  98. package/dist/types/event/wt-event.js.map +0 -1
  99. package/dist/utils/activity-ticker.d.ts +0 -12
  100. package/dist/utils/activity-ticker.js +0 -37
  101. package/dist/utils/activity-ticker.js.map +0 -1
  102. package/dist/utils/country-finder.d.ts +0 -9
  103. package/dist/utils/country-finder.js +0 -71
  104. package/dist/utils/country-finder.js.map +0 -1
  105. package/dist/utils/crypto-helper.d.ts +0 -4
  106. package/dist/utils/crypto-helper.js +0 -7
  107. package/dist/utils/crypto-helper.js.map +0 -1
  108. package/dist/utils/device-detector.d.ts +0 -41
  109. package/dist/utils/device-detector.js +0 -101
  110. package/dist/utils/device-detector.js.map +0 -1
  111. package/dist/utils/logger.d.ts +0 -36
  112. package/dist/utils/logger.js +0 -84
  113. package/dist/utils/logger.js.map +0 -1
  114. package/dist/utils/storage-support.d.ts +0 -16
  115. package/dist/utils/storage-support.js +0 -86
  116. package/dist/utils/storage-support.js.map +0 -1
  117. package/dist/utils/utils.d.ts +0 -5
  118. package/dist/utils/utils.js +0 -95
  119. package/dist/utils/utils.js.map +0 -1
  120. package/dist/utils/webgl-fingerprint.d.ts +0 -7
  121. package/dist/utils/webgl-fingerprint.js +0 -100
  122. package/dist/utils/webgl-fingerprint.js.map +0 -1
package/LICENSE CHANGED
@@ -1,5 +1,21 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 WiseTrack
3
+ Copyright (c) 2025 WiseTrack (https://wisetrack.io)
4
4
 
5
- Permission is hereby granted, free of charge, to any person obtaining a copy...
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  A lightweight JavaScript SDK for tracking user behavior and events in your web applications.
4
4
 
5
+ ![npm version](https://img.shields.io/npm/v/wisetrack)
6
+ ![npm downloads](https://img.shields.io/npm/dm/wisetrack)
7
+ ![bundle size](https://img.shields.io/bundlephobia/minzip/wisetrack)
8
+ ![license](https://img.shields.io/npm/l/wisetrack)
9
+
5
10
  ---
6
11
 
7
12
  ## 🚀 Features
@@ -11,27 +16,53 @@ A lightweight JavaScript SDK for tracking user behavior and events in your web a
11
16
  - Environment-based configuration (Sandbox & Production)
12
17
  - Automatic or manual tracking control
13
18
  - Customizable logging level
19
+ - TypeScript support with full type definitions
20
+ - Tree-shakable ESM and CommonJS builds
21
+ - Zero dependencies (except ua-parser-js)
14
22
 
15
23
  ---
16
24
 
17
25
  ## 📦 Installation
18
26
 
27
+ ### Via npm
28
+ ```bash
29
+ npm install wisetrack
30
+ ```
31
+
32
+ ### Via yarn
33
+ ```bash
34
+ yarn add wisetrack
35
+ ```
36
+
37
+ ### Via pnpm
19
38
  ```bash
20
- # via npm
21
- npm install @your-scope/wisetrack-web
39
+ pnpm add wisetrack
40
+ ```
41
+
42
+ ### Via CDN (Direct Browser Usage)
43
+ ```html
44
+ <!-- Latest version -->
45
+ <script src="https://cdn.jsdelivr.net/npm/wisetrack/dist/cdn/sdk.bundle.min.js"></script>
22
46
 
23
- # via yarn
24
- yarn add @your-scope/wisetrack-web
25
- ````
47
+ <!-- Specific version -->
48
+ <script src="https://cdn.jsdelivr.net/npm/wisetrack@2.0.0/dist/cdn/sdk.bundle.min.js"></script>
49
+ ```
50
+
51
+ ### Alternative CDNs
52
+ ```html
53
+ <!-- unpkg -->
54
+ <script src="https://unpkg.com/wisetrack@2.0.0/dist/cdn/sdk.bundle.min.js"></script>
55
+ ```
26
56
 
27
57
  ---
28
58
 
29
59
  ## ✅ Basic Usage
30
60
 
31
- ### 1️⃣ Initialize the SDK
61
+ ### For npm/yarn installations (ES6 Modules)
32
62
 
33
- ```ts
34
- import { WiseTrack, WTUserEnvironment, WTLogLevel } from "@your-scope/wisetrack-web";
63
+ #### 1. Initialize the SDK
64
+ ```typescript
65
+ import { WiseTrack, WTUserEnvironment, WTLogLevel } from "wisetrack";
35
66
 
36
67
  await WiseTrack.instance.init({
37
68
  appToken: "YOUR_APP_TOKEN",
@@ -42,57 +73,87 @@ await WiseTrack.instance.init({
42
73
  });
43
74
  ```
44
75
 
45
- ### 2️⃣ Start Tracking (Optional)
46
-
47
- ```ts
76
+ #### 2. Start Tracking (Optional)
77
+ ```typescript
48
78
  // Starts automatically if `startTrackerAutomatically` is true.
49
79
  // Otherwise, you can start manually:
50
80
  await WiseTrack.instance.startTracking();
51
81
  ```
52
82
 
53
- ### 3️⃣ Track a Custom Event
54
-
55
- ```ts
56
- import { WTEvent } from "@your-scope/wisetrack-web";
83
+ #### 3. Track a Custom Event
84
+ ```typescript
85
+ import { WTEvent } from "wisetrack";
57
86
 
58
87
  const signupEvent = new WTEvent.Default("signup");
59
88
  signupEvent.addParam("method", "Google");
60
-
61
89
  await WiseTrack.instance.trackEvent(signupEvent);
62
90
  ```
63
91
 
64
- ### 4️⃣ Track a Revenue Event
65
-
66
- ```ts
67
- import { WTEvent, RevenueCurrency } from "@your-scope/wisetrack-web";
92
+ #### 4. Track a Revenue Event
93
+ ```typescript
94
+ import { WTEvent, RevenueCurrency } from "wisetrack";
68
95
 
69
96
  const purchase = new WTEvent.Revenue("order_completed", 99.99, RevenueCurrency.USD);
70
97
  purchase.addParam("item_id", "SKU-123");
71
-
72
98
  await WiseTrack.instance.trackEvent(purchase);
73
99
  ```
74
100
 
101
+ ### For CDN usage (Direct Browser)
102
+
103
+ ```html
104
+ <!DOCTYPE html>
105
+ <html>
106
+ <head>
107
+ <script src="https://cdn.jsdelivr.net/npm/wisetrack/dist/cdn/sdk.bundle.min.js"></script>
108
+ </head>
109
+ <body>
110
+ <script>
111
+ // Initialize
112
+ WiseTrackSDK.WiseTrack.instance.init({
113
+ appToken: "YOUR_APP_TOKEN",
114
+ appVersion: "1.0.0",
115
+ appFrameWork: "Vanilla JS",
116
+ userEnvironment: WiseTrackSDK.WTUserEnvironment.SANDBOX,
117
+ logLevel: WiseTrackSDK.WTLogLevel.DEBUG,
118
+ });
119
+
120
+ // Track event
121
+ const signupEvent = new WiseTrackSDK.WTEvent.Default("signup");
122
+ signupEvent.addParam("method", "Google");
123
+ WiseTrackSDK.WiseTrack.instance.trackEvent(signupEvent);
124
+ </script>
125
+ </body>
126
+ </html>
127
+ ```
128
+
129
+ ### For CommonJS (Node.js)
130
+ ```javascript
131
+ const { WiseTrack, WTUserEnvironment, WTLogLevel } = require("wisetrack");
132
+
133
+ // Same usage as ES6 modules
134
+ ```
135
+
75
136
  ---
76
137
 
77
138
  ## ⚙️ Configuration Options
78
139
 
79
- | Key | Required | Description |
80
- | --------------------------- | -------- | -------------------------------------------------------------- |
81
- | `appToken` | ✅ | Your unique WiseTrack app token |
82
- | `appVersion` | ✅ | Your app version |
83
- | `appFrameWork` | ✅ | The framework/platform name |
84
- | `userEnvironment` | ❌ | `WTUserEnvironment.SANDBOX` or `WTUserEnvironment.PRODUCTION` |
85
- | `trackingWaitingTime` | ❌ | Time in seconds to wait before tracking starts automatically |
86
- | `startTrackerAutomatically` | ❌ | Whether to start tracking automatically (default: `true`) |
87
- | `customDeviceId` | ❌ | Provide your own device ID |
88
- | `defaultTracker` | ❌ | Optional tracker name |
89
- | `logLevel` | ❌ | Logging level (`WTLogLevel.DEBUG` / `INFO` / `WARN` / `ERROR`) |
140
+ | Key | Required | Default | Description |
141
+ | --------------------------- | -------- | ------- | -------------------------------------------------------------- |
142
+ | `appToken` | ✅ | - | Your unique WiseTrack app token |
143
+ | `appVersion` | ✅ | - | Your app version |
144
+ | `appFrameWork` | ✅ | - | The framework/platform name |
145
+ | `userEnvironment` | ❌ | `SANDBOX` | `WTUserEnvironment.SANDBOX` or `WTUserEnvironment.PRODUCTION` |
146
+ | `trackingWaitingTime` | ❌ | `0` | Time in seconds to wait before tracking starts automatically |
147
+ | `startTrackerAutomatically` | ❌ | `true` | Whether to start tracking automatically |
148
+ | `customDeviceId` | ❌ | `auto` | Provide your own device ID |
149
+ | `defaultTracker` | ❌ | - | Optional tracker name |
150
+ | `logLevel` | ❌ | `ERROR` | Logging level (`WTLogLevel.DEBUG` / `INFO` / `WARN` / `ERROR`) |
90
151
 
91
152
  ---
92
153
 
93
154
  ## 🧹 Flush / Stop Tracking
94
155
 
95
- ```ts
156
+ ```typescript
96
157
  // Stop tracking and clear stored data
97
158
  WiseTrack.instance.flush();
98
159
  ```
@@ -103,23 +164,122 @@ WiseTrack.instance.flush();
103
164
 
104
165
  Set the SDK log level for debugging:
105
166
 
106
- ```ts
167
+ ```typescript
107
168
  WiseTrack.instance.setLogLevel(WTLogLevel.DEBUG);
108
169
  ```
109
170
 
110
171
  ---
111
172
 
112
- ## 📚 API Reference
173
+ ## 🏗️ Framework Examples
174
+
175
+ ### React/Next.js
176
+ ```tsx
177
+ import { useEffect } from 'react';
178
+ import { WiseTrack, WTUserEnvironment } from 'wisetrack';
179
+
180
+ export default function App() {
181
+ useEffect(() => {
182
+ WiseTrack.instance.init({
183
+ appToken: "YOUR_APP_TOKEN",
184
+ appVersion: "1.0.0",
185
+ appFrameWork: "React",
186
+ userEnvironment: WTUserEnvironment.PRODUCTION,
187
+ });
188
+ }, []);
189
+
190
+ return <div>Your App</div>;
191
+ }
192
+ ```
193
+
194
+ ### Vue.js
195
+ ```vue
196
+ <script setup>
197
+ import { onMounted } from 'vue';
198
+ import { WiseTrack, WTUserEnvironment } from 'wisetrack';
199
+
200
+ onMounted(() => {
201
+ WiseTrack.instance.init({
202
+ appToken: "YOUR_APP_TOKEN",
203
+ appVersion: "1.0.0",
204
+ appFrameWork: "Vue.js",
205
+ userEnvironment: WTUserEnvironment.PRODUCTION,
206
+ });
207
+ });
208
+ </script>
209
+ ```
210
+
211
+ ### Angular
212
+ ```typescript
213
+ import { Component, OnInit } from '@angular/core';
214
+ import { WiseTrack, WTUserEnvironment } from 'wisetrack';
215
+
216
+ @Component({
217
+ selector: 'app-root',
218
+ templateUrl: './app.component.html'
219
+ })
220
+ export class AppComponent implements OnInit {
221
+ async ngOnInit() {
222
+ await WiseTrack.instance.init({
223
+ appToken: "YOUR_APP_TOKEN",
224
+ appVersion: "1.0.0",
225
+ appFrameWork: "Angular",
226
+ userEnvironment: WTUserEnvironment.PRODUCTION,
227
+ });
228
+ }
229
+ }
230
+ ```
231
+
232
+ ---
233
+
234
+ ## 📊 Bundle Size & Performance
235
+
236
+ | Build Type | Size (Minified) | Size (Gzipped) | Use Case |
237
+ |------------|----------------|----------------|----------|
238
+ | ESM | ~45KB | ~12KB | Modern bundlers (Webpack, Vite) |
239
+ | CommonJS | ~45KB | ~12KB | Node.js, older bundlers |
240
+ | CDN Bundle | ~25KB | ~8KB | Direct browser usage |
241
+
242
+ ---
243
+
244
+ ## 🔧 TypeScript Support
245
+
246
+ This package includes TypeScript definitions out of the box. No need to install additional `@types` packages.
247
+
248
+ ```typescript
249
+ import type { WTConfig, WTEventData } from 'wisetrack';
250
+
251
+ const config: WTConfig = {
252
+ appToken: "YOUR_APP_TOKEN",
253
+ appVersion: "1.0.0",
254
+ appFrameWork: "TypeScript App",
255
+ };
256
+ ```
257
+
258
+ ---
259
+
260
+ ## 🧪 Browser Compatibility
261
+
262
+ | Browser | Version |
263
+ |---------|---------|
264
+ | Chrome | ≥ 60 |
265
+ | Firefox | ≥ 60 |
266
+ | Safari | ≥ 12 |
267
+ | Edge | ≥ 79 |
268
+
269
+ ---
270
+
271
+ ## 📚 API Reference & Support
113
272
 
114
- For detailed TypeDocs, see [📖 Full API Reference](./docs).
273
+ - [📖 Documentation](https://docs.wisetrack.io)
274
+ - [📖 Detailed TypeDocs](https://github.com/wisetrack-io/web-sdk/tree/main/docs)
275
+ - [🐛 Report Issues](https://github.com/wisetrack-io/web-sdk/issues)
276
+ - [📧 Email Support](mailto:support@wisetrack.io)
115
277
 
116
278
  ---
117
279
 
118
- ## 🛟 Support
280
+ ## 📄 Changelog
119
281
 
120
- * [Documentation](./docs)
121
- * [Issues](https://github.com/wisetrack-io/web-sdk/issues)
122
- * Contact: [your-email@example.com](mailto:support@wisetrack.io)
282
+ See [CHANGELOG.md](CHANGELOG.md) for a list of changes.
123
283
 
124
284
  ---
125
285