@embrace-io/web-sdk
Version:
18 lines (17 loc) • 1.06 kB
JavaScript
//#region src/managers/EmbraceUserSessionManager/utils/activity.ts
const isTabEngaged = (visibilityDoc) => visibilityDoc.visibilityState === "visible" && visibilityDoc.hasFocus();
const addActivityListeners = ({ target, visibilityDoc, activityEvents, onActivity, onVisibilityChange, onFocus, onBlur }) => {
for (const event of activityEvents) target.addEventListener(event, onActivity);
visibilityDoc.addEventListener?.("visibilitychange", onVisibilityChange);
target.addEventListener("focus", onFocus);
target.addEventListener("blur", onBlur);
};
const removeActivityListeners = ({ target, visibilityDoc, activityEvents, onActivity, onVisibilityChange, onFocus, onBlur }) => {
for (const event of activityEvents) target.removeEventListener(event, onActivity);
visibilityDoc.removeEventListener?.("visibilitychange", onVisibilityChange);
target.removeEventListener("focus", onFocus);
target.removeEventListener("blur", onBlur);
};
//#endregion
export { addActivityListeners, isTabEngaged, removeActivityListeners };
//# sourceMappingURL=activity.js.map