@onramp-sdk/web 0.2.3 → 0.2.6

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.
package/dist/index.d.ts CHANGED
@@ -2,6 +2,10 @@ interface InitConfig {
2
2
  apiKey: string;
3
3
  host?: string;
4
4
  appVersion?: string;
5
+ /** Quit-and-return within this window continues the same session. Default 30 min. */
6
+ sessionTimeoutMs?: number;
7
+ /** Anonymous ID is rotated after this many milliseconds. Default 365 days. */
8
+ anonymousIdMaxAgeMs?: number;
5
9
  }
6
10
  export declare const OnRamp: {
7
11
  init(config: InitConfig): void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAyBA,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAgDD,eAAO,MAAM,MAAM;iBACJ,UAAU,GAAG,IAAI;mBAoClB,MAAM,YACN;QACR,wEAAwE;QACxE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAA;KACvD,GACA,IAAI;kBAuBO,IAAI;aAKT,OAAO,CAAC,IAAI,CAAC;IAItB;;;;OAIG;cACO;QAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;4BAI7C,OAAO;CAG7B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4GA,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAUD,eAAO,MAAM,MAAM;iBACJ,UAAU,GAAG,IAAI;mBAyDlB,MAAM,YACN;QACR,wEAAwE;QACxE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAA;KACvD,GACA,IAAI;kBA4BO,IAAI;aAIT,OAAO,CAAC,IAAI,CAAC;IAItB;;;;OAIG;cACO;QAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;4BAI7C,OAAO;CAG7B,CAAA"}
package/dist/index.js CHANGED
@@ -2,7 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OnRamp = void 0;
4
4
  const core_1 = require("@onramp-sdk/core");
5
- const STORAGE_KEY = '@onramp/anonymous_id';
5
+ const ANON_KEY = '@onramp/anonymous_id';
6
+ const SESSION_KEY = '@onramp/session';
7
+ const DEFAULT_SESSION_TIMEOUT_MS = 30 * 60 * 1000; // 30 min
8
+ const DEFAULT_ANON_MAX_AGE_MS = 365 * 24 * 60 * 60 * 1000; // 365 days
6
9
  function uuid() {
7
10
  if (typeof crypto !== 'undefined' && crypto.randomUUID)
8
11
  return crypto.randomUUID();
@@ -11,26 +14,71 @@ function uuid() {
11
14
  return (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);
12
15
  });
13
16
  }
