@koine/dom 2.0.0-beta.82 → 2.0.0-beta.84

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.
Files changed (91) hide show
  1. package/_listen-delegation.cjs.js +29 -1
  2. package/_listen-delegation.esm.js +29 -1
  3. package/addClass.cjs.js +3 -1
  4. package/addClass.esm.js +3 -1
  5. package/createElement.cjs.js +4 -1
  6. package/createElement.esm.js +4 -1
  7. package/dom.cjs.js +11 -1
  8. package/dom.esm.js +11 -1
  9. package/domAll.cjs.js +8 -1
  10. package/domAll.esm.js +8 -1
  11. package/domEach.cjs.js +9 -1
  12. package/domEach.esm.js +9 -1
  13. package/emitEvent.cjs.js +3 -1
  14. package/emitEvent.esm.js +3 -1
  15. package/escapeSelector.cjs.js +6 -1
  16. package/escapeSelector.esm.js +6 -1
  17. package/exists.cjs.js +5 -1
  18. package/exists.esm.js +5 -1
  19. package/forEach.cjs.js +5 -1
  20. package/forEach.esm.js +5 -1
  21. package/getDataAttr.cjs.js +9 -1
  22. package/getDataAttr.esm.js +9 -1
  23. package/getDocumentHeight.cjs.js +5 -1
  24. package/getDocumentHeight.esm.js +5 -1
  25. package/getHeight.cjs.js +3 -1
  26. package/getHeight.esm.js +3 -1
  27. package/getListeners.cjs.js +9 -1
  28. package/getListeners.esm.js +9 -1
  29. package/getOffset.cjs.js +7 -1
  30. package/getOffset.esm.js +7 -1
  31. package/getOffsetTop.cjs.js +9 -1
  32. package/getOffsetTop.esm.js +9 -1
  33. package/getOffsetTopSlim.cjs.js +9 -1
  34. package/getOffsetTopSlim.esm.js +9 -1
  35. package/getScrollbarWidth.cjs.js +3 -1
  36. package/getScrollbarWidth.esm.js +3 -1
  37. package/getStyleValue.cjs.js +6 -1
  38. package/getStyleValue.esm.js +6 -1
  39. package/getVisualBackgroundColor.cjs.js +5 -1
  40. package/getVisualBackgroundColor.esm.js +5 -1
  41. package/injectCss.cjs.js +5 -1
  42. package/injectCss.esm.js +5 -1
  43. package/isHidden.cjs.js +3 -1
  44. package/isHidden.esm.js +3 -1
  45. package/isInViewport.cjs.js +8 -1
  46. package/isInViewport.esm.js +8 -1
  47. package/isNodeList.cjs.js +5 -1
  48. package/isNodeList.esm.js +5 -1
  49. package/isTotallyScrolled.cjs.js +6 -1
  50. package/isTotallyScrolled.esm.js +6 -1
  51. package/listen.cjs.js +19 -1
  52. package/listen.esm.js +19 -1
  53. package/listenLoaded.cjs.js +6 -1
  54. package/listenLoaded.esm.js +6 -1
  55. package/listenOnce.cjs.js +9 -1
  56. package/listenOnce.esm.js +9 -1
  57. package/listenResize.cjs.js +5 -1
  58. package/listenResize.esm.js +5 -1
  59. package/listenResizeDebounced.cjs.js +5 -1
  60. package/listenResizeDebounced.esm.js +5 -1
  61. package/listenResizeThrottled.cjs.js +5 -1
  62. package/listenResizeThrottled.esm.js +5 -1
  63. package/listenScroll.cjs.js +5 -1
  64. package/listenScroll.esm.js +5 -1
  65. package/listenScrollDebounced.cjs.js +5 -1
  66. package/listenScrollDebounced.esm.js +5 -1
  67. package/listenScrollThrottled.cjs.js +5 -1
  68. package/listenScrollThrottled.esm.js +5 -1
  69. package/off.cjs.js +3 -1
  70. package/off.esm.js +3 -1
  71. package/on.cjs.js +6 -1
  72. package/on.esm.js +6 -1
  73. package/onClickOutside.cjs.js +2 -1
  74. package/onClickOutside.esm.js +2 -1
  75. package/once.cjs.js +4 -1
  76. package/once.esm.js +4 -1
  77. package/package.json +2 -2
  78. package/removeClass.cjs.js +3 -1
  79. package/removeClass.esm.js +3 -1
  80. package/scrollTo.cjs.js +10 -1
  81. package/scrollTo.esm.js +10 -1
  82. package/setDataAttr.cjs.js +10 -1
  83. package/setDataAttr.esm.js +10 -1
  84. package/setVendorCSS.cjs.js +12 -1
  85. package/setVendorCSS.esm.js +12 -1
  86. package/siblings.cjs.js +5 -1
  87. package/siblings.esm.js +5 -1
  88. package/toArray.cjs.js +5 -1
  89. package/toArray.esm.js +5 -1
  90. package/unlisten.cjs.js +20 -1
  91. package/unlisten.esm.js +20 -1
