@embrace-io/web-sdk
Version:
21 lines (20 loc) • 1.21 kB
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
//#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
exports.addActivityListeners = addActivityListeners;
exports.isTabEngaged = isTabEngaged;
exports.removeActivityListeners = removeActivityListeners;
//# sourceMappingURL=activity.cjs.map