UNPKG

detect-tab

Version:

A comprehensive tab detection and management library for web applications

44 lines (37 loc) 1.19 kB
// Main exports export { DetectTab } from './DetectTab'; // Type exports export { TabState, TabEvent, DetectTabOptions, TabInfo, TabEventCallback, TabStateChangeCallback, TabFocusCallback } from './types'; // Utility exports export { isVisibilityAPISupported, isBrowserSupported, getVisibilityProperties, debounce, now, formatDuration, safeJSONParse, isStorageAvailable } from './utils'; import { DetectTab } from './DetectTab'; import { TabState, TabInfo } from './types'; // Create a default instance for simple usage const defaultInstance = typeof window !== 'undefined' ? new DetectTab() : null; /** * Simple functions using the default instance */ export const isVisible = (): boolean => defaultInstance?.isVisible() ?? false; export const isFocused = (): boolean => defaultInstance?.isFocused() ?? false; export const getState = (): TabState => defaultInstance?.getState() ?? TabState.VISIBLE; export const getTabInfo = (): TabInfo | null => defaultInstance?.getTabInfo() ?? null; export const getTimeStats = () => defaultInstance?.getTimeStats() ?? null; // Default export export default DetectTab;