@scaleway/use-analytics
Version:
A small hook to handle events analytics
27 lines (26 loc) • 1.01 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const SEGMENT_COOKIES_KEY = {
ANONYMOUS_ID: "ajs_anonymous_id",
USER_ID: "ajs_user_id",
GROUP_ID: "ajs_group_id"
};
const userMigrationsTraits = (rudderAnalytics) => {
const segmentAnonymousId = localStorage.getItem(
SEGMENT_COOKIES_KEY.ANONYMOUS_ID
);
const segmentUserId = localStorage.getItem(SEGMENT_COOKIES_KEY.USER_ID);
const segmentGroupId = localStorage.getItem(SEGMENT_COOKIES_KEY.GROUP_ID);
const rudderUserId = rudderAnalytics.getUserId();
const rudderGroupId = rudderAnalytics.getGroupId();
if (segmentAnonymousId) {
rudderAnalytics.setAnonymousId(segmentAnonymousId);
}
if (segmentUserId && (!rudderUserId || rudderUserId !== segmentUserId)) {
rudderAnalytics.identify(segmentUserId);
}
if (segmentGroupId && (!rudderGroupId || rudderGroupId !== segmentGroupId)) {
rudderAnalytics.group(segmentGroupId);
}
};
exports.userMigrationsTraits = userMigrationsTraits;