@koine/dom 2.0.0-beta.82 → 2.0.0-beta.83
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 +29 -1
- package/_listen-delegation.esm.js +29 -1
- package/addClass.cjs.js +3 -1
- package/addClass.esm.js +3 -1
- package/createElement.cjs.js +4 -1
- package/createElement.esm.js +4 -1
- package/dom.cjs.js +11 -1
- package/dom.esm.js +11 -1
- package/domAll.cjs.js +8 -1
- package/domAll.esm.js +8 -1
- package/domEach.cjs.js +9 -1
- package/domEach.esm.js +9 -1
- package/emitEvent.cjs.js +3 -1
- package/emitEvent.esm.js +3 -1
- package/escapeSelector.cjs.js +6 -1
- package/escapeSelector.esm.js +6 -1
- package/exists.cjs.js +5 -1
- package/exists.esm.js +5 -1
- package/forEach.cjs.js +5 -1
- package/forEach.esm.js +5 -1
- package/getDataAttr.cjs.js +9 -1
- package/getDataAttr.esm.js +9 -1
- package/getDocumentHeight.cjs.js +5 -1
- package/getDocumentHeight.esm.js +5 -1
- package/getHeight.cjs.js +3 -1
- package/getHeight.esm.js +3 -1
- package/getListeners.cjs.js +9 -1
- package/getListeners.esm.js +9 -1
- package/getOffset.cjs.js +7 -1
- package/getOffset.esm.js +7 -1
- package/getOffsetTop.cjs.js +9 -1
- package/getOffsetTop.esm.js +9 -1
- package/getOffsetTopSlim.cjs.js +9 -1
- package/getOffsetTopSlim.esm.js +9 -1
- package/getScrollbarWidth.cjs.js +3 -1
- package/getScrollbarWidth.esm.js +3 -1
- package/getStyleValue.cjs.js +6 -1
- package/getStyleValue.esm.js +6 -1
- package/getVisualBackgroundColor.cjs.js +5 -1
- package/getVisualBackgroundColor.esm.js +5 -1
- package/injectCss.cjs.js +5 -1
- package/injectCss.esm.js +5 -1
- package/isHidden.cjs.js +3 -1
- package/isHidden.esm.js +3 -1
- package/isInViewport.cjs.js +8 -1
- package/isInViewport.esm.js +8 -1
- package/isNodeList.cjs.js +5 -1
- package/isNodeList.esm.js +5 -1
- package/isTotallyScrolled.cjs.js +6 -1
- package/isTotallyScrolled.esm.js +6 -1
- package/listen.cjs.js +19 -1
- package/listen.esm.js +19 -1
- package/listenLoaded.cjs.js +6 -1
- package/listenLoaded.esm.js +6 -1
- package/listenOnce.cjs.js +9 -1
- package/listenOnce.esm.js +9 -1
- package/listenResize.cjs.js +5 -1
- package/listenResize.esm.js +5 -1
- package/listenResizeDebounced.cjs.js +5 -1
- package/listenResizeDebounced.esm.js +5 -1
- package/listenResizeThrottled.cjs.js +5 -1
- package/listenResizeThrottled.esm.js +5 -1
- package/listenScroll.cjs.js +5 -1
- package/listenScroll.esm.js +5 -1
- package/listenScrollDebounced.cjs.js +5 -1
- package/listenScrollDebounced.esm.js +5 -1
- package/listenScrollThrottled.cjs.js +5 -1
- package/listenScrollThrottled.esm.js +5 -1
- package/off.cjs.js +3 -1
- package/off.esm.js +3 -1
- package/on.cjs.js +6 -1
- package/on.esm.js +6 -1
- package/onClickOutside.cjs.js +2 -1
- package/onClickOutside.esm.js +2 -1
- package/once.cjs.js +4 -1
- package/once.esm.js +4 -1
- package/package.json +2 -2
- package/removeClass.cjs.js +3 -1
- package/removeClass.esm.js +3 -1
- package/scrollTo.cjs.js +10 -1
- package/scrollTo.esm.js +10 -1
- package/setDataAttr.cjs.js +10 -1
- package/setDataAttr.esm.js +10 -1
- package/setVendorCSS.cjs.js +12 -1
- package/setVendorCSS.esm.js +12 -1
- package/siblings.cjs.js +5 -1
- package/siblings.esm.js +5 -1
- package/toArray.cjs.js +5 -1
- package/toArray.esm.js +5 -1
- package/unlisten.cjs.js +20 -1
- package/unlisten.esm.js +20 -1
|
@@ -3,7 +3,35 @@
|
|
|
3
3
|
var utils = require('@koine/utils');
|
|
4
4
|
var escapeSelector = require('./escapeSelector.cjs.js');
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* @internal
|
|
8
|
+
*//**
|
|
9
|
+
* @internal
|
|
10
|
+
*//**
|
|
11
|
+
* Active events
|
|
12
|
+
*
|
|
13
|
+
* @internal
|
|
14
|
+
*/let activeEvents={};/**
|
|
15
|
+
* Get the index for the listener
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/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};/**
|
|
19
|
+
* Check if the listener callback should run or not
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
* @param target The event.target
|
|
23
|
+
* @param selector The selector/element to check the target against
|
|
24
|
+
* @return If not false, run listener and pass the targeted element to use in the callback
|
|
25
|
+
*/let getRunTarget=(n,r)=>{// @ts-expect-error FIXME: type
|
|
26
|
+
if(["*","window",window].includes(r))return window;if(["document","document.documentElement",document,document.documentElement].// @ts-expect-error FIXME: type
|
|
27
|
+
includes(r))return document;if(utils.isString(r))return n.closest(escapeSelector.escapeSelector(r));// @ts-expect-error FIXME: type
|
|
28
|
+
if("string"!=typeof r&&r.contains){if(r===n)return n;// @ts-expect-error FIXME: type
|
|
29
|
+
if(r.contains(n))return r}return !1};/**
|
|
30
|
+
* Handle listeners after event fires
|
|
31
|
+
*
|
|
32
|
+
* @internal
|
|
33
|
+
*/let eventHandler=e=>{// if (!activeEvents[event.type]) return;
|
|
34
|
+
activeEvents[e.type]?.forEach(function(t){let n=getRunTarget(e.target,t.selector);n&&t.callback(e,n);});};
|
|
7
35
|
|
|
8
36
|
exports.activeEvents = activeEvents;
|
|
9
37
|
exports.eventHandler = eventHandler;
|
|
@@ -1,6 +1,34 @@
|
|
|
1
1
|
import { isString } from '@koine/utils';
|
|
2
2
|
import { escapeSelector } from './escapeSelector.esm.js';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*//**
|
|
7
|
+
* @internal
|
|
8
|
+
*//**
|
|
9
|
+
* Active events
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
*/let activeEvents={};/**
|
|
13
|
+
* Get the index for the listener
|
|
14
|
+
*
|
|
15
|
+
* @internal
|
|
16
|
+
*/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};/**
|
|
17
|
+
* Check if the listener callback should run or not
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
* @param target The event.target
|
|
21
|
+
* @param selector The selector/element to check the target against
|
|
22
|
+
* @return If not false, run listener and pass the targeted element to use in the callback
|
|
23
|
+
*/let getRunTarget=(n,r)=>{// @ts-expect-error FIXME: type
|
|
24
|
+
if(["*","window",window].includes(r))return window;if(["document","document.documentElement",document,document.documentElement].// @ts-expect-error FIXME: type
|
|
25
|
+
includes(r))return document;if(isString(r))return n.closest(escapeSelector(r));// @ts-expect-error FIXME: type
|
|
26
|
+
if("string"!=typeof r&&r.contains){if(r===n)return n;// @ts-expect-error FIXME: type
|
|
27
|
+
if(r.contains(n))return r}return !1};/**
|
|
28
|
+
* Handle listeners after event fires
|
|
29
|
+
*
|
|
30
|
+
* @internal
|
|
31
|
+
*/let eventHandler=e=>{// if (!activeEvents[event.type]) return;
|
|
32
|
+
activeEvents[e.type]?.forEach(function(t){let n=getRunTarget(e.target,t.selector);n&&t.callback(e,n);});};
|
|
5
33
|
|
|
6
34
|
export { activeEvents as a, getIndex as b, eventHandler as e, getRunTarget as g };
|
package/addClass.cjs.js
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Add class shortcut
|
|
7
|
+
*/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);};
|
|
6
8
|
|
|
7
9
|
exports.addClass = addClass;
|
|
8
10
|
exports["default"] = addClass;
|
package/addClass.esm.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Add class shortcut
|
|
3
|
+
*/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);};
|
|
2
4
|
|
|
3
5
|
export { addClass, addClass as default };
|
package/createElement.cjs.js
CHANGED
|
@@ -4,7 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var addClass = require('./addClass.cjs.js');
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Shortcut for `document.createElement`, allowing to to create an HTML element
|
|
9
|
+
* with a given className directly (a very common use case)
|
|
10
|
+
*/let createElement=(t,r)=>{let l=document.createElement(t);return r&&addClass.addClass(l,r),l};
|
|
8
11
|
|
|
9
12
|
exports.createElement = createElement;
|
|
10
13
|
exports["default"] = createElement;
|
package/createElement.esm.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { addClass } from './addClass.esm.js';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Shortcut for `document.createElement`, allowing to to create an HTML element
|
|
5
|
+
* with a given className directly (a very common use case)
|
|
6
|
+
*/let createElement=(t,r)=>{let l=document.createElement(t);return r&&addClass(l,r),l};
|
|
4
7
|
|
|
5
8
|
export { createElement, createElement as default };
|
package/dom.cjs.js
CHANGED
|
@@ -2,7 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Sizzle/jQuery like DOM nodes shortcut for `document.querySelector`
|
|
7
|
+
* To avoid an extra function call we inline the above `escape`
|
|
8
|
+
*
|
|
9
|
+
* @param selector DOM selector
|
|
10
|
+
* @param parent It falls back to `window.document`
|
|
11
|
+
* @param avoidEscape Whether to avoid escaping `:` in the selector string
|
|
12
|
+
* @example <caption>Basic DOM selection</caption>
|
|
13
|
+
* const $container = dom(".my-section:");
|
|
14
|
+
* const $el = dom("[data-some-attr]", $container);
|
|
15
|
+
*/let dom=(e,o,t)=>(o||document).querySelector(t?e:e.replace(/:/g,"\\:"));
|
|
6
16
|
|
|
7
17
|
exports["default"] = dom;
|
|
8
18
|
exports.dom = dom;
|
package/dom.esm.js
CHANGED
|
@@ -1,3 +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 = dom(".my-section:");
|
|
10
|
+
* const $el = dom("[data-some-attr]", $container);
|
|
11
|
+
*/let dom=(e,o,t)=>(o||document).querySelector(t?e:e.replace(/:/g,"\\:"));
|
|
2
12
|
|
|
3
13
|
export { dom as default, dom };
|
package/domAll.cjs.js
CHANGED
|
@@ -2,7 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Sizzle/jQuery like DOM nodes shortcut for `document.querySelectorAll`
|
|
7
|
+
* To avoid an extra function call we inline the above `escape`
|
|
8
|
+
*
|
|
9
|
+
* @param string selector DOM selector
|
|
10
|
+
* @param parent It falls back to `window.document`
|
|
11
|
+
* @param avoidEscape Whether to avoid escaping `:` in the selector string
|
|
12
|
+
*/let domAll=(e,l,o)=>(l||document).querySelectorAll(o?e:e.replace(/:/g,"\\:"));
|
|
6
13
|
|
|
7
14
|
exports["default"] = domAll;
|
|
8
15
|
exports.domAll = domAll;
|
package/domAll.esm.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Sizzle/jQuery like DOM nodes shortcut for `document.querySelectorAll`
|
|
3
|
+
* To avoid an extra function call we inline the above `escape`
|
|
4
|
+
*
|
|
5
|
+
* @param string selector DOM selector
|
|
6
|
+
* @param parent It falls back to `window.document`
|
|
7
|
+
* @param avoidEscape Whether to avoid escaping `:` in the selector string
|
|
8
|
+
*/let domAll=(e,l,o)=>(l||document).querySelectorAll(o?e:e.replace(/:/g,"\\:"));
|
|
2
9
|
|
|
3
10
|
export { domAll as default, domAll };
|
package/domEach.cjs.js
CHANGED
|
@@ -4,7 +4,15 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var domAll = require('./domAll.cjs.js');
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Each shortcut, iterate through a NodeList of HTMLElements retrieved with the
|
|
9
|
+
* given selector (and optionally a parent container passed as thrid arguement)
|
|
10
|
+
*
|
|
11
|
+
* @param selector DOM selector
|
|
12
|
+
* @param callback
|
|
13
|
+
* @param parent It falls back to `window.document`
|
|
14
|
+
* @param scope
|
|
15
|
+
*/let domEach=(o,t,e,m)=>{let r=domAll.domAll(o,e);for(let l=0;l<r.length;l++)t.call(m,r[l],l);};
|
|
8
16
|
|
|
9
17
|
exports["default"] = domEach;
|
|
10
18
|
exports.domEach = domEach;
|
package/domEach.esm.js
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { domAll } from './domAll.esm.js';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Each shortcut, iterate through a NodeList of HTMLElements retrieved with the
|
|
5
|
+
* given selector (and optionally a parent container passed as thrid arguement)
|
|
6
|
+
*
|
|
7
|
+
* @param selector DOM selector
|
|
8
|
+
* @param callback
|
|
9
|
+
* @param parent It falls back to `window.document`
|
|
10
|
+
* @param scope
|
|
11
|
+
*/let domEach=(o,t,e,m)=>{let r=domAll(o,e);for(let l=0;l<r.length;l++)t.call(m,r[l],l);};
|
|
4
12
|
|
|
5
13
|
export { domEach as default, domEach };
|
package/emitEvent.cjs.js
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Emit event (use only if the targeted browser supports `CustomEvent`s)
|
|
7
|
+
*/let emitEvent=(t="customEvent",e={})=>{"function"==typeof window.CustomEvent&&document.dispatchEvent(new CustomEvent(t,{bubbles:!0,detail:e}));};
|
|
6
8
|
|
|
7
9
|
exports["default"] = emitEvent;
|
|
8
10
|
exports.emitEvent = emitEvent;
|
package/emitEvent.esm.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Emit event (use only if the targeted browser supports `CustomEvent`s)
|
|
3
|
+
*/let emitEvent=(t="customEvent",e={})=>{"function"==typeof window.CustomEvent&&document.dispatchEvent(new CustomEvent(t,{bubbles:!0,detail:e}));};
|
|
2
4
|
|
|
3
5
|
export { emitEvent as default, emitEvent };
|
package/escapeSelector.cjs.js
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Escape colons to allow use class names as `.module:block__element`
|
|
7
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector#Escaping_special_characters
|
|
8
|
+
*
|
|
9
|
+
* @param selector
|
|
10
|
+
*/let escapeSelector=e=>e.replace(/:/g,"\\:");
|
|
6
11
|
|
|
7
12
|
exports["default"] = escapeSelector;
|
|
8
13
|
exports.escapeSelector = escapeSelector;
|
package/escapeSelector.esm.js
CHANGED
|
@@ -1,3 +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
|
+
*/let escapeSelector=e=>e.replace(/:/g,"\\:");
|
|
2
7
|
|
|
3
8
|
export { escapeSelector as default, escapeSelector };
|
package/exists.cjs.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Checks if passed node exist and is a valid element.
|
|
7
|
+
*
|
|
8
|
+
* @borrows @glidejs/glide/src/utils/dom (source)
|
|
9
|
+
*/let exists=e=>e&&e instanceof window.HTMLElement;
|
|
6
10
|
|
|
7
11
|
exports["default"] = exists;
|
|
8
12
|
exports.exists = exists;
|
package/exists.esm.js
CHANGED
package/forEach.cjs.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* For each, iterate through a `NodeList` or an `array` of `HTMLElement`s
|
|
7
|
+
*
|
|
8
|
+
* @param scope The optional `this` of the callback function
|
|
9
|
+
*/let forEach=(e,l,t)=>{for(let o=0;o<e.length;o++)l.call(t,e[o],o);};// /**
|
|
6
10
|
|
|
7
11
|
exports["default"] = forEach;
|
|
8
12
|
exports.forEach = forEach;
|
package/forEach.esm.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
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
|
+
*/let forEach=(e,l,t)=>{for(let o=0;o<e.length;o++)l.call(t,e[o],o);};// /**
|
|
2
6
|
|
|
3
7
|
export { forEach as default, forEach };
|
package/getDataAttr.cjs.js
CHANGED
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// TODO: maybe move to `dataset` API but consider the comment about Safari here
|
|
6
|
+
// https://stackoverflow.com/a/9201264/1938970
|
|
7
|
+
/**
|
|
8
|
+
* Get data attribute
|
|
9
|
+
*
|
|
10
|
+
* @param element
|
|
11
|
+
* @param attribute The name of the `data-{attr}`
|
|
12
|
+
*/let getDataAttr=(t,e)=>// element.dataset[attribute];
|
|
13
|
+
t.getAttribute("data-"+e);
|
|
6
14
|
|
|
7
15
|
exports["default"] = getDataAttr;
|
|
8
16
|
exports.getDataAttr = getDataAttr;
|
package/getDataAttr.esm.js
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
// TODO: maybe move to `dataset` API but consider the comment about Safari here
|
|
2
|
+
// https://stackoverflow.com/a/9201264/1938970
|
|
3
|
+
/**
|
|
4
|
+
* Get data attribute
|
|
5
|
+
*
|
|
6
|
+
* @param element
|
|
7
|
+
* @param attribute The name of the `data-{attr}`
|
|
8
|
+
*/let getDataAttr=(t,e)=>// element.dataset[attribute];
|
|
9
|
+
t.getAttribute("data-"+e);
|
|
2
10
|
|
|
3
11
|
export { getDataAttr as default, getDataAttr };
|
package/getDocumentHeight.cjs.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Determine the document's height
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/cferdinandi/smooth-scroll (credits)
|
|
9
|
+
*/let getDocumentHeight=()=>{let{body:t,documentElement:e}=document;return Math.max(t.scrollHeight,e.scrollHeight,t.offsetHeight,e.offsetHeight,t.clientHeight,e.clientHeight)};
|
|
6
10
|
|
|
7
11
|
exports["default"] = getDocumentHeight;
|
|
8
12
|
exports.getDocumentHeight = getDocumentHeight;
|
package/getDocumentHeight.esm.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Determine the document's height
|
|
3
|
+
*
|
|
4
|
+
* @see https://github.com/cferdinandi/smooth-scroll (credits)
|
|
5
|
+
*/let getDocumentHeight=()=>{let{body:t,documentElement:e}=document;return Math.max(t.scrollHeight,e.scrollHeight,t.offsetHeight,e.offsetHeight,t.clientHeight,e.clientHeight)};
|
|
2
6
|
|
|
3
7
|
export { getDocumentHeight as default, getDocumentHeight };
|
package/getHeight.cjs.js
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get element height
|
|
7
|
+
*/let getHeight=e=>parseInt(window.getComputedStyle(e).height,10);
|
|
6
8
|
|
|
7
9
|
exports["default"] = getHeight;
|
|
8
10
|
exports.getHeight = getHeight;
|
package/getHeight.esm.js
CHANGED
package/getListeners.cjs.js
CHANGED
|
@@ -6,7 +6,15 @@ var _listenDelegation = require('./_listen-delegation.cjs.js');
|
|
|
6
6
|
require('@koine/utils');
|
|
7
7
|
require('./escapeSelector.cjs.js');
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Get an immutable copy of all active event listeners
|
|
11
|
+
*
|
|
12
|
+
* @category listen-delegation
|
|
13
|
+
*
|
|
14
|
+
* @return Active event listeners
|
|
15
|
+
*/let getListeners=()=>{let t={};for(let r in _listenDelegation.activeEvents)// if (activeEvents.hasOwnProperty(type)) {
|
|
16
|
+
t[r]=_listenDelegation.activeEvents[r];// }
|
|
17
|
+
return t};
|
|
10
18
|
|
|
11
19
|
exports["default"] = getListeners;
|
|
12
20
|
exports.getListeners = getListeners;
|
package/getListeners.esm.js
CHANGED
|
@@ -2,6 +2,14 @@ import { a as activeEvents } from './_listen-delegation.esm.js';
|
|
|
2
2
|
import '@koine/utils';
|
|
3
3
|
import './escapeSelector.esm.js';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get an immutable copy of all active event listeners
|
|
7
|
+
*
|
|
8
|
+
* @category listen-delegation
|
|
9
|
+
*
|
|
10
|
+
* @return Active event listeners
|
|
11
|
+
*/let getListeners=()=>{let t={};for(let r in activeEvents)// if (activeEvents.hasOwnProperty(type)) {
|
|
12
|
+
t[r]=activeEvents[r];// }
|
|
13
|
+
return t};
|
|
6
14
|
|
|
7
15
|
export { getListeners as default, getListeners };
|
package/getOffset.cjs.js
CHANGED
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get an element's distance from the top and left of the Document.
|
|
7
|
+
*
|
|
8
|
+
* @param elem The HTML node element
|
|
9
|
+
* @return Distance from the top and left in pixels
|
|
10
|
+
*/let getOffset=e=>{let f=0,t=0;for(;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)f+=e.offsetLeft-e.scrollLeft,t+=e.offsetTop-e.scrollTop,// @ts-expect-error nevermind?
|
|
11
|
+
e=e.offsetParent;return {top:t,left:f}};
|
|
6
12
|
|
|
7
13
|
exports["default"] = getOffset;
|
|
8
14
|
exports.getOffset = getOffset;
|
package/getOffset.esm.js
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
-
|
|
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
|
+
*/let getOffset=e=>{let f=0,t=0;for(;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)f+=e.offsetLeft-e.scrollLeft,t+=e.offsetTop-e.scrollTop,// @ts-expect-error nevermind?
|
|
7
|
+
e=e.offsetParent;return {top:t,left:f}};
|
|
2
8
|
|
|
3
9
|
export { getOffset as default, getOffset };
|
package/getOffsetTop.cjs.js
CHANGED
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get an element's distance from the top of the Document.
|
|
7
|
+
*
|
|
8
|
+
* @see https://vanillajstoolkit.com/helpers/getoffsettop/
|
|
9
|
+
*
|
|
10
|
+
* @param elem The HTML node element
|
|
11
|
+
* @return Distance from the top in pixels
|
|
12
|
+
*/let getOffsetTop=e=>{let t=0;if(e.offsetParent)for(;e;)t+=e.offsetTop,// @ts-expect-error nevermind?
|
|
13
|
+
e=e.offsetParent;return t>=0?t:0};
|
|
6
14
|
|
|
7
15
|
exports["default"] = getOffsetTop;
|
|
8
16
|
exports.getOffsetTop = getOffsetTop;
|
package/getOffsetTop.esm.js
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
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
|
+
*/let getOffsetTop=e=>{let t=0;if(e.offsetParent)for(;e;)t+=e.offsetTop,// @ts-expect-error nevermind?
|
|
9
|
+
e=e.offsetParent;return t>=0?t:0};
|
|
2
10
|
|
|
3
11
|
export { getOffsetTop as default, getOffsetTop };
|
package/getOffsetTopSlim.cjs.js
CHANGED
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get an element's distance from the top of the Document (using more modern/performant
|
|
7
|
+
* technique compared to {@link ./getOffsetTop})
|
|
8
|
+
*
|
|
9
|
+
* @see https://stackoverflow.com/q/5598743/1938970
|
|
10
|
+
*
|
|
11
|
+
* @param elem The HTML node element
|
|
12
|
+
* @return Distance from the top in pixels
|
|
13
|
+
*/let getOffsetTopSlim=t=>t.getBoundingClientRect().top+window.scrollY;
|
|
6
14
|
|
|
7
15
|
exports["default"] = getOffsetTopSlim;
|
|
8
16
|
exports.getOffsetTopSlim = getOffsetTopSlim;
|
package/getOffsetTopSlim.esm.js
CHANGED
|
@@ -1,3 +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
|
+
*/let getOffsetTopSlim=t=>t.getBoundingClientRect().top+window.scrollY;
|
|
2
10
|
|
|
3
11
|
export { getOffsetTopSlim as default, getOffsetTopSlim };
|
package/getScrollbarWidth.cjs.js
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get scrollbar's current width
|
|
7
|
+
*/let getScrollbarWidth=t=>window.innerWidth-(t||document.documentElement).clientWidth;
|
|
6
8
|
|
|
7
9
|
exports["default"] = getScrollbarWidth;
|
|
8
10
|
exports.getScrollbarWidth = getScrollbarWidth;
|
package/getScrollbarWidth.esm.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Get scrollbar's current width
|
|
3
|
+
*/let getScrollbarWidth=t=>window.innerWidth-(t||document.documentElement).clientWidth;
|
|
2
4
|
|
|
3
5
|
export { getScrollbarWidth as default, getScrollbarWidth };
|
package/getStyleValue.cjs.js
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Return the current style value for an element CSS property
|
|
7
|
+
*
|
|
8
|
+
* @param el The element to compute
|
|
9
|
+
* @param prop The style property
|
|
10
|
+
*/let getStyleValue=(e,t)=>getComputedStyle(e,null).getPropertyValue(t);
|
|
6
11
|
|
|
7
12
|
exports["default"] = getStyleValue;
|
|
8
13
|
exports.getStyleValue = getStyleValue;
|
package/getStyleValue.esm.js
CHANGED
|
@@ -1,3 +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
|
+
*/let getStyleValue=(e,t)=>getComputedStyle(e,null).getPropertyValue(t);
|
|
2
7
|
|
|
3
8
|
export { getStyleValue as default, getStyleValue };
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Get the background color of an element eventually looking recursively into
|
|
7
|
+
* its parents, if nothing is found it returns a `#fff` background
|
|
8
|
+
*/let getVisualBackgroundColor=r=>{if(!r)return "#fff";// if (!elem) return transparent;
|
|
9
|
+
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};
|
|
6
10
|
|
|
7
11
|
exports["default"] = getVisualBackgroundColor;
|
|
8
12
|
exports.getVisualBackgroundColor = getVisualBackgroundColor;
|
|
@@ -1,3 +1,7 @@
|
|
|
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
|
+
*/let getVisualBackgroundColor=r=>{if(!r)return "#fff";// if (!elem) return transparent;
|
|
5
|
+
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};
|
|
2
6
|
|
|
3
7
|
export { getVisualBackgroundColor as default, getVisualBackgroundColor };
|
package/injectCss.cjs.js
CHANGED
|
@@ -4,7 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var dom = require('./dom.cjs.js');
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Inject css
|
|
9
|
+
*
|
|
10
|
+
* @param id The `<style>` HTMLElement's `id`
|
|
11
|
+
*/let injectCss=(t,d="",n=document)=>{let o=dom.dom("#"+t);o||((o=n.createElement("style")).id=t,n.body.appendChild(o)),o.innerHTML=d;};
|
|
8
12
|
|
|
9
13
|
exports["default"] = injectCss;
|
|
10
14
|
exports.injectCss = injectCss;
|
package/injectCss.esm.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { dom } from './dom.esm.js';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Inject css
|
|
5
|
+
*
|
|
6
|
+
* @param id The `<style>` HTMLElement's `id`
|
|
7
|
+
*/let injectCss=(t,d="",n=document)=>{let o=dom("#"+t);o||((o=n.createElement("style")).id=t,n.body.appendChild(o)),o.innerHTML=d;};
|
|
4
8
|
|
|
5
9
|
export { injectCss as default, injectCss };
|
package/isHidden.cjs.js
CHANGED
package/isHidden.esm.js
CHANGED