@v-tilt/browser 1.0.1

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 (64) hide show
  1. package/dist/array.js +2 -0
  2. package/dist/array.js.map +1 -0
  3. package/dist/array.no-external.js +2 -0
  4. package/dist/array.no-external.js.map +1 -0
  5. package/dist/config.d.ts +17 -0
  6. package/dist/constants.d.ts +10 -0
  7. package/dist/entrypoints/array.d.ts +1 -0
  8. package/dist/entrypoints/array.no-external.d.ts +1 -0
  9. package/dist/entrypoints/main.cjs.d.ts +4 -0
  10. package/dist/entrypoints/module.es.d.ts +3 -0
  11. package/dist/entrypoints/module.no-external.es.d.ts +4 -0
  12. package/dist/geolocation.d.ts +5 -0
  13. package/dist/main.js +2 -0
  14. package/dist/main.js.map +1 -0
  15. package/dist/module.d.ts +214 -0
  16. package/dist/module.js +2 -0
  17. package/dist/module.js.map +1 -0
  18. package/dist/module.no-external.d.ts +214 -0
  19. package/dist/module.no-external.js +2 -0
  20. package/dist/module.no-external.js.map +1 -0
  21. package/dist/session.d.ts +26 -0
  22. package/dist/tracking.d.ts +112 -0
  23. package/dist/types.d.ts +67 -0
  24. package/dist/user-manager.d.ts +152 -0
  25. package/dist/utils/globals.d.ts +4 -0
  26. package/dist/utils/index.d.ts +30 -0
  27. package/dist/utils.d.ts +21 -0
  28. package/dist/vtilt.d.ts +178 -0
  29. package/dist/web-vitals.d.ts +11 -0
  30. package/lib/config.d.ts +17 -0
  31. package/lib/config.js +76 -0
  32. package/lib/constants.d.ts +10 -0
  33. package/lib/constants.js +463 -0
  34. package/lib/entrypoints/array.d.ts +1 -0
  35. package/lib/entrypoints/array.js +3 -0
  36. package/lib/entrypoints/array.no-external.d.ts +1 -0
  37. package/lib/entrypoints/array.no-external.js +4 -0
  38. package/lib/entrypoints/main.cjs.d.ts +4 -0
  39. package/lib/entrypoints/main.cjs.js +29 -0
  40. package/lib/entrypoints/module.es.d.ts +3 -0
  41. package/lib/entrypoints/module.es.js +22 -0
  42. package/lib/entrypoints/module.no-external.es.d.ts +4 -0
  43. package/lib/entrypoints/module.no-external.es.js +23 -0
  44. package/lib/geolocation.d.ts +5 -0
  45. package/lib/geolocation.js +26 -0
  46. package/lib/session.d.ts +26 -0
  47. package/lib/session.js +115 -0
  48. package/lib/tracking.d.ts +112 -0
  49. package/lib/tracking.js +326 -0
  50. package/lib/types.d.ts +67 -0
  51. package/lib/types.js +2 -0
  52. package/lib/user-manager.d.ts +152 -0
  53. package/lib/user-manager.js +565 -0
  54. package/lib/utils/globals.d.ts +4 -0
  55. package/lib/utils/globals.js +5 -0
  56. package/lib/utils/index.d.ts +30 -0
  57. package/lib/utils/index.js +89 -0
  58. package/lib/utils.d.ts +21 -0
  59. package/lib/utils.js +57 -0
  60. package/lib/vtilt.d.ts +178 -0
  61. package/lib/vtilt.js +403 -0
  62. package/lib/web-vitals.d.ts +11 -0
  63. package/lib/web-vitals.js +67 -0
  64. package/package.json +61 -0
