tool-shack 1.0.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +97 -93
- package/dist/cjs/browser/getCookie.d.ts.map +1 -1
- package/dist/cjs/browser/getCookie.js +12 -2
- package/dist/cjs/browser/getCookie.js.map +1 -1
- package/dist/cjs/browser/getQueryParams.d.ts +1 -1
- package/dist/cjs/browser/getQueryParams.d.ts.map +1 -1
- package/dist/cjs/browser/getQueryParams.js +10 -15
- package/dist/cjs/browser/getQueryParams.js.map +1 -1
- package/dist/cjs/browser/index.d.ts +2 -0
- package/dist/cjs/browser/index.d.ts.map +1 -1
- package/dist/cjs/browser/index.js +33 -18
- package/dist/cjs/browser/index.js.map +1 -1
- package/dist/cjs/browser/interfaces/index.js +17 -4
- package/dist/cjs/browser/interfaces/index.js.map +1 -1
- package/dist/cjs/browser/isPageVisible.d.ts +10 -0
- package/dist/cjs/browser/isPageVisible.d.ts.map +1 -0
- package/dist/cjs/browser/isPageVisible.js +14 -0
- package/dist/cjs/browser/isPageVisible.js.map +1 -0
- package/dist/cjs/browser/isPushNotificationSupported.d.ts +5 -2
- package/dist/cjs/browser/isPushNotificationSupported.d.ts.map +1 -1
- package/dist/cjs/browser/isPushNotificationSupported.js +6 -3
- package/dist/cjs/browser/isPushNotificationSupported.js.map +1 -1
- package/dist/cjs/browser/isTabFocused.d.ts +2 -3
- package/dist/cjs/browser/isTabFocused.d.ts.map +1 -1
- package/dist/cjs/browser/isTabFocused.js +4 -5
- package/dist/cjs/browser/isTabFocused.js.map +1 -1
- package/dist/cjs/browser/pageVisibilityListener.d.ts +12 -0
- package/dist/cjs/browser/pageVisibilityListener.d.ts.map +1 -0
- package/dist/cjs/browser/pageVisibilityListener.js +30 -0
- package/dist/cjs/browser/pageVisibilityListener.js.map +1 -0
- package/dist/cjs/browser/preferColorScheme.d.ts +4 -2
- package/dist/cjs/browser/preferColorScheme.d.ts.map +1 -1
- package/dist/cjs/browser/preferColorScheme.js +4 -2
- package/dist/cjs/browser/preferColorScheme.js.map +1 -1
- package/dist/cjs/browser/tabFocusListener.d.ts +3 -6
- package/dist/cjs/browser/tabFocusListener.d.ts.map +1 -1
- package/dist/cjs/browser/tabFocusListener.js +4 -17
- package/dist/cjs/browser/tabFocusListener.js.map +1 -1
- package/dist/cjs/dateTime/dateAsIso.d.ts +5 -3
- package/dist/cjs/dateTime/dateAsIso.d.ts.map +1 -1
- package/dist/cjs/dateTime/dateAsIso.js +5 -3
- package/dist/cjs/dateTime/dateAsIso.js.map +1 -1
- package/dist/cjs/dateTime/index.js +19 -6
- package/dist/cjs/dateTime/index.js.map +1 -1
- package/dist/cjs/dateTime/interfaces/index.js +15 -2
- package/dist/cjs/dateTime/interfaces/index.js.map +1 -1
- package/dist/cjs/dom/addAsyncEventListener.d.ts +2 -2
- package/dist/cjs/dom/addAsyncEventListener.d.ts.map +1 -1
- package/dist/cjs/dom/addAsyncEventListener.js +25 -13
- package/dist/cjs/dom/addAsyncEventListener.js.map +1 -1
- package/dist/cjs/dom/addClickOutsideListener.d.ts +2 -2
- package/dist/cjs/dom/addClickOutsideListener.d.ts.map +1 -1
- package/dist/cjs/dom/addClickOutsideListener.js +8 -4
- package/dist/cjs/dom/addClickOutsideListener.js.map +1 -1
- package/dist/cjs/dom/addEventListener.d.ts +5 -3
- package/dist/cjs/dom/addEventListener.d.ts.map +1 -1
- package/dist/cjs/dom/addEventListener.js +5 -3
- package/dist/cjs/dom/addEventListener.js.map +1 -1
- package/dist/cjs/dom/copyToClipboard.d.ts.map +1 -1
- package/dist/cjs/dom/copyToClipboard.js +8 -5
- package/dist/cjs/dom/copyToClipboard.js.map +1 -1
- package/dist/cjs/dom/createElement.d.ts +6 -4
- package/dist/cjs/dom/createElement.d.ts.map +1 -1
- package/dist/cjs/dom/createElement.js +5 -6
- package/dist/cjs/dom/createElement.js.map +1 -1
- package/dist/cjs/dom/fireEvent.d.ts +4 -4
- package/dist/cjs/dom/fireEvent.js +4 -4
- package/dist/cjs/dom/index.d.ts +1 -0
- package/dist/cjs/dom/index.d.ts.map +1 -1
- package/dist/cjs/dom/index.js +29 -15
- package/dist/cjs/dom/index.js.map +1 -1
- package/dist/cjs/dom/interfaces/createElement.d.ts +1 -1
- package/dist/cjs/dom/interfaces/index.js +16 -3
- package/dist/cjs/dom/interfaces/index.js.map +1 -1
- package/dist/cjs/dom/toggleFullscreenWithFallback.d.ts.map +1 -1
- package/dist/cjs/dom/toggleFullscreenWithFallback.js +45 -34
- package/dist/cjs/dom/toggleFullscreenWithFallback.js.map +1 -1
- package/dist/cjs/dom/types/createElement.d.ts +12 -0
- package/dist/cjs/dom/types/createElement.d.ts.map +1 -0
- package/dist/cjs/dom/types/createElement.js +3 -0
- package/dist/cjs/dom/types/createElement.js.map +1 -0
- package/dist/cjs/dom/types/index.d.ts +3 -0
- package/dist/cjs/dom/types/index.d.ts.map +1 -0
- package/dist/cjs/dom/types/index.js +19 -0
- package/dist/cjs/dom/types/index.js.map +1 -0
- package/dist/cjs/dom/types/toggleFullscreenWithFallback.d.ts +15 -0
- package/dist/cjs/dom/types/toggleFullscreenWithFallback.d.ts.map +1 -0
- package/dist/cjs/dom/types/toggleFullscreenWithFallback.js +3 -0
- package/dist/cjs/dom/types/toggleFullscreenWithFallback.js.map +1 -0
- package/dist/cjs/general/chunk.d.ts +1 -1
- package/dist/cjs/general/chunk.js +1 -1
- package/dist/cjs/general/groupBy.js +1 -1
- package/dist/cjs/general/groupBy.js.map +1 -1
- package/dist/cjs/general/index.js +23 -10
- package/dist/cjs/general/index.js.map +1 -1
- package/dist/cjs/general/isEmpty.d.ts.map +1 -1
- package/dist/cjs/general/isEmpty.js +3 -0
- package/dist/cjs/general/isEmpty.js.map +1 -1
- package/dist/cjs/general/isEqual.d.ts +4 -2
- package/dist/cjs/general/isEqual.d.ts.map +1 -1
- package/dist/cjs/general/isEqual.js +4 -2
- package/dist/cjs/general/isEqual.js.map +1 -1
- package/dist/cjs/index.js +21 -8
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/schedule/debounce.d.ts +2 -2
- package/dist/cjs/schedule/debounce.d.ts.map +1 -1
- package/dist/cjs/schedule/debounce.js +1 -1
- package/dist/cjs/schedule/index.js +21 -8
- package/dist/cjs/schedule/index.js.map +1 -1
- package/dist/cjs/schedule/interfaces/debounce.d.ts +1 -1
- package/dist/cjs/schedule/interfaces/debounce.d.ts.map +1 -1
- package/dist/cjs/schedule/interfaces/index.js +18 -5
- package/dist/cjs/schedule/interfaces/index.js.map +1 -1
- package/dist/cjs/schedule/interfaces/throttle.d.ts +1 -1
- package/dist/cjs/schedule/interfaces/throttle.d.ts.map +1 -1
- package/dist/cjs/schedule/runAsync.d.ts +5 -3
- package/dist/cjs/schedule/runAsync.d.ts.map +1 -1
- package/dist/cjs/schedule/runAsync.js +5 -3
- package/dist/cjs/schedule/runAsync.js.map +1 -1
- package/dist/cjs/schedule/throttle.d.ts +2 -2
- package/dist/cjs/schedule/throttle.d.ts.map +1 -1
- package/dist/cjs/schedule/throttle.js +1 -1
- package/dist/cjs/storage/index.js +23 -10
- package/dist/cjs/storage/index.js.map +1 -1
- package/dist/cjs/storage/interfaces/index.js +15 -2
- package/dist/cjs/storage/interfaces/index.js.map +1 -1
- package/dist/cjs/storage/setLocalStorage.d.ts +1 -1
- package/dist/cjs/storage/setLocalStorage.d.ts.map +1 -1
- package/dist/cjs/storage/setLocalStorage.js +4 -1
- package/dist/cjs/storage/setLocalStorage.js.map +1 -1
- package/dist/cjs/storage/setSessionStorage.d.ts +1 -1
- package/dist/cjs/storage/setSessionStorage.d.ts.map +1 -1
- package/dist/cjs/storage/setSessionStorage.js +4 -1
- package/dist/cjs/storage/setSessionStorage.js.map +1 -1
- package/dist/cjs/string/escapeHTML.d.ts +5 -3
- package/dist/cjs/string/escapeHTML.d.ts.map +1 -1
- package/dist/cjs/string/escapeHTML.js +11 -8
- package/dist/cjs/string/escapeHTML.js.map +1 -1
- package/dist/cjs/string/index.js +32 -19
- package/dist/cjs/string/index.js.map +1 -1
- package/dist/cjs/string/interfaces/index.js +15 -2
- package/dist/cjs/string/interfaces/index.js.map +1 -1
- package/dist/cjs/string/slugify.js +2 -2
- package/dist/cjs/string/slugify.js.map +1 -1
- package/dist/esm/browser/getCookie.d.ts.map +1 -1
- package/dist/esm/browser/getCookie.js +12 -2
- package/dist/esm/browser/getCookie.js.map +1 -1
- package/dist/esm/browser/getQueryParams.d.ts +1 -1
- package/dist/esm/browser/getQueryParams.d.ts.map +1 -1
- package/dist/esm/browser/getQueryParams.js +10 -15
- package/dist/esm/browser/getQueryParams.js.map +1 -1
- package/dist/esm/browser/index.d.ts +2 -0
- package/dist/esm/browser/index.d.ts.map +1 -1
- package/dist/esm/browser/index.js +2 -0
- package/dist/esm/browser/index.js.map +1 -1
- package/dist/esm/browser/isPageVisible.d.ts +10 -0
- package/dist/esm/browser/isPageVisible.d.ts.map +1 -0
- package/dist/esm/browser/isPageVisible.js +10 -0
- package/dist/esm/browser/isPageVisible.js.map +1 -0
- package/dist/esm/browser/isPushNotificationSupported.d.ts +5 -2
- package/dist/esm/browser/isPushNotificationSupported.d.ts.map +1 -1
- package/dist/esm/browser/isPushNotificationSupported.js +6 -3
- package/dist/esm/browser/isPushNotificationSupported.js.map +1 -1
- package/dist/esm/browser/isTabFocused.d.ts +2 -3
- package/dist/esm/browser/isTabFocused.d.ts.map +1 -1
- package/dist/esm/browser/isTabFocused.js +4 -4
- package/dist/esm/browser/isTabFocused.js.map +1 -1
- package/dist/esm/browser/pageVisibilityListener.d.ts +12 -0
- package/dist/esm/browser/pageVisibilityListener.d.ts.map +1 -0
- package/dist/esm/browser/pageVisibilityListener.js +26 -0
- package/dist/esm/browser/pageVisibilityListener.js.map +1 -0
- package/dist/esm/browser/preferColorScheme.d.ts +4 -2
- package/dist/esm/browser/preferColorScheme.d.ts.map +1 -1
- package/dist/esm/browser/preferColorScheme.js +4 -2
- package/dist/esm/browser/preferColorScheme.js.map +1 -1
- package/dist/esm/browser/tabFocusListener.d.ts +3 -6
- package/dist/esm/browser/tabFocusListener.d.ts.map +1 -1
- package/dist/esm/browser/tabFocusListener.js +4 -16
- package/dist/esm/browser/tabFocusListener.js.map +1 -1
- package/dist/esm/dateTime/dateAsIso.d.ts +5 -3
- package/dist/esm/dateTime/dateAsIso.d.ts.map +1 -1
- package/dist/esm/dateTime/dateAsIso.js +5 -3
- package/dist/esm/dateTime/dateAsIso.js.map +1 -1
- package/dist/esm/dom/addAsyncEventListener.d.ts +2 -2
- package/dist/esm/dom/addAsyncEventListener.d.ts.map +1 -1
- package/dist/esm/dom/addAsyncEventListener.js +25 -13
- package/dist/esm/dom/addAsyncEventListener.js.map +1 -1
- package/dist/esm/dom/addClickOutsideListener.d.ts +2 -2
- package/dist/esm/dom/addClickOutsideListener.d.ts.map +1 -1
- package/dist/esm/dom/addClickOutsideListener.js +8 -4
- package/dist/esm/dom/addClickOutsideListener.js.map +1 -1
- package/dist/esm/dom/addEventListener.d.ts +5 -3
- package/dist/esm/dom/addEventListener.d.ts.map +1 -1
- package/dist/esm/dom/addEventListener.js +5 -3
- package/dist/esm/dom/addEventListener.js.map +1 -1
- package/dist/esm/dom/copyToClipboard.d.ts.map +1 -1
- package/dist/esm/dom/copyToClipboard.js +8 -5
- package/dist/esm/dom/copyToClipboard.js.map +1 -1
- package/dist/esm/dom/createElement.d.ts +6 -4
- package/dist/esm/dom/createElement.d.ts.map +1 -1
- package/dist/esm/dom/createElement.js +4 -4
- package/dist/esm/dom/createElement.js.map +1 -1
- package/dist/esm/dom/fireEvent.d.ts +4 -4
- package/dist/esm/dom/fireEvent.js +4 -4
- package/dist/esm/dom/index.d.ts +1 -0
- package/dist/esm/dom/index.d.ts.map +1 -1
- package/dist/esm/dom/index.js +1 -0
- package/dist/esm/dom/index.js.map +1 -1
- package/dist/esm/dom/interfaces/createElement.d.ts +1 -1
- package/dist/esm/dom/toggleFullscreenWithFallback.d.ts.map +1 -1
- package/dist/esm/dom/toggleFullscreenWithFallback.js +45 -34
- package/dist/esm/dom/toggleFullscreenWithFallback.js.map +1 -1
- package/dist/esm/dom/types/createElement.d.ts +12 -0
- package/dist/esm/dom/types/createElement.d.ts.map +1 -0
- package/dist/esm/dom/types/createElement.js +2 -0
- package/dist/esm/dom/types/createElement.js.map +1 -0
- package/dist/esm/dom/types/index.d.ts +3 -0
- package/dist/esm/dom/types/index.d.ts.map +1 -0
- package/dist/esm/dom/types/index.js +3 -0
- package/dist/esm/dom/types/index.js.map +1 -0
- package/dist/esm/dom/types/toggleFullscreenWithFallback.d.ts +15 -0
- package/dist/esm/dom/types/toggleFullscreenWithFallback.d.ts.map +1 -0
- package/dist/esm/dom/types/toggleFullscreenWithFallback.js +2 -0
- package/dist/esm/dom/types/toggleFullscreenWithFallback.js.map +1 -0
- package/dist/esm/general/chunk.d.ts +1 -1
- package/dist/esm/general/chunk.js +1 -1
- package/dist/esm/general/groupBy.js +1 -1
- package/dist/esm/general/groupBy.js.map +1 -1
- package/dist/esm/general/isEmpty.d.ts.map +1 -1
- package/dist/esm/general/isEmpty.js +3 -0
- package/dist/esm/general/isEmpty.js.map +1 -1
- package/dist/esm/general/isEqual.d.ts +4 -2
- package/dist/esm/general/isEqual.d.ts.map +1 -1
- package/dist/esm/general/isEqual.js +4 -2
- package/dist/esm/general/isEqual.js.map +1 -1
- package/dist/esm/schedule/debounce.d.ts +2 -2
- package/dist/esm/schedule/debounce.d.ts.map +1 -1
- package/dist/esm/schedule/debounce.js +1 -1
- package/dist/esm/schedule/interfaces/debounce.d.ts +1 -1
- package/dist/esm/schedule/interfaces/debounce.d.ts.map +1 -1
- package/dist/esm/schedule/interfaces/throttle.d.ts +1 -1
- package/dist/esm/schedule/interfaces/throttle.d.ts.map +1 -1
- package/dist/esm/schedule/runAsync.d.ts +5 -3
- package/dist/esm/schedule/runAsync.d.ts.map +1 -1
- package/dist/esm/schedule/runAsync.js +5 -3
- package/dist/esm/schedule/runAsync.js.map +1 -1
- package/dist/esm/schedule/throttle.d.ts +2 -2
- package/dist/esm/schedule/throttle.d.ts.map +1 -1
- package/dist/esm/schedule/throttle.js +1 -1
- package/dist/esm/storage/setLocalStorage.d.ts +1 -1
- package/dist/esm/storage/setLocalStorage.d.ts.map +1 -1
- package/dist/esm/storage/setLocalStorage.js +4 -1
- package/dist/esm/storage/setLocalStorage.js.map +1 -1
- package/dist/esm/storage/setSessionStorage.d.ts +1 -1
- package/dist/esm/storage/setSessionStorage.d.ts.map +1 -1
- package/dist/esm/storage/setSessionStorage.js +4 -1
- package/dist/esm/storage/setSessionStorage.js.map +1 -1
- package/dist/esm/string/escapeHTML.d.ts +5 -3
- package/dist/esm/string/escapeHTML.d.ts.map +1 -1
- package/dist/esm/string/escapeHTML.js +11 -8
- package/dist/esm/string/escapeHTML.js.map +1 -1
- package/dist/esm/string/slugify.js +2 -2
- package/dist/esm/string/slugify.js.map +1 -1
- package/package.json +10 -9
package/README.md
CHANGED
|
@@ -71,65 +71,69 @@ console.log(isValidJson('{"valid": true}')); // true
|
|
|
71
71
|
|
|
72
72
|
### 🌐 Browser (`browser`)
|
|
73
73
|
|
|
74
|
-
Utilities for feature detection, device capabilities, cookies, downloads, URL parameters, and
|
|
75
|
-
|
|
76
|
-
| Function
|
|
77
|
-
|
|
|
78
|
-
| `detectOS()`
|
|
79
|
-
| `isTouchSupported()`
|
|
80
|
-
| `isPushNotificationSupported()`
|
|
81
|
-
| `isScrollBehaviorSupported()`
|
|
82
|
-
| `isShareSupported()`
|
|
83
|
-
| `
|
|
84
|
-
| `
|
|
85
|
-
| `
|
|
86
|
-
| `
|
|
87
|
-
| `
|
|
88
|
-
| `
|
|
89
|
-
| `
|
|
90
|
-
| `
|
|
91
|
-
| `
|
|
92
|
-
| `
|
|
93
|
-
| `
|
|
74
|
+
Utilities for feature detection, device capabilities, cookies, downloads, URL parameters, and page visibility.
|
|
75
|
+
|
|
76
|
+
| Function | Description |
|
|
77
|
+
| -------------------------------------------------- | ----------------------------------------------------------------------------------- |
|
|
78
|
+
| `detectOS()` | Detects user operating system (`'ios'`, `'android'`, `'macos'`, etc.) |
|
|
79
|
+
| `isTouchSupported()` | Checks if the current device/browser supports touch events |
|
|
80
|
+
| `isPushNotificationSupported()` | Checks Web Push support (Notification, Service Worker, and PushManager) |
|
|
81
|
+
| `isScrollBehaviorSupported()` | Checks if native smooth scroll behavior is supported |
|
|
82
|
+
| `isShareSupported()` | Checks if the Web Share API (`navigator.share`) is supported |
|
|
83
|
+
| `isPageVisible()` | Checks whether the page is currently visible (`!document.hidden`) |
|
|
84
|
+
| `pageVisibilityListener(onVisible, onHidden)` | Subscribes to Page Visibility changes with a cleanup handle |
|
|
85
|
+
| `isTabFocused()` | Deprecated alias of `isPageVisible` |
|
|
86
|
+
| `tabFocusListener(onVisible, onHidden)` | Deprecated alias of `pageVisibilityListener` |
|
|
87
|
+
| `preferColorScheme()` | Returns `'light'` if that media query matches, otherwise `'dark'` |
|
|
88
|
+
| `preferLightColorScheme()` | Whether `(prefers-color-scheme: light)` matches |
|
|
89
|
+
| `preferDarkColorScheme()` | Whether `(prefers-color-scheme: dark)` matches |
|
|
90
|
+
| `scrollToElement(element, offset?, smoothScroll?)` | Scrolls the window to the element (offset default `0`, smoothScroll default `true`) |
|
|
91
|
+
| `scrollToPosition(x, y, smoothScroll?, target?)` | Scrolls window or a given element to `x`/`y` (smoothScroll default `true`) |
|
|
92
|
+
| `downloadFile(data, filename, mimeType?)` | Programmatically triggers file download in the browser |
|
|
93
|
+
| `getQueryParams(url?)` | Extracts URL search query parameters into a key-value object |
|
|
94
|
+
| `networkStatusListener(onOnline, onOffline)` | Subscribes to browser online/offline events with cleanup handle |
|
|
95
|
+
| `getCookie(name)` | Retrieves and decodes a cookie value by name |
|
|
96
|
+
| `setCookie(name, value, options?)` | Sets a browser cookie with days, path, domain, secure, and sameSite |
|
|
97
|
+
| `deleteCookie(name, options?)` | Deletes a browser cookie by name |
|
|
94
98
|
|
|
95
99
|
---
|
|
96
100
|
|
|
97
101
|
### 💾 Storage (`storage`)
|
|
98
102
|
|
|
99
|
-
Type-safe `localStorage` and `sessionStorage` helpers with
|
|
103
|
+
Type-safe `localStorage` and `sessionStorage` helpers with JSON serialization, optional Base64 encoding, and exception safety.
|
|
100
104
|
|
|
101
|
-
| Function
|
|
102
|
-
|
|
|
103
|
-
| `getLocalStorage(key, fallback?)` |
|
|
104
|
-
| `setLocalStorage(key, value)` |
|
|
105
|
-
| `removeLocalStorage(key)`
|
|
106
|
-
| `clearLocalStorage()`
|
|
107
|
-
| `getSessionStorage(key, fallback?)` |
|
|
108
|
-
| `setSessionStorage(key, value)` |
|
|
109
|
-
| `removeSessionStorage(key)`
|
|
110
|
-
| `clearSessionStorage()`
|
|
105
|
+
| Function | Description |
|
|
106
|
+
| --------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
|
107
|
+
| `getLocalStorage(key, fallback?, options?)` | JSON-parses localStorage; optional `{ encode: true }` Base64 decode; fallback default `null` |
|
|
108
|
+
| `setLocalStorage(key, value, options?)` | JSON-serializes to localStorage; optional Base64; returns `false` if the value is not serializable |
|
|
109
|
+
| `removeLocalStorage(key)` | Removes item from localStorage |
|
|
110
|
+
| `clearLocalStorage()` | Clears all items from localStorage |
|
|
111
|
+
| `getSessionStorage(key, fallback?, options?)` | JSON-parses sessionStorage; optional `{ encode: true }` Base64 decode; fallback default `null` |
|
|
112
|
+
| `setSessionStorage(key, value, options?)` | JSON-serializes to sessionStorage; optional Base64; returns `false` if the value is not serializable |
|
|
113
|
+
| `removeSessionStorage(key)` | Removes item from sessionStorage |
|
|
114
|
+
| `clearSessionStorage()` | Clears all items from sessionStorage |
|
|
111
115
|
|
|
112
116
|
---
|
|
113
117
|
|
|
114
118
|
### 🧱 DOM (`dom`)
|
|
115
119
|
|
|
116
|
-
Simplified element creation, async/outside event handling, clipboard operations, viewport detection,
|
|
117
|
-
|
|
118
|
-
| Function
|
|
119
|
-
|
|
|
120
|
-
| `createElement(tagName, props)`
|
|
121
|
-
| `addEventListener(
|
|
122
|
-
| `addAsyncEventListener(
|
|
123
|
-
| `addClickOutsideListener(element, callback)`
|
|
124
|
-
| `appendBefore(
|
|
125
|
-
| `appendAfter(
|
|
126
|
-
| `copyToClipboard(text)`
|
|
127
|
-
| `fireEvent(element,
|
|
128
|
-
| `getElementOffset(element)`
|
|
129
|
-
| `isInViewport(element, offset?)`
|
|
130
|
-
| `toggleFullscreen(element?)`
|
|
131
|
-
| `toggleFullscreenWithFallback(element?, options?)`
|
|
132
|
-
| `waitForElement(selector, timeout?, parent?)`
|
|
120
|
+
Simplified element creation, async/outside event handling, clipboard operations, viewport detection, and fullscreen.
|
|
121
|
+
|
|
122
|
+
| Function | Description |
|
|
123
|
+
| ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
|
|
124
|
+
| `createElement(tagName, props?)` | Creates a DOM element with attributes, styles, dataset, ARIA, listeners, and children; known tags infer their element type |
|
|
125
|
+
| `addEventListener(element, listeners)` | Attaches a map of event-name handlers to one element or a list of elements (no cleanup) |
|
|
126
|
+
| `addAsyncEventListener(selector, listeners, acceptBubbling?)` | Attaches delegated document listeners for matching elements, with cleanup |
|
|
127
|
+
| `addClickOutsideListener(element, callback)` | Triggers a callback when clicking outside a specified element, with cleanup |
|
|
128
|
+
| `appendBefore(newNode, referenceNode)` | Inserts `newNode` immediately before `referenceNode` |
|
|
129
|
+
| `appendAfter(newNode, referenceNode)` | Inserts `newNode` immediately after `referenceNode` |
|
|
130
|
+
| `copyToClipboard(text)` | Copies text via Clipboard API with textarea fallback; returns `Promise<boolean>` |
|
|
131
|
+
| `fireEvent(element, eventType)` | Dispatches a native `Event` (no `detail` payload) |
|
|
132
|
+
| `getElementOffset(element)` | Returns document-relative `{ top, left }` |
|
|
133
|
+
| `isInViewport(element, offset?)` | Checks if an element is currently within the visible viewport |
|
|
134
|
+
| `toggleFullscreen(element?)` | Toggles native fullscreen mode for an element or document root |
|
|
135
|
+
| `toggleFullscreenWithFallback(element?, options?)` | Toggles fullscreen with CSS pseudo-fullscreen fallback for iOS Safari and unsupported browsers |
|
|
136
|
+
| `waitForElement(selector, timeout?, parent?)` | Waits for an element to appear in the DOM using `MutationObserver` |
|
|
133
137
|
|
|
134
138
|
---
|
|
135
139
|
|
|
@@ -137,25 +141,25 @@ Simplified element creation, async/outside event handling, clipboard operations,
|
|
|
137
141
|
|
|
138
142
|
Case conversions, string transformations, formatting, escaping, masking, and random string generators.
|
|
139
143
|
|
|
140
|
-
| Function | Description
|
|
141
|
-
| --------------------------------------- |
|
|
142
|
-
| `camelCase(value)` | Converts string to `camelCase`
|
|
143
|
-
| `capitalize(value)` | Capitalizes the first character of a string
|
|
144
|
-
| `decodeBase64(value)` | Safely decodes a Base64 string to a Unicode string
|
|
145
|
-
| `encodeBase64(value)` | Safely encodes a Unicode string to a Base64 string
|
|
146
|
-
| `kebabCase(value)` | Converts string to `kebab-case`
|
|
147
|
-
| `pascalCase(value)` | Converts string to `PascalCase`
|
|
148
|
-
| `snakeCase(value)` | Converts string to `snake_case`
|
|
149
|
-
| `slugify(value, separator?)` | Converts text into URL-safe slug with diacritics removal (default `-`)
|
|
150
|
-
| `removeDiacritics(value)` | Strips accent marks and diacritics from text
|
|
151
|
-
| `truncate(value,
|
|
152
|
-
| `mask(value, options?)` | Masks sensitive string characters (e.g. for card numbers or tokens)
|
|
153
|
-
| `formatBytes(bytes, decimals?)` | Formats byte number into readable string (`'1.5 MB'`, `'2 KB'`)
|
|
154
|
-
| `escapeHTML(value)` |
|
|
155
|
-
| `unescapeHTML(value)` | Unescapes HTML entities back to plain text
|
|
156
|
-
| `byteSize(value)` | Calculates the byte length of a string in UTF-8
|
|
157
|
-
| `randomString(length?, charset?)` | Generates random string using `Math.random`
|
|
158
|
-
| `randomCryptoString(length?, charset?)` | Generates cryptographically secure random string using Web Crypto API
|
|
144
|
+
| Function | Description |
|
|
145
|
+
| --------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
|
|
146
|
+
| `camelCase(value)` | Converts string to `camelCase` |
|
|
147
|
+
| `capitalize(value)` | Capitalizes the first character of a string |
|
|
148
|
+
| `decodeBase64(value)` | Safely decodes a Base64 string to a Unicode string |
|
|
149
|
+
| `encodeBase64(value)` | Safely encodes a Unicode string to a Base64 string |
|
|
150
|
+
| `kebabCase(value)` | Converts string to `kebab-case` |
|
|
151
|
+
| `pascalCase(value)` | Converts string to `PascalCase` |
|
|
152
|
+
| `snakeCase(value)` | Converts string to `snake_case` |
|
|
153
|
+
| `slugify(value, separator?)` | Converts text into URL-safe slug with diacritics removal (default `-`) |
|
|
154
|
+
| `removeDiacritics(value)` | Strips accent marks and diacritics from text |
|
|
155
|
+
| `truncate(value, maxLength, suffix?)` | Truncates a string to a given length and appends a suffix (default `...`) |
|
|
156
|
+
| `mask(value, options?)` | Masks sensitive string characters (e.g. for card numbers or tokens) |
|
|
157
|
+
| `formatBytes(bytes, decimals?)` | Formats byte number into readable string (`'1.5 MB'`, `'2 KB'`) |
|
|
158
|
+
| `escapeHTML(value)` | Encodes `&`, `<`, `>`, `"`, and `'` as HTML entities for ordinary text or quoted attributes; not a sanitizer |
|
|
159
|
+
| `unescapeHTML(value)` | Unescapes HTML entities back to plain text |
|
|
160
|
+
| `byteSize(value)` | Calculates the byte length of a string in UTF-8 |
|
|
161
|
+
| `randomString(length?, charset?)` | Generates random string using `Math.random` |
|
|
162
|
+
| `randomCryptoString(length?, charset?)` | Generates cryptographically secure random string using Web Crypto API |
|
|
159
163
|
|
|
160
164
|
---
|
|
161
165
|
|
|
@@ -163,30 +167,30 @@ Case conversions, string transformations, formatting, escaping, masking, and ran
|
|
|
163
167
|
|
|
164
168
|
Date formatting, duration parsing, relative time, and calendar day comparison.
|
|
165
169
|
|
|
166
|
-
| Function | Description
|
|
167
|
-
| ----------------------------- |
|
|
168
|
-
| `parseDuration(durationInMs)` | Breaks down milliseconds into `{ days, hours, minutes, seconds, milliseconds }`
|
|
169
|
-
| `dateAsIso(date
|
|
170
|
-
| `timeAgo(date, locale?)` | Formats a date into a human-readable relative string (`'5 minutes ago'`)
|
|
171
|
-
| `isSameDay(date1, date2)` | Checks if two
|
|
170
|
+
| Function | Description |
|
|
171
|
+
| ----------------------------- | ------------------------------------------------------------------------------------ |
|
|
172
|
+
| `parseDuration(durationInMs)` | Breaks down milliseconds into `{ days, hours, minutes, seconds, milliseconds }` |
|
|
173
|
+
| `dateAsIso(date)` | Formats a Date as local `YYYY-MM-DDTHH:mm:ss±HH:mm` (required Date; no milliseconds) |
|
|
174
|
+
| `timeAgo(date, locale?)` | Formats a date into a human-readable relative string (`'5 minutes ago'`) |
|
|
175
|
+
| `isSameDay(date1, date2)` | Checks if two Date, timestamp, or date-string values fall on the same calendar day |
|
|
172
176
|
|
|
173
177
|
---
|
|
174
178
|
|
|
175
179
|
### ⚙️ General (`general`)
|
|
176
180
|
|
|
177
|
-
Array deduplication, picking, grouping & chunking,
|
|
181
|
+
Array deduplication, picking, grouping & chunking, value comparison, number clamping, value safety checks, and JSON validation.
|
|
178
182
|
|
|
179
|
-
| Function | Description
|
|
180
|
-
| ------------------------ |
|
|
181
|
-
| `pick(object, keys)` | Creates object composed of picked object properties
|
|
182
|
-
| `unique(array, keyFn?)` | Deduplicates array items by reference or key callback
|
|
183
|
-
| `isEqual(a, b)` |
|
|
184
|
-
| `clamp(value, min, max)` | Constrains a number between min and max boundaries
|
|
185
|
-
| `groupBy(array, keyFn)` | Groups array elements into an object by key
|
|
186
|
-
| `chunk(array, size?)` | Splits array into chunks of specified size
|
|
187
|
-
| `isEmpty(value)` | Checks if a string, array, map, set, or object is empty
|
|
188
|
-
| `isNil(value)` | Checks if a value is `null` or `undefined`
|
|
189
|
-
| `isValidJson(value)` | Validates whether a given string is valid JSON
|
|
183
|
+
| Function | Description |
|
|
184
|
+
| ------------------------ | --------------------------------------------------------------------------- |
|
|
185
|
+
| `pick(object, keys)` | Creates object composed of picked object properties |
|
|
186
|
+
| `unique(array, keyFn?)` | Deduplicates array items by reference or key callback |
|
|
187
|
+
| `isEqual(a, b)` | Compares primitives, arrays, Dates, RegExps, and own enumerable string keys |
|
|
188
|
+
| `clamp(value, min, max)` | Constrains a number between min and max boundaries |
|
|
189
|
+
| `groupBy(array, keyFn)` | Groups array elements into an object by key |
|
|
190
|
+
| `chunk(array, size?)` | Splits array into chunks of specified size (default `1`) |
|
|
191
|
+
| `isEmpty(value)` | Checks if a string, array, map, set, or object is empty |
|
|
192
|
+
| `isNil(value)` | Checks if a value is `null` or `undefined` |
|
|
193
|
+
| `isValidJson(value)` | Validates whether a given string is valid JSON |
|
|
190
194
|
|
|
191
195
|
---
|
|
192
196
|
|
|
@@ -194,14 +198,14 @@ Array deduplication, picking, grouping & chunking, deep equality, number clampin
|
|
|
194
198
|
|
|
195
199
|
Debouncing, throttling, async retry, sleep, and animation frames.
|
|
196
200
|
|
|
197
|
-
| Function | Description
|
|
198
|
-
| ------------------------------------ |
|
|
199
|
-
| `debounce(fn, delay?)` | Creates debounced function with `.cancel()`
|
|
200
|
-
| `throttle(fn, limit?)` | Creates throttled function with `.cancel()`
|
|
201
|
-
| `sleep(ms)` | Promise-based delay helper (`await sleep(500)`)
|
|
202
|
-
| `retry(fn, options?)` | Retries async function with exponential backoff before failing
|
|
203
|
-
| `runAnimation(callback, autoStart?)` |
|
|
204
|
-
| `runAsync(callback)` | Runs
|
|
201
|
+
| Function | Description |
|
|
202
|
+
| ------------------------------------ | -------------------------------------------------------------------------- |
|
|
203
|
+
| `debounce(fn, delay?)` | Creates debounced function with `.cancel()` (delay default `300`) |
|
|
204
|
+
| `throttle(fn, limit?)` | Creates throttled function with `.cancel()` (limit default `300`) |
|
|
205
|
+
| `sleep(ms)` | Promise-based delay helper (`await sleep(500)`) |
|
|
206
|
+
| `retry(fn, options?)` | Retries async function with exponential backoff before failing |
|
|
207
|
+
| `runAnimation(callback, autoStart?)` | `requestAnimationFrame` loop; returns `{ startAnimation, stopAnimation }` |
|
|
208
|
+
| `runAsync(callback)` | Runs function source in a Blob Web Worker (no closures; async not awaited) |
|
|
205
209
|
|
|
206
210
|
---
|
|
207
211
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCookie.d.ts","sourceRoot":"","sources":["../../../src/browser/getCookie.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"getCookie.d.ts","sourceRoot":"","sources":["../../../src/browser/getCookie.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAiBjD,CAAC"}
|
|
@@ -8,8 +8,18 @@ exports.getCookie = void 0;
|
|
|
8
8
|
* @returns Decoded cookie value or null if not found
|
|
9
9
|
*/
|
|
10
10
|
const getCookie = (name) => {
|
|
11
|
-
const
|
|
12
|
-
|
|
11
|
+
const encodedName = encodeURIComponent(name);
|
|
12
|
+
for (const part of document.cookie.split(';')) {
|
|
13
|
+
const entry = part.trim();
|
|
14
|
+
const separatorIndex = entry.indexOf('=');
|
|
15
|
+
if (separatorIndex === -1) {
|
|
16
|
+
continue;
|
|
17
|
+
}
|
|
18
|
+
if (entry.slice(0, separatorIndex) === encodedName) {
|
|
19
|
+
return decodeURIComponent(entry.slice(separatorIndex + 1));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
13
23
|
};
|
|
14
24
|
exports.getCookie = getCookie;
|
|
15
25
|
//# sourceMappingURL=getCookie.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCookie.js","sourceRoot":"","sources":["../../../src/browser/getCookie.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACI,MAAM,SAAS,GAAG,CAAC,IAAY,EAAiB,EAAE;IACvD,MAAM,
|
|
1
|
+
{"version":3,"file":"getCookie.js","sourceRoot":"","sources":["../../../src/browser/getCookie.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACI,MAAM,SAAS,GAAG,CAAC,IAAY,EAAiB,EAAE;IACvD,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE7C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE1C,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,KAAK,WAAW,EAAE,CAAC;YACnD,OAAO,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAjBW,QAAA,SAAS,aAiBpB"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Extract query parameters from URL into a key-value record
|
|
3
3
|
*
|
|
4
4
|
* @param url Optional URL string (defaults to window.location.href)
|
|
5
|
-
* @returns Record of query parameters
|
|
5
|
+
* @returns Record of query parameters; empty if the URL is invalid or has no search
|
|
6
6
|
*/
|
|
7
7
|
export declare const getQueryParams: (url?: string) => Record<string, string>;
|
|
8
8
|
//# sourceMappingURL=getQueryParams.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getQueryParams.d.ts","sourceRoot":"","sources":["../../../src/browser/getQueryParams.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"getQueryParams.d.ts","sourceRoot":"","sources":["../../../src/browser/getQueryParams.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAalE,CAAC"}
|
|
@@ -5,24 +5,19 @@ exports.getQueryParams = void 0;
|
|
|
5
5
|
* Extract query parameters from URL into a key-value record
|
|
6
6
|
*
|
|
7
7
|
* @param url Optional URL string (defaults to window.location.href)
|
|
8
|
-
* @returns Record of query parameters
|
|
8
|
+
* @returns Record of query parameters; empty if the URL is invalid or has no search
|
|
9
9
|
*/
|
|
10
10
|
const getQueryParams = (url) => {
|
|
11
|
-
let search = url
|
|
12
|
-
? url.includes('?')
|
|
13
|
-
? url.substring(url.indexOf('?'))
|
|
14
|
-
: ''
|
|
15
|
-
: typeof window !== 'undefined'
|
|
16
|
-
? window.location.search
|
|
17
|
-
: '';
|
|
18
|
-
if (search.includes('#')) {
|
|
19
|
-
search = search.substring(0, search.indexOf('#'));
|
|
20
|
-
}
|
|
21
|
-
const params = new URLSearchParams(search);
|
|
22
11
|
const result = {};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
const base = typeof window !== 'undefined' ? window.location.href : 'http://localhost/';
|
|
13
|
+
try {
|
|
14
|
+
new URL(url ?? base, base).searchParams.forEach((value, key) => {
|
|
15
|
+
result[key] = value;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
26
21
|
return result;
|
|
27
22
|
};
|
|
28
23
|
exports.getQueryParams = getQueryParams;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getQueryParams.js","sourceRoot":"","sources":["../../../src/browser/getQueryParams.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACI,MAAM,cAAc,GAAG,CAAC,GAAY,EAA0B,EAAE;IACrE,
|
|
1
|
+
{"version":3,"file":"getQueryParams.js","sourceRoot":"","sources":["../../../src/browser/getQueryParams.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACI,MAAM,cAAc,GAAG,CAAC,GAAY,EAA0B,EAAE;IACrE,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAExF,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC7D,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAbW,QAAA,cAAc,kBAazB"}
|
|
@@ -4,12 +4,14 @@ export * from './detectOS.js';
|
|
|
4
4
|
export * from './downloadFile.js';
|
|
5
5
|
export * from './getCookie.js';
|
|
6
6
|
export * from './getQueryParams.js';
|
|
7
|
+
export * from './isPageVisible.js';
|
|
7
8
|
export * from './isPushNotificationSupported.js';
|
|
8
9
|
export * from './isScrollBehaviorSupported.js';
|
|
9
10
|
export * from './isShareSupported.js';
|
|
10
11
|
export * from './isTabFocused.js';
|
|
11
12
|
export * from './isTouchSupported.js';
|
|
12
13
|
export * from './networkStatusListener.js';
|
|
14
|
+
export * from './pageVisibilityListener.js';
|
|
13
15
|
export * from './preferColorScheme.js';
|
|
14
16
|
export * from './scrollToElement.js';
|
|
15
17
|
export * from './scrollToPosition.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AAEtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC"}
|
|
@@ -1,21 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
__exportStar(require("./interfaces/index.js"), exports);
|
|
18
|
+
__exportStar(require("./deleteCookie.js"), exports);
|
|
19
|
+
__exportStar(require("./detectOS.js"), exports);
|
|
20
|
+
__exportStar(require("./downloadFile.js"), exports);
|
|
21
|
+
__exportStar(require("./getCookie.js"), exports);
|
|
22
|
+
__exportStar(require("./getQueryParams.js"), exports);
|
|
23
|
+
__exportStar(require("./isPageVisible.js"), exports);
|
|
24
|
+
__exportStar(require("./isPushNotificationSupported.js"), exports);
|
|
25
|
+
__exportStar(require("./isScrollBehaviorSupported.js"), exports);
|
|
26
|
+
__exportStar(require("./isShareSupported.js"), exports);
|
|
27
|
+
__exportStar(require("./isTabFocused.js"), exports);
|
|
28
|
+
__exportStar(require("./isTouchSupported.js"), exports);
|
|
29
|
+
__exportStar(require("./networkStatusListener.js"), exports);
|
|
30
|
+
__exportStar(require("./pageVisibilityListener.js"), exports);
|
|
31
|
+
__exportStar(require("./preferColorScheme.js"), exports);
|
|
32
|
+
__exportStar(require("./scrollToElement.js"), exports);
|
|
33
|
+
__exportStar(require("./scrollToPosition.js"), exports);
|
|
34
|
+
__exportStar(require("./setCookie.js"), exports);
|
|
35
|
+
__exportStar(require("./tabFocusListener.js"), exports);
|
|
21
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AAEtC,oDAAkC;AAClC,gDAA8B;AAC9B,oDAAkC;AAClC,iDAA+B;AAC/B,sDAAoC;AACpC,qDAAmC;AACnC,mEAAiD;AACjD,iEAA+C;AAC/C,wDAAsC;AACtC,oDAAkC;AAClC,wDAAsC;AACtC,6DAA2C;AAC3C,8DAA4C;AAC5C,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC,iDAA+B;AAC/B,wDAAsC"}
|
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
tslib_1.__exportStar(require("./setCookie.js"), exports);
|
|
17
|
+
__exportStar(require("./detectOS.js"), exports);
|
|
18
|
+
__exportStar(require("./isTouchSupported.js"), exports);
|
|
19
|
+
__exportStar(require("./setCookie.js"), exports);
|
|
7
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser/interfaces/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,wDAAsC;AACtC,iDAA+B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Check whether the page is currently visible
|
|
3
|
+
*
|
|
4
|
+
* Uses the Page Visibility API (`document.hidden`). This is not window or tab
|
|
5
|
+
* input focus.
|
|
6
|
+
*
|
|
7
|
+
* @returns Whether the document is currently visible
|
|
8
|
+
*/
|
|
9
|
+
export declare const isPageVisible: () => boolean;
|
|
10
|
+
//# sourceMappingURL=isPageVisible.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPageVisible.d.ts","sourceRoot":"","sources":["../../../src/browser/isPageVisible.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,QAAO,OAA2B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isPageVisible = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Check whether the page is currently visible
|
|
6
|
+
*
|
|
7
|
+
* Uses the Page Visibility API (`document.hidden`). This is not window or tab
|
|
8
|
+
* input focus.
|
|
9
|
+
*
|
|
10
|
+
* @returns Whether the document is currently visible
|
|
11
|
+
*/
|
|
12
|
+
const isPageVisible = () => !document.hidden;
|
|
13
|
+
exports.isPageVisible = isPageVisible;
|
|
14
|
+
//# sourceMappingURL=isPageVisible.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isPageVisible.js","sourceRoot":"","sources":["../../../src/browser/isPageVisible.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACI,MAAM,aAAa,GAAG,GAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;AAAhD,QAAA,aAAa,iBAAmC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Check
|
|
2
|
+
* Check whether the environment supports the Web Push API
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Requires Notification, Service Worker, and PushManager. Does not check
|
|
5
|
+
* permission and does not register a service worker.
|
|
6
|
+
*
|
|
7
|
+
* @returns Whether Web Push is supported
|
|
5
8
|
*/
|
|
6
9
|
export declare const isPushNotificationSupported: () => boolean;
|
|
7
10
|
//# sourceMappingURL=isPushNotificationSupported.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isPushNotificationSupported.d.ts","sourceRoot":"","sources":["../../../src/browser/isPushNotificationSupported.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"isPushNotificationSupported.d.ts","sourceRoot":"","sources":["../../../src/browser/isPushNotificationSupported.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,QAAO,OACsC,CAAC"}
|
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isPushNotificationSupported = void 0;
|
|
4
4
|
/**
|
|
5
|
-
* Check
|
|
5
|
+
* Check whether the environment supports the Web Push API
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* Requires Notification, Service Worker, and PushManager. Does not check
|
|
8
|
+
* permission and does not register a service worker.
|
|
9
|
+
*
|
|
10
|
+
* @returns Whether Web Push is supported
|
|
8
11
|
*/
|
|
9
|
-
const isPushNotificationSupported = () =>
|
|
12
|
+
const isPushNotificationSupported = () => 'Notification' in window && 'serviceWorker' in navigator && 'PushManager' in window;
|
|
10
13
|
exports.isPushNotificationSupported = isPushNotificationSupported;
|
|
11
14
|
//# sourceMappingURL=isPushNotificationSupported.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isPushNotificationSupported.js","sourceRoot":"","sources":["../../../src/browser/isPushNotificationSupported.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"isPushNotificationSupported.js","sourceRoot":"","sources":["../../../src/browser/isPushNotificationSupported.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACI,MAAM,2BAA2B,GAAG,GAAY,EAAE,CACvD,cAAc,IAAI,MAAM,IAAI,eAAe,IAAI,SAAS,IAAI,aAAa,IAAI,MAAM,CAAC;AADzE,QAAA,2BAA2B,+BAC8C"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* @returns Boolean indicating if current browser tab is in focus
|
|
2
|
+
* @deprecated Use {@link isPageVisible}. Same as `!document.hidden`; not window
|
|
3
|
+
* or tab input focus.
|
|
5
4
|
*/
|
|
6
5
|
export declare const isTabFocused: () => boolean;
|
|
7
6
|
//# sourceMappingURL=isTabFocused.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isTabFocused.d.ts","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"isTabFocused.d.ts","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,YAAY,eAAgB,CAAC"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isTabFocused = void 0;
|
|
4
|
+
const isPageVisible_js_1 = require("./isPageVisible.js");
|
|
4
5
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* @returns Boolean indicating if current browser tab is in focus
|
|
6
|
+
* @deprecated Use {@link isPageVisible}. Same as `!document.hidden`; not window
|
|
7
|
+
* or tab input focus.
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
|
-
exports.isTabFocused = isTabFocused;
|
|
9
|
+
exports.isTabFocused = isPageVisible_js_1.isPageVisible;
|
|
11
10
|
//# sourceMappingURL=isTabFocused.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isTabFocused.js","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"isTabFocused.js","sourceRoot":"","sources":["../../../src/browser/isTabFocused.ts"],"names":[],"mappings":";;;AAAA,yDAAmD;AAEnD;;;GAGG;AACU,QAAA,YAAY,GAAG,gCAAa,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subscribe to Page Visibility changes
|
|
3
|
+
*
|
|
4
|
+
* Uses `visibilitychange` and `document.hidden`. This is not window focus or
|
|
5
|
+
* blur.
|
|
6
|
+
*
|
|
7
|
+
* @param onVisible Called when the page becomes visible
|
|
8
|
+
* @param onHidden Called when the page becomes hidden
|
|
9
|
+
* @returns Cleanup function to remove the listener
|
|
10
|
+
*/
|
|
11
|
+
export declare const pageVisibilityListener: (onVisible?: () => void, onHidden?: () => void) => (() => void);
|
|
12
|
+
//# sourceMappingURL=pageVisibilityListener.d.ts.map
|