Skip to content

Commit 6507a64

Browse files
committed
fix: catch errors from device id handler
1 parent 77c24be commit 6507a64

1 file changed

Lines changed: 21 additions & 14 deletions

File tree

src/DetourContext.tsx

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -46,21 +46,28 @@ export const DetourProvider = ({ config, children }: Props) => {
4646
return;
4747
}
4848

49-
const deviceId = await prepareDeviceIdForApi(storage);
49+
try {
50+
const deviceId = await prepareDeviceIdForApi(storage);
5051

51-
if (isRetention) {
52-
sendRetentionEvent({ API_KEY, appID, eventName, deviceId });
53-
} else {
54-
const event: DetourEvent = {
55-
eventName: eventName as DetourEventNames,
56-
data,
57-
};
58-
sendEvent({
59-
API_KEY,
60-
appID,
61-
event,
62-
deviceId,
63-
});
52+
if (isRetention) {
53+
sendRetentionEvent({ API_KEY, appID, eventName, deviceId });
54+
} else {
55+
const event: DetourEvent = {
56+
eventName: eventName as DetourEventNames,
57+
data,
58+
};
59+
sendEvent({
60+
API_KEY,
61+
appID,
62+
event,
63+
deviceId,
64+
});
65+
}
66+
} catch (error) {
67+
console.error(
68+
'[Detour:ANALYTICS_ERROR] Analytics disabled due to storage/runtime failure:',
69+
error
70+
);
6471
}
6572
}
6673
);

0 commit comments

Comments
 (0)