@koine/dom 2.0.0-beta.7 → 2.0.0-beta.70
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/$.d.ts +1 -13
- package/$all.d.ts +1 -0
- package/$each.d.ts +1 -11
- package/_listen-delegation.d.ts +4 -33
- package/addClass.d.ts +1 -5
- package/calculateFixedOffset.d.ts +1 -2
- package/createElement.d.ts +2 -9
- package/emitEvent.d.ts +1 -5
- package/escapeSelector.d.ts +1 -8
- package/exists.d.ts +1 -7
- package/forEach.d.ts +1 -8
- package/getDataAttr.d.ts +1 -8
- package/getDocumentHeight.d.ts +1 -7
- package/getHeight.d.ts +1 -5
- package/getListeners.d.ts +1 -9
- package/getOffset.d.ts +1 -8
- package/getOffsetTop.d.ts +1 -10
- package/getOffsetTopSlim.d.ts +1 -11
- package/getScrollbarWidth.d.ts +1 -5
- package/getStyleValue.d.ts +1 -8
- package/getVisualBackgroundColor.d.ts +1 -6
- package/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +143 -0
- package/index.cjs.mjs +2 -0
- package/index.d.ts +3 -3
- package/index.esm.js +95 -0
- package/injectCss.d.ts +1 -5
- package/isHidden.d.ts +1 -5
- package/isInViewport.d.ts +1 -10
- package/isNodeList.d.ts +1 -7
- package/isTotallyScrolled.d.ts +1 -8
- package/listen.d.ts +1 -11
- package/listenLoaded.d.ts +1 -7
- package/listenOnce.d.ts +1 -11
- package/listenResize.d.ts +1 -7
- package/listenResizeDebounced.d.ts +2 -8
- package/listenResizeThrottled.d.ts +1 -7
- package/listenScroll.d.ts +1 -7
- package/listenScrollDebounced.d.ts +1 -7
- package/listenScrollThrottled.d.ts +1 -7
- package/off.d.ts +1 -5
- package/on.d.ts +1 -7
- package/onClickOutside.d.ts +1 -1
- package/once.d.ts +2 -7
- package/package.json +15 -7
- package/removeClass.d.ts +1 -5
- package/scrollTo.d.ts +1 -12
- package/setDataAttr.d.ts +1 -9
- package/setVendorCSS.d.ts +1 -9
- package/siblings.d.ts +1 -7
- package/toArray.d.ts +1 -7
- package/types.d.ts +1 -6
- package/unlisten.d.ts +1 -11
- package/$$.d.ts +0 -10
- package/$$.js +0 -29
- package/$$.mjs +0 -11
- package/$.js +0 -32
- package/$.mjs +0 -14
- package/$each.js +0 -27
- package/$each.mjs +0 -16
- package/_listen-delegation.js +0 -83
- package/_listen-delegation.mjs +0 -77
- package/addClass.js +0 -30
- package/addClass.mjs +0 -12
- package/calculateFixedOffset.js +0 -27
- package/calculateFixedOffset.mjs +0 -9
- package/createElement.js +0 -28
- package/createElement.mjs +0 -15
- package/emitEvent.js +0 -28
- package/emitEvent.mjs +0 -10
- package/escapeSelector.js +0 -27
- package/escapeSelector.mjs +0 -9
- package/exists.js +0 -29
- package/exists.mjs +0 -11
- package/forEach.js +0 -28
- package/forEach.mjs +0 -10
- package/getDataAttr.js +0 -30
- package/getDataAttr.mjs +0 -12
- package/getDocumentHeight.js +0 -27
- package/getDocumentHeight.mjs +0 -9
- package/getHeight.js +0 -24
- package/getHeight.mjs +0 -6
- package/getListeners.js +0 -29
- package/getListeners.mjs +0 -17
- package/getOffset.js +0 -38
- package/getOffset.mjs +0 -20
- package/getOffsetTop.js +0 -37
- package/getOffsetTop.mjs +0 -19
- package/getOffsetTopSlim.js +0 -30
- package/getOffsetTopSlim.mjs +0 -12
- package/getScrollbarWidth.js +0 -24
- package/getScrollbarWidth.mjs +0 -6
- package/getStyleValue.js +0 -27
- package/getStyleValue.mjs +0 -9
- package/getVisualBackgroundColor.js +0 -37
- package/getVisualBackgroundColor.mjs +0 -19
- package/index.js +0 -192
- package/index.mjs +0 -45
- package/injectCss.js +0 -31
- package/injectCss.mjs +0 -13
- package/isHidden.js +0 -24
- package/isHidden.mjs +0 -6
- package/isInViewport.js +0 -30
- package/isInViewport.mjs +0 -12
- package/isNodeList.js +0 -27
- package/isNodeList.mjs +0 -9
- package/isTotallyScrolled.js +0 -27
- package/isTotallyScrolled.mjs +0 -9
- package/listen.js +0 -45
- package/listen.mjs +0 -36
- package/listenLoaded.js +0 -24
- package/listenLoaded.mjs +0 -10
- package/listenOnce.js +0 -29
- package/listenOnce.mjs +0 -19
- package/listenResize.js +0 -21
- package/listenResize.mjs +0 -7
- package/listenResizeDebounced.js +0 -50
- package/listenResizeDebounced.mjs +0 -34
- package/listenResizeThrottled.js +0 -23
- package/listenResizeThrottled.mjs +0 -8
- package/listenScroll.js +0 -24
- package/listenScroll.mjs +0 -10
- package/listenScrollDebounced.js +0 -23
- package/listenScrollDebounced.mjs +0 -8
- package/listenScrollThrottled.js +0 -23
- package/listenScrollThrottled.mjs +0 -8
- package/off.js +0 -27
- package/off.mjs +0 -11
- package/on.js +0 -36
- package/on.mjs +0 -21
- package/onClickOutside.js +0 -25
- package/onClickOutside.mjs +0 -15
- package/once.js +0 -29
- package/once.mjs +0 -13
- package/removeClass.js +0 -30
- package/removeClass.mjs +0 -12
- package/scrollTo.js +0 -48
- package/scrollTo.mjs +0 -39
- package/setDataAttr.js +0 -35
- package/setDataAttr.mjs +0 -17
- package/setVendorCSS.js +0 -38
- package/setVendorCSS.mjs +0 -20
- package/siblings.js +0 -36
- package/siblings.mjs +0 -18
- package/toArray.js +0 -26
- package/toArray.mjs +0 -8
- package/types.js +0 -4
- package/types.mjs +0 -1
- package/typings.d.ts +0 -4
- package/unlisten.js +0 -45
- package/unlisten.mjs +0 -35
package/$.d.ts
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Sizzle/jQuery like DOM nodes shortcut for `document.querySelector`
|
|
3
|
-
* To avoid an extra function call we inline the above `escape`
|
|
4
|
-
*
|
|
5
|
-
* @param selector DOM selector
|
|
6
|
-
* @param parent It falls back to `window.document`
|
|
7
|
-
* @param avoidEscape Whether to avoid escaping `:` in the selector string
|
|
8
|
-
* @example <caption>Basic DOM selection</caption>
|
|
9
|
-
* const $container = $(".my-section:");
|
|
10
|
-
* const $el = $("[data-some-attr]", $container);
|
|
11
|
-
*/
|
|
12
|
-
export declare function $<T extends Element = HTMLElement>(selector: string, parent?: HTMLElement | Document | null, avoidEscape?: boolean): T;
|
|
13
|
-
export default $;
|
|
1
|
+
export declare let $: <T extends Element = HTMLElement>(selector: string, parent?: HTMLElement | Document | null, avoidEscape?: boolean) => T;
|
package/$all.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare let $all: <T extends Element = HTMLElement>(selector: string, parent?: Element | HTMLElement | Document | null, avoidEscape?: boolean) => NodeListOf<T>;
|
package/$each.d.ts
CHANGED
|
@@ -1,11 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Each shortcut, iterate through a NodeList of HTMLElements retrieved with the
|
|
3
|
-
* given selector (and optionally a parent container passed as thrid arguement)
|
|
4
|
-
*
|
|
5
|
-
* @param selector DOM selector
|
|
6
|
-
* @param callback
|
|
7
|
-
* @param parent It falls back to `window.document`
|
|
8
|
-
* @param scope
|
|
9
|
-
*/
|
|
10
|
-
export declare function $each<T extends Element = HTMLElement>(selector: string, callback: ($element: T, index: number) => any, parent?: HTMLElement, scope?: object): void;
|
|
11
|
-
export default $each;
|
|
1
|
+
export declare let $each: <T extends Element = HTMLElement>(selector: string, callback: ($element: T, index: number) => any, parent?: HTMLElement, scope?: object) => void;
|
package/_listen-delegation.d.ts
CHANGED
|
@@ -1,39 +1,10 @@
|
|
|
1
1
|
import type { AnyDOMEvent, AnyDOMEventTarget, AnyDOMEventType } from "./types";
|
|
2
|
-
/**
|
|
3
|
-
* @internal
|
|
4
|
-
*/
|
|
5
2
|
export type EventCallback<TTarget extends AnyDOMEventTarget = AnyDOMEventTarget, TType extends AnyDOMEventType = AnyDOMEventType> = (event: AnyDOMEvent<TType>, desiredTarget: TTarget) => any;
|
|
6
|
-
/**
|
|
7
|
-
* @internal
|
|
8
|
-
*/
|
|
9
3
|
export type ListenEvent = {
|
|
10
4
|
selector: string;
|
|
11
5
|
callback: EventCallback;
|
|
12
6
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
*/
|
|
18
|
-
export declare const activeEvents: Partial<Record<AnyDOMEventType, ListenEvent[]>>;
|
|
19
|
-
/**
|
|
20
|
-
* Get the index for the listener
|
|
21
|
-
*
|
|
22
|
-
* @internal
|
|
23
|
-
*/
|
|
24
|
-
export declare function getIndex(arr: ListenEvent[], selector: string, callback: EventCallback): number;
|
|
25
|
-
/**
|
|
26
|
-
* Check if the listener callback should run or not
|
|
27
|
-
*
|
|
28
|
-
* @internal
|
|
29
|
-
* @param target The event.target
|
|
30
|
-
* @param selector The selector/element to check the target against
|
|
31
|
-
* @return If not false, run listener and pass the targeted element to use in the callback
|
|
32
|
-
*/
|
|
33
|
-
export declare function getRunTarget(target: Element, selector: string | Window | Document | Element): false | Element | Document | Window | null;
|
|
34
|
-
/**
|
|
35
|
-
* Handle listeners after event fires
|
|
36
|
-
*
|
|
37
|
-
* @internal
|
|
38
|
-
*/
|
|
39
|
-
export declare function eventHandler(event: Event): void;
|
|
7
|
+
export declare let activeEvents: Partial<Record<AnyDOMEventType, ListenEvent[]>>;
|
|
8
|
+
export declare let getIndex: (arr: ListenEvent[], selector: string, callback: EventCallback) => number;
|
|
9
|
+
export declare let getRunTarget: (target: Element, selector: string | Window | Document | Element) => false | Window | Document | Element | null;
|
|
10
|
+
export declare let eventHandler: (event: Event) => void;
|
package/addClass.d.ts
CHANGED
|
@@ -1,5 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Add class shortcut
|
|
3
|
-
*/
|
|
4
|
-
export declare function addClass<T extends Element = HTMLElement>(el?: T, className?: string): void;
|
|
5
|
-
export default addClass;
|
|
1
|
+
export declare let addClass: <T extends Element = HTMLElement>(el?: T | undefined, className?: string) => void;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export declare
|
|
2
|
-
export default calculateFixedOffset;
|
|
1
|
+
export declare let calculateFixedOffset: (selector?: string) => number;
|
package/createElement.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* with a given className directly (a very common use case)
|
|
4
|
-
*
|
|
5
|
-
* @param type
|
|
6
|
-
* @param className
|
|
7
|
-
*/
|
|
8
|
-
export declare function createElement(type: string, className?: string): HTMLElement;
|
|
9
|
-
export default createElement;
|
|
1
|
+
import type { LiteralUnion } from "@koine/utils";
|
|
2
|
+
export declare let createElement: <TType extends LiteralUnion<keyof HTMLElementTagNameMap, string>, TElement extends HTMLElement = TType extends keyof HTMLElementTagNameMap ? HTMLElementTagNameMap[TType] : HTMLElement>(type: TType, className?: string) => TElement;
|
package/emitEvent.d.ts
CHANGED
package/escapeSelector.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Escape colons to allow use class names as `.module:block__element`
|
|
3
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector#Escaping_special_characters
|
|
4
|
-
*
|
|
5
|
-
* @param selector
|
|
6
|
-
*/
|
|
7
|
-
export declare function escapeSelector(selector: string): string;
|
|
8
|
-
export default escapeSelector;
|
|
1
|
+
export declare let escapeSelector: (selector: string) => string;
|
package/exists.d.ts
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Checks if passed node exist and is a valid element.
|
|
3
|
-
*
|
|
4
|
-
* @borrows @glidejs/glide/src/utils/dom (source)
|
|
5
|
-
*/
|
|
6
|
-
export declare function exists(node?: Element): boolean;
|
|
7
|
-
export default exists;
|
|
1
|
+
export declare let exists: (node?: Element) => boolean | undefined;
|
package/forEach.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
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
|
-
*/
|
|
6
|
-
export declare function forEach<TScope = object>(nodes: HTMLElement[], callback: (this: TScope, $element: HTMLElement, index: number) => any, scope?: TScope): void;
|
|
7
|
-
export declare function forEach<TScope = object>(nodes: NodeListOf<HTMLElement> | HTMLElement[], callback: (this: TScope, $element: HTMLElement, index: number) => any, scope?: TScope): void;
|
|
8
|
-
export default forEach;
|
|
1
|
+
export declare let forEach: <T extends HTMLElement, TScope = object>(nodes: NodeListOf<T> | T[], callback: (this: TScope, $element: T, index: number) => any, scope?: TScope | undefined) => void;
|
package/getDataAttr.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Get data attribute
|
|
3
|
-
*
|
|
4
|
-
* @param element
|
|
5
|
-
* @param attribute The name of the `data-{attr}`
|
|
6
|
-
*/
|
|
7
|
-
export declare function getDataAttr(element: HTMLElement, attribute: string): string | null;
|
|
8
|
-
export default getDataAttr;
|
|
1
|
+
export declare let getDataAttr: (element: HTMLElement, attribute: string) => string | null;
|
package/getDocumentHeight.d.ts
CHANGED
package/getHeight.d.ts
CHANGED
package/getListeners.d.ts
CHANGED
|
@@ -1,9 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Get an immutable copy of all active event listeners
|
|
3
|
-
*
|
|
4
|
-
* @category listen-delegation
|
|
5
|
-
*
|
|
6
|
-
* @return Active event listeners
|
|
7
|
-
*/
|
|
8
|
-
export declare function getListeners(): Partial<Record<import("./types").AnyDOMEventType, import("./_listen-delegation").ListenEvent[]>>;
|
|
9
|
-
export default getListeners;
|
|
1
|
+
export declare let getListeners: () => Partial<Record<import("./types").AnyDOMEventType, import("./_listen-delegation").ListenEvent[]>>;
|
package/getOffset.d.ts
CHANGED
|
@@ -1,11 +1,4 @@
|
|
|
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
|
-
*/
|
|
7
|
-
export declare function getOffset(elem: HTMLElement): {
|
|
1
|
+
export declare let getOffset: <T extends HTMLElement>(elem: T) => {
|
|
8
2
|
top: number;
|
|
9
3
|
left: number;
|
|
10
4
|
};
|
|
11
|
-
export default getOffset;
|
package/getOffsetTop.d.ts
CHANGED
|
@@ -1,10 +1 @@
|
|
|
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
|
-
*/
|
|
9
|
-
export declare function getOffsetTop(elem: HTMLElement): number;
|
|
10
|
-
export default getOffsetTop;
|
|
1
|
+
export declare let getOffsetTop: <T extends HTMLElement>(elem: T) => number;
|
package/getOffsetTopSlim.d.ts
CHANGED
|
@@ -1,11 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Get an element's distance from the top of the Document (using more modern/performant
|
|
3
|
-
* technique compared to {@link ./getOffsetTop})
|
|
4
|
-
*
|
|
5
|
-
* @see https://stackoverflow.com/q/5598743/1938970
|
|
6
|
-
*
|
|
7
|
-
* @param elem The HTML node element
|
|
8
|
-
* @return Distance from the top in pixels
|
|
9
|
-
*/
|
|
10
|
-
export declare function getOffsetTopSlim(elem: HTMLElement): number;
|
|
11
|
-
export default getOffsetTopSlim;
|
|
1
|
+
export declare let getOffsetTopSlim: <T extends HTMLElement>(elem: T) => number;
|
package/getScrollbarWidth.d.ts
CHANGED
package/getStyleValue.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
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
|
-
*/
|
|
7
|
-
export declare function getStyleValue(el: HTMLElement, prop: string): string;
|
|
8
|
-
export default getStyleValue;
|
|
1
|
+
export declare let getStyleValue: <T extends HTMLElement>(el: T, prop: string) => string;
|
|
@@ -1,6 +1 @@
|
|
|
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
|
-
*/
|
|
5
|
-
export declare function getVisualBackgroundColor(elem?: null | HTMLElement): string;
|
|
6
|
-
export default getVisualBackgroundColor;
|
|
1
|
+
export declare let getVisualBackgroundColor: (elem?: null | HTMLElement) => string;
|
package/index.cjs.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./index";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports._default = require('./index.cjs.js').default;
|
package/index.cjs.js
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var utils = require('@koine/utils');
|
|
6
|
+
|
|
7
|
+
let $=(e,r,t)=>(r||document).querySelector(t?e:e.replace(/:/g,"\\:"));
|
|
8
|
+
|
|
9
|
+
let $all=(e,l,r)=>(l||document).querySelectorAll(r?e:e.replace(/:/g,"\\:"));
|
|
10
|
+
|
|
11
|
+
let $each=(e,t,o,r)=>{let a=$all(e,o);for(let l=0;l<a.length;l++)t.call(r,a[l],l);};
|
|
12
|
+
|
|
13
|
+
let addClass=(e,s="")=>{if("development"===process.env.NODE_ENV&&!e){console.warn("[@koine/dom:addClass] unexisting DOM element");return}e&&e.classList.add(s);};
|
|
14
|
+
|
|
15
|
+
let calculateFixedOffset=(t="[data-fixed]")=>{let f=0;return $each(t,e=>{f+=e.offsetHeight;}),f};
|
|
16
|
+
|
|
17
|
+
let createElement=(t,r)=>{let l=document.createElement(t);return r&&addClass(l,r),l};
|
|
18
|
+
|
|
19
|
+
let emitEvent=(t="customEvent",e={})=>{"function"==typeof window.CustomEvent&&document.dispatchEvent(new CustomEvent(t,{bubbles:!0,detail:e}));};
|
|
20
|
+
|
|
21
|
+
let escapeSelector=e=>e.replace(/:/g,"\\:");
|
|
22
|
+
|
|
23
|
+
let exists=e=>e&&e instanceof window.HTMLElement;
|
|
24
|
+
|
|
25
|
+
let forEach=(l,e,t)=>{for(let o=0;o<l.length;o++)e.call(t,l[o],o);};
|
|
26
|
+
|
|
27
|
+
let getDataAttr=(t,e)=>t.getAttribute("data-"+e);
|
|
28
|
+
|
|
29
|
+
let getDocumentHeight=()=>{let{body:t,documentElement:e}=document;return Math.max(t.scrollHeight,e.scrollHeight,t.offsetHeight,e.offsetHeight,t.clientHeight,e.clientHeight)};
|
|
30
|
+
|
|
31
|
+
let getHeight=e=>parseInt(window.getComputedStyle(e).height,10);
|
|
32
|
+
|
|
33
|
+
let activeEvents={};let getIndex=(e,t,n)=>{for(let r=0;r<e.length;r++)if(e[r].selector===t&&e[r].callback.toString()===n.toString())return r;return -1};let getRunTarget=(n,r)=>{if(["*","window",window].includes(r))return window;if(["document","document.documentElement",document,document.documentElement].includes(r))return document;if(utils.isString(r))return n.closest(escapeSelector(r));if("string"!=typeof r&&r.contains){if(r===n)return n;if(r.contains(n))return r}return !1};let eventHandler=e=>{activeEvents[e.type]?.forEach(function(t){let n=getRunTarget(e.target,t.selector);n&&t.callback(e,n);});};
|
|
34
|
+
|
|
35
|
+
let getListeners=()=>{let t={};for(let r in activeEvents)t[r]=activeEvents[r];return t};
|
|
36
|
+
|
|
37
|
+
let getOffset=f=>{let e=0,t=0;for(;f&&!isNaN(f.offsetLeft)&&!isNaN(f.offsetTop);)e+=f.offsetLeft-f.scrollLeft,t+=f.offsetTop-f.scrollTop,f=f.offsetParent;return {top:t,left:e}};
|
|
38
|
+
|
|
39
|
+
let getOffsetTop=e=>{let t=0;if(e.offsetParent)for(;e;)t+=e.offsetTop,e=e.offsetParent;return t>=0?t:0};
|
|
40
|
+
|
|
41
|
+
let getOffsetTopSlim=t=>t.getBoundingClientRect().top+window.scrollY;
|
|
42
|
+
|
|
43
|
+
let getScrollbarWidth=t=>window.innerWidth-(t||document.documentElement).clientWidth;
|
|
44
|
+
|
|
45
|
+
let getStyleValue=(e,t)=>getComputedStyle(e,null).getPropertyValue(t);
|
|
46
|
+
|
|
47
|
+
let getVisualBackgroundColor=r=>{if(!r)return "#fff";let e=window.getComputedStyle(r).backgroundColor;if("rgba(0, 0, 0, 0)"===e||"transparent"===e){let e=r.parentElement;return e?getVisualBackgroundColor(e):"#fff"}return e};
|
|
48
|
+
|
|
49
|
+
let injectCss=(t,n="",d=document)=>{let i=$("#"+t);i||((i=d.createElement("style")).id=t,d.body.appendChild(i)),i.innerHTML=n;};
|
|
50
|
+
|
|
51
|
+
let isHidden=e=>!e||null===e.offsetParent;
|
|
52
|
+
|
|
53
|
+
let isInViewport=t=>{let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)};
|
|
54
|
+
|
|
55
|
+
let isNodeList=t=>{let e=Object.prototype.toString.call(t);return "object"==typeof t&&/^\[object (HTMLCollection|NodeList|Object)\]$/.test(e)&&"number"==typeof t.length&&(0===t.length||"object"==typeof t[0]&&t[0].nodeType>0)};
|
|
56
|
+
|
|
57
|
+
let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
|
|
58
|
+
|
|
59
|
+
let off=(e,n,o,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(n,o,t);};
|
|
60
|
+
|
|
61
|
+
let on=(n,t,i,r=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,i,r),()=>off(n,t,i)):utils.noop;
|
|
62
|
+
|
|
63
|
+
let listenLoaded=e=>on(document,"DOMContentLoaded",e);
|
|
64
|
+
|
|
65
|
+
let listen=(e,l,r)=>{l&&r&&e.split(",").forEach(function(e){activeEvents[e=e.trim()]||(activeEvents[e]=[],on(window,e,eventHandler,!0)),activeEvents[e]?.push({selector:l,callback:r});});};
|
|
66
|
+
|
|
67
|
+
let unlisten=(l,o,n)=>{l.split(",").forEach(l=>{let f=activeEvents[l=l.trim()];if(!f)return;if(f.length<2||!o){delete activeEvents[l],off(window,l,eventHandler,!0);return}let m=getIndex(f,o,n);m<0||activeEvents[l].splice(m,1);});};
|
|
68
|
+
|
|
69
|
+
let listenOnce=(n,o,r)=>listen(n,o,function e(l){let m=getRunTarget(l.target,o);r(l,m||window),unlisten(n,o,e);});
|
|
70
|
+
|
|
71
|
+
let listenResize=(i,o)=>on(o||window,"resize",i);
|
|
72
|
+
|
|
73
|
+
let listenResizeDebounced=(o,...t)=>listenResize(utils.debounce(...t),o);
|
|
74
|
+
|
|
75
|
+
let listenResizeThrottled=(i,...o)=>listenResize(utils.throttle(...o),i);
|
|
76
|
+
|
|
77
|
+
let listenScroll=(l,r)=>on(r||window,"scroll",l,{capture:!0,passive:!0});
|
|
78
|
+
|
|
79
|
+
let listenScrollDebounced=(e,...r)=>listenScroll(utils.debounce(...r),e);
|
|
80
|
+
|
|
81
|
+
let listenScrollThrottled=(t,...r)=>listenScroll(utils.throttle(...r),t);
|
|
82
|
+
|
|
83
|
+
let once=(t,e,f,m=!1)=>{let n=r=>{f(r),off(t,e,n);};return on(t,e,n,m)};
|
|
84
|
+
|
|
85
|
+
let onClickOutside=(c,e,r=!1)=>{let i=t=>{!c.contains(t.target)&&(e(t),r&&n());},n=()=>{off(document,"click",i);};return on(document,"click",i),n};
|
|
86
|
+
|
|
87
|
+
let removeClass=(e,s="")=>{("development"!==process.env.NODE_ENV||e)&&e&&e.classList.remove(s);};
|
|
88
|
+
|
|
89
|
+
let scrollTo=(i,l,e,r)=>{let w=i.toFixed();if(l){let i=!1,r=function(){window.pageYOffset.toFixed()===w&&(off(window,"scroll",r),i=!0,l());};on(window,"scroll",r),r(),e&&setTimeout(()=>{i||(off(window,"scroll",r),l());},e);}window.scrollTo({top:i,behavior:r||"smooth"});};
|
|
90
|
+
|
|
91
|
+
let setDataAttr=(t,e,r)=>{if(null==r){t.removeAttribute("data-"+e);return}t.setAttribute("data-"+e,r.toString());};
|
|
92
|
+
|
|
93
|
+
let setVendorCSS=(e,t,s)=>{let l=t.charAt(0).toUpperCase()+t.slice(1);e.style["webkit"+l]=s,e.style["moz"+l]=s,e.style["ms"+l]=s,e.style["o"+l]=s,e.style[t]=s;};
|
|
94
|
+
|
|
95
|
+
let siblings=e=>{if(e&&e.parentNode){let r=e.parentNode.firstChild,t=[];for(;r;r=r.nextSibling)1===r.nodeType&&r!==e&&t.push(r);return t}return []};
|
|
96
|
+
|
|
97
|
+
let toArray=r=>Array.prototype.slice.call(r);
|
|
98
|
+
|
|
99
|
+
exports.$ = $;
|
|
100
|
+
exports.$all = $all;
|
|
101
|
+
exports.$each = $each;
|
|
102
|
+
exports.addClass = addClass;
|
|
103
|
+
exports.calculateFixedOffset = calculateFixedOffset;
|
|
104
|
+
exports.createElement = createElement;
|
|
105
|
+
exports.emitEvent = emitEvent;
|
|
106
|
+
exports.escapeSelector = escapeSelector;
|
|
107
|
+
exports.exists = exists;
|
|
108
|
+
exports.forEach = forEach;
|
|
109
|
+
exports.getDataAttr = getDataAttr;
|
|
110
|
+
exports.getDocumentHeight = getDocumentHeight;
|
|
111
|
+
exports.getHeight = getHeight;
|
|
112
|
+
exports.getListeners = getListeners;
|
|
113
|
+
exports.getOffset = getOffset;
|
|
114
|
+
exports.getOffsetTop = getOffsetTop;
|
|
115
|
+
exports.getOffsetTopSlim = getOffsetTopSlim;
|
|
116
|
+
exports.getScrollbarWidth = getScrollbarWidth;
|
|
117
|
+
exports.getStyleValue = getStyleValue;
|
|
118
|
+
exports.getVisualBackgroundColor = getVisualBackgroundColor;
|
|
119
|
+
exports.injectCss = injectCss;
|
|
120
|
+
exports.isHidden = isHidden;
|
|
121
|
+
exports.isInViewport = isInViewport;
|
|
122
|
+
exports.isNodeList = isNodeList;
|
|
123
|
+
exports.isTotallyScrolled = isTotallyScrolled;
|
|
124
|
+
exports.listen = listen;
|
|
125
|
+
exports.listenLoaded = listenLoaded;
|
|
126
|
+
exports.listenOnce = listenOnce;
|
|
127
|
+
exports.listenResize = listenResize;
|
|
128
|
+
exports.listenResizeDebounced = listenResizeDebounced;
|
|
129
|
+
exports.listenResizeThrottled = listenResizeThrottled;
|
|
130
|
+
exports.listenScroll = listenScroll;
|
|
131
|
+
exports.listenScrollDebounced = listenScrollDebounced;
|
|
132
|
+
exports.listenScrollThrottled = listenScrollThrottled;
|
|
133
|
+
exports.off = off;
|
|
134
|
+
exports.on = on;
|
|
135
|
+
exports.onClickOutside = onClickOutside;
|
|
136
|
+
exports.once = once;
|
|
137
|
+
exports.removeClass = removeClass;
|
|
138
|
+
exports.scrollTo = scrollTo;
|
|
139
|
+
exports.setDataAttr = setDataAttr;
|
|
140
|
+
exports.setVendorCSS = setVendorCSS;
|
|
141
|
+
exports.siblings = siblings;
|
|
142
|
+
exports.toArray = toArray;
|
|
143
|
+
exports.unlisten = unlisten;
|
package/index.cjs.mjs
ADDED
package/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { $$ } from "./$$";
|
|
2
|
-
export { $each } from "./$each";
|
|
3
1
|
export { $ } from "./$";
|
|
2
|
+
export { $all } from "./$all";
|
|
3
|
+
export { $each } from "./$each";
|
|
4
4
|
export { addClass } from "./addClass";
|
|
5
5
|
export { calculateFixedOffset } from "./calculateFixedOffset";
|
|
6
6
|
export { createElement } from "./createElement";
|
|
@@ -43,4 +43,4 @@ export { setVendorCSS } from "./setVendorCSS";
|
|
|
43
43
|
export { siblings } from "./siblings";
|
|
44
44
|
export { toArray } from "./toArray";
|
|
45
45
|
export { unlisten } from "./unlisten";
|
|
46
|
-
export type { AnyDOMEventTarget, AnyDOMEventTargetLoose } from "./types";
|
|
46
|
+
export type { AnyDOMEventTarget, AnyDOMEventTargetLoose, AnyDOMEventType, AnyDOMEvent, } from "./types";
|
package/index.esm.js
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { isString, noop, debounce, throttle } from '@koine/utils';
|
|
2
|
+
|
|
3
|
+
let $=(e,r,t)=>(r||document).querySelector(t?e:e.replace(/:/g,"\\:"));
|
|
4
|
+
|
|
5
|
+
let $all=(e,l,r)=>(l||document).querySelectorAll(r?e:e.replace(/:/g,"\\:"));
|
|
6
|
+
|
|
7
|
+
let $each=(e,t,o,r)=>{let a=$all(e,o);for(let l=0;l<a.length;l++)t.call(r,a[l],l);};
|
|
8
|
+
|
|
9
|
+
let addClass=(e,s="")=>{if("development"===process.env.NODE_ENV&&!e){console.warn("[@koine/dom:addClass] unexisting DOM element");return}e&&e.classList.add(s);};
|
|
10
|
+
|
|
11
|
+
let calculateFixedOffset=(t="[data-fixed]")=>{let f=0;return $each(t,e=>{f+=e.offsetHeight;}),f};
|
|
12
|
+
|
|
13
|
+
let createElement=(t,r)=>{let l=document.createElement(t);return r&&addClass(l,r),l};
|
|
14
|
+
|
|
15
|
+
let emitEvent=(t="customEvent",e={})=>{"function"==typeof window.CustomEvent&&document.dispatchEvent(new CustomEvent(t,{bubbles:!0,detail:e}));};
|
|
16
|
+
|
|
17
|
+
let escapeSelector=e=>e.replace(/:/g,"\\:");
|
|
18
|
+
|
|
19
|
+
let exists=e=>e&&e instanceof window.HTMLElement;
|
|
20
|
+
|
|
21
|
+
let forEach=(l,e,t)=>{for(let o=0;o<l.length;o++)e.call(t,l[o],o);};
|
|
22
|
+
|
|
23
|
+
let getDataAttr=(t,e)=>t.getAttribute("data-"+e);
|
|
24
|
+
|
|
25
|
+
let getDocumentHeight=()=>{let{body:t,documentElement:e}=document;return Math.max(t.scrollHeight,e.scrollHeight,t.offsetHeight,e.offsetHeight,t.clientHeight,e.clientHeight)};
|
|
26
|
+
|
|
27
|
+
let getHeight=e=>parseInt(window.getComputedStyle(e).height,10);
|
|
28
|
+
|
|
29
|
+
let activeEvents={};let getIndex=(e,t,n)=>{for(let r=0;r<e.length;r++)if(e[r].selector===t&&e[r].callback.toString()===n.toString())return r;return -1};let getRunTarget=(n,r)=>{if(["*","window",window].includes(r))return window;if(["document","document.documentElement",document,document.documentElement].includes(r))return document;if(isString(r))return n.closest(escapeSelector(r));if("string"!=typeof r&&r.contains){if(r===n)return n;if(r.contains(n))return r}return !1};let eventHandler=e=>{activeEvents[e.type]?.forEach(function(t){let n=getRunTarget(e.target,t.selector);n&&t.callback(e,n);});};
|
|
30
|
+
|
|
31
|
+
let getListeners=()=>{let t={};for(let r in activeEvents)t[r]=activeEvents[r];return t};
|
|
32
|
+
|
|
33
|
+
let getOffset=f=>{let e=0,t=0;for(;f&&!isNaN(f.offsetLeft)&&!isNaN(f.offsetTop);)e+=f.offsetLeft-f.scrollLeft,t+=f.offsetTop-f.scrollTop,f=f.offsetParent;return {top:t,left:e}};
|
|
34
|
+
|
|
35
|
+
let getOffsetTop=e=>{let t=0;if(e.offsetParent)for(;e;)t+=e.offsetTop,e=e.offsetParent;return t>=0?t:0};
|
|
36
|
+
|
|
37
|
+
let getOffsetTopSlim=t=>t.getBoundingClientRect().top+window.scrollY;
|
|
38
|
+
|
|
39
|
+
let getScrollbarWidth=t=>window.innerWidth-(t||document.documentElement).clientWidth;
|
|
40
|
+
|
|
41
|
+
let getStyleValue=(e,t)=>getComputedStyle(e,null).getPropertyValue(t);
|
|
42
|
+
|
|
43
|
+
let getVisualBackgroundColor=r=>{if(!r)return "#fff";let e=window.getComputedStyle(r).backgroundColor;if("rgba(0, 0, 0, 0)"===e||"transparent"===e){let e=r.parentElement;return e?getVisualBackgroundColor(e):"#fff"}return e};
|
|
44
|
+
|
|
45
|
+
let injectCss=(t,n="",d=document)=>{let i=$("#"+t);i||((i=d.createElement("style")).id=t,d.body.appendChild(i)),i.innerHTML=n;};
|
|
46
|
+
|
|
47
|
+
let isHidden=e=>!e||null===e.offsetParent;
|
|
48
|
+
|
|
49
|
+
let isInViewport=t=>{let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)};
|
|
50
|
+
|
|
51
|
+
let isNodeList=t=>{let e=Object.prototype.toString.call(t);return "object"==typeof t&&/^\[object (HTMLCollection|NodeList|Object)\]$/.test(e)&&"number"==typeof t.length&&(0===t.length||"object"==typeof t[0]&&t[0].nodeType>0)};
|
|
52
|
+
|
|
53
|
+
let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
|
|
54
|
+
|
|
55
|
+
let off=(e,n,o,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(n,o,t);};
|
|
56
|
+
|
|
57
|
+
let on=(n,t,i,r=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,i,r),()=>off(n,t,i)):noop;
|
|
58
|
+
|
|
59
|
+
let listenLoaded=e=>on(document,"DOMContentLoaded",e);
|
|
60
|
+
|
|
61
|
+
let listen=(e,l,r)=>{l&&r&&e.split(",").forEach(function(e){activeEvents[e=e.trim()]||(activeEvents[e]=[],on(window,e,eventHandler,!0)),activeEvents[e]?.push({selector:l,callback:r});});};
|
|
62
|
+
|
|
63
|
+
let unlisten=(l,o,n)=>{l.split(",").forEach(l=>{let f=activeEvents[l=l.trim()];if(!f)return;if(f.length<2||!o){delete activeEvents[l],off(window,l,eventHandler,!0);return}let m=getIndex(f,o,n);m<0||activeEvents[l].splice(m,1);});};
|
|
64
|
+
|
|
65
|
+
let listenOnce=(n,o,r)=>listen(n,o,function e(l){let m=getRunTarget(l.target,o);r(l,m||window),unlisten(n,o,e);});
|
|
66
|
+
|
|
67
|
+
let listenResize=(i,o)=>on(o||window,"resize",i);
|
|
68
|
+
|
|
69
|
+
let listenResizeDebounced=(o,...t)=>listenResize(debounce(...t),o);
|
|
70
|
+
|
|
71
|
+
let listenResizeThrottled=(i,...o)=>listenResize(throttle(...o),i);
|
|
72
|
+
|
|
73
|
+
let listenScroll=(l,r)=>on(r||window,"scroll",l,{capture:!0,passive:!0});
|
|
74
|
+
|
|
75
|
+
let listenScrollDebounced=(e,...r)=>listenScroll(debounce(...r),e);
|
|
76
|
+
|
|
77
|
+
let listenScrollThrottled=(t,...r)=>listenScroll(throttle(...r),t);
|
|
78
|
+
|
|
79
|
+
let once=(t,e,f,m=!1)=>{let n=r=>{f(r),off(t,e,n);};return on(t,e,n,m)};
|
|
80
|
+
|
|
81
|
+
let onClickOutside=(c,e,r=!1)=>{let i=t=>{!c.contains(t.target)&&(e(t),r&&n());},n=()=>{off(document,"click",i);};return on(document,"click",i),n};
|
|
82
|
+
|
|
83
|
+
let removeClass=(e,s="")=>{("development"!==process.env.NODE_ENV||e)&&e&&e.classList.remove(s);};
|
|
84
|
+
|
|
85
|
+
let scrollTo=(i,l,e,r)=>{let w=i.toFixed();if(l){let i=!1,r=function(){window.pageYOffset.toFixed()===w&&(off(window,"scroll",r),i=!0,l());};on(window,"scroll",r),r(),e&&setTimeout(()=>{i||(off(window,"scroll",r),l());},e);}window.scrollTo({top:i,behavior:r||"smooth"});};
|
|
86
|
+
|
|
87
|
+
let setDataAttr=(t,e,r)=>{if(null==r){t.removeAttribute("data-"+e);return}t.setAttribute("data-"+e,r.toString());};
|
|
88
|
+
|
|
89
|
+
let setVendorCSS=(e,t,s)=>{let l=t.charAt(0).toUpperCase()+t.slice(1);e.style["webkit"+l]=s,e.style["moz"+l]=s,e.style["ms"+l]=s,e.style["o"+l]=s,e.style[t]=s;};
|
|
90
|
+
|
|
91
|
+
let siblings=e=>{if(e&&e.parentNode){let r=e.parentNode.firstChild,t=[];for(;r;r=r.nextSibling)1===r.nodeType&&r!==e&&t.push(r);return t}return []};
|
|
92
|
+
|
|
93
|
+
let toArray=r=>Array.prototype.slice.call(r);
|
|
94
|
+
|
|
95
|
+
export { $, $all, $each, addClass, calculateFixedOffset, createElement, emitEvent, escapeSelector, exists, forEach, getDataAttr, getDocumentHeight, getHeight, getListeners, getOffset, getOffsetTop, getOffsetTopSlim, getScrollbarWidth, getStyleValue, getVisualBackgroundColor, injectCss, isHidden, isInViewport, isNodeList, isTotallyScrolled, listen, listenLoaded, listenOnce, listenResize, listenResizeDebounced, listenResizeThrottled, listenScroll, listenScrollDebounced, listenScrollThrottled, off, on, onClickOutside, once, removeClass, scrollTo, setDataAttr, setVendorCSS, siblings, toArray, unlisten };
|
package/injectCss.d.ts
CHANGED
package/isHidden.d.ts
CHANGED
package/isInViewport.d.ts
CHANGED
|
@@ -1,10 +1 @@
|
|
|
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
|
-
*/
|
|
9
|
-
export declare function isInViewport(elem: Element): boolean;
|
|
10
|
-
export default isInViewport;
|
|
1
|
+
export declare let isInViewport: <T extends Element>(elem: T) => boolean;
|
package/isNodeList.d.ts
CHANGED
package/isTotallyScrolled.d.ts
CHANGED
|
@@ -1,8 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Is element totally scrolled
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/willmcpo/body-scroll-lock/blob/master/src/bodyScrollLock.js#L116
|
|
5
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions
|
|
6
|
-
*/
|
|
7
|
-
export declare function isTotallyScrolled(el?: HTMLElement): boolean;
|
|
8
|
-
export default isTotallyScrolled;
|
|
1
|
+
export declare let isTotallyScrolled: <T extends HTMLElement>(el?: T | null | undefined) => boolean;
|
package/listen.d.ts
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
1
|
import { type EventCallback } from "./_listen-delegation";
|
|
2
2
|
import type { AnyDOMEventTarget, AnyDOMEventType } from "./types";
|
|
3
|
-
|
|
4
|
-
* Listen an event
|
|
5
|
-
*
|
|
6
|
-
* @category listen-delegation
|
|
7
|
-
*
|
|
8
|
-
* @param types The event type or types (comma separated)
|
|
9
|
-
* @param selector The selector to run the event on
|
|
10
|
-
* @param callback The function to run when the event fires
|
|
11
|
-
*/
|
|
12
|
-
export declare function listen<TTypes extends AnyDOMEventType, TTarget extends AnyDOMEventTarget = AnyDOMEventTarget>(types: TTypes, selector: string, callback: EventCallback<TTarget, TTypes>): void;
|
|
13
|
-
export default listen;
|
|
3
|
+
export declare let listen: <TTypes extends AnyDOMEventType, TTarget extends AnyDOMEventTarget = AnyDOMEventTarget>(types: TTypes, selector: string, callback: EventCallback<TTarget, TTypes>) => void;
|
package/listenLoaded.d.ts
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Fires a callback when the DOM content is loaded
|
|
3
|
-
*
|
|
4
|
-
* @see https://mathiasbynens.be/notes/settimeout-onload
|
|
5
|
-
*/
|
|
6
|
-
export declare function listenLoaded(handler: (event: Event) => any): void;
|
|
7
|
-
export default listenLoaded;
|
|
1
|
+
export declare let listenLoaded: (handler: (event: Event) => any) => () => void;
|
package/listenOnce.d.ts
CHANGED
|
@@ -1,12 +1,2 @@
|
|
|
1
1
|
import { type EventCallback } from "./_listen-delegation";
|
|
2
|
-
|
|
3
|
-
* Listen an event, and automatically unlisten it after it's first run
|
|
4
|
-
*
|
|
5
|
-
* @category listen-delegation
|
|
6
|
-
*
|
|
7
|
-
* @param types The event type or types (comma separated)
|
|
8
|
-
* @param selector The selector to run the event on
|
|
9
|
-
* @param callback The function to run when the event fires
|
|
10
|
-
*/
|
|
11
|
-
export declare function listenOnce(types: string, selector: string, callback: EventCallback): void;
|
|
12
|
-
export default listenOnce;
|
|
2
|
+
export declare let listenOnce: (types: string, selector: string, callback: EventCallback) => void;
|
package/listenResize.d.ts
CHANGED
|
@@ -1,8 +1,2 @@
|
|
|
1
1
|
import type { AnyDOMEventTargetLoose } from "./types";
|
|
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
|
-
*/
|
|
7
|
-
export declare const listenResize: (handler: () => void, el?: AnyDOMEventTargetLoose) => () => void;
|
|
8
|
-
export default listenResize;
|
|
2
|
+
export declare let listenResize: (handler: () => void, el?: AnyDOMEventTargetLoose) => () => void;
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
import listenResize from "./listenResize";
|
|
2
|
-
|
|
3
|
-
* Listen element's (`window` by default) _resize_ event debouncing the callback
|
|
4
|
-
*
|
|
5
|
-
* @returns An automatic unbinding function to run to deregister the listener upon call
|
|
6
|
-
*/
|
|
7
|
-
export declare const listenResizeDebounced: (el?: Parameters<typeof listenResize>[1], fn: (...args: any[]) => any, wait?: number | undefined, immediate?: boolean | undefined) => () => void;
|
|
8
|
-
export default listenResizeDebounced;
|
|
1
|
+
import { listenResize } from "./listenResize";
|
|
2
|
+
export declare let listenResizeDebounced: (el?: Parameters<typeof listenResize>[1], fn: (...args: any[]) => any, wait?: number | undefined, immediate?: boolean | undefined) => () => void;
|