@koine/dom 2.0.0-beta.12 → 2.0.0-beta.121
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/_listen-delegation.cjs.js +39 -0
- package/_listen-delegation.d.ts +1 -39
- package/_listen-delegation.esm.js +34 -0
- package/addClass.cjs.d.ts +2 -0
- package/addClass.cjs.default.js +1 -0
- package/addClass.cjs.js +10 -0
- package/addClass.cjs.mjs +2 -0
- package/addClass.d.ts +1 -4
- package/addClass.esm.d.ts +2 -0
- package/addClass.esm.js +5 -0
- package/calculateFixedOffset.cjs.d.ts +2 -0
- package/calculateFixedOffset.cjs.default.js +1 -0
- package/calculateFixedOffset.cjs.js +11 -0
- package/calculateFixedOffset.cjs.mjs +2 -0
- package/calculateFixedOffset.d.ts +1 -1
- package/calculateFixedOffset.esm.d.ts +2 -0
- package/calculateFixedOffset.esm.js +6 -0
- package/createElement.cjs.d.ts +2 -0
- package/createElement.cjs.default.js +1 -0
- package/createElement.cjs.js +13 -0
- package/createElement.cjs.mjs +2 -0
- package/createElement.d.ts +1 -8
- package/createElement.esm.d.ts +2 -0
- package/createElement.esm.js +8 -0
- package/dom.cjs.d.ts +2 -0
- package/dom.cjs.default.js +1 -0
- package/{$.mjs → dom.cjs.js} +10 -6
- package/dom.cjs.mjs +2 -0
- package/dom.d.ts +2 -0
- package/dom.esm.d.ts +2 -0
- package/{$.d.ts → dom.esm.js} +5 -5
- package/domAll.cjs.d.ts +2 -0
- package/domAll.cjs.default.js +1 -0
- package/{$$.mjs → domAll.cjs.js} +8 -4
- package/domAll.cjs.mjs +2 -0
- package/domAll.d.ts +2 -0
- package/domAll.esm.d.ts +2 -0
- package/{$$.d.ts → domAll.esm.js} +3 -3
- package/domEach.cjs.d.ts +2 -0
- package/domEach.cjs.default.js +1 -0
- package/{$each.mjs → domEach.cjs.js} +10 -8
- package/domEach.cjs.mjs +2 -0
- package/domEach.d.ts +2 -0
- package/domEach.esm.d.ts +2 -0
- package/{$each.d.ts → domEach.esm.js} +5 -3
- package/emitEvent.cjs.d.ts +2 -0
- package/emitEvent.cjs.default.js +1 -0
- package/emitEvent.cjs.js +10 -0
- package/emitEvent.cjs.mjs +2 -0
- package/emitEvent.d.ts +1 -4
- package/emitEvent.esm.d.ts +2 -0
- package/emitEvent.esm.js +5 -0
- package/escapeSelector.cjs.d.ts +2 -0
- package/escapeSelector.cjs.default.js +1 -0
- package/escapeSelector.cjs.js +13 -0
- package/escapeSelector.cjs.mjs +2 -0
- package/escapeSelector.d.ts +1 -7
- package/escapeSelector.esm.d.ts +2 -0
- package/{escapeSelector.mjs → escapeSelector.esm.js} +3 -4
- package/exists.cjs.d.ts +2 -0
- package/exists.cjs.default.js +1 -0
- package/exists.cjs.js +12 -0
- package/exists.cjs.mjs +2 -0
- package/exists.d.ts +1 -6
- package/exists.esm.d.ts +2 -0
- package/exists.esm.js +7 -0
- package/forEach.cjs.d.ts +2 -0
- package/forEach.cjs.default.js +1 -0
- package/forEach.cjs.js +12 -0
- package/forEach.cjs.mjs +2 -0
- package/forEach.d.ts +1 -6
- package/forEach.esm.d.ts +2 -0
- package/forEach.esm.js +7 -0
- package/getDataAttr.cjs.d.ts +2 -0
- package/getDataAttr.cjs.default.js +1 -0
- package/getDataAttr.cjs.js +16 -0
- package/getDataAttr.cjs.mjs +2 -0
- package/getDataAttr.d.ts +1 -7
- package/getDataAttr.esm.d.ts +2 -0
- package/{getDataAttr.mjs → getDataAttr.esm.js} +4 -5
- package/getDocumentHeight.cjs.d.ts +2 -0
- package/getDocumentHeight.cjs.default.js +1 -0
- package/getDocumentHeight.cjs.js +12 -0
- package/getDocumentHeight.cjs.mjs +2 -0
- package/getDocumentHeight.d.ts +1 -6
- package/getDocumentHeight.esm.d.ts +2 -0
- package/getDocumentHeight.esm.js +7 -0
- package/getHeight.cjs.d.ts +2 -0
- package/getHeight.cjs.default.js +1 -0
- package/getHeight.cjs.js +10 -0
- package/getHeight.cjs.mjs +2 -0
- package/getHeight.d.ts +1 -4
- package/getHeight.esm.d.ts +2 -0
- package/getHeight.esm.js +5 -0
- package/getListeners.cjs.d.ts +2 -0
- package/getListeners.cjs.default.js +1 -0
- package/getListeners.cjs.js +20 -0
- package/getListeners.cjs.mjs +2 -0
- package/getListeners.d.ts +1 -8
- package/getListeners.esm.d.ts +2 -0
- package/getListeners.esm.js +15 -0
- package/getOffset.cjs.d.ts +2 -0
- package/getOffset.cjs.default.js +1 -0
- package/getOffset.cjs.js +14 -0
- package/getOffset.cjs.mjs +2 -0
- package/getOffset.d.ts +1 -7
- package/getOffset.esm.d.ts +2 -0
- package/getOffset.esm.js +9 -0
- package/getOffsetTop.cjs.d.ts +2 -0
- package/getOffsetTop.cjs.default.js +1 -0
- package/getOffsetTop.cjs.js +16 -0
- package/getOffsetTop.cjs.mjs +2 -0
- package/getOffsetTop.d.ts +1 -9
- package/getOffsetTop.esm.d.ts +2 -0
- package/getOffsetTop.esm.js +11 -0
- package/getOffsetTopSlim.cjs.d.ts +2 -0
- package/getOffsetTopSlim.cjs.default.js +1 -0
- package/getOffsetTopSlim.cjs.js +16 -0
- package/getOffsetTopSlim.cjs.mjs +2 -0
- package/getOffsetTopSlim.d.ts +1 -10
- package/getOffsetTopSlim.esm.d.ts +2 -0
- package/{getOffsetTopSlim.mjs → getOffsetTopSlim.esm.js} +3 -4
- package/getScrollbarWidth.cjs.d.ts +2 -0
- package/getScrollbarWidth.cjs.default.js +1 -0
- package/getScrollbarWidth.cjs.js +10 -0
- package/getScrollbarWidth.cjs.mjs +2 -0
- package/getScrollbarWidth.d.ts +1 -4
- package/getScrollbarWidth.esm.d.ts +2 -0
- package/getScrollbarWidth.esm.js +5 -0
- package/getStyleValue.cjs.d.ts +2 -0
- package/getStyleValue.cjs.default.js +1 -0
- package/getStyleValue.cjs.js +13 -0
- package/getStyleValue.cjs.mjs +2 -0
- package/getStyleValue.d.ts +1 -7
- package/getStyleValue.esm.d.ts +2 -0
- package/getStyleValue.esm.js +8 -0
- package/getVisualBackgroundColor.cjs.d.ts +2 -0
- package/getVisualBackgroundColor.cjs.default.js +1 -0
- package/getVisualBackgroundColor.cjs.js +12 -0
- package/getVisualBackgroundColor.cjs.mjs +2 -0
- package/getVisualBackgroundColor.d.ts +1 -5
- package/getVisualBackgroundColor.esm.d.ts +2 -0
- package/getVisualBackgroundColor.esm.js +7 -0
- package/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +97 -0
- package/index.cjs.mjs +2 -0
- package/index.d.ts +4 -4
- package/index.esm.d.ts +1 -0
- package/index.esm.js +47 -0
- package/injectCss.cjs.d.ts +2 -0
- package/injectCss.cjs.default.js +1 -0
- package/injectCss.cjs.js +14 -0
- package/injectCss.cjs.mjs +2 -0
- package/injectCss.d.ts +1 -4
- package/injectCss.esm.d.ts +2 -0
- package/injectCss.esm.js +9 -0
- package/isHidden.cjs.d.ts +2 -0
- package/isHidden.cjs.default.js +1 -0
- package/isHidden.cjs.js +10 -0
- package/isHidden.cjs.mjs +2 -0
- package/isHidden.d.ts +1 -4
- package/isHidden.esm.d.ts +2 -0
- package/isHidden.esm.js +5 -0
- package/isInViewport.cjs.d.ts +2 -0
- package/isInViewport.cjs.default.js +1 -0
- package/isInViewport.cjs.js +15 -0
- package/isInViewport.cjs.mjs +2 -0
- package/isInViewport.d.ts +1 -9
- package/isInViewport.esm.d.ts +2 -0
- package/isInViewport.esm.js +10 -0
- package/isNodeList.cjs.d.ts +2 -0
- package/isNodeList.cjs.default.js +1 -0
- package/isNodeList.cjs.js +12 -0
- package/isNodeList.cjs.mjs +2 -0
- package/isNodeList.d.ts +1 -6
- package/isNodeList.esm.d.ts +2 -0
- package/isNodeList.esm.js +7 -0
- package/isTotallyScrolled.cjs.d.ts +2 -0
- package/isTotallyScrolled.cjs.default.js +1 -0
- package/isTotallyScrolled.cjs.js +13 -0
- package/isTotallyScrolled.cjs.mjs +2 -0
- package/isTotallyScrolled.d.ts +1 -7
- package/isTotallyScrolled.esm.d.ts +2 -0
- package/{isTotallyScrolled.mjs → isTotallyScrolled.esm.js} +3 -4
- package/listen.cjs.d.ts +2 -0
- package/listen.cjs.default.js +1 -0
- package/listen.cjs.js +32 -0
- package/listen.cjs.mjs +2 -0
- package/listen.d.ts +1 -10
- package/listen.esm.d.ts +2 -0
- package/listen.esm.js +27 -0
- package/listenLoaded.cjs.d.ts +2 -0
- package/listenLoaded.cjs.default.js +1 -0
- package/listenLoaded.cjs.js +17 -0
- package/listenLoaded.cjs.mjs +2 -0
- package/listenLoaded.d.ts +1 -6
- package/listenLoaded.esm.d.ts +2 -0
- package/listenLoaded.esm.js +12 -0
- package/listenOnce.cjs.d.ts +2 -0
- package/listenOnce.cjs.default.js +1 -0
- package/listenOnce.cjs.js +24 -0
- package/listenOnce.cjs.mjs +2 -0
- package/listenOnce.d.ts +1 -10
- package/listenOnce.esm.d.ts +2 -0
- package/listenOnce.esm.js +19 -0
- package/listenResize.cjs.d.ts +2 -0
- package/listenResize.cjs.default.js +1 -0
- package/listenResize.cjs.js +16 -0
- package/listenResize.cjs.mjs +2 -0
- package/listenResize.d.ts +1 -6
- package/listenResize.esm.d.ts +2 -0
- package/listenResize.esm.js +11 -0
- package/listenResizeDebounced.cjs.d.ts +2 -0
- package/listenResizeDebounced.cjs.default.js +1 -0
- package/listenResizeDebounced.cjs.js +17 -0
- package/listenResizeDebounced.cjs.mjs +2 -0
- package/listenResizeDebounced.d.ts +2 -7
- package/listenResizeDebounced.esm.d.ts +2 -0
- package/listenResizeDebounced.esm.js +12 -0
- package/listenResizeThrottled.cjs.d.ts +2 -0
- package/listenResizeThrottled.cjs.default.js +1 -0
- package/listenResizeThrottled.cjs.js +17 -0
- package/listenResizeThrottled.cjs.mjs +2 -0
- package/listenResizeThrottled.d.ts +1 -6
- package/listenResizeThrottled.esm.d.ts +2 -0
- package/listenResizeThrottled.esm.js +12 -0
- package/listenScroll.cjs.d.ts +2 -0
- package/listenScroll.cjs.default.js +1 -0
- package/listenScroll.cjs.js +16 -0
- package/listenScroll.cjs.mjs +2 -0
- package/listenScroll.d.ts +1 -6
- package/listenScroll.esm.d.ts +2 -0
- package/listenScroll.esm.js +11 -0
- package/listenScrollDebounced.cjs.d.ts +2 -0
- package/listenScrollDebounced.cjs.default.js +1 -0
- package/listenScrollDebounced.cjs.js +17 -0
- package/listenScrollDebounced.cjs.mjs +2 -0
- package/listenScrollDebounced.d.ts +1 -6
- package/listenScrollDebounced.esm.d.ts +2 -0
- package/listenScrollDebounced.esm.js +12 -0
- package/listenScrollThrottled.cjs.d.ts +2 -0
- package/listenScrollThrottled.cjs.default.js +1 -0
- package/listenScrollThrottled.cjs.js +17 -0
- package/listenScrollThrottled.cjs.mjs +2 -0
- package/listenScrollThrottled.d.ts +1 -6
- package/listenScrollThrottled.esm.d.ts +2 -0
- package/listenScrollThrottled.esm.js +12 -0
- package/off.cjs.d.ts +2 -0
- package/off.cjs.default.js +1 -0
- package/off.cjs.js +10 -0
- package/off.cjs.mjs +2 -0
- package/off.d.ts +1 -4
- package/off.esm.d.ts +2 -0
- package/off.esm.js +5 -0
- package/on.cjs.d.ts +2 -0
- package/on.cjs.default.js +1 -0
- package/on.cjs.js +16 -0
- package/on.cjs.mjs +2 -0
- package/on.d.ts +1 -6
- package/on.esm.d.ts +2 -0
- package/on.esm.js +11 -0
- package/onClickOutside.cjs.d.ts +2 -0
- package/onClickOutside.cjs.default.js +1 -0
- package/onClickOutside.cjs.js +13 -0
- package/onClickOutside.cjs.mjs +2 -0
- package/onClickOutside.d.ts +2 -1
- package/onClickOutside.esm.d.ts +2 -0
- package/onClickOutside.esm.js +8 -0
- package/once.cjs.d.ts +2 -0
- package/once.cjs.default.js +1 -0
- package/once.cjs.js +15 -0
- package/once.cjs.mjs +2 -0
- package/once.d.ts +2 -6
- package/once.esm.d.ts +2 -0
- package/once.esm.js +10 -0
- package/package.json +242 -8
- package/removeClass.cjs.d.ts +2 -0
- package/removeClass.cjs.default.js +1 -0
- package/removeClass.cjs.js +10 -0
- package/removeClass.cjs.mjs +2 -0
- package/removeClass.d.ts +1 -4
- package/removeClass.esm.d.ts +2 -0
- package/removeClass.esm.js +5 -0
- package/scrollTo.cjs.d.ts +2 -0
- package/scrollTo.cjs.default.js +1 -0
- package/scrollTo.cjs.js +21 -0
- package/scrollTo.cjs.mjs +2 -0
- package/scrollTo.d.ts +1 -11
- package/scrollTo.esm.d.ts +2 -0
- package/scrollTo.esm.js +16 -0
- package/setDataAttr.cjs.d.ts +2 -0
- package/setDataAttr.cjs.default.js +1 -0
- package/setDataAttr.cjs.js +17 -0
- package/setDataAttr.cjs.mjs +2 -0
- package/setDataAttr.d.ts +1 -8
- package/setDataAttr.esm.d.ts +2 -0
- package/setDataAttr.esm.js +12 -0
- package/setVendorCSS.cjs.d.ts +2 -0
- package/setVendorCSS.cjs.default.js +1 -0
- package/setVendorCSS.cjs.js +19 -0
- package/setVendorCSS.cjs.mjs +2 -0
- package/setVendorCSS.d.ts +1 -8
- package/setVendorCSS.esm.d.ts +2 -0
- package/setVendorCSS.esm.js +14 -0
- package/siblings.cjs.d.ts +2 -0
- package/siblings.cjs.default.js +1 -0
- package/siblings.cjs.js +12 -0
- package/siblings.cjs.mjs +2 -0
- package/siblings.d.ts +1 -6
- package/siblings.esm.d.ts +2 -0
- package/siblings.esm.js +7 -0
- package/toArray.cjs.d.ts +2 -0
- package/toArray.cjs.default.js +1 -0
- package/toArray.cjs.js +12 -0
- package/toArray.cjs.mjs +2 -0
- package/toArray.d.ts +1 -6
- package/toArray.esm.d.ts +2 -0
- package/toArray.esm.js +7 -0
- package/types.cjs.d.ts +1 -0
- package/types.cjs.default.js +1 -0
- package/types.cjs.js +2 -0
- package/types.cjs.mjs +2 -0
- package/types.d.ts +1 -6
- package/types.esm.d.ts +1 -0
- package/types.esm.js +1 -0
- package/unlisten.cjs.d.ts +2 -0
- package/unlisten.cjs.default.js +1 -0
- package/unlisten.cjs.js +32 -0
- package/unlisten.cjs.mjs +2 -0
- package/unlisten.d.ts +1 -10
- package/unlisten.esm.d.ts +2 -0
- package/unlisten.esm.js +27 -0
- package/_listen-delegation.mjs +0 -77
- package/addClass.mjs +0 -12
- package/calculateFixedOffset.mjs +0 -9
- package/createElement.mjs +0 -15
- package/emitEvent.mjs +0 -10
- package/exists.mjs +0 -11
- package/forEach.mjs +0 -34
- package/getDocumentHeight.mjs +0 -9
- package/getHeight.mjs +0 -6
- package/getListeners.mjs +0 -17
- package/getOffset.mjs +0 -20
- package/getOffsetTop.mjs +0 -19
- package/getScrollbarWidth.mjs +0 -6
- package/getStyleValue.mjs +0 -9
- package/getVisualBackgroundColor.mjs +0 -19
- package/index.mjs +0 -45
- package/injectCss.mjs +0 -13
- package/isHidden.mjs +0 -6
- package/isInViewport.mjs +0 -12
- package/isNodeList.mjs +0 -9
- package/listen.mjs +0 -36
- package/listenLoaded.mjs +0 -10
- package/listenOnce.mjs +0 -19
- package/listenResize.mjs +0 -7
- package/listenResizeDebounced.mjs +0 -34
- package/listenResizeThrottled.mjs +0 -8
- package/listenScroll.mjs +0 -10
- package/listenScrollDebounced.mjs +0 -8
- package/listenScrollThrottled.mjs +0 -8
- package/off.mjs +0 -11
- package/on.mjs +0 -21
- package/onClickOutside.mjs +0 -15
- package/once.mjs +0 -13
- package/removeClass.mjs +0 -12
- package/scrollTo.mjs +0 -39
- package/setDataAttr.mjs +0 -17
- package/setVendorCSS.mjs +0 -20
- package/siblings.mjs +0 -18
- package/toArray.mjs +0 -8
- package/types.mjs +0 -1
- package/typings.d.ts +0 -4
- package/unlisten.mjs +0 -35
package/unlisten.cjs.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _listenDelegation = require('./_listen-delegation.cjs.js');
|
|
6
|
+
var off = require('./off.cjs.js');
|
|
7
|
+
require('@koine/utils');
|
|
8
|
+
require('./escapeSelector.cjs.js');
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Stop listening for an event
|
|
12
|
+
*
|
|
13
|
+
* @category listen-delegation
|
|
14
|
+
*
|
|
15
|
+
* @param types The event type or types (comma separated)
|
|
16
|
+
* @param selector The selector to remove the event from
|
|
17
|
+
* @param callback The function to remove
|
|
18
|
+
*/let unlisten=(r,// | `${TTypes},${TTypes}`
|
|
19
|
+
// | `${TTypes},${TTypes},${TTypes}`
|
|
20
|
+
// | `${TTypes},${TTypes},${TTypes},${TTypes}`
|
|
21
|
+
// | `${TTypes},${TTypes},${TTypes},${TTypes},${TTypes}`,
|
|
22
|
+
n,o)=>{// Loop through each event type
|
|
23
|
+
r.split(",").forEach(r=>{let f=_listenDelegation.activeEvents[// Remove whitespace
|
|
24
|
+
r=r.trim()];// if event type doesn't exist, bail
|
|
25
|
+
if(!f)return;// If it's the last event of it's type, remove entirely
|
|
26
|
+
if(f.length<2||!n){delete _listenDelegation.activeEvents[r],off.off(window,r,_listenDelegation.eventHandler,!0);return}// Otherwise, remove event
|
|
27
|
+
// @ts-expect-error FIXME: type...
|
|
28
|
+
let p=_listenDelegation.getIndex(f,n,o);p<0||// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
29
|
+
_listenDelegation.activeEvents[r].splice(p,1);});};
|
|
30
|
+
|
|
31
|
+
exports.default = unlisten;
|
|
32
|
+
exports.unlisten = unlisten;
|
package/unlisten.cjs.mjs
ADDED
package/unlisten.d.ts
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import { type EventCallback } from "./_listen-delegation";
|
|
2
2
|
import type { AnyDOMEventTarget, AnyDOMEventType } from "./types";
|
|
3
|
-
|
|
4
|
-
* Stop listening for an event
|
|
5
|
-
*
|
|
6
|
-
* @category listen-delegation
|
|
7
|
-
*
|
|
8
|
-
* @param types The event type or types (comma separated)
|
|
9
|
-
* @param selector The selector to remove the event from
|
|
10
|
-
* @param callback The function to remove
|
|
11
|
-
*/
|
|
12
|
-
export declare function unlisten<TTypes extends AnyDOMEventType, TTarget extends AnyDOMEventTarget = AnyDOMEventTarget>(types: TTypes, selector: string, callback: EventCallback<TTarget, TTypes>): void;
|
|
3
|
+
export declare let unlisten: <TTypes extends AnyDOMEventType, TTarget extends AnyDOMEventTarget = AnyDOMEventTarget>(types: TTypes, selector: string, callback: EventCallback<TTarget, TTypes>) => void;
|
|
13
4
|
export default unlisten;
|
package/unlisten.esm.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { a as activeEvents, e as eventHandler, b as getIndex } from './_listen-delegation.esm.js';
|
|
2
|
+
import { off } from './off.esm.js';
|
|
3
|
+
import '@koine/utils';
|
|
4
|
+
import './escapeSelector.esm.js';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Stop listening for an event
|
|
8
|
+
*
|
|
9
|
+
* @category listen-delegation
|
|
10
|
+
*
|
|
11
|
+
* @param types The event type or types (comma separated)
|
|
12
|
+
* @param selector The selector to remove the event from
|
|
13
|
+
* @param callback The function to remove
|
|
14
|
+
*/let unlisten=(r,// | `${TTypes},${TTypes}`
|
|
15
|
+
// | `${TTypes},${TTypes},${TTypes}`
|
|
16
|
+
// | `${TTypes},${TTypes},${TTypes},${TTypes}`
|
|
17
|
+
// | `${TTypes},${TTypes},${TTypes},${TTypes},${TTypes}`,
|
|
18
|
+
n,o)=>{// Loop through each event type
|
|
19
|
+
r.split(",").forEach(r=>{let f=activeEvents[// Remove whitespace
|
|
20
|
+
r=r.trim()];// if event type doesn't exist, bail
|
|
21
|
+
if(!f)return;// If it's the last event of it's type, remove entirely
|
|
22
|
+
if(f.length<2||!n){delete activeEvents[r],off(window,r,eventHandler,!0);return}// Otherwise, remove event
|
|
23
|
+
// @ts-expect-error FIXME: type...
|
|
24
|
+
let p=getIndex(f,n,o);p<0||// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
25
|
+
activeEvents[r].splice(p,1);});};
|
|
26
|
+
|
|
27
|
+
export { unlisten as default, unlisten };
|
package/_listen-delegation.mjs
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Listen: events delegation system
|
|
3
|
-
*
|
|
4
|
-
* From:
|
|
5
|
-
* https://github.com/cferdinandi/events
|
|
6
|
-
* https://github.com/cferdinandi/events/blob/master/src/js/events/events.js
|
|
7
|
-
*
|
|
8
|
-
* @fileoverview
|
|
9
|
-
*/ import isString from "@koine/utils/isString";
|
|
10
|
-
import escapeSelector from "./escapeSelector";
|
|
11
|
-
/**
|
|
12
|
-
* Active events
|
|
13
|
-
*
|
|
14
|
-
* @internal
|
|
15
|
-
*/ export const activeEvents = {};
|
|
16
|
-
/**
|
|
17
|
-
* Get the index for the listener
|
|
18
|
-
*
|
|
19
|
-
* @internal
|
|
20
|
-
*/ export function getIndex(arr, selector, callback) {
|
|
21
|
-
for(let i = 0; i < arr.length; i++){
|
|
22
|
-
if (arr[i].selector === selector && arr[i].callback.toString() === callback.toString()) return i;
|
|
23
|
-
}
|
|
24
|
-
return -1;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Check if the listener callback should run or not
|
|
28
|
-
*
|
|
29
|
-
* @internal
|
|
30
|
-
* @param target The event.target
|
|
31
|
-
* @param selector The selector/element to check the target against
|
|
32
|
-
* @return If not false, run listener and pass the targeted element to use in the callback
|
|
33
|
-
*/ export function getRunTarget(target, selector) {
|
|
34
|
-
// @ts-expect-error FIXME: type
|
|
35
|
-
if ([
|
|
36
|
-
"*",
|
|
37
|
-
"window",
|
|
38
|
-
window
|
|
39
|
-
].includes(selector)) {
|
|
40
|
-
return window;
|
|
41
|
-
}
|
|
42
|
-
if ([
|
|
43
|
-
"document",
|
|
44
|
-
"document.documentElement",
|
|
45
|
-
document,
|
|
46
|
-
document.documentElement
|
|
47
|
-
].includes(selector)) return document;
|
|
48
|
-
if (isString(selector)) {
|
|
49
|
-
return target.closest(escapeSelector(selector));
|
|
50
|
-
}
|
|
51
|
-
// @ts-expect-error FIXME: type
|
|
52
|
-
if (typeof selector !== "string" && selector.contains) {
|
|
53
|
-
if (selector === target) {
|
|
54
|
-
return target;
|
|
55
|
-
}
|
|
56
|
-
// @ts-expect-error FIXME: type
|
|
57
|
-
if (selector.contains(target)) {
|
|
58
|
-
return selector;
|
|
59
|
-
}
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Handle listeners after event fires
|
|
66
|
-
*
|
|
67
|
-
* @internal
|
|
68
|
-
*/ export function eventHandler(event) {
|
|
69
|
-
// if (!activeEvents[event.type]) return;
|
|
70
|
-
activeEvents[event.type]?.forEach(function(listener) {
|
|
71
|
-
const target = getRunTarget(event.target, listener.selector);
|
|
72
|
-
if (!target) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
listener.callback(event, target);
|
|
76
|
-
});
|
|
77
|
-
}
|
package/addClass.mjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Add class shortcut
|
|
3
|
-
*/ export function addClass(el, className = "") {
|
|
4
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
5
|
-
if (!el) {
|
|
6
|
-
console.warn("[@koine/dom:addClass] unexisting DOM element");
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
if (el) el.classList.add(className);
|
|
11
|
-
}
|
|
12
|
-
export default addClass;
|
package/calculateFixedOffset.mjs
DELETED
package/createElement.mjs
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import addClass from "./addClass";
|
|
2
|
-
/**
|
|
3
|
-
* Shortcut for `document.createElement`, allowing to to create an HTML element
|
|
4
|
-
* with a given className directly (a very common use case)
|
|
5
|
-
*
|
|
6
|
-
* @param type
|
|
7
|
-
* @param className
|
|
8
|
-
*/ export function createElement(type, className) {
|
|
9
|
-
const el = document.createElement(type);
|
|
10
|
-
if (className) {
|
|
11
|
-
addClass(el, className);
|
|
12
|
-
}
|
|
13
|
-
return el;
|
|
14
|
-
}
|
|
15
|
-
export default createElement;
|
package/emitEvent.mjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Emit event (use only if the targeted browser supports `CustomEvent`s)
|
|
3
|
-
*/ export function emitEvent(type = "customEvent", detail = {}) {
|
|
4
|
-
if (typeof window.CustomEvent !== "function") return;
|
|
5
|
-
document.dispatchEvent(new CustomEvent(type, {
|
|
6
|
-
bubbles: true,
|
|
7
|
-
detail
|
|
8
|
-
}));
|
|
9
|
-
}
|
|
10
|
-
export default emitEvent;
|
package/exists.mjs
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if passed node exist and is a valid element.
|
|
3
|
-
*
|
|
4
|
-
* @borrows @glidejs/glide/src/utils/dom (source)
|
|
5
|
-
*/ export function exists(node) {
|
|
6
|
-
if (node && node instanceof window.HTMLElement) {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
export default exists;
|
package/forEach.mjs
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* For each, iterate through a `NodeList` or an `array` of `HTMLElement`s
|
|
3
|
-
*
|
|
4
|
-
* @param scope The optional `this` of the callback function
|
|
5
|
-
*/ export function forEach(nodes, callback, scope) {
|
|
6
|
-
for(let i = 0; i < nodes.length; i++){
|
|
7
|
-
callback.call(scope, nodes[i], i);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
export default forEach; // /**
|
|
11
|
-
// * For each, iterate through a `NodeList` or an `array` of `HTMLElement`s
|
|
12
|
-
// *
|
|
13
|
-
// * @param scope The optional `this` of the callback function
|
|
14
|
-
// */
|
|
15
|
-
// export function forEach<TScope = object>(
|
|
16
|
-
// nodes: HTMLElement[],
|
|
17
|
-
// callback: (this: TScope, $element: HTMLElement, index: number) => any,
|
|
18
|
-
// scope?: TScope
|
|
19
|
-
// ): void;
|
|
20
|
-
// export function forEach<TScope = object>(
|
|
21
|
-
// nodes: NodeListOf<HTMLElement> | HTMLElement[],
|
|
22
|
-
// callback: (this: TScope, $element: HTMLElement, index: number) => any,
|
|
23
|
-
// scope?: TScope
|
|
24
|
-
// ): void;
|
|
25
|
-
// export function forEach<T extends Element, TScope = object>(
|
|
26
|
-
// nodes: NodeListOf<T> | HTMLElement[],
|
|
27
|
-
// callback: (this: TScope, $element: T, index: number) => any,
|
|
28
|
-
// scope?: TScope
|
|
29
|
-
// ) {
|
|
30
|
-
// for (let i = 0; i < nodes.length; i++) {
|
|
31
|
-
// callback.call(scope as TScope, nodes[i] as T, i);
|
|
32
|
-
// }
|
|
33
|
-
// }
|
|
34
|
-
// export default forEach;
|
package/getDocumentHeight.mjs
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Determine the document's height
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/cferdinandi/smooth-scroll (credits)
|
|
5
|
-
*/ export function getDocumentHeight() {
|
|
6
|
-
const { body, documentElement } = document;
|
|
7
|
-
return Math.max(body.scrollHeight, documentElement.scrollHeight, body.offsetHeight, documentElement.offsetHeight, body.clientHeight, documentElement.clientHeight);
|
|
8
|
-
}
|
|
9
|
-
export default getDocumentHeight;
|
package/getHeight.mjs
DELETED
package/getListeners.mjs
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { activeEvents } from "./_listen-delegation";
|
|
2
|
-
/**
|
|
3
|
-
* Get an immutable copy of all active event listeners
|
|
4
|
-
*
|
|
5
|
-
* @category listen-delegation
|
|
6
|
-
*
|
|
7
|
-
* @return Active event listeners
|
|
8
|
-
*/ export function getListeners() {
|
|
9
|
-
const obj = {};
|
|
10
|
-
for(const type in activeEvents){
|
|
11
|
-
// if (activeEvents.hasOwnProperty(type)) {
|
|
12
|
-
obj[type] = activeEvents[type];
|
|
13
|
-
// }
|
|
14
|
-
}
|
|
15
|
-
return obj;
|
|
16
|
-
}
|
|
17
|
-
export default getListeners;
|
package/getOffset.mjs
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get an element's distance from the top and left of the Document.
|
|
3
|
-
*
|
|
4
|
-
* @param elem The HTML node element
|
|
5
|
-
* @return Distance from the top and left in pixels
|
|
6
|
-
*/ export function getOffset(elem) {
|
|
7
|
-
let left = 0;
|
|
8
|
-
let top = 0;
|
|
9
|
-
while(elem && !isNaN(elem.offsetLeft) && !isNaN(elem.offsetTop)){
|
|
10
|
-
left += elem.offsetLeft - elem.scrollLeft;
|
|
11
|
-
top += elem.offsetTop - elem.scrollTop;
|
|
12
|
-
// @ts-expect-error nevermind?
|
|
13
|
-
elem = elem.offsetParent;
|
|
14
|
-
}
|
|
15
|
-
return {
|
|
16
|
-
top,
|
|
17
|
-
left
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
export default getOffset;
|
package/getOffsetTop.mjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get an element's distance from the top of the Document.
|
|
3
|
-
*
|
|
4
|
-
* @see https://vanillajstoolkit.com/helpers/getoffsettop/
|
|
5
|
-
*
|
|
6
|
-
* @param elem The HTML node element
|
|
7
|
-
* @return Distance from the top in pixels
|
|
8
|
-
*/ export function getOffsetTop(elem) {
|
|
9
|
-
let location = 0;
|
|
10
|
-
if (elem.offsetParent) {
|
|
11
|
-
while(elem){
|
|
12
|
-
location += elem.offsetTop;
|
|
13
|
-
// @ts-expect-error nevermind?
|
|
14
|
-
elem = elem.offsetParent;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return location >= 0 ? location : 0;
|
|
18
|
-
}
|
|
19
|
-
export default getOffsetTop;
|
package/getScrollbarWidth.mjs
DELETED
package/getStyleValue.mjs
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Return the current style value for an element CSS property
|
|
3
|
-
*
|
|
4
|
-
* @param el The element to compute
|
|
5
|
-
* @param prop The style property
|
|
6
|
-
*/ export function getStyleValue(el, prop) {
|
|
7
|
-
return getComputedStyle(el, null).getPropertyValue(prop);
|
|
8
|
-
}
|
|
9
|
-
export default getStyleValue;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the background color of an element eventually looking recursively into
|
|
3
|
-
* its parents, if nothing is found it returns a `#fff` background
|
|
4
|
-
*/ export function getVisualBackgroundColor(elem) {
|
|
5
|
-
if (!elem) return "#fff";
|
|
6
|
-
const transparent = "rgba(0, 0, 0, 0)";
|
|
7
|
-
const transparentIE11 = "transparent";
|
|
8
|
-
// if (!elem) return transparent;
|
|
9
|
-
const bg = window.getComputedStyle(elem).backgroundColor;
|
|
10
|
-
if (bg === transparent || bg === transparentIE11) {
|
|
11
|
-
const parent = elem.parentElement;
|
|
12
|
-
if (parent) {
|
|
13
|
-
return getVisualBackgroundColor(parent);
|
|
14
|
-
}
|
|
15
|
-
return "#fff";
|
|
16
|
-
}
|
|
17
|
-
return bg;
|
|
18
|
-
}
|
|
19
|
-
export default getVisualBackgroundColor;
|
package/index.mjs
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
export { $$ } from "./$$";
|
|
2
|
-
export { $each } from "./$each";
|
|
3
|
-
export { $ } from "./$";
|
|
4
|
-
export { addClass } from "./addClass";
|
|
5
|
-
export { calculateFixedOffset } from "./calculateFixedOffset";
|
|
6
|
-
export { createElement } from "./createElement";
|
|
7
|
-
export { emitEvent } from "./emitEvent";
|
|
8
|
-
export { escapeSelector } from "./escapeSelector";
|
|
9
|
-
export { exists } from "./exists";
|
|
10
|
-
export { forEach } from "./forEach";
|
|
11
|
-
export { getDataAttr } from "./getDataAttr";
|
|
12
|
-
export { getDocumentHeight } from "./getDocumentHeight";
|
|
13
|
-
export { getHeight } from "./getHeight";
|
|
14
|
-
export { getListeners } from "./getListeners";
|
|
15
|
-
export { getOffset } from "./getOffset";
|
|
16
|
-
export { getOffsetTop } from "./getOffsetTop";
|
|
17
|
-
export { getOffsetTopSlim } from "./getOffsetTopSlim";
|
|
18
|
-
export { getScrollbarWidth } from "./getScrollbarWidth";
|
|
19
|
-
export { getStyleValue } from "./getStyleValue";
|
|
20
|
-
export { getVisualBackgroundColor } from "./getVisualBackgroundColor";
|
|
21
|
-
export { injectCss } from "./injectCss";
|
|
22
|
-
export { isHidden } from "./isHidden";
|
|
23
|
-
export { isInViewport } from "./isInViewport";
|
|
24
|
-
export { isNodeList } from "./isNodeList";
|
|
25
|
-
export { isTotallyScrolled } from "./isTotallyScrolled";
|
|
26
|
-
export { listenLoaded } from "./listenLoaded";
|
|
27
|
-
export { listenOnce } from "./listenOnce";
|
|
28
|
-
export { listenResize } from "./listenResize";
|
|
29
|
-
export { listenResizeDebounced } from "./listenResizeDebounced";
|
|
30
|
-
export { listenResizeThrottled } from "./listenResizeThrottled";
|
|
31
|
-
export { listenScroll } from "./listenScroll";
|
|
32
|
-
export { listenScrollDebounced } from "./listenScrollDebounced";
|
|
33
|
-
export { listenScrollThrottled } from "./listenScrollThrottled";
|
|
34
|
-
export { listen } from "./listen";
|
|
35
|
-
export { off } from "./off";
|
|
36
|
-
export { once } from "./once";
|
|
37
|
-
export { onClickOutside } from "./onClickOutside";
|
|
38
|
-
export { on } from "./on";
|
|
39
|
-
export { removeClass } from "./removeClass";
|
|
40
|
-
export { scrollTo } from "./scrollTo";
|
|
41
|
-
export { setDataAttr } from "./setDataAttr";
|
|
42
|
-
export { setVendorCSS } from "./setVendorCSS";
|
|
43
|
-
export { siblings } from "./siblings";
|
|
44
|
-
export { toArray } from "./toArray";
|
|
45
|
-
export { unlisten } from "./unlisten";
|
package/injectCss.mjs
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Inject css
|
|
3
|
-
*/ export function injectCss(id, cssString = "", root = document) {
|
|
4
|
-
let styleblock;
|
|
5
|
-
styleblock = root.getElementById(id);
|
|
6
|
-
if (!styleblock) {
|
|
7
|
-
styleblock = root.createElement("style");
|
|
8
|
-
styleblock.id = id;
|
|
9
|
-
root.body.appendChild(styleblock);
|
|
10
|
-
}
|
|
11
|
-
styleblock.innerHTML = cssString;
|
|
12
|
-
}
|
|
13
|
-
export default injectCss;
|
package/isHidden.mjs
DELETED
package/isInViewport.mjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Determine if an element is in the viewport
|
|
3
|
-
*
|
|
4
|
-
* @borrows (c) 2017 Chris Ferdinandi, MIT License, https://gomakethings.com
|
|
5
|
-
*
|
|
6
|
-
* @param elem The element
|
|
7
|
-
* @return Returns true if element is in the viewport
|
|
8
|
-
*/ export function isInViewport(elem) {
|
|
9
|
-
const distance = elem.getBoundingClientRect();
|
|
10
|
-
return distance.top >= 0 && distance.left >= 0 && distance.bottom <= (window.innerHeight || document.documentElement.clientHeight) && distance.right <= (window.innerWidth || document.documentElement.clientWidth);
|
|
11
|
-
}
|
|
12
|
-
export default isInViewport;
|
package/isNodeList.mjs
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Is node list
|
|
3
|
-
*
|
|
4
|
-
* @param nodes The object to check
|
|
5
|
-
*/ export function isNodeList(nodes) {
|
|
6
|
-
const stringRepr = Object.prototype.toString.call(nodes);
|
|
7
|
-
return typeof nodes === "object" && /^\[object (HTMLCollection|NodeList|Object)\]$/.test(stringRepr) && typeof nodes.length === "number" && (nodes.length === 0 || typeof nodes[0] === "object" && nodes[0].nodeType > 0);
|
|
8
|
-
}
|
|
9
|
-
export default isNodeList;
|
package/listen.mjs
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { activeEvents, eventHandler } from "./_listen-delegation";
|
|
2
|
-
import { on } from "./on";
|
|
3
|
-
// import { off } from "./off";
|
|
4
|
-
/**
|
|
5
|
-
* Listen an event
|
|
6
|
-
*
|
|
7
|
-
* @category listen-delegation
|
|
8
|
-
*
|
|
9
|
-
* @param types The event type or types (comma separated)
|
|
10
|
-
* @param selector The selector to run the event on
|
|
11
|
-
* @param callback The function to run when the event fires
|
|
12
|
-
*/ export function listen(types, // | `${TTypes},${TTypes}`
|
|
13
|
-
// | `${TTypes},${TTypes},${TTypes}`
|
|
14
|
-
// | `${TTypes},${TTypes},${TTypes},${TTypes}`
|
|
15
|
-
// | `${TTypes},${TTypes},${TTypes},${TTypes},${TTypes}`,
|
|
16
|
-
selector, callback) {
|
|
17
|
-
// Make sure there's a selector and callback
|
|
18
|
-
if (!selector || !callback) return;
|
|
19
|
-
// Loop through each event type
|
|
20
|
-
types.split(",").forEach(function(type) {
|
|
21
|
-
// Remove whitespace
|
|
22
|
-
type = type.trim();
|
|
23
|
-
// If no event of this type yet, setup
|
|
24
|
-
if (!activeEvents[type]) {
|
|
25
|
-
activeEvents[type] = [];
|
|
26
|
-
on(window, type, eventHandler, true);
|
|
27
|
-
}
|
|
28
|
-
// Push to active events
|
|
29
|
-
activeEvents[type]?.push({
|
|
30
|
-
selector: selector,
|
|
31
|
-
// @ts-expect-error FIXME: type...
|
|
32
|
-
callback: callback
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
export default listen;
|
package/listenLoaded.mjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { on } from "./on";
|
|
2
|
-
/**
|
|
3
|
-
* Fires a callback when the DOM content is loaded
|
|
4
|
-
*
|
|
5
|
-
* @see https://mathiasbynens.be/notes/settimeout-onload
|
|
6
|
-
*/ export function listenLoaded(handler) {
|
|
7
|
-
on(document, "DOMContentLoaded", handler);
|
|
8
|
-
// document.addEventListener("DOMContentLoaded", setTimeout(handler, 4));
|
|
9
|
-
}
|
|
10
|
-
export default listenLoaded;
|
package/listenOnce.mjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { getRunTarget } from "./_listen-delegation";
|
|
2
|
-
import { listen } from "./listen";
|
|
3
|
-
import { unlisten } from "./unlisten";
|
|
4
|
-
/**
|
|
5
|
-
* Listen an event, and automatically unlisten it after it's first run
|
|
6
|
-
*
|
|
7
|
-
* @category listen-delegation
|
|
8
|
-
*
|
|
9
|
-
* @param types The event type or types (comma separated)
|
|
10
|
-
* @param selector The selector to run the event on
|
|
11
|
-
* @param callback The function to run when the event fires
|
|
12
|
-
*/ export function listenOnce(types, selector, callback) {
|
|
13
|
-
listen(types, selector, function temp(event) {
|
|
14
|
-
const target = getRunTarget(event.target, selector);
|
|
15
|
-
callback(event, target || window);
|
|
16
|
-
unlisten(types, selector, temp);
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
export default listenOnce;
|
package/listenResize.mjs
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { on } from "./on";
|
|
2
|
-
/**
|
|
3
|
-
* Listen element's (`window` by default) _scroll_ event
|
|
4
|
-
*
|
|
5
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
6
|
-
*/ export const listenResize = (handler, el)=>on(el || window, "resize", handler);
|
|
7
|
-
export default listenResize;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import debounce from "@koine/utils/debounce";
|
|
2
|
-
import listenResize from "./listenResize";
|
|
3
|
-
/**
|
|
4
|
-
* Listen element's (`window` by default) _resize_ event debouncing the callback
|
|
5
|
-
*
|
|
6
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
7
|
-
*/ export const listenResizeDebounced = (el, ...args)=>listenResize(debounce(...args), el);
|
|
8
|
-
export default listenResizeDebounced; // EXP: with too complex overload signature...
|
|
9
|
-
// import debounce from "@koine/utils/debounce";
|
|
10
|
-
// import isUndefined from "@koine/utils/isUndefined";
|
|
11
|
-
// import listenResize from "./listenResize";
|
|
12
|
-
// /**
|
|
13
|
-
// * Listen element's (`window` by default) _resize_ event debouncing the callback
|
|
14
|
-
// *
|
|
15
|
-
// * @returns An automatic unbinding function to run to deregister the listener upon call
|
|
16
|
-
// */
|
|
17
|
-
// export function listenResizeDebounced(
|
|
18
|
-
// ...args: Parameters<typeof debounce>
|
|
19
|
-
// ): ReturnType<typeof listenResize>;
|
|
20
|
-
// export function listenResizeDebounced(
|
|
21
|
-
// el: Parameters<typeof listenResize>[1],
|
|
22
|
-
// ...args: Parameters<typeof debounce>
|
|
23
|
-
// ): ReturnType<typeof listenResize>;
|
|
24
|
-
// export function listenResizeDebounced(
|
|
25
|
-
// ...args:
|
|
26
|
-
// | [Parameters<typeof listenResize>[1], ...Parameters<typeof debounce>]
|
|
27
|
-
// | Parameters<typeof debounce>
|
|
28
|
-
// ) {
|
|
29
|
-
// if (isUndefined(args[0])) {
|
|
30
|
-
// return listenResize(debounce(...args));
|
|
31
|
-
// }
|
|
32
|
-
// return listenResize(debounce(...args.slice(1)), args[0]);
|
|
33
|
-
// }
|
|
34
|
-
// export default listenResizeDebounced;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import throttle from "@koine/utils/throttle";
|
|
2
|
-
import { listenResize } from "./listenResize";
|
|
3
|
-
/**
|
|
4
|
-
* Listen element's (`window` by default) _resize_ event throttling the callback
|
|
5
|
-
*
|
|
6
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
7
|
-
*/ export const listenResizeThrottled = (el, ...args)=>listenResize(throttle(...args), el);
|
|
8
|
-
export default listenResizeThrottled;
|
package/listenScroll.mjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { on } from "./on";
|
|
2
|
-
/**
|
|
3
|
-
* Listen element's (`window` by default) _scroll_ event
|
|
4
|
-
*
|
|
5
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
6
|
-
*/ export const listenScroll = (handler, el)=>on(el || window, "scroll", handler, {
|
|
7
|
-
capture: true,
|
|
8
|
-
passive: true
|
|
9
|
-
});
|
|
10
|
-
export default listenScroll;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import debounce from "@koine/utils/debounce";
|
|
2
|
-
import { listenScroll } from "./listenScroll";
|
|
3
|
-
/**
|
|
4
|
-
* Listen element's (`window` by default) _scroll_ event debouncing the callback
|
|
5
|
-
*
|
|
6
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
7
|
-
*/ export const listenScrollDebounced = (el, ...args)=>listenScroll(debounce(...args), el);
|
|
8
|
-
export default listenScrollDebounced;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import throttle from "@koine/utils/throttle";
|
|
2
|
-
import { listenScroll } from "./listenScroll";
|
|
3
|
-
/**
|
|
4
|
-
* Listen element's (`window` by default) _scroll_ event throttling the callback
|
|
5
|
-
*
|
|
6
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
7
|
-
*/ export const listenScrollThrottled = (el, ...args)=>listenScroll(throttle(...args), el);
|
|
8
|
-
export default listenScrollThrottled;
|
package/off.mjs
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shortcut for `removeEventListener`
|
|
3
|
-
*/ export function off(el, type, handler, options = false) {
|
|
4
|
-
if (process.env["NODE_ENV"] !== "production") {
|
|
5
|
-
if (!el) {
|
|
6
|
-
console.warn("[@koine/dom:off] unexisting DOM element");
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
if (el) el.removeEventListener(type, handler, options);
|
|
10
|
-
}
|
|
11
|
-
export default off;
|