@@ -0,0 +1,214 @@
1
+ interface VTiltConfig {
2
+ projectId: string;
3
+ token: string;
4
+ host?: string;
5
+ scriptHost?: string;
6
+ proxy?: string;
7
+ proxyUrl?: string;
8
+ domain?: string;
9
+ storage?: "cookie" | "localStorage" | "sessionStorage";
10
+ stringifyPayload?: boolean;
11
+ webVitals?: boolean;
12
+ globalAttributes?: Record<string, string>;
13
+ persistence?: "localStorage" | "cookie";
14
+ crossSubdomainCookie?: boolean;
15
+ }
16
+ interface SessionData {
17
+ value: string;
18
+ expiry: number;
19
+ }
20
+ interface WebVitalMetric {
21
+ name: string;
22
+ value: number;
23
+ delta: number;
24
+ rating: string;
25
+ id: string;
26
+ navigationType: string;
27
+ }
28
+ interface GeolocationData {
29
+ country?: string;
30
+ locale?: string;
31
+ }
32
+ interface EventPayload {
33
+ [key: string]: any;
34
+ }
35
+ interface TrackingEvent {
36
+ timestamp: string;
37
+ event: string;
38
+ session_id: string;
39
+ tenant_id: string;
40
+ domain: string;
41
+ payload: EventPayload;
42
+ distinct_id?: string;
43
+ }
44
+ type StorageMethod = "cookie" | "localStorage" | "sessionStorage";
45
+ interface StorageMethods {
46
+ cookie: "cookie";
47
+ localStorage: "localStorage";
48
+ sessionStorage: "sessionStorage";
49
+ }
50
+ interface UserIdentity {
51
+ distinct_id: string | null;
52
+ anonymous_id: string;
53
+ device_id: string;
54
+ properties: Record<string, any>;
55
+ user_state: "anonymous" | "identified";
56
+ }
57
+ interface UserProperties {
58
+ [key: string]: any;
59
+ }
60
+ interface PropertyOperations {
61
+ $set?: Record<string, any>;
62
+ $set_once?: Record<string, any>;
63
+ }
64
+ interface AliasEvent {
65
+ distinct_id: string;
66
+ original: string;
67
+ }
68
+
69
+ declare class VTilt {
70
+ private configManager;
71
+ private trackingManager;
72
+ private webVitalsManager;
73
+ private initialized;
74
+ constructor(config?: Partial<VTiltConfig>);
75
+ /**
76
+ * Initialize VTilt tracking
77
+ */
78
+ init(): void;
79
+ /**
80
+ * Track a custom event
81
+ */
82
+ trackEvent(name: string, payload?: EventPayload): void;
83
+ /**
84
+ * Identify a user with PostHog-style property operations
85
+ * Copied from PostHog's identify method signature
86
+ *
87
+ * @example
88
+ * ```js
89
+ * // Basic identify with properties
90
+ * vTilt.identify('user_123',
91
+ * { name: 'John Doe', email: 'john@example.com' }, // $set properties
92
+ * { first_login: new Date().toISOString() } // $set_once properties
93
+ * )
94
+ * ```
95
+ *
96
+ * @example
97
+ * ```js
98
+ * // If no $set is provided, all properties are treated as $set
99
+ * vTilt.identify('user_123', { name: 'John Doe', email: 'john@example.com' })
100
+ * ```
101
+ */
102
+ identify(distinctId?: string, userPropertiesToSet?: Record<string, any>, userPropertiesToSetOnce?: Record<string, any>): void;
103
+ /**
104
+ * Set user properties with PostHog-style operations
105
+ * Sets properties on the person profile associated with the current distinct_id
106
+ *
107
+ * @example
108
+ * ```js
109
+ * // Set properties that can be updated
110
+ * vTilt.setUserProperties({ name: 'John Doe', email: 'john@example.com' })
111
+ * ```
112
+ *
113
+ * @example
114
+ * ```js
115
+ * // Set properties with $set and $set_once operations
116
+ * vTilt.setUserProperties(
117
+ * { name: 'John Doe', last_login: new Date().toISOString() }, // $set properties
118
+ * { first_login: new Date().toISOString() } // $set_once properties
119
+ * )
120
+ * ```
121
+ *
122
+ * @param userPropertiesToSet Optional: Properties to set (can be updated)
123
+ * @param userPropertiesToSetOnce Optional: Properties to set once (preserves first value)
124
+ */
125
+ setUserProperties(userPropertiesToSet?: Record<string, any>, userPropertiesToSetOnce?: Record<string, any>): void;
126
+ /**
127
+ * Reset user identity (logout)
128
+ * PostHog behavior: Clears all user data, generates new anonymous ID
129
+ *
130
+ * @param reset_device_id - If true, also resets device_id. Default: false
131
+ *
132
+ * @example
133
+ * // Reset on user logout
134
+ * vtilt.resetUser()
135
+ *
136
+ * @example
137
+ * // Reset and generate new device ID
138
+ * vtilt.resetUser(true)
139
+ */
140
+ resetUser(reset_device_id?: boolean): void;
141
+ /**
142
+ * Get current user identity
143
+ */
144
+ getUserIdentity(): UserIdentity;
145
+ /**
146
+ * Get current device ID
147
+ */
148
+ getDeviceId(): string;
149
+ /**
150
+ * Get current user state
151
+ */
152
+ getUserState(): "anonymous" | "identified";
153
+ /**
154
+ * Create an alias to link two distinct IDs
155
+ * PostHog behavior: Links anonymous session to account on signup
156
+ *
157
+ * @param alias - A unique identifier that you want to use for this user in the future
158
+ * @param original - The current identifier being used for this user (optional, defaults to current distinct_id)
159
+ *
160
+ * @example
161
+ * // Link anonymous user to account on signup
162
+ * vtilt.createAlias('user_12345')
163
+ *
164
+ * @example
165
+ * // Explicit alias with original ID
166
+ * vtilt.createAlias('user_12345', 'anonymous_abc123')
167
+ */
168
+ createAlias(alias: string, original?: string): void;
169
+ /**
170
+ * Setup page tracking with history API support
171
+ */
172
+ private setupPageTracking;
173
+ /**
174
+ * Track page hit
175
+ */
176
+ private trackPageHit;
177
+ /**
178
+ * Setup visibility change tracking for prerendered pages
179
+ */
180
+ private setupVisibilityTracking;
181
+ /**
182
+ * Get current configuration
183
+ */
184
+ getConfig(): VTiltConfig;
185
+ /**
186
+ * Get current session ID
187
+ */
188
+ getSessionId(): string | null;
189
+ /**
190
+ * Update configuration
191
+ */
192
+ updateConfig(config: Partial<VTiltConfig>): void;
193
+ /**
194
+ * _execute_array() deals with processing any VTilt function
195
+ * calls that were called before the VTilt library was loaded
196
+ * (and are thus stored in an array so they can be called later)
197
+ *
198
+ * Note: we fire off all the VTilt function calls BEFORE we fire off
199
+ * tracking calls. This is so identify/setUserProperties/updateConfig calls
200
+ * can properly modify early tracking calls.
201
+ *
202
+ * @param {Array} array Array of queued calls in format [methodName, ...args]
203
+ */
204
+ _execute_array(array: any[]): void;
205
+ /**
206
+ * Called when DOM is loaded - processes queued requests
207
+ */
208
+ _dom_loaded(): void;
209
+ }
210
+
211
+ declare const vt: VTilt;
212
+
213
+ export { VTilt, vt as default, vt };
214
+ export type { AliasEvent, EventPayload, GeolocationData, PropertyOperations, SessionData, StorageMethod, StorageMethods, TrackingEvent, UserIdentity, UserProperties, VTiltConfig, WebVitalMetric };
package/dist/module.js ADDED
@@ -0,0 +1,2 @@
1
+ function i(i,a,e,t,r,n,s){try{var o=i[n](s),c=o.value}catch(i){return void e(i)}o.done?a(c):Promise.resolve(c).then(t,r)}function a(){return a=Object.assign?Object.assign.bind():function(i){for(var a=1;a<arguments.length;a++){var e=arguments[a];for(var t in e)({}).hasOwnProperty.call(e,t)&&(i[t]=e[t])}return i},a.apply(null,arguments)}class e{constructor(i){void 0===i&&(i={}),this.config=this.parseConfigFromScript(i)}parseConfigFromScript(i){if(!document.currentScript)return a({projectId:i.projectId||"",token:i.token||""},i);var e=document.currentScript,t=a({projectId:"",token:""},i);if(t.host=e.getAttribute("data-host")||i.host,t.proxy=e.getAttribute("data-proxy")||i.proxy,t.proxyUrl=e.getAttribute("data-proxy-url")||i.proxyUrl,t.token=e.getAttribute("data-token")||i.token||"",t.projectId=e.getAttribute("data-project-id")||i.projectId||"",t.domain=e.getAttribute("data-domain")||i.domain,t.storage=e.getAttribute("data-storage")||i.storage,t.stringifyPayload="false"!==e.getAttribute("data-stringify-payload"),t.webVitals="true"===e.getAttribute("web-vitals")||"true"===e.getAttribute("data-web-vitals")||i.webVitals,t.proxy&&t.proxyUrl)throw console.error("Error: Both data-proxy and data-proxy-url are specified. Please use only one of them."),new Error("Both data-proxy and data-proxy-url are specified. Please use only one of them.");for(var r of(t.globalAttributes=a({},i.globalAttributes),Array.from(e.attributes)))r.name.startsWith("tb_")&&(t.globalAttributes[r.name.slice(3).replace(/-/g,"_")]=r.value),r.name.startsWith("data-tb-")&&(t.globalAttributes[r.name.slice(8).replace(/-/g,"_")]=r.value);return t}getConfig(){return a({},this.config)}updateConfig(i){this.config=a({},this.config,i)}}var t,r="vt_session_id",n="vt_anonymous_id",s="vt_distinct_id",o="vt_device_id",c="vt_user_properties",A="vt_user_state",u="localStorage",d="sessionStorage",h={"Asia/Barnaul":"RU","Africa/Nouakchott":"MR","Africa/Lusaka":"ZM","Asia/Pyongyang":"KP","Europe/Bratislava":"SK","America/Belize":"BZ","America/Maceio":"BR","Pacific/Chuuk":"FM","Indian/Comoro":"KM","Pacific/Palau":"PW","Asia/Jakarta":"ID","Africa/Windhoek":"NA","America/Chihuahua":"MX","America/Nome":"US","Africa/Mbabane":"SZ","Africa/Porto-Novo":"BJ","Europe/San_Marino":"SM","Pacific/Fakaofo":"TK","America/Denver":"US","Europe/Belgrade":"RS","America/Indiana/Tell_City":"US","America/Fortaleza":"BR","America/Halifax":"CA","Europe/Bucharest":"RO","America/Indiana/Petersburg":"US","Europe/Kirov":"RU","Europe/Athens":"GR","America/Argentina/Ushuaia":"AR","Europe/Monaco":"MC","Europe/Vilnius":"LT","Europe/Copenhagen":"DK","Pacific/Kanton":"KI","America/Caracas":"VE","Asia/Almaty":"KZ","Europe/Paris":"FR","Africa/Blantyre":"MW","Asia/Muscat":"OM","America/North_Dakota/Beulah":"US","America/Matamoros":"MX","Asia/Irkutsk":"RU","America/Costa_Rica":"CR","America/Araguaina":"BR","Atlantic/Canary":"ES","America/Santo_Domingo":"DO","America/Vancouver":"CA","Africa/Addis_Ababa":"ET","Africa/Accra":"GH","Pacific/Kwajalein":"MH","Asia/Baghdad":"IQ","Australia/Adelaide":"AU","Australia/Hobart":"AU","America/Guayaquil":"EC","America/Argentina/Tucuman":"AR","Australia/Lindeman":"AU","America/New_York":"US","Pacific/Fiji":"FJ","America/Antigua":"AG","Africa/Casablanca":"MA","America/Paramaribo":"SR","Africa/Cairo":"EG","America/Cayenne":"GF","America/Detroit":"US","Antarctica/Syowa":"AQ","Africa/Douala":"CM","America/Argentina/La_Rioja":"AR","Africa/Lagos":"NG","America/St_Barthelemy":"BL","Asia/Nicosia":"CY","Asia/Macau":"MO","Europe/Riga":"LV","Asia/Ashgabat":"TM","Indian/Antananarivo":"MG","America/Argentina/San_Juan":"AR","Asia/Aden":"YE","Asia/Tomsk":"RU","America/Asuncion":"PY","Pacific/Bougainville":"PG","Asia/Vientiane":"LA","America/Mazatlan":"MX","Africa/Luanda":"AO","Europe/Oslo":"NO","Africa/Kinshasa":"CD","Europe/Warsaw":"PL","America/Grand_Turk":"TC","Asia/Seoul":"KR","Africa/Tripoli":"LY","America/St_Thomas":"VI","Asia/Kathmandu":"NP","Pacific/Pitcairn":"PN","Pacific/Nauru":"NR","America/Curacao":"CW","Asia/Kabul":"AF","Pacific/Tongatapu":"TO","Europe/Simferopol":"UA","Asia/Ust-Nera":"RU","Africa/Mogadishu":"SO","Indian/Mayotte":"YT","Pacific/Niue":"NU","America/Thunder_Bay":"CA","Atlantic/Azores":"PT","Pacific/Gambier":"PF","Europe/Stockholm":"SE","Africa/Libreville":"GA","America/Punta_Arenas":"CL","America/Guatemala":"GT","America/Noronha":"BR","Europe/Helsinki":"FI","Asia/Gaza":"PS","Pacific/Kosrae":"FM","America/Aruba":"AW","America/Nassau":"BS","Asia/Choibalsan":"MN","America/Winnipeg":"CA","America/Anguilla":"AI","Asia/Thimphu":"BT","Asia/Beirut":"LB","Atlantic/Faroe":"FO","Europe/Berlin":"DE","Europe/Amsterdam":"NL","Pacific/Honolulu":"US","America/Regina":"CA","America/Scoresbysund":"GL","Europe/Vienna":"AT","Europe/Tirane":"AL","Africa/El_Aaiun":"EH","America/Creston":"CA","Asia/Qostanay":"KZ","Asia/Ho_Chi_Minh":"VN","Europe/Samara":"RU","Europe/Rome":"IT","Australia/Eucla":"AU","America/El_Salvador":"SV","America/Chicago":"US","Africa/Abidjan":"CI","Asia/Kamchatka":"RU","Pacific/Tarawa":"KI","America/Santiago":"CL","America/Bahia":"BR","Indian/Christmas":"CX","Asia/Atyrau":"KZ","Asia/Dushanbe":"TJ","Europe/Ulyanovsk":"RU","America/Yellowknife":"CA","America/Recife":"BR","Australia/Sydney":"AU","America/Fort_Nelson":"CA","Pacific/Efate":"VU","Europe/Saratov":"RU","Africa/Banjul":"GM","Asia/Omsk":"RU","Europe/Ljubljana":"SI","Europe/Budapest":"HU","Europe/Astrakhan":"RU","America/Argentina/Buenos_Aires":"AR","Pacific/Chatham":"NZ","America/Argentina/Salta":"AR","Africa/Niamey":"NE","Asia/Pontianak":"ID","Indian/Reunion":"RE","Asia/Hong_Kong":"HK","Antarctica/McMurdo":"AQ","Africa/Malabo":"GQ","America/Los_Angeles":"US","America/Argentina/Cordoba":"AR","Pacific/Pohnpei":"FM","America/Tijuana":"MX","America/Campo_Grande":"BR","America/Dawson_Creek":"CA","Asia/Novosibirsk":"RU","Pacific/Pago_Pago":"AS","Asia/Jerusalem":"IL","Europe/Sarajevo":"BA","Africa/Freetown":"SL","Asia/Yekaterinburg":"RU","America/Juneau":"US","Africa/Ouagadougou":"BF","Africa/Monrovia":"LR","Europe/Kiev":"UA","America/Argentina/San_Luis":"AR","Asia/Tokyo":"JP","Asia/Qatar":"QA","America/La_Paz":"BO","America/Bogota":"CO","America/Thule":"GL","Asia/Manila":"PH","Asia/Hovd":"MN","Asia/Tehran":"IR","Atlantic/Madeira":"PT","America/Metlakatla":"US","Europe/Vatican":"VA","Asia/Bishkek":"KG","Asia/Dili":"TL","Antarctica/Palmer":"AQ","Atlantic/Cape_Verde":"CV","Indian/Chagos":"IO","America/Kentucky/Monticello":"US","Africa/Algiers":"DZ","Africa/Maseru":"LS","Asia/Kuala_Lumpur":"MY","Africa/Khartoum":"SD","America/Argentina/Rio_Gallegos":"AR","America/Blanc-Sablon":"CA","Africa/Maputo":"MZ","America/Tortola":"VG","Atlantic/Bermuda":"BM","America/Argentina/Catamarca":"AR","America/Cayman":"KY","America/Puerto_Rico":"PR","Pacific/Majuro":"MH","Europe/Busingen":"DE","Pacific/Midway":"UM","Indian/Cocos":"CC","Asia/Singapore":"SG","America/Boise":"US","America/Nuuk":"GL","America/Goose_Bay":"CA","Australia/Broken_Hill":"AU","Africa/Dar_es_Salaam":"TZ","Africa/Asmara":"ER","Asia/Samarkand":"UZ","Asia/Tbilisi":"GE","America/Argentina/Jujuy":"AR","America/Indiana/Winamac":"US","America/Porto_Velho":"BR","Asia/Magadan":"RU","Europe/Zaporozhye":"UA","Antarctica/Casey":"AQ","Asia/Shanghai":"CN","Pacific/Norfolk":"NF","Europe/Guernsey":"GG","Australia/Brisbane":"AU","Antarctica/DumontDUrville":"AQ","America/Havana":"CU","America/Atikokan":"CA","America/Mexico_City":"MX","America/Rankin_Inlet":"CA","America/Cuiaba":"BR","America/Resolute":"CA","Africa/Ceuta":"ES","Arctic/Longyearbyen":"SJ","Pacific/Guam":"GU","Asia/Damascus":"SY","Asia/Colombo":"LK","Asia/Yerevan":"AM","America/Montserrat":"MS","America/Belem":"BR","Europe/Kaliningrad":"RU","Atlantic/South_Georgia":"GS","Asia/Tashkent":"UZ","Asia/Kolkata":"IN","America/St_Johns":"CA","Asia/Srednekolymsk":"RU","Asia/Yakutsk":"RU","Europe/Prague":"CZ","Africa/Djibouti":"DJ","Asia/Dubai":"AE","Europe/Uzhgorod":"UA","America/Edmonton":"CA","Asia/Famagusta":"CY","America/Indiana/Knox":"US","Asia/Hebron":"PS","Asia/Taipei":"TW","Europe/London":"GB","Africa/Dakar":"SN","Australia/Darwin":"AU","America/Glace_Bay":"CA","Antarctica/Vostok":"AQ","America/Indiana/Vincennes":"US","America/Nipigon":"CA","Asia/Kuwait":"KW","Pacific/Guadalcanal":"SB","America/Toronto":"CA","Africa/Gaborone":"BW","Africa/Bujumbura":"BI","Africa/Lubumbashi":"CD","America/Merida":"MX","America/Marigot":"MF","Europe/Zagreb":"HR","Pacific/Easter":"CL","America/Santarem":"BR","Pacific/Noumea":"NC","America/Sitka":"US","Atlantic/Stanley":"FK","Pacific/Funafuti":"TV","America/Iqaluit":"CA","America/Rainy_River":"CA","America/Anchorage":"US","America/Lima":"PE","Asia/Baku":"AZ","America/Indiana/Vevay":"US","Asia/Ulaanbaatar":"MN","America/Managua":"NI","Asia/Krasnoyarsk":"RU","Asia/Qyzylorda":"KZ","America/Eirunepe":"BR","Europe/Podgorica":"ME","Europe/Chisinau":"MD","Europe/Mariehamn":"AX","Europe/Volgograd":"RU","Africa/Nairobi":"KE","Europe/Isle_of_Man":"IM","America/Menominee":"US","Africa/Harare":"ZW","Asia/Anadyr":"RU","America/Moncton":"CA","Indian/Maldives":"MV","America/Whitehorse":"CA","Antarctica/Mawson":"AQ","Europe/Madrid":"ES","America/Argentina/Mendoza":"AR","America/Manaus":"BR","Africa/Bangui":"CF","Indian/Mauritius":"MU","Africa/Tunis":"TN","Australia/Lord_Howe":"AU","America/Kentucky/Louisville":"US","America/North_Dakota/Center":"US","Asia/Novokuznetsk":"RU","Asia/Makassar":"ID","America/Port_of_Spain":"TT","America/Bahia_Banderas":"MX","Pacific/Auckland":"NZ","America/Sao_Paulo":"BR","Asia/Dhaka":"BD","America/Pangnirtung":"CA","Europe/Dublin":"IE","Asia/Brunei":"BN","Africa/Brazzaville":"CG","America/Montevideo":"UY","America/Jamaica":"JM","America/Indiana/Indianapolis":"US","America/Kralendijk":"BQ","Europe/Gibraltar":"GI","Pacific/Marquesas":"PF","Pacific/Apia":"WS","Europe/Jersey":"JE","America/Phoenix":"US","Africa/Ndjamena":"TD","Asia/Karachi":"PK","Africa/Kampala":"UG","Asia/Sakhalin":"RU","America/Martinique":"MQ","Europe/Moscow":"RU","Africa/Conakry":"GN","America/Barbados":"BB","Africa/Lome":"TG","America/Ojinaga":"MX","America/Tegucigalpa":"HN","Asia/Bangkok":"TH","Africa/Johannesburg":"ZA","Europe/Vaduz":"LI","Africa/Sao_Tome":"ST","America/Cambridge_Bay":"CA","America/Lower_Princes":"SX","America/Miquelon":"PM","America/St_Kitts":"KN","Australia/Melbourne":"AU","Europe/Minsk":"BY","Asia/Vladivostok":"RU","Europe/Sofia":"BG","Antarctica/Davis":"AQ","Pacific/Galapagos":"EC","America/North_Dakota/New_Salem":"US","Asia/Amman":"JO","Pacific/Wallis":"WF","America/Hermosillo":"MX","Pacific/Kiritimati":"KI","Antarctica/Macquarie":"AU","America/Guyana":"GY","Asia/Riyadh":"SA","Pacific/Tahiti":"PF","America/St_Vincent":"VC","America/Cancun":"MX","America/Grenada":"GD","Pacific/Wake":"UM","America/Dawson":"CA","Europe/Brussels":"BE","Indian/Kerguelen":"TF","America/Yakutat":"US","Indian/Mahe":"SC","Atlantic/Reykjavik":"IS","America/Panama":"PA","America/Guadeloupe":"GP","Europe/Malta":"MT","Antarctica/Troll":"AQ","Asia/Jayapura":"ID","Asia/Bahrain":"BH","Asia/Chita":"RU","Europe/Tallinn":"EE","Asia/Khandyga":"RU","America/Rio_Branco":"BR","Atlantic/St_Helena":"SH","Africa/Juba":"SS","America/Adak":"US","Pacific/Saipan":"MP","America/St_Lucia":"LC","America/Inuvik":"CA","Europe/Luxembourg":"LU","Africa/Bissau":"GW","Asia/Oral":"KZ","America/Boa_Vista":"BR","Europe/Skopje":"MK","America/Port-au-Prince":"HT","Pacific/Port_Moresby":"PG","Europe/Andorra":"AD","America/Indiana/Marengo":"US","Africa/Kigali":"RW","Africa/Bamako":"ML","America/Dominica":"DM","Asia/Aqtobe":"KZ","Europe/Istanbul":"TR","Pacific/Rarotonga":"CK","America/Danmarkshavn":"GL","Europe/Zurich":"CH","Asia/Yangon":"MM","America/Monterrey":"MX","Europe/Lisbon":"PT","Asia/Kuching":"MY","Antarctica/Rothera":"AQ","Australia/Perth":"AU","Asia/Phnom_Penh":"KH","America/Swift_Current":"CA","Asia/Aqtau":"KZ","Asia/Urumqi":"CN","Asia/Calcutta":"IN"},l=["username","user","user_id","userid","password","pass","pin","passcode","token","api_token","email","address","phone","sex","gender","order","order_id","orderid","payment","credit_card"];function m(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,i=>(+i^crypto.getRandomValues(new Uint8Array(1))[0]&15>>+i/4).toString(16))}function f(i){return!(!i||"string"!=typeof i)&&!(i.length<2||i.length>10240)}function p(i){var a=JSON.stringify(i);return l.forEach(i=>{a=a.replace(new RegExp('("'+i+'"):(".+?"|\\d+)',"gmi"),'$1:"********"')}),a}function g(){return!!("__nightmare"in window||window.navigator.webdriver||"Cypress"in window)}class v{constructor(i,a){void 0===i&&(i="cookie"),this.storageMethod=i,this.domain=a}getSessionIdFromCookie(){var i={};return document.cookie.split(";").forEach(function(a){var[e,t]=a.split("=");i[e.trim()]=t}),i[r]||null}getSessionId(){if(this.storageMethod===u||this.storageMethod===d){var i=this.storageMethod===u?localStorage:sessionStorage,a=i.getItem(r);if(!a)return null;var e=null;try{e=JSON.parse(a)}catch(i){return null}return"object"!=typeof e||null===e?null:(new Date).getTime()>e.expiry?(i.removeItem(r),null):e.value}return this.getSessionIdFromCookie()}setSessionIdFromCookie(i){var a=r+"="+i+"; Max-Age=1800; path=/; secure";this.domain&&(a+="; domain="+this.domain),document.cookie=a}setSessionId(){var i=this.getSessionId()||m();if(this.storageMethod===u||this.storageMethod===d){var a={value:i,expiry:(new Date).getTime()+18e5},e=JSON.stringify(a);(this.storageMethod===u?localStorage:sessionStorage).setItem(r,e)}else this.setSessionIdFromCookie(i);return i}resetSessionId(){this.storageMethod===u||this.storageMethod===d?(this.storageMethod===u?localStorage:sessionStorage).removeItem(r):(document.cookie=r+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;",this.domain&&(document.cookie=r+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; domain="+this.domain+";"));this.setSessionId()}}class S{constructor(i,a){void 0===i&&(i="localStorage"),this.i=null,this.storageMethod=i,this.domain=a,this.userIdentity=this.loadUserIdentity()}getUserIdentity(){return a({},this.userIdentity)}getDistinctId(){return this.userIdentity.distinct_id}getAnonymousId(){return this.userIdentity.anonymous_id||(this.userIdentity.anonymous_id=this.generateAnonymousId(),this.saveUserIdentity()),this.userIdentity.anonymous_id}getUserProperties(){return a({},this.userIdentity.properties)}identify(i,e,t){if("number"==typeof i&&(i=i.toString(),console.warn("The first argument to vTilt.identify was a number, but it should be a string. It has been converted to a string.")),i)if(this.isDistinctIdStringLike(i))console.error('The string "'+i+'" was set in vTilt.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.');else if("COOKIELESS_SENTINEL_VALUE"!==i){var r=this.userIdentity.distinct_id,n=this.userIdentity.anonymous_id,s=this.userIdentity.device_id;if(this.userIdentity.distinct_id=i,!this.userIdentity.device_id){var o=r||this.userIdentity.anonymous_id;this.userIdentity.device_id=o,this.userIdentity.properties=a({},this.userIdentity.properties,{$had_persisted_distinct_id:!0,$device_id:o})}i!==r&&(this.userIdentity.distinct_id=i);var c="anonymous"===this.userIdentity.user_state;i!==r&&c?(this.userIdentity.user_state="identified",e&&(this.userIdentity.properties=a({},this.userIdentity.properties,e)),t&&Object.keys(t).forEach(i=>{i in this.userIdentity.properties||(this.userIdentity.properties[i]=t[i])}),this.saveUserIdentity(),this.sendIdentifyEvent(i,n,s,{$set:e||{},$set_once:t||{}})):e||t?("anonymous"===this.userIdentity.user_state&&(this.userIdentity.user_state="identified"),e&&(this.userIdentity.properties=a({},this.userIdentity.properties,e)),t&&Object.keys(t).forEach(i=>{i in this.userIdentity.properties||(this.userIdentity.properties[i]=t[i])}),this.saveUserIdentity(),this.sendSetEvent(e||{},t||{})):i!==r&&(this.userIdentity.user_state="identified",this.saveUserIdentity())}else console.error('The string "'+i+'" was set in vTilt.identify which indicates an error. This ID is only used as a sentinel value.');else console.error("Unique user id has not been set in vTilt.identify")}setUserProperties(i,e){if(i||e){var t=this.userIdentity.distinct_id||this.userIdentity.anonymous_id,r=this.getPersonPropertiesHash(t,i,e);this.i!==r?(i&&(this.userIdentity.properties=a({},this.userIdentity.properties,i)),e&&Object.keys(e).forEach(i=>{i in this.userIdentity.properties||(this.userIdentity.properties[i]=e[i])}),this.saveUserIdentity(),this.sendSetEvent(i||{},e||{}),this.i=r):console.info("VTilt: A duplicate setUserProperties call was made with the same properties. It has been ignored.")}}getPersonPropertiesHash(i,a,e){return JSON.stringify({distinct_id:i,userPropertiesToSet:a,userPropertiesToSetOnce:e})}sendSetEvent(i,a){var e=new CustomEvent("vtilt:set",{detail:{$set:i||{},$set_once:a||{}}});window.dispatchEvent(e)}reset(i){var e=this.generateAnonymousId(),t=this.userIdentity.device_id,r=i?this.generateDeviceId():t;this.userIdentity={distinct_id:null,anonymous_id:e,device_id:r,properties:{},user_state:"anonymous"},this.i=null,this.saveUserIdentity(),this.userIdentity.properties=a({},this.userIdentity.properties,{$last_posthog_reset:(new Date).toISOString()}),this.saveUserIdentity()}getEffectiveId(){return this.userIdentity.distinct_id||this.getAnonymousId()}getDeviceId(){return this.userIdentity.device_id}getUserState(){return this.userIdentity.user_state}createAlias(i,a){if(this.isValidDistinctId(i))if(void 0===a&&(a=this.getDistinctId()||this.getAnonymousId()),this.isValidDistinctId(a)){if(i===a)return console.warn("alias matches current distinct_id - calling identify instead"),void this.identify(i);var e=new CustomEvent("vtilt:alias",{detail:{distinct_id:i,original:a}});window.dispatchEvent(e)}else console.warn("Invalid original distinct ID");else console.warn("Invalid alias provided")}isValidDistinctId(i){if(!i||"string"!=typeof i)return!1;var a=i.toLowerCase().trim();return!["null","undefined","false","true","anonymous","anon","user","test","guest","visitor","unknown","none"].includes(a)&&0!==i.trim().length}isDistinctIdStringLike(i){if(!i||"string"!=typeof i)return!1;var a=i.toLowerCase().trim();return["null","undefined","false","true","anonymous","anon","user","test","guest","visitor","unknown","none","demo","example","sample","placeholder"].includes(a)}loadUserIdentity(){var i=this.getStoredValue(n)||this.generateAnonymousId(),a=this.getStoredValue(s)||null,e=this.getStoredValue(o)||this.generateDeviceId(),t=this.getStoredUserProperties(),r=this.getStoredValue(A)||"anonymous";return{distinct_id:a,anonymous_id:i||this.generateAnonymousId(),device_id:e,properties:t,user_state:r}}saveUserIdentity(){this.setStoredValue(n,this.userIdentity.anonymous_id),this.setStoredValue(o,this.userIdentity.device_id),this.setStoredValue(A,this.userIdentity.user_state),this.userIdentity.distinct_id?this.setStoredValue(s,this.userIdentity.distinct_id):this.removeStoredValue(s),this.setStoredUserProperties(this.userIdentity.properties)}generateAnonymousId(){return"anon_"+m()}generateDeviceId(){return"device_"+m()}sendIdentifyEvent(i,e,t,r){var n=new CustomEvent("vtilt:identify",{detail:{distinct_id:i,anonymous_id:e,device_id:t,properties:a({$anon_distinct_id:e,$device_id:t},r)}});window.dispatchEvent(n)}getStoredValue(i){try{return this.storageMethod===u?localStorage.getItem(i):this.storageMethod===d?sessionStorage.getItem(i):this.getCookieValue(i)}catch(i){return console.warn("Failed to access storage:",i),null}}setStoredValue(i,a){try{this.storageMethod===u?localStorage.setItem(i,a):this.storageMethod===d?sessionStorage.setItem(i,a):this.setCookieValue(i,a)}catch(i){console.warn("Failed to save to storage:",i)}}removeStoredValue(i){this.storageMethod===u?localStorage.removeItem(i):this.storageMethod===d?sessionStorage.removeItem(i):this.removeCookieValue(i)}getStoredUserProperties(){var i=this.getStoredValue(c);if(!i)return{};try{return JSON.parse(i)}catch(i){return{}}}setStoredUserProperties(i){this.setStoredValue(c,JSON.stringify(i))}getCookieValue(i){var a=document.cookie.split(";");for(var e of a){var[t,r]=e.trim().split("=");if(t===i)return decodeURIComponent(r)}return null}setCookieValue(i,a){var e=i+"="+encodeURIComponent(a)+"; Max-Age=31536000; path=/; secure; SameSite=Lax";this.domain&&(e+="; domain="+this.domain),document.cookie=e}removeCookieValue(i){var a=i+"=; Max-Age=0; path=/";this.domain&&(a+="; domain="+this.domain),document.cookie=a}}function y(){var i,a;try{var e=Intl.DateTimeFormat().resolvedOptions().timeZone;i=h[e],a=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.userLanguage||navigator.language||navigator.browserLanguage||"en"}catch(i){}return{country:i,locale:a}}class _{constructor(i){this.__request_queue=[],this.t=!1,this.config=i,this.config.domain||"undefined"==typeof window||(this.config.domain=this.getCurrentDomain()),this.sessionManager=new v(i.storage||"cookie",this.config.domain),this.userManager=new S(i.persistence||"localStorage",this.config.domain),this.setupIdentifyListener()}getCurrentDomain(){if("undefined"==typeof window)return"";var i=window.location.protocol,a=window.location.hostname,e=window.location.port;return i+"//"+a+(e?":"+e:"")}o(){return!(!this.config.projectId||!this.config.token)||(this.t||(console.warn("VTilt: projectId and token are required for tracking. Events will be skipped until init() or updateConfig() is called with these fields."),this.t=!0),!1)}sendEvent(a,e){var t,r=this;return(t=function*(){if(r.sessionManager.setSessionId(),function(i){return!(i&&"string"==typeof i&&i.length>500)}(window.navigator.userAgent)){var i,t=r.buildUrl();if(!1!==r.config.stringifyPayload){if(i=p(e),i=Object.assign({},JSON.parse(i),r.config.globalAttributes),!f(i=JSON.stringify(i)))return}else{var n=p(i=Object.assign({},e,r.config.globalAttributes));if(!f(n))return;i=JSON.parse(n)}var s=r.sessionManager.getSessionId()||m(),o=r.userManager.getDistinctId(),c=r.userManager.getAnonymousId(),A={timestamp:(new Date).toISOString(),event:a,session_id:s,tenant_id:r.config.projectId||"",domain:r.config.domain||r.getCurrentDomain(),payload:i,distinct_id:o||c};r.sendRequest(t,A,!0)}},function(){var a=this,e=arguments;return new Promise(function(r,n){var s=t.apply(a,e);function o(a){i(s,r,n,o,c,"next",a)}function c(a){i(s,r,n,o,c,"throw",a)}o(void 0)})})()}buildUrl(){var{proxyUrl:i,proxy:a,host:e,token:t}=this.config;return i||(a?a+"/api/tracking?token="+t:e?e.replace(/\/+$/gm,"")+"/api/tracking?token="+t:"/api/tracking?token="+t)}sendRequest(i,a,e){if(this.o()){if(e&&"undefined"!=typeof window)if(window.__VTILT_ENQUEUE_REQUESTS)return void this.__request_queue.push({url:i,event:a});var t=new XMLHttpRequest;t.open("POST",i,!0),t.setRequestHeader("Content-Type","application/json"),t.send(JSON.stringify(a))}}A(i){this.sendRequest(i.url,i.event,!1)}trackPageHit(){if(!g()){var{country:i,locale:a}=y();setTimeout(()=>{this.sendEvent("page_hit",{"user-agent":window.navigator.userAgent,locale:a,location:i,referrer:document.referrer,pathname:window.location.pathname,href:window.location.href})},300)}}getSessionId(){return this.sessionManager.getSessionId()}identify(i,a,e){this.userManager.identify(i,a,e)}setUserProperties(i,a){this.userManager.setUserProperties(i,a)}resetUser(i){this.sessionManager.resetSessionId(),this.userManager.reset(i)}getUserIdentity(){return this.userManager.getUserIdentity()}getDeviceId(){return this.userManager.getDeviceId()}getUserState(){return this.userManager.getUserState()}createAlias(i,a){this.userManager.createAlias(i,a)}setupIdentifyListener(){window.addEventListener("vtilt:identify",i=>{var a=i,{distinct_id:e,anonymous_id:t,device_id:r,properties:n}=a.detail;this.sendIdentifyEvent(e,t,r,n)}),window.addEventListener("vtilt:set",i=>{var a=i,{$set:e,$set_once:t}=a.detail;this.sendSetEvent(e||{},t||{})}),window.addEventListener("vtilt:alias",i=>{var a=i.detail;this.sendAliasEvent(a)})}sendIdentifyEvent(i,e,t,r){var n=this.buildUrl(),s=this.sessionManager.getSessionId()||m(),o=a({$anon_distinct_id:e,$device_id:t},r),c={timestamp:(new Date).toISOString(),event:"$identify",session_id:s,tenant_id:this.config.projectId||"",domain:this.config.domain||this.getCurrentDomain(),payload:o,distinct_id:i};this.sendRequest(n,c,!0)}sendSetEvent(i,a){var e=this.buildUrl(),t=this.sessionManager.getSessionId()||m(),r=this.userManager.getDistinctId(),n=this.userManager.getAnonymousId(),s={$set:i||{},$set_once:a||{}},o={timestamp:(new Date).toISOString(),event:"$set",session_id:t,tenant_id:this.config.projectId||"",domain:this.config.domain||this.getCurrentDomain(),payload:s,distinct_id:r||n};this.sendRequest(e,o,!0)}sendAliasEvent(i){var a=this.buildUrl(),e=this.sessionManager.getSessionId()||m(),t={$original_id:i.original,$alias_id:i.distinct_id},r={timestamp:(new Date).toISOString(),event:"$alias",session_id:e,tenant_id:this.config.projectId||"",domain:this.config.domain||this.getCurrentDomain(),payload:t,distinct_id:i.distinct_id};this.sendRequest(a,r,!0)}}class w{constructor(i,a){if(this.trackingManager=a,i.webVitals)try{this.webVitals=require("web-vitals"),this.initializeWebVitals()}catch(i){console.warn("web-vitals library not found. Please install it to enable web vitals tracking.",i)}}initializeWebVitals(){if(this.webVitals){var i=i=>{try{var{country:a,locale:e}=y();this.trackingManager.sendEvent("web_vital",{name:i.name,value:i.value,delta:i.delta,rating:i.rating,id:i.id,navigationType:i.navigationType,pathname:window.location.pathname,href:window.location.href,"user-agent":window.navigator.userAgent,locale:e,location:a,referrer:document.referrer})}catch(i){console.error("Error sending web vital:",i)}};this.webVitals.onCLS&&this.webVitals.onCLS(i),this.webVitals.onFCP&&this.webVitals.onFCP(i),this.webVitals.onLCP&&this.webVitals.onLCP(i),this.webVitals.onTTFB&&this.webVitals.onTTFB(i),this.webVitals.onINP&&this.webVitals.onINP(i)}}}class C{constructor(i){void 0===i&&(i={}),this.initialized=!1,this.configManager=new e(i),this.trackingManager=new _(this.configManager.getConfig()),this.webVitalsManager=new w(this.configManager.getConfig(),this.trackingManager)}init(){this.initialized||(this.setupPageTracking(),this.initialized=!0)}trackEvent(i,a){void 0===a&&(a={}),this.trackingManager.sendEvent(i,a)}identify(i,a,e){this.trackingManager.identify(i,a,e)}setUserProperties(i,a){this.trackingManager.setUserProperties(i,a)}resetUser(i){this.trackingManager.resetUser(i)}getUserIdentity(){return this.trackingManager.getUserIdentity()}getDeviceId(){return this.trackingManager.getDeviceId()}getUserState(){return this.trackingManager.getUserState()}createAlias(i,a){this.trackingManager.createAlias(i,a)}setupPageTracking(){var i=this;this.trackPageHit(),window.addEventListener("hashchange",()=>this.trackPageHit());var a=window.history;if(a.pushState){var e=a.pushState;a.pushState=function(){for(var a=arguments.length,t=new Array(a),r=0;r<a;r++)t[r]=arguments[r];e.apply(i,t),i.trackPageHit()},window.addEventListener("popstate",()=>this.trackPageHit())}this.setupVisibilityTracking()}trackPageHit(){g()||this.trackingManager.trackPageHit()}setupVisibilityTracking(){"prerender"===document.visibilityState&&document.addEventListener("visibilitychange",()=>{"visible"===document.visibilityState&&this.trackPageHit()})}getConfig(){return this.configManager.getConfig()}getSessionId(){return this.trackingManager.getSessionId()}updateConfig(i){this.configManager.updateConfig(i),this.trackingManager=new _(this.configManager.getConfig()),this.webVitalsManager=new w(this.configManager.getConfig(),this.trackingManager)}_execute_array(i){Array.isArray(i)&&i.forEach(i=>{if(i&&Array.isArray(i)&&i.length>0){var a=i[0],e=i.slice(1);if("function"==typeof this[a])try{this[a](...e)}catch(i){console.error("VTilt: Error executing queued call "+a+":",i)}}})}_dom_loaded(){this.trackingManager&&(this.trackingManager.__request_queue.forEach(i=>{this.trackingManager.A(i)}),this.trackingManager.__request_queue=[])}}var E={},M="undefined"!=typeof XMLHttpRequest||"undefined"!=typeof fetch,U="undefined"!=typeof window?null===(t=window.navigator)||void 0===t?void 0:t.userAgent:void 0,P=!M&&-1===(null==U?void 0:U.indexOf("MSIE"))&&-1===(null==U?void 0:U.indexOf("Mozilla"));"undefined"!=typeof window&&(window.__VTILT_ENQUEUE_REQUESTS=P);var k=function(){function i(){i.done||(i.done=!0,P=!1,"undefined"!=typeof window&&(window.__VTILT_ENQUEUE_REQUESTS=!1),function(i,a,e){if(i)if(Array.isArray(i))i.forEach((i,t)=>{a.call(e,i,t)});else for(var t in i)Object.prototype.hasOwnProperty.call(i,t)&&a.call(e,i[t],t)}(E,function(i){i._dom_loaded()}))}"undefined"==typeof document||"function"!=typeof document.addEventListener?"undefined"!=typeof window&&console.error("Browser doesn't support `document.addEventListener` so VTilt couldn't be initialized"):"complete"===document.readyState?i():function(i,a,e,t){var{capture:r=!1,passive:n=!0}=null!=t?t:{};null==i||i.addEventListener(a,e,{capture:r,passive:n})}(document,"DOMContentLoaded",i,{capture:!1})};var R,I=(R=E.vTilt=new C,k(),R);export{C as VTilt,I as default,I as vt};
2
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sources":["../src/config.ts","../src/constants.ts","../src/utils/index.ts","../src/session.ts","../src/user-manager.ts","../src/geolocation.ts","../src/tracking.ts","../src/web-vitals.ts","../src/vtilt.ts","../src/entrypoints/module.no-external.es.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["ConfigManager","constructor","config","this","parseConfigFromScript","initialConfig","document","currentScript","_extends","projectId","token","script","host","getAttribute","proxy","proxyUrl","domain","storage","stringifyPayload","webVitals","console","error","Error","attr","globalAttributes","Array","from","attributes","name","startsWith","slice","replace","value","getConfig","updateConfig","newConfig","STORAGE_KEY","ANONYMOUS_ID_KEY","DISTINCT_ID_KEY","DEVICE_ID_KEY","USER_PROPERTIES_KEY","USER_STATE_KEY","STORAGE_METHODS","TIMEZONES","ATTRIBUTES_TO_MASK","uuidv4","c","crypto","getRandomValues","Uint8Array","toString","isValidPayload","payloadStr","length","maskSuspiciousAttributes","payload","_payload","JSON","stringify","forEach","RegExp","isTestEnvironment","window","navigator","webdriver","SessionManager","storageMethod","getSessionIdFromCookie","cookie","split","el","key","trim","getSessionId","localStorage","sessionStorage","serializedItem","getItem","item","parse","_a","Date","getTime","expiry","removeItem","setSessionIdFromCookie","sessionId","cookieValue","setSessionId","setItem","resetSessionId","UserManager","_cachedPersonProperties","userIdentity","loadUserIdentity","getUserIdentity","getDistinctId","distinct_id","getAnonymousId","anonymous_id","generateAnonymousId","saveUserIdentity","getUserProperties","properties","identify","newDistinctId","userPropertiesToSet","userPropertiesToSetOnce","warn","isDistinctIdStringLike","previousDistinctId","anonymousId","deviceId","device_id","$had_persisted_distinct_id","$device_id","isKnownAnonymous","user_state","Object","keys","sendIdentifyEvent","$set","$set_once","sendSetEvent","setUserProperties","distinctId","hash","getPersonPropertiesHash","info","setEvent","CustomEvent","detail","dispatchEvent","reset","reset_device_id","newAnonymousId","newDeviceId","generateDeviceId","$last_posthog_reset","toISOString","getEffectiveId","getDeviceId","getUserState","createAlias","alias","original","isValidDistinctId","undefined","customEvent","lower","toLowerCase","includes","getStoredValue","getStoredUserProperties","userState","setStoredValue","removeStoredValue","setStoredUserProperties","propertyOperations","identifyEvent","$anon_distinct_id","getCookieValue","setCookieValue","removeCookieValue","stored","cookies","decodeURIComponent","encodeURIComponent","getCountryAndLocale","country","locale","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","languages","userLanguage","language","browserLanguage","_error","TrackingManager","__request_queue","_hasWarnedAboutConfig","getCurrentDomain","sessionManager","userManager","persistence","setupIdentifyListener","protocol","location","hostname","port","_isConfigured","sendEvent","_this","userAgent","isValidUserAgent","processedPayload","url","buildUrl","assign","maskedStr","session_id","trackingEvent","timestamp","event","tenant_id","sendRequest","shouldEnqueue","__VTILT_ENQUEUE_REQUESTS","push","request","XMLHttpRequest","open","setRequestHeader","send","_send_retriable_request","trackPageHit","setTimeout","referrer","pathname","href","resetUser","addEventListener","aliasEvent","sendAliasEvent","identifyPayload","setEventPayload","aliasPayload","$original_id","$alias_id","WebVitalsManager","trackingManager","require","initializeWebVitals","sendMetric","metric","delta","rating","id","navigationType","onCLS","onFCP","onLCP","onTTFB","onINP","VTilt","initialized","configManager","webVitalsManager","init","setupPageTracking","trackEvent","history","pushState","originalPushState","_len","arguments","args","_key","apply","setupVisibilityTracking","visibilityState","handleVisibilityChange","_execute_array","array","isArray","methodName","_dom_loaded","instances","SUPPORTS_REQUEST","fetch","ENQUEUE_REQUESTS","indexOf","add_dom_loaded_handler","dom_loaded_handler","done","obj","iterator","thisArg","index","call","prototype","hasOwnProperty","each","inst","readyState","element","callback","options","capture","passive","vTiltMain","vt"],"mappings":"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"}
@@ -0,0 +1,214 @@
1
+ interface VTiltConfig {
2
+ projectId: string;
3
+ token: string;
4
+ host?: string;
5
+ scriptHost?: string;
6
+ proxy?: string;
7
+ proxyUrl?: string;
8
+ domain?: string;
9
+ storage?: "cookie" | "localStorage" | "sessionStorage";
10
+ stringifyPayload?: boolean;
11
+ webVitals?: boolean;
12
+ globalAttributes?: Record<string, string>;
13
+ persistence?: "localStorage" | "cookie";
14
+ crossSubdomainCookie?: boolean;
15
+ }
16
+ interface SessionData {
17
+ value: string;
18
+ expiry: number;
19
+ }
20
+ interface WebVitalMetric {
21
+ name: string;
22
+ value: number;
23
+ delta: number;
24
+ rating: string;
25
+ id: string;
26
+ navigationType: string;
27
+ }
28
+ interface GeolocationData {
29
+ country?: string;
30
+ locale?: string;
31
+ }
32
+ interface EventPayload {
33
+ [key: string]: any;
34
+ }
35
+ interface TrackingEvent {
36
+ timestamp: string;
37
+ event: string;
38
+ session_id: string;
39
+ tenant_id: string;
40
+ domain: string;
41
+ payload: EventPayload;
42
+ distinct_id?: string;
43
+ }
44
+ type StorageMethod = "cookie" | "localStorage" | "sessionStorage";
45
+ interface StorageMethods {
46
+ cookie: "cookie";
47
+ localStorage: "localStorage";
48
+ sessionStorage: "sessionStorage";
49
+ }
50
+ interface UserIdentity {
51
+ distinct_id: string | null;
52
+ anonymous_id: string;
53
+ device_id: string;
54
+ properties: Record<string, any>;
55
+ user_state: "anonymous" | "identified";
56
+ }
57
+ interface UserProperties {
58
+ [key: string]: any;
59
+ }
60
+ interface PropertyOperations {
61
+ $set?: Record<string, any>;
62
+ $set_once?: Record<string, any>;
63
+ }
64
+ interface AliasEvent {
65
+ distinct_id: string;
66
+ original: string;
67
+ }
68
+
69
+ declare class VTilt {
70
+ private configManager;
71
+ private trackingManager;
72
+ private webVitalsManager;
73
+ private initialized;
74
+ constructor(config?: Partial<VTiltConfig>);
75
+ /**
76
+ * Initialize VTilt tracking
77
+ */
78
+ init(): void;
79
+ /**
80
+ * Track a custom event
81
+ */
82
+ trackEvent(name: string, payload?: EventPayload): void;
83
+ /**
84
+ * Identify a user with PostHog-style property operations
85
+ * Copied from PostHog's identify method signature
86
+ *
87
+ * @example
88
+ * ```js
89
+ * // Basic identify with properties
90
+ * vTilt.identify('user_123',
91
+ * { name: 'John Doe', email: 'john@example.com' }, // $set properties
92
+ * { first_login: new Date().toISOString() } // $set_once properties
93
+ * )
94
+ * ```
95
+ *
96
+ * @example
97
+ * ```js
98
+ * // If no $set is provided, all properties are treated as $set
99
+ * vTilt.identify('user_123', { name: 'John Doe', email: 'john@example.com' })
100
+ * ```
101
+ */
102
+ identify(distinctId?: string, userPropertiesToSet?: Record<string, any>, userPropertiesToSetOnce?: Record<string, any>): void;
103
+ /**
104
+ * Set user properties with PostHog-style operations
105
+ * Sets properties on the person profile associated with the current distinct_id
106
+ *
107
+ * @example
108
+ * ```js
109
+ * // Set properties that can be updated
110
+ * vTilt.setUserProperties({ name: 'John Doe', email: 'john@example.com' })
111
+ * ```
112
+ *
113
+ * @example
114
+ * ```js
115
+ * // Set properties with $set and $set_once operations
116
+ * vTilt.setUserProperties(
117
+ * { name: 'John Doe', last_login: new Date().toISOString() }, // $set properties
118
+ * { first_login: new Date().toISOString() } // $set_once properties
119
+ * )
120
+ * ```
121
+ *
122
+ * @param userPropertiesToSet Optional: Properties to set (can be updated)
123
+ * @param userPropertiesToSetOnce Optional: Properties to set once (preserves first value)
124
+ */
125
+ setUserProperties(userPropertiesToSet?: Record<string, any>, userPropertiesToSetOnce?: Record<string, any>): void;
126
+ /**
127
+ * Reset user identity (logout)
128
+ * PostHog behavior: Clears all user data, generates new anonymous ID
129
+ *
130
+ * @param reset_device_id - If true, also resets device_id. Default: false
131
+ *
132
+ * @example
133
+ * // Reset on user logout
134
+ * vtilt.resetUser()
135
+ *
136
+ * @example
137
+ * // Reset and generate new device ID
138
+ * vtilt.resetUser(true)
139
+ */
140
+ resetUser(reset_device_id?: boolean): void;
141
+ /**
142
+ * Get current user identity
143
+ */
144
+ getUserIdentity(): UserIdentity;
145
+ /**
146
+ * Get current device ID
147
+ */
148
+ getDeviceId(): string;
149
+ /**
150
+ * Get current user state
151
+ */
152
+ getUserState(): "anonymous" | "identified";
153
+ /**
154
+ * Create an alias to link two distinct IDs
155
+ * PostHog behavior: Links anonymous session to account on signup
156
+ *
157
+ * @param alias - A unique identifier that you want to use for this user in the future
158
+ * @param original - The current identifier being used for this user (optional, defaults to current distinct_id)
159
+ *
160
+ * @example
161
+ * // Link anonymous user to account on signup
162
+ * vtilt.createAlias('user_12345')
163
+ *
164
+ * @example
165
+ * // Explicit alias with original ID
166
+ * vtilt.createAlias('user_12345', 'anonymous_abc123')
167
+ */
168
+ createAlias(alias: string, original?: string): void;
169
+ /**
170
+ * Setup page tracking with history API support
171
+ */
172
+ private setupPageTracking;
173
+ /**
174
+ * Track page hit
175
+ */
176
+ private trackPageHit;
177
+ /**
178
+ * Setup visibility change tracking for prerendered pages
179
+ */
180
+ private setupVisibilityTracking;
181
+ /**
182
+ * Get current configuration
183
+ */
184
+ getConfig(): VTiltConfig;
185
+ /**
186
+ * Get current session ID
187
+ */
188
+ getSessionId(): string | null;
189
+ /**
190
+ * Update configuration
191
+ */
192
+ updateConfig(config: Partial<VTiltConfig>): void;
193
+ /**
194
+ * _execute_array() deals with processing any VTilt function
195
+ * calls that were called before the VTilt library was loaded
196
+ * (and are thus stored in an array so they can be called later)
197
+ *
198
+ * Note: we fire off all the VTilt function calls BEFORE we fire off
199
+ * tracking calls. This is so identify/setUserProperties/updateConfig calls
200
+ * can properly modify early tracking calls.
201
+ *
202
+ * @param {Array} array Array of queued calls in format [methodName, ...args]
203
+ */
204
+ _execute_array(array: any[]): void;
205
+ /**
206
+ * Called when DOM is loaded - processes queued requests
207
+ */
208
+ _dom_loaded(): void;
209
+ }
210
+
211
+ declare const vt: VTilt;
212
+
213
+ export { VTilt, vt as default, vt };
214
+ export type { AliasEvent, EventPayload, GeolocationData, PropertyOperations, SessionData, StorageMethod, StorageMethods, TrackingEvent, UserIdentity, UserProperties, VTiltConfig, WebVitalMetric };