14
- function getOrCreateAnonymousId() {
17
+ function safeGet(key) {
15
18
  try {
16
- const existing = localStorage.getItem(STORAGE_KEY);
17
- if (existing)
18
- return existing;
19
- const id = uuid();
20
- localStorage.setItem(STORAGE_KEY, id);
21
- return id;
19
+ return localStorage.getItem(key);
22
20
  }
23
21
  catch {
24
- // localStorage unavailable (private mode, SSR) - session-scoped id only
25
- return uuid();
22
+ return null;
26
23
  }
27
24
  }
25
+ function safeSet(key, value) {
26
+ try {
27
+ localStorage.setItem(key, value);
28
+ }
29
+ catch { /* private mode / quota */ }
30
+ }
31
+ function getOrCreateAnonymousId(maxAgeMs) {
32
+ const raw = safeGet(ANON_KEY);
33
+ if (raw) {
34
+ try {
35
+ const parsed = JSON.parse(raw);
36
+ if (Date.now() - parsed.createdAt < maxAgeMs)
37
+ return parsed.id;
38
+ // expired — fall through to generate a new one
39
+ }
40
+ catch {
41
+ // legacy plain-string ID — migrate to JSON format, age clock starts now
42
+ const migrated = { id: raw, createdAt: Date.now() };
43
+ safeSet(ANON_KEY, JSON.stringify(migrated));
44
+ return migrated.id;
45
+ }
46
+ }
47
+ const newId = { id: uuid(), createdAt: Date.now() };
48
+ safeSet(ANON_KEY, JSON.stringify(newId));
49
+ return newId.id;
50
+ }
51
+ function loadSession() {
52
+ const raw = safeGet(SESSION_KEY);
53
+ if (!raw)
54
+ return null;
55
+ try {
56
+ return JSON.parse(raw);
57
+ }
58
+ catch {
59
+ return null;
60
+ }
61
+ }
62
+ function persistSession() {
63
+ if (!currentSessionId)
64
+ return;
65
+ safeSet(SESSION_KEY, JSON.stringify({ id: currentSessionId, lastActive, stepCounter }));
66
+ }
67
+ function rotateSession() {
68
+ currentSessionId = uuid();
69
+ stepCounter = 0;
70
+ lastActive = Date.now();
71
+ persistSession();
72
+ }
73
+ function ensureSessionFresh() {
74
+ if (!currentSessionId || Date.now() - lastActive > sessionTimeoutMs)
75
+ rotateSession();
76
+ }
28
77
  function parseUA() {
29
78
  if (typeof navigator === 'undefined')
30
79
  return { osVersion: 'web', browser: '' };
31
80
  const ua = navigator.userAgent;
32
- let os = 'web';
33
- let osVer = '';
81
+ let os = 'web', osVer = '';
34
82
  if (/iPad/.test(ua)) {
35
83
  os = 'ipados';
36
84
  osVer = (ua.match(/OS (\d+[_.]\d+)/) ?? [])[1]?.replace('_', '.') ?? '';
@@ -56,36 +104,53 @@ function parseUA() {
56
104
  os = 'linux';
57
105
  }
58
106
  let browser = '';
59
- if (/Edg\/(\d+)/.test(ua)) {
107
+ if (/Edg\/(\d+)/.test(ua))
60
108
  browser = `Edge ${(ua.match(/Edg\/(\d+)/) ?? [])[1] ?? ''}`;
61
- }
62
- else if (/OPR\/(\d+)/.test(ua)) {
109
+ else if (/OPR\/(\d+)/.test(ua))
63
110
  browser = `Opera ${(ua.match(/OPR\/(\d+)/) ?? [])[1] ?? ''}`;
64
- }
65
- else if (/Firefox\/(\d+)/.test(ua)) {
111
+ else if (/Firefox\/(\d+)/.test(ua))
66
112
  browser = `Firefox ${(ua.match(/Firefox\/(\d+)/) ?? [])[1] ?? ''}`;
67
- }
68
- else if (/Chrome\/(\d+)/.test(ua)) {
113
+ else if (/Chrome\/(\d+)/.test(ua))
69
114
  browser = `Chrome ${(ua.match(/Chrome\/(\d+)/) ?? [])[1] ?? ''}`;
70
- }
71
- else if (/Version\/(\d+).*Safari/.test(ua)) {
115
+ else if (/Version\/(\d+).*Safari/.test(ua))
72
116
  browser = `Safari ${(ua.match(/Version\/(\d+)/) ?? [])[1] ?? ''}`;
73
- }
74
- else if (/Safari\//.test(ua)) {
117
+ else if (/Safari\//.test(ua))
75
118
  browser = 'Safari';
76
- }
77
119
  return { osVersion: osVer ? `${os} ${osVer}` : os, browser };
78
120
  }
121
+ function getDeviceType() {
122
+ if (typeof navigator === 'undefined')
123
+ return 'desktop';
124
+ const ua = navigator.userAgent;
125
+ if (/iPad|Tablet|(Android(?!.*Mobile))/i.test(ua))
126
+ return 'tablet';
127
+ if (/Mobi|Android|iPhone|iPod/i.test(ua))
128
+ return 'phone';
129
+ return 'desktop';
130
+ }
79
131
  let client = null;
80
132
  let currentSessionId = null;
81
133
  let anonymousId = null;
82
134
  let stepCounter = 0;
135
+ let lastActive = 0;
83
136
  let lastHeartbeatTs = 0;
137
+ let sessionTimeoutMs = DEFAULT_SESSION_TIMEOUT_MS;
84
138
  exports.OnRamp = {
85
139
  init(config) {
86
- anonymousId = getOrCreateAnonymousId();
87
- currentSessionId = uuid();
88
- stepCounter = 0;
140
+ if (typeof window === 'undefined')
141
+ return; // SSR guard
142
+ sessionTimeoutMs = config.sessionTimeoutMs ?? DEFAULT_SESSION_TIMEOUT_MS;
143
+ anonymousId = getOrCreateAnonymousId(config.anonymousIdMaxAgeMs ?? DEFAULT_ANON_MAX_AGE_MS);
144
+ // Resume previous session if user returned within the timeout window
145
+ const stored = loadSession();
146
+ if (stored && Date.now() - stored.lastActive < sessionTimeoutMs) {
147
+ currentSessionId = stored.id;
148
+ stepCounter = stored.stepCounter;
149
+ lastActive = stored.lastActive;
150
+ }
151
+ else {
152
+ rotateSession();
153
+ }
89
154
  client = new core_1.OnRampClient({
90
155
  apiKey: config.apiKey,
91
156
  host: config.host,
@@ -93,33 +158,47 @@ exports.OnRamp = {
93
158
  appVersion: config.appVersion ?? null,
94
159
  uuidFn: uuid,
95
160
  });
96
- if (typeof window !== 'undefined') {
97
- function sendHeartbeat() {
98
- if (!client || !currentSessionId || !anonymousId)
99
- return;
100
- const now = Date.now();
101
- if (now - lastHeartbeatTs < 500)
102
- return;
103
- lastHeartbeatTs = now;
104
- client.beacon({ sessionId: currentSessionId, anonymousId });
105
- }
106
- window.addEventListener('pagehide', () => {
161
+ function sendHeartbeat() {
162
+ if (!client || !currentSessionId || !anonymousId)
163
+ return;
164
+ const now = Date.now();
165
+ if (now - lastHeartbeatTs < 500)
166
+ return;
167
+ lastHeartbeatTs = now;
168
+ client.beacon({ sessionId: currentSessionId, anonymousId });
169
+ }
170
+ window.addEventListener('pagehide', () => {
171
+ lastActive = Date.now();
172
+ persistSession();
173
+ sendHeartbeat();
174
+ client?.flush();
175
+ });
176
+ document.addEventListener('visibilitychange', () => {
177
+ if (document.visibilityState === 'hidden') {
178
+ lastActive = Date.now();
179
+ persistSession();
107
180
  sendHeartbeat();
108
181
  client?.flush();
109
- });
110
- document.addEventListener('visibilitychange', () => {
111
- if (document.visibilityState === 'hidden') {
112
- sendHeartbeat();
113
- client?.flush();
114
- }
115
- });
116
- }
182
+ }
183
+ else {
184
+ ensureSessionFresh();
185
+ }
186
+ });
187
+ // Periodic heartbeat so session duration is accurate on long-idle tabs
188
+ setInterval(() => {
189
+ if (document.visibilityState !== 'hidden')
190
+ sendHeartbeat();
191
+ }, 5_000);
117
192
  },
118
193
  step(stepName, options) {
119
194
  if (!client || !currentSessionId || !anonymousId) {
120
195
  console.warn('[OnRamp] call OnRamp.init() before tracking steps');
121
196
  return;
122
197
  }
198
+ ensureSessionFresh();
199
+ const index = stepCounter++;
200
+ lastActive = Date.now();
201
+ persistSession();
123
202
  const { osVersion, browser } = parseUA();
124
203
  const extraProps = {};
125
204
  if (browser)
@@ -128,17 +207,16 @@ exports.OnRamp = {
128
207
  sessionId: currentSessionId,
129
208
  anonymousId,
130
209
  stepName,
131
- stepIndex: stepCounter++,
210
+ stepIndex: index,
132
211
  osVersion,
133
- deviceType: 'desktop',
212
+ deviceType: getDeviceType(),
134
213
  properties: Object.keys(extraProps).length || options?.properties
135
214
  ? { ...extraProps, ...options?.properties }
136
215
  : null,
137
216
  });
138
217
  },
139
218
  newSession() {
140
- currentSessionId = uuid();
141
- stepCounter = 0;
219
+ rotateSession();
142
220
  },
143
221
  flush() {
144
222
  return client?.flush() ?? Promise.resolve();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onramp-sdk/web",
3
- "version": "0.2.3",
3
+ "version": "0.2.6",
4
4
  "description": "OnRamp onboarding funnel analytics for web apps - track steps, see where users drop off.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -29,15 +29,16 @@
29
29
  "types": "./dist/index.d.ts"
30
30
  }
31
31
  },
32
+ "scripts": {
33
+ "build": "tsc",
34
+ "prepublishOnly": "tsc",
35
+ "typecheck": "tsc --noEmit"
36
+ },
32
37
  "dependencies": {
33
- "@onramp-sdk/core": "0.4.2",
34
- "@onramp-sdk/shared": "0.2.2"
38
+ "@onramp-sdk/core": "workspace:*",
39
+ "@onramp-sdk/shared": "workspace:*"
35
40
  },
36
41
  "devDependencies": {
37
42
  "typescript": "^5.5.0"
38
- },
39
- "scripts": {
40
- "build": "tsc",
41
- "typecheck": "tsc --noEmit"
42
43
  }
43
- }
44
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 OnRamp
4
-
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.