@@ -2,7 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- 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)};
5
+ /**
6
+ * Determine if an element is in the viewport
7
+ *
8
+ * @borrows (c) 2017 Chris Ferdinandi, MIT License, https://gomakethings.com
9
+ *
10
+ * @param elem The element
11
+ * @return Returns true if element is in the viewport
12
+ */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)};
6
13
 
7
14
  exports["default"] = isInViewport;
8
15
  exports.isInViewport = isInViewport;
@@ -1,3 +1,10 @@
1
- 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)};
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
+ */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)};
2
9
 
3
10
  export { isInViewport as default, isInViewport };
package/isNodeList.cjs.js CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- 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)};
5
+ /**
6
+ * Is node list
7
+ *
8
+ * @param nodes The object to check
9
+ */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)};
6
10
 
7
11
  exports["default"] = isNodeList;
8
12
  exports.isNodeList = isNodeList;
package/isNodeList.esm.js CHANGED
@@ -1,3 +1,7 @@
1
- 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)};
1
+ /**
2
+ * Is node list
3
+ *
4
+ * @param nodes The object to check
5
+ */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)};
2
6
 
3
7
  export { isNodeList as default, isNodeList };
@@ -2,7 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
5
+ /**
6
+ * Is element totally scrolled
7
+ *
8
+ * @see https://github.com/willmcpo/body-scroll-lock/blob/master/src/bodyScrollLock.js#L116
9
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions
10
+ */let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
6
11
 
7
12
  exports["default"] = isTotallyScrolled;
8
13
  exports.isTotallyScrolled = isTotallyScrolled;
@@ -1,3 +1,8 @@
1
- let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
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
+ */let isTotallyScrolled=l=>!!l&&l.scrollHeight-l.scrollTop<=l.clientHeight;
2
7
 
3
8
  export { isTotallyScrolled as default, isTotallyScrolled };
package/listen.cjs.js CHANGED
@@ -8,7 +8,25 @@ require('@koine/utils');
8
8
  require('./escapeSelector.cjs.js');
9
9
  require('./off.cjs.js');
10
10
 
11
- let listen=(i,l,r)=>{l&&r&&i.split(",").forEach(function(i){_listenDelegation.activeEvents[i=i.trim()]||(_listenDelegation.activeEvents[i]=[],on.on(window,i,_listenDelegation.eventHandler,!0)),_listenDelegation.activeEvents[i]?.push({selector:l,callback:r});});};
11
+ /**
12
+ * Listen an event
13
+ *
14
+ * @category listen-delegation
15
+ *
16
+ * @param types The event type or types (comma separated)
17
+ * @param selector The selector to run the event on
18
+ * @param callback The function to run when the event fires
19
+ */let listen=(i,// | `${TTypes},${TTypes}`
20
+ // | `${TTypes},${TTypes},${TTypes}`
21
+ // | `${TTypes},${TTypes},${TTypes},${TTypes}`
22
+ // | `${TTypes},${TTypes},${TTypes},${TTypes},${TTypes}`,
23
+ l,r)=>{// Make sure there's a selector and callback
24
+ l&&r&&// Loop through each event type
25
+ i.split(",").forEach(function(i){// If no event of this type yet, setup
26
+ _listenDelegation.activeEvents[// Remove whitespace
27
+ i=i.trim()]||(_listenDelegation.activeEvents[i]=[],on.on(window,i,_listenDelegation.eventHandler,!0)),// Push to active events
28
+ _listenDelegation.activeEvents[i]?.push({selector:l,// @ts-expect-error FIXME: type...
29
+ callback:r});});};
12
30
 
13
31
  exports["default"] = listen;
14
32
  exports.listen = listen;
package/listen.esm.js CHANGED
@@ -4,6 +4,24 @@ import '@koine/utils';
4
4
  import './escapeSelector.esm.js';
5
5
  import './off.esm.js';
6
6
 
7
- let listen=(i,l,r)=>{l&&r&&i.split(",").forEach(function(i){activeEvents[i=i.trim()]||(activeEvents[i]=[],on(window,i,eventHandler,!0)),activeEvents[i]?.push({selector:l,callback:r});});};
7
+ /**
8
+ * Listen an event
9
+ *
10
+ * @category listen-delegation
11
+ *
12
+ * @param types The event type or types (comma separated)
13
+ * @param selector The selector to run the event on
14
+ * @param callback The function to run when the event fires
15
+ */let listen=(i,// | `${TTypes},${TTypes}`
16
+ // | `${TTypes},${TTypes},${TTypes}`
17
+ // | `${TTypes},${TTypes},${TTypes},${TTypes}`
18
+ // | `${TTypes},${TTypes},${TTypes},${TTypes},${TTypes}`,
19
+ l,r)=>{// Make sure there's a selector and callback
20
+ l&&r&&// Loop through each event type
21
+ i.split(",").forEach(function(i){// If no event of this type yet, setup
22
+ activeEvents[// Remove whitespace
23
+ i=i.trim()]||(activeEvents[i]=[],on(window,i,eventHandler,!0)),// Push to active events
24
+ activeEvents[i]?.push({selector:l,// @ts-expect-error FIXME: type...
25
+ callback:r});});};
8
26
 
9
27
  export { listen as default, listen };
@@ -6,7 +6,12 @@ var on = require('./on.cjs.js');
6
6
  require('@koine/utils');
7
7
  require('./off.cjs.js');
8
8
 
9
- let listenLoaded=o=>on.on(document,"DOMContentLoaded",o);
9
+ /**
10
+ * Fires a callback when the DOM content is loaded
11
+ *
12
+ * @see https://mathiasbynens.be/notes/settimeout-onload
13
+ */let listenLoaded=o=>// document.addEventListener("DOMContentLoaded", setTimeout(handler, 4));
14
+ on.on(document,"DOMContentLoaded",o);
10
15
 
11
16
  exports["default"] = listenLoaded;
12
17
  exports.listenLoaded = listenLoaded;
@@ -2,6 +2,11 @@ import { on } from './on.esm.js';
2
2
  import '@koine/utils';
3
3
  import './off.esm.js';
4
4
 
5
- let listenLoaded=o=>on(document,"DOMContentLoaded",o);
5
+ /**
6
+ * Fires a callback when the DOM content is loaded
7
+ *
8
+ * @see https://mathiasbynens.be/notes/settimeout-onload
9
+ */let listenLoaded=o=>// document.addEventListener("DOMContentLoaded", setTimeout(handler, 4));
10
+ on(document,"DOMContentLoaded",o);
6
11
 
7
12
  export { listenLoaded as default, listenLoaded };
package/listenOnce.cjs.js CHANGED
@@ -10,7 +10,15 @@ require('./escapeSelector.cjs.js');
10
10
  require('./on.cjs.js');
11
11
  require('./off.cjs.js');
12
12
 
13
- let listenOnce=(i,o,l)=>listen.listen(i,o,function e(r){let m=_listenDelegation.getRunTarget(r.target,o);l(r,m||window),unlisten.unlisten(i,o,e);});
13
+ /**
14
+ * Listen an event, and automatically unlisten it after it's first run
15
+ *
16
+ * @category listen-delegation
17
+ *
18
+ * @param types The event type or types (comma separated)
19
+ * @param selector The selector to run the event on
20
+ * @param callback The function to run when the event fires
21
+ */let listenOnce=(i,o,l)=>listen.listen(i,o,function e(r){let m=_listenDelegation.getRunTarget(r.target,o);l(r,m||window),unlisten.unlisten(i,o,e);});
14
22
 
15
23
  exports["default"] = listenOnce;
16
24
  exports.listenOnce = listenOnce;
package/listenOnce.esm.js CHANGED
@@ -6,6 +6,14 @@ import './escapeSelector.esm.js';
6
6
  import './on.esm.js';
7
7
  import './off.esm.js';
8
8
 
9
- let listenOnce=(i,o,l)=>listen(i,o,function e(r){let m=getRunTarget(r.target,o);l(r,m||window),unlisten(i,o,e);});
9
+ /**
10
+ * Listen an event, and automatically unlisten it after it's first run
11
+ *
12
+ * @category listen-delegation
13
+ *
14
+ * @param types The event type or types (comma separated)
15
+ * @param selector The selector to run the event on
16
+ * @param callback The function to run when the event fires
17
+ */let listenOnce=(i,o,l)=>listen(i,o,function e(r){let m=getRunTarget(r.target,o);l(r,m||window),unlisten(i,o,e);});
10
18
 
11
19
  export { listenOnce as default, listenOnce };
@@ -6,7 +6,11 @@ var on = require('./on.cjs.js');
6
6
  require('@koine/utils');
7
7
  require('./off.cjs.js');
8
8
 
9
- let listenResize=(i,t)=>on.on(t||window,"resize",i);
9
+ /**
10
+ * Listen element's (`window` by default) _scroll_ event
11
+ *
12
+ * @returns An automatic unbinding function to run to deregister the listener upon call
13
+ */let listenResize=(i,t)=>on.on(t||window,"resize",i);
10
14
 
11
15
  exports["default"] = listenResize;
12
16
  exports.listenResize = listenResize;
@@ -2,6 +2,10 @@ import { on } from './on.esm.js';
2
2
  import '@koine/utils';
3
3
  import './off.esm.js';
4
4
 
5
- let listenResize=(i,t)=>on(t||window,"resize",i);
5
+ /**
6
+ * Listen element's (`window` by default) _scroll_ event
7
+ *
8
+ * @returns An automatic unbinding function to run to deregister the listener upon call
9
+ */let listenResize=(i,t)=>on(t||window,"resize",i);
6
10
 
7
11
  export { listenResize as default, listenResize };
@@ -7,7 +7,11 @@ var listenResize = require('./listenResize.cjs.js');
7
7
  require('./on.cjs.js');
8
8
  require('./off.cjs.js');
9
9
 
10
- let listenResizeDebounced=(t,...o)=>listenResize.listenResize(utils.debounce(...o),t);
10
+ /**
11
+ * Listen element's (`window` by default) _resize_ event debouncing the callback
12
+ *
13
+ * @returns An automatic unbinding function to run to deregister the listener upon call
14
+ */let listenResizeDebounced=(t,...o)=>listenResize.listenResize(utils.debounce(...o),t);// EXP: with too complex overload signature...
11
15
 
12
16
  exports["default"] = listenResizeDebounced;
13
17
  exports.listenResizeDebounced = listenResizeDebounced;
@@ -3,6 +3,10 @@ import { listenResize } from './listenResize.esm.js';
3
3
  import './on.esm.js';
4
4
  import './off.esm.js';
5
5
 
6
- let listenResizeDebounced=(t,...o)=>listenResize(debounce(...o),t);
6
+ /**
7
+ * Listen element's (`window` by default) _resize_ event debouncing the callback
8
+ *
9
+ * @returns An automatic unbinding function to run to deregister the listener upon call
10
+ */let listenResizeDebounced=(t,...o)=>listenResize(debounce(...o),t);// EXP: with too complex overload signature...
7
11
 
8
12
  export { listenResizeDebounced as default, listenResizeDebounced };
@@ -7,7 +7,11 @@ var listenResize = require('./listenResize.cjs.js');
7
7
  require('./on.cjs.js');
8
8
  require('./off.cjs.js');
9
9
 
10
- let listenResizeThrottled=(i,...o)=>listenResize.listenResize(utils.throttle(...o),i);
10
+ /**
11
+ * Listen element's (`window` by default) _resize_ event throttling the callback
12
+ *
13
+ * @returns An automatic unbinding function to run to deregister the listener upon call
14
+ */let listenResizeThrottled=(i,...o)=>listenResize.listenResize(utils.throttle(...o),i);
11
15
 
12
16
  exports["default"] = listenResizeThrottled;
13
17
  exports.listenResizeThrottled = listenResizeThrottled;
@@ -3,6 +3,10 @@ import { listenResize } from './listenResize.esm.js';
3
3
  import './on.esm.js';
4
4
  import './off.esm.js';
5
5
 
6
- let listenResizeThrottled=(i,...o)=>listenResize(throttle(...o),i);
6
+ /**
7
+ * Listen element's (`window` by default) _resize_ event throttling the callback
8
+ *
9
+ * @returns An automatic unbinding function to run to deregister the listener upon call
10
+ */let listenResizeThrottled=(i,...o)=>listenResize(throttle(...o),i);
7
11
 
8
12
  export { listenResizeThrottled as default, listenResizeThrottled };
@@ -6,7 +6,11 @@ var on = require('./on.cjs.js');
6
6
  require('@koine/utils');
7
7
  require('./off.cjs.js');
8
8
 
9
- let listenScroll=(o,e)=>on.on(e||window,"scroll",o,{capture:!0,passive:!0});
9
+ /**
10
+ * Listen element's (`window` by default) _scroll_ event
11
+ *
12
+ * @returns An automatic unbinding function to run to deregister the listener upon call
13
+ */let listenScroll=(o,e)=>on.on(e||window,"scroll",o,{capture:!0,passive:!0});
10
14
 
11
15
  exports["default"] = listenScroll;
12
16
  exports.listenScroll = listenScroll;
@@ -2,6 +2,10 @@ import { on } from './on.esm.js';
2
2
  import '@koine/utils';
3
3
  import './off.esm.js';
4
4
 
5
- let listenScroll=(o,e)=>on(e||window,"scroll",o,{capture:!0,passive:!0});
5
+ /**
6
+ * Listen element's (`window` by default) _scroll_ event
7
+ *
8
+ * @returns An automatic unbinding function to run to deregister the listener upon call
9
+ */let listenScroll=(o,e)=>on(e||window,"scroll",o,{capture:!0,passive:!0});
6
10
 
7
11
  export { listenScroll as default, listenScroll };
@@ -7,7 +7,11 @@ var listenScroll = require('./listenScroll.cjs.js');
7
7
  require('./on.cjs.js');
8
8
  require('./off.cjs.js');
9
9
 
10
- let listenScrollDebounced=(o,...t)=>listenScroll.listenScroll(utils.debounce(...t),o);
10
+ /**
11
+ * Listen element's (`window` by default) _scroll_ event debouncing the callback
12
+ *
13
+ * @returns An automatic unbinding function to run to deregister the listener upon call
14
+ */let listenScrollDebounced=(o,...t)=>listenScroll.listenScroll(utils.debounce(...t),o);
11
15
 
12
16
  exports["default"] = listenScrollDebounced;
13
17
  exports.listenScrollDebounced = listenScrollDebounced;
@@ -3,6 +3,10 @@ import { listenScroll } from './listenScroll.esm.js';
3
3
  import './on.esm.js';
4
4
  import './off.esm.js';
5
5
 
6
- let listenScrollDebounced=(o,...t)=>listenScroll(debounce(...t),o);
6
+ /**
7
+ * Listen element's (`window` by default) _scroll_ event debouncing the callback
8
+ *
9
+ * @returns An automatic unbinding function to run to deregister the listener upon call
10
+ */let listenScrollDebounced=(o,...t)=>listenScroll(debounce(...t),o);
7
11
 
8
12
  export { listenScrollDebounced as default, listenScrollDebounced };
@@ -7,7 +7,11 @@ var listenScroll = require('./listenScroll.cjs.js');
7
7
  require('./on.cjs.js');
8
8
  require('./off.cjs.js');
9
9
 
10
- let listenScrollThrottled=(o,...r)=>listenScroll.listenScroll(utils.throttle(...r),o);
10
+ /**
11
+ * Listen element's (`window` by default) _scroll_ event throttling the callback
12
+ *
13
+ * @returns An automatic unbinding function to run to deregister the listener upon call
14
+ */let listenScrollThrottled=(o,...r)=>listenScroll.listenScroll(utils.throttle(...r),o);
11
15
 
12
16
  exports["default"] = listenScrollThrottled;
13
17
  exports.listenScrollThrottled = listenScrollThrottled;
@@ -3,6 +3,10 @@ import { listenScroll } from './listenScroll.esm.js';
3
3
  import './on.esm.js';
4
4
  import './off.esm.js';
5
5
 
6
- let listenScrollThrottled=(o,...r)=>listenScroll(throttle(...r),o);
6
+ /**
7
+ * Listen element's (`window` by default) _scroll_ event throttling the callback
8
+ *
9
+ * @returns An automatic unbinding function to run to deregister the listener upon call
10
+ */let listenScrollThrottled=(o,...r)=>listenScroll(throttle(...r),o);
7
11
 
8
12
  export { listenScrollThrottled as default, listenScrollThrottled };
package/off.cjs.js CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- let off=(e,o,n,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(o,n,t);};
5
+ /**
6
+ * Shortcut for `removeEventListener`
7
+ */let off=(e,o,n,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(o,n,t);};
6
8
 
7
9
  exports["default"] = off;
8
10
  exports.off = off;
package/off.esm.js CHANGED
@@ -1,3 +1,5 @@
1
- let off=(e,o,n,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(o,n,t);};
1
+ /**
2
+ * Shortcut for `removeEventListener`
3
+ */let off=(e,o,n,t=!1)=>{"development"!==process.env.NODE_ENV||e||console.warn("[@koine/dom:off] unexisting DOM element"),e&&e.removeEventListener(o,n,t);};
2
4
 
3
5
  export { off as default, off };
package/on.cjs.js CHANGED
@@ -5,7 +5,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var utils = require('@koine/utils');
6
6
  var off = require('./off.cjs.js');
7
7
 
8
- let on=(n,t,r,i=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,r,i),()=>off.off(n,t,r)):utils.noop;
8
+ /**
9
+ * Shortcut for `addEventListener`
10
+ *
11
+ * @returns An automatic unbinding function to run to deregister the listener upon call
12
+ */let on=(n,t,r,// handler: THandler /* EventListener | */ /* ((event: Event) => void) */,
13
+ i=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,r,i),()=>off.off(n,t,r)):utils.noop;
9
14
 
10
15
  exports["default"] = on;
11
16
  exports.on = on;
package/on.esm.js CHANGED
@@ -1,6 +1,11 @@
1
1
  import { noop } from '@koine/utils';
2
2
  import { off } from './off.esm.js';
3
3
 
4
- let on=(n,t,r,i=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,r,i),()=>off(n,t,r)):noop;
4
+ /**
5
+ * Shortcut for `addEventListener`
6
+ *
7
+ * @returns An automatic unbinding function to run to deregister the listener upon call
8
+ */let on=(n,t,r,// handler: THandler /* EventListener | */ /* ((event: Event) => void) */,
9
+ i=!1)=>("development"!==process.env.NODE_ENV||n||console.warn("[@koine/dom:on] unexisting DOM element"),n)?(n.addEventListener(t,r,i),()=>off(n,t,r)):noop;
5
10
 
6
11
  export { on as default, on };
@@ -6,7 +6,8 @@ var off = require('./off.cjs.js');
6
6
  var on = require('./on.cjs.js');
7
7
  require('@koine/utils');
8
8
 
9
- let onClickOutside=(e,c,i=!1)=>{let r=t=>{!e.contains(t.target)&&(c(t),i&&n());},n=()=>{off.off(document,"click",r);};return on.on(document,"click",r),n};
9
+ let onClickOutside=(e,c,i=!1)=>{let r=t=>{// if (event.target.closest(element) === null) {
10
+ !e.contains(t.target)&&(c(t),i&&n());},n=()=>{off.off(document,"click",r);};return on.on(document,"click",r),n};
10
11
 
11
12
  exports["default"] = onClickOutside;
12
13
  exports.onClickOutside = onClickOutside;
@@ -2,6 +2,7 @@ import { off } from './off.esm.js';
2
2
  import { on } from './on.esm.js';
3
3
  import '@koine/utils';
4
4
 
5
- let onClickOutside=(e,c,i=!1)=>{let r=t=>{!e.contains(t.target)&&(c(t),i&&n());},n=()=>{off(document,"click",r);};return on(document,"click",r),n};
5
+ let onClickOutside=(e,c,i=!1)=>{let r=t=>{// if (event.target.closest(element) === null) {
6
+ !e.contains(t.target)&&(c(t),i&&n());},n=()=>{off(document,"click",r);};return on(document,"click",r),n};
6
7
 
7
8
  export { onClickOutside as default, onClickOutside };
package/once.cjs.js CHANGED
@@ -6,7 +6,10 @@ var off = require('./off.cjs.js');
6
6
  var on = require('./on.cjs.js');
7
7
  require('@koine/utils');
8
8
 
9
- let once=(r,t,f,m=!1)=>{let n=e=>{f(e),off.off(r,t,n);};return on.on(r,t,n,m)};
9
+ /**
10
+ * One shot listener, it `addEventListener` and removes it first time is called
11
+ * with `removeEventListener`
12
+ */let once=(r,t,f,m=!1)=>{let n=e=>{f(e),off.off(r,t,n);};return on.on(r,t,n,m)};
10
13
 
11
14
  exports["default"] = once;
12
15
  exports.once = once;
package/once.esm.js CHANGED
@@ -2,6 +2,9 @@ import { off } from './off.esm.js';
2
2
  import { on } from './on.esm.js';
3
3
  import '@koine/utils';
4
4
 
5
- let once=(r,t,f,m=!1)=>{let n=e=>{f(e),off(r,t,n);};return on(r,t,n,m)};
5
+ /**
6
+ * One shot listener, it `addEventListener` and removes it first time is called
7
+ * with `removeEventListener`
8
+ */let once=(r,t,f,m=!1)=>{let n=e=>{f(e),off(r,t,n);};return on(r,t,n,m)};
6
9
 
7
10
  export { once as default, once };
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@koine/dom",
3
3
  "sideEffects": false,
4
4
  "dependencies": {
5
- "@koine/utils": "2.0.0-beta.82"
5
+ "@koine/utils": "2.0.0-beta.84"
6
6
  },
7
7
  "exports": {
8
8
  "./package.json": "./package.json",
@@ -244,5 +244,5 @@
244
244
  },
245
245
  "module": "./index.esm.js",
246
246
  "main": "./index.cjs.js",
247
- "version": "2.0.0-beta.82"
247
+ "version": "2.0.0-beta.84"
248
248
  }
@@ -2,7 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- let removeClass=(e,o="")=>{if("development"===process.env.NODE_ENV&&!e){console.log("[@koine/dom:removeClass] unexisting DOM element");return}e&&e.classList.remove(o);};
5
+ /**
6
+ * Remove class shortcut
7
+ */let removeClass=(e,o="")=>{if("development"===process.env.NODE_ENV&&!e){console.log("[@koine/dom:removeClass] unexisting DOM element");return}e&&e.classList.remove(o);};
6
8
 
7
9
  exports["default"] = removeClass;
8
10
  exports.removeClass = removeClass;
@@ -1,3 +1,5 @@
1
- let removeClass=(e,o="")=>{if("development"===process.env.NODE_ENV&&!e){console.log("[@koine/dom:removeClass] unexisting DOM element");return}e&&e.classList.remove(o);};
1
+ /**
2
+ * Remove class shortcut
3
+ */let removeClass=(e,o="")=>{if("development"===process.env.NODE_ENV&&!e){console.log("[@koine/dom:removeClass] unexisting DOM element");return}e&&e.classList.remove(o);};
2
4
 
3
5
  export { removeClass as default, removeClass };
package/scrollTo.cjs.js CHANGED
@@ -6,7 +6,16 @@ var off = require('./off.cjs.js');
6
6
  var on = require('./on.cjs.js');
7
7
  require('@koine/utils');
8
8
 
9
- let scrollTo=(t,e,i,r)=>{let w=t.toFixed();if(e){let t=!1,r=function(){window.pageYOffset.toFixed()===w&&(off.off(window,"scroll",r),t=!0,e());};on.on(window,"scroll",r),r(),i&&setTimeout(()=>{t||(off.off(window,"scroll",r),e());},i);}window.scrollTo({top:t,behavior:r||"smooth"});};
9
+ /**
10
+ * Native `scrollTo`, `"smooth"` and with callback
11
+ *
12
+ * @borrows https://stackoverflow.com/a/55686711/1938970
13
+ *
14
+ * @param offset - offset to scroll to
15
+ * @param callback - callback function
16
+ * @param [fallbackTimeout] - this appears to be needed in some hard to reproduce scenario on safari, where the callback seem to be never called
17
+ * @param [behavior="smooth"]
18
+ */let scrollTo=(t,e,i,r)=>{let w=t.toFixed();if(e){let t=!1,r=function(){window.pageYOffset.toFixed()===w&&(off.off(window,"scroll",r),t=!0,e());};on.on(window,"scroll",r),r(),i&&setTimeout(()=>{t||(off.off(window,"scroll",r),e());},i);}window.scrollTo({top:t,behavior:r||"smooth"});};
10
19
 
11
20
  exports["default"] = scrollTo;
12
21
  exports.scrollTo = scrollTo;
package/scrollTo.esm.js CHANGED
@@ -2,6 +2,15 @@ import { off } from './off.esm.js';
2
2
  import { on } from './on.esm.js';
3
3
  import '@koine/utils';
4
4
 
5
- let scrollTo=(t,e,i,r)=>{let w=t.toFixed();if(e){let t=!1,r=function(){window.pageYOffset.toFixed()===w&&(off(window,"scroll",r),t=!0,e());};on(window,"scroll",r),r(),i&&setTimeout(()=>{t||(off(window,"scroll",r),e());},i);}window.scrollTo({top:t,behavior:r||"smooth"});};
5
+ /**
6
+ * Native `scrollTo`, `"smooth"` and with callback
7
+ *
8
+ * @borrows https://stackoverflow.com/a/55686711/1938970
9
+ *
10
+ * @param offset - offset to scroll to
11
+ * @param callback - callback function
12
+ * @param [fallbackTimeout] - this appears to be needed in some hard to reproduce scenario on safari, where the callback seem to be never called
13
+ * @param [behavior="smooth"]
14
+ */let scrollTo=(t,e,i,r)=>{let w=t.toFixed();if(e){let t=!1,r=function(){window.pageYOffset.toFixed()===w&&(off(window,"scroll",r),t=!0,e());};on(window,"scroll",r),r(),i&&setTimeout(()=>{t||(off(window,"scroll",r),e());},i);}window.scrollTo({top:t,behavior:r||"smooth"});};
6
15
 
7
16
  export { scrollTo as default, scrollTo };
@@ -2,7 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- let setDataAttr=(t,e,r)=>{if(null==r){t.removeAttribute("data-"+e);return}t.setAttribute("data-"+e,r.toString());};
5
+ /**
6
+ * Set data attribute
7
+ *
8
+ * @param element
9
+ * @param attribute The name of the `data-{attr}`
10
+ * @param value The value to set, `null` or `undefined` will remove the attribute
11
+ */let setDataAttr=(t,e,r)=>{if(null==r){// delete element.dataset[attribute];
12
+ // return;
13
+ t.removeAttribute("data-"+e);return}// element.dataset[attribute] = value.toString();
14
+ t.setAttribute("data-"+e,r.toString());};
6
15
 
7
16
  exports["default"] = setDataAttr;
8
17
  exports.setDataAttr = setDataAttr;
@@ -1,3 +1,12 @@
1
- let setDataAttr=(t,e,r)=>{if(null==r){t.removeAttribute("data-"+e);return}t.setAttribute("data-"+e,r.toString());};
1
+ /**
2
+ * Set data attribute
3
+ *
4
+ * @param element
5
+ * @param attribute The name of the `data-{attr}`
6
+ * @param value The value to set, `null` or `undefined` will remove the attribute
7
+ */let setDataAttr=(t,e,r)=>{if(null==r){// delete element.dataset[attribute];
8
+ // return;
9
+ t.removeAttribute("data-"+e);return}// element.dataset[attribute] = value.toString();
10
+ t.setAttribute("data-"+e,r.toString());};
2
11
 
3
12
  export { setDataAttr as default, setDataAttr };
@@ -2,7 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- 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;};
5
+ /**
6
+ * Set vendor CSS rule
7
+ *
8
+ * @param element A single HTMLElement
9
+ * @param prop CSS rule proerty
10
+ * @param value The CSS value to set, it will be automatically vendor prefixed
11
+ */let setVendorCSS=(e,t,s)=>{let l=t.charAt(0).toUpperCase()+t.slice(1);// @ts-expect-error nevermind now...
12
+ e.style["webkit"+l]=s,// @ts-expect-error nevermind now...
13
+ e.style["moz"+l]=s,// @ts-expect-error nevermind now...
14
+ e.style["ms"+l]=s,// @ts-expect-error nevermind now...
15
+ e.style["o"+l]=s,// @ts-expect-error nevermind now...
16
+ e.style[t]=s;};
6
17
 
7
18
  exports["default"] = setVendorCSS;
8
19
  exports.setVendorCSS = setVendorCSS;
@@ -1,3 +1,14 @@
1
- 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;};
1
+ /**
2
+ * Set vendor CSS rule
3
+ *
4
+ * @param element A single HTMLElement
5
+ * @param prop CSS rule proerty
6
+ * @param value The CSS value to set, it will be automatically vendor prefixed
7
+ */let setVendorCSS=(e,t,s)=>{let l=t.charAt(0).toUpperCase()+t.slice(1);// @ts-expect-error nevermind now...
8
+ e.style["webkit"+l]=s,// @ts-expect-error nevermind now...
9
+ e.style["moz"+l]=s,// @ts-expect-error nevermind now...
10
+ e.style["ms"+l]=s,// @ts-expect-error nevermind now...
11
+ e.style["o"+l]=s,// @ts-expect-error nevermind now...
12
+ e.style[t]=s;};
2
13
 
3
14
  export { setVendorCSS as default, setVendorCSS };
package/siblings.cjs.js CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- let siblings=e=>{if(e&&e.parentNode){let t=e.parentNode.firstChild,r=[];for(;t;t=t.nextSibling)1===t.nodeType&&t!==e&&r.push(t);return r}return []};
5
+ /**
6
+ * Finds siblings nodes of the passed node.
7
+ *
8
+ * @borrows @glidejs/glide/src/utils/dom (source)
9
+ */let siblings=e=>{if(e&&e.parentNode){let t=e.parentNode.firstChild,r=[];for(;t;t=t.nextSibling)1===t.nodeType&&t!==e&&r.push(t);return r}return []};
6
10
 
7
11
  exports["default"] = siblings;
8
12
  exports.siblings = siblings;
package/siblings.esm.js CHANGED
@@ -1,3 +1,7 @@
1
- let siblings=e=>{if(e&&e.parentNode){let t=e.parentNode.firstChild,r=[];for(;t;t=t.nextSibling)1===t.nodeType&&t!==e&&r.push(t);return r}return []};
1
+ /**
2
+ * Finds siblings nodes of the passed node.
3
+ *
4
+ * @borrows @glidejs/glide/src/utils/dom (source)
5
+ */let siblings=e=>{if(e&&e.parentNode){let t=e.parentNode.firstChild,r=[];for(;t;t=t.nextSibling)1===t.nodeType&&t!==e&&r.push(t);return r}return []};
2
6
 
3
7
  export { siblings as default, siblings };