New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

stickythead

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

stickythead - npm Package Compare versions

Comparing version

to
1.0.3

src/custom_event_polyfill.js

3

dist/stickythead.js

@@ -1,1 +0,2 @@

var stickyThead=function(i){var n={};function o(e){if(n[e])return n[e].exports;var t=n[e]={i:e,l:!1,exports:{}};return i[e].call(t.exports,t,t.exports,o),t.l=!0,t.exports}return o.m=i,o.c=n,o.d=function(e,t,i){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(o.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)o.d(i,n,function(e){return t[e]}.bind(null,n));return i},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=0)}([function(e,t,i){"use strict";function s(e){var t=e.getBoundingClientRect();return{top:t.top+window.scrollY,left:t.left+window.scrollX}}function c(e){return e==window?window.innerHeight:(e==document&&(e=document.body),parseFloat(getComputedStyle(e,null).height.replace("px","")))}function u(e){return e==window?window.innerWidth:(e==document&&(e=document.body),parseFloat(getComputedStyle(e,null).width.replace("px","")))}function f(e,t){for(var i in t)e.style[i]=t[i]}function n(e,i){var o="stickyTableHeaders",r=0,l={fixedOffset:0,leftOffset:0,marginTop:0,objDocument:document,objHead:document.head,objWindow:window,scrollableArea:window,cacheHeaderHeight:!1,zIndex:3};function n(n,t){var a=this;a.el=n,a.id=r++,a.$clonedHeader=null,a.$originalHeader=null,a.cachedHeaderHeight=null,a.isSticky=!1,a.hasBeenSticky=!1,a.leftOffset=null,a.topOffset=null,a.init=function(){a.setOptions(t),a.el.style.padding="0px",a.$originalHeader=a.el.querySelector("thead"),a.$clonedHeader=a.$originalHeader.cloneNode(!0),a.$clonedHeader.setAttribute("class","tableFloatingHeader"),f(a.$clonedHeader,{display:"none",opacity:0}),a.$originalHeader.setAttribute("class","tableFloatingHeaderOriginal"),a.$originalHeader.insertAdjacentElement("afterend",a.$clonedHeader);var e=document.createElement("style");e.setAttribute("type","text/css"),e.setAttribute("media","print"),e.innerHTML=".tableFloatingHeader{display:none !important;}.tableFloatingHeaderOriginal{position:static !important;}",a.$printStyle=e,a.$head.appendChild(a.$printStyle),a.$clonedHeader.querySelectorAll("input, select").forEach(function(e){e.setAttribute("disabled",!0)}),a.updateWidth(),a.toggleHeaders(),a.bind()},a.destroy=function(){a.$el.unbind("destroyed",a.teardown),a.teardown()},a.teardown=function(){a.isSticky&&a.$originalHeader.css("position","static"),$.removeData(a.el,"plugin_"+o),a.unbind(),a.$clonedHeader.remove(),a.$originalHeader.removeClass("tableFloatingHeaderOriginal"),a.$originalHeader.css("visibility","visible"),a.$printStyle.remove(),a.el=null,a.$el=null},a.bind=function(){a.$scrollableArea.addEventListener("scroll",a.toggleHeaders),a.isWindowScrolling||(a.$window.addEventListener("scroll",a.setPositionValues),a.$window.addEventListener("resize",a.toggleHeaders)),a.$scrollableArea.addEventListener("resize",a.toggleHeaders),a.$scrollableArea.addEventListener("resize",a.updateWidth)},a.unbind=function(){},a.debounce=function(i,n){var o=null;return function(){var e=this,t=arguments;clearTimeout(o),o=setTimeout(function(){i.apply(e,t)},n)}},a.toggleHeaders=a.debounce(function(){if(a.el){var e,t,i,n=a.isWindowScrolling?isNaN(a.options.fixedOffset)?a.options.fixedOffset.offsetHeight:a.options.fixedOffset:s(a.$scrollableArea).top+(isNaN(a.options.fixedOffset)?0:a.options.fixedOffset),o=s(a.el),r=a.$scrollableArea.scrollY+n,l=a.$scrollableArea.scrollX,d=a.isWindowScrolling?r>o.top:n>o.top;d&&(t=a.options.cacheHeaderHeight?a.cachedHeaderHeight:c(a.$originalHeader),i=(a.isWindowScrolling?r:0)<o.top+c(a.el)-t-(a.isWindowScrolling?0:n)),d&&i?(e=o.left-l+a.options.leftOffset,f(a.$originalHeader,{position:"fixed",marginTop:a.options.marginTop,top:0,left:e,zIndex:a.options.zIndex}),a.leftOffset=e,a.topOffset=n,a.$clonedHeader.style.display="",a.isSticky||(a.isSticky=!0,a.updateWidth()),a.setPositionValues()):a.isSticky&&(a.$originalHeader.style.position="static",a.$clonedHeader.style.display="none",a.isSticky=!1,a.resetWidth(a.$clonedHeader.querySelectorAll("td,th"),a.$originalHeader.querySelectorAll("td,th")))}},0),a.setPositionValues=a.debounce(function(){var e=a.$window.pageYOffset,t=a.$window.pageXOffset;!a.isSticky||e<0||e+c(a.$window)>c(a.$document)||t<0||t+u(a.$window)>u(a.$document)||f(a.$originalHeader,{top:a.topOffset-(a.isWindowScrolling?0:e),left:a.leftOffset-(a.isWindowScrolling?0:t)})},0),a.updateWidth=a.debounce(function(){if(a.isSticky){a.$originalHeaderCells||(a.$originalHeaderCells=a.$originalHeader.querySelectorAll("th,td")),a.$clonedHeaderCells||(a.$clonedHeaderCells=a.$clonedHeader.querySelectorAll("th,td"));var e=a.getWidth(a.$clonedHeaderCells);a.setWidth(e,a.$clonedHeaderCells,a.$originalHeaderCells),a.$originalHeader.style.width=u(a.$clonedHeader),a.options.cacheHeaderHeight&&(a.cachedHeaderHeight=c(a.$clonedHeader))}},0),a.getWidth=function(e){var d=[];return e.forEach(function(e,t){var i;if("border-box"===e.style.boxSizing){var n=e.getBoundingClientRect();i=n.width?n.width:n.right-n.left}else{if("collapse"===a.$originalHeader.querySelector("th").style.borderCollapse)if(window.getComputedStyle)i=parseFloat(window.getComputedStyle(e,null).width);else{var o=parseFloat(e.style.paddingLeft),r=parseFloat(e.style.paddingRight),l=parseFloat(e.style.borderWidth);i=e.offsetWidth-o-r-l}else i=u(e)}d[t]=i}),d},a.setWidth=function(n,e,o){e.forEach(function(e,t){var i=n[t];f(o[t],{minWidth:i,maxWidth:i})})},a.resetWidth=function(e,i){e.forEach(function(e,t){f(i[t],{minWidth:n.style.minWidth,maxWidth:n.style.maxWidth})})},a.setOptions=function(e){var t,i;a.options=(t=e,i=l,Object.keys(t||{}).forEach(function(e){i[e]=t[e]}),i),a.$window=a.options.objWindow,a.$head=a.options.objHead,a.$document=a.options.objDocument,a.$scrollableArea=a.options.scrollableArea,a.isWindowScrolling=a.$scrollableArea===a.$window},a.updateOptions=function(e){a.setOptions(e),a.unbind(),a.bind(),a.updateWidth(),a.toggleHeaders()},a.el.addEventListener("destroyed",a.teardown.bind(a)),a.init()}return e.forEach(function(e){var t=e.dataset[o];t?"string"==typeof i?t[i].apply(t):t.updateOptions(i):"destroy"!==i&&(e.dataset[o]=new n(e,i))})}i.r(t),i.d(t,"apply",function(){return n})}]);
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.stickyThead=t():e.stickyThead=t()}(window,function(){return i={},o.m=n=[function(e,t,n){"use strict";function c(e){var t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset,left:t.left+window.pageXOffset}}function u(e){if(e==window)return window.innerHeight;if(e==document)return Math.max(document.documentElement.clientHeight,document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight);var t=parseFloat(getComputedStyle(e,null).height.replace("px",""));return t||e.offsetHeight}function f(e){if(e==window)return window.innerWidth;if(e==document)return Math.max(document.documentElement.clientWidth,document.body.scrollWidth,document.documentElement.scrollWidth,document.body.offsetWidth,document.documentElement.offsetWidth);var t=parseFloat(getComputedStyle(e,null).width.replace("px",""));return t||e.offsetWidth}function p(e,t){for(var n in t)e.style[n]=t[n]}function g(e,t,n){var i=new CustomEvent(e,n?{}:{details:n});t.dispatchEvent(i)}n.r(t),n.d(t,"apply",function(){return i});var l={data:function(e,t,n){if(!e)return this._data;if(!t)return e in this._data?this._data[e]:{};if(arguments.length<3){if(!(e in this._data))return;return this._data[e][t]}e in this._data||(this._data[e]={}),this._data[e][t]=n},removeData:function(e){delete this._data[e]},_data:{}};function i(e,n){var s="stickyThead",o=0,r={fixedOffset:0,leftOffset:0,marginTop:0,objDocument:document,objHead:document.head,objWindow:window,scrollableArea:window,cacheHeaderHeight:!1,zIndex:3};function i(i,t){var a=this;a.el=i,a.id=o++,a.$clonedHeader=null,a.$originalHeader=null,a.cachedHeaderHeight=null,a.isSticky=!1,a.hasBeenSticky=!1,a.leftOffset=null,a.topOffset=null,a.init=function(){a.setOptions(t),a.el.style.padding="0px",a.$originalHeader=a.el.querySelector("thead"),a.$clonedHeader=a.$originalHeader.cloneNode(!0),g("clonedHeader."+s,a.el,a.$clonedHeader),a.$clonedHeader.setAttribute("class","tableFloatingHeader"),p(a.$clonedHeader,{display:"none",opacity:0}),a.$originalHeader.setAttribute("class","tableFloatingHeaderOriginal"),a.$originalHeader.insertAdjacentElement("afterend",a.$clonedHeader);var e=document.createElement("style");e.setAttribute("type","text/css"),e.setAttribute("media","print"),e.innerHTML=".tableFloatingHeader{display:none !important;}.tableFloatingHeaderOriginal{position:static !important;}",a.$printStyle=e,a.$head.appendChild(a.$printStyle),a.$clonedHeader.querySelectorAll("input, select").forEach(function(e){e.setAttribute("disabled",!0)}),a.updateWidth(),a.toggleHeaders(),a.bind()},a.destroy=function(){a.el&&a.el.removeEventListener("destroyed",a.teardown),a.teardown()},a.teardown=function(){a.isSticky&&p(a.$originalHeader,{position:"static"}),l.removeData(a.el,s),a.unbind(),a.$clonedHeader.parentNode.removeChild(a.$clonedHeader),a.$originalHeader.classList.remove("tableFloatingHeaderOriginal"),p(a.$originalHeader,{visibility:"visible"}),a.$printStyle.parentNode.removeChild(a.$printStyle),a.el=null,a.$el=null},a.bind=function(){a.$scrollableArea.addEventListener("scroll",a.toggleHeaders),a.isWindowScrolling||(a.$window.addEventListener("scroll",a.setPositionValues),a.$window.addEventListener("resize",a.toggleHeaders)),a.$scrollableArea.addEventListener("resize",a.toggleHeaders),a.$scrollableArea.addEventListener("resize",a.updateWidth)},a.unbind=function(){a.$scrollableArea.removeEventListener("scroll",a.toggleHeaders),a.isWindowScrolling||(a.$window.removeEventListener("scroll",a.setPositionValues),a.$window.removeEventListener("resize",a.toggleHeaders)),a.$scrollableArea.removeEventListener("resize",a.updateWidth)},a.debounce=function(n,i){var o=null;return function(){var e=this,t=arguments;clearTimeout(o),o=setTimeout(function(){n.apply(e,t)},i)}},a.toggleHeaders=a.debounce(function(){if(a.el){var e,t,n,i=a.isWindowScrolling?isNaN(a.options.fixedOffset)?a.options.fixedOffset.offsetHeight:a.options.fixedOffset:c(a.$scrollableArea).top+(isNaN(a.options.fixedOffset)?0:a.options.fixedOffset),o=c(a.el),r=a.$scrollableArea.pageYOffset+i,l=a.$scrollableArea.pageXOffset,d=a.isWindowScrolling?r>o.top:i>o.top;d&&(t=a.options.cacheHeaderHeight?a.cachedHeaderHeight:u(a.$originalHeader),n=(a.isWindowScrolling?r:0)<o.top+u(a.el)-t-(a.isWindowScrolling?0:i)),d&&n?(e=o.left-l+a.options.leftOffset,p(a.$originalHeader,{position:"fixed",marginTop:a.options.marginTop+"px",top:0,left:e+"px",zIndex:a.options.zIndex}),a.leftOffset=e,a.topOffset=i,a.$clonedHeader.style.display="",a.isSticky||(a.isSticky=!0,a.updateWidth(),g("enabledStickiness."+s,a.el)),a.setPositionValues()):a.isSticky&&(a.$originalHeader.style.position="static",a.$clonedHeader.style.display="none",a.isSticky=!1,a.resetWidth(a.$clonedHeader.querySelectorAll("td,th"),a.$originalHeader.querySelectorAll("td,th")),g("disabledStickiness."+s,a.el))}},0),a.setPositionValues=a.debounce(function(){var e=a.$window.pageYOffset,t=a.$window.pageXOffset;!a.isSticky||e<0||e+u(a.$window)>u(a.$document)||t<0||t+f(a.$window)>f(a.$document)||p(a.$originalHeader,{top:a.topOffset-(a.isWindowScrolling?0:e)+"px",left:a.leftOffset-(a.isWindowScrolling?0:t)+"px"})},0),a.updateWidth=a.debounce(function(){if(a.isSticky){a.$originalHeaderCells||(a.$originalHeaderCells=a.$originalHeader.querySelectorAll("th,td")),a.$clonedHeaderCells||(a.$clonedHeaderCells=a.$clonedHeader.querySelectorAll("th,td"));var e=a.getWidth(a.$clonedHeaderCells);a.setWidth(e,a.$clonedHeaderCells,a.$originalHeaderCells),a.$originalHeader.style.width=f(a.$clonedHeader),a.options.cacheHeaderHeight&&(a.cachedHeaderHeight=u(a.$clonedHeader))}},0),a.getWidth=function(e){var d=[];return e.forEach(function(e,t){var n;if("border-box"===getComputedStyle(e).boxSizing){var i=e.getBoundingClientRect();n=i.width?i.width:i.right-i.left}else{if("collapse"===a.$originalHeader.querySelector("th").style.borderCollapse)if(window.getComputedStyle)n=parseFloat(window.getComputedStyle(e,null).width);else{var o=parseFloat(e.style.paddingLeft),r=parseFloat(e.style.paddingRight),l=parseFloat(e.style.borderWidth);n=e.offsetWidth-o-r-l}else n=f(e)}d[t]=n}),d},a.setWidth=function(i,e,o){e.forEach(function(e,t){var n=i[t];p(o[t],{minWidth:n+"px",maxWidth:n+"px"})})},a.resetWidth=function(e,n){e.forEach(function(e,t){p(n[t],{minWidth:i.style.minWidth,maxWidth:i.style.maxWidth})})},a.setOptions=function(e){var t,n;a.options=(t=e,n=r,Object.keys(t||{}).forEach(function(e){n[e]=t[e]}),n),a.$window=a.options.objWindow,a.$head=a.options.objHead,a.$document=a.options.objDocument,a.$scrollableArea=a.options.scrollableArea,a.isWindowScrolling=a.$scrollableArea===a.$window},a.updateOptions=function(e){a.setOptions(e),a.unbind(),a.bind(),a.updateWidth(),a.toggleHeaders()},a.el.addEventListener("destroyed",a.teardown.bind(a)),a.init()}return e.forEach(function(e){var t=l.data(e,s);t?"string"==typeof n?t[n].apply(t):t.updateOptions(n):"destroy"!==n&&l.data(e,s,new i(e,n))})}"function"!=typeof window.CustomEvent&&(window.CustomEvent=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:null};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n})}],o.c=i,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)o.d(n,i,function(e){return t[e]}.bind(null,i));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=0);function o(e){if(i[e])return i[e].exports;var t=i[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,o),t.l=!0,t.exports}var n,i});
//# sourceMappingURL=stickythead.js.map
{
"name": "stickythead",
"version": "1.0.2",
"version": "1.0.3",
"description": "Sticky table header (Vanilla js)",

@@ -5,0 +5,0 @@ "main": "dist/stickythead.js",

StickyThead
==================
## NOTE: This is vanila js version of https://github.com/jmosbech/StickyThead. Even docs are copy pasted :)
### NOTE: This is vanila js version of https://github.com/jmosbech/StickyThead. Even docs are copy pasted :)

@@ -5,0 +5,0 @@ So what's it good for? Well, let's say you want to display a long list of fairly uniform tabluar data, like [stock exchange listings](http://online.barrons.com/public/page/majormarket-nysecomposite-A.html) or [sport statistics](https://sports.yahoo.com/nfl/stats/weekly/?sortStatId=PASSING_YARDS&selectedTable=7) but you don't want your users to get lost in the data as they scroll down on the page.

import * as Util from './util'
import CustomEventPolyfill from './custom_event_polyfill'
var dataStore = Util.DataStore();
CustomEventPolyfill()
export function apply(elements, options) {
var name = 'stickyTableHeaders',
var name = 'stickyThead',
id = 0,

@@ -53,4 +57,3 @@ defaults = {

// dispatchEvent
// TODO:
// $this.trigger('clonedHeader.' + name, [base.$clonedHeader]);
Util.fireEvent('clonedHeader.' + name, base.el, base.$clonedHeader)

@@ -83,3 +86,3 @@ base.$clonedHeader.setAttribute('class', 'tableFloatingHeader');

base.destroy = function () {
base.$el.unbind('destroyed', base.teardown);
base.el && base.el.removeEventListener('destroyed', base.teardown);
base.teardown();

@@ -90,11 +93,11 @@ };

if (base.isSticky) {
base.$originalHeader.css('position', 'static');
Util.setStyles(base.$originalHeader, { position: 'static' });
}
$.removeData(base.el, 'plugin_' + name);
dataStore.removeData(base.el, name)
base.unbind();
base.$clonedHeader.remove();
base.$originalHeader.removeClass('tableFloatingHeaderOriginal');
base.$originalHeader.css('visibility', 'visible');
base.$printStyle.remove();
base.$clonedHeader.parentNode.removeChild(base.$clonedHeader);
base.$originalHeader.classList.remove('tableFloatingHeaderOriginal');
Util.setStyles(base.$originalHeader, { visibility: 'visible' });
base.$printStyle.parentNode.removeChild(base.$printStyle);

@@ -117,8 +120,8 @@ base.el = null;

// unbind window events by specifying handle so we don't remove too much
// base.$scrollableArea.off('.' + name, base.toggleHeaders);
// if (!base.isWindowScrolling) {
// base.$window.off('.' + name + base.id, base.setPositionValues);
// base.$window.off('.' + name + base.id, base.toggleHeaders);
// }
// base.$scrollableArea.off('.' + name, base.updateWidth);
base.$scrollableArea.removeEventListener('scroll', base.toggleHeaders);
if (!base.isWindowScrolling) {
base.$window.removeEventListener('scroll', base.setPositionValues);
base.$window.removeEventListener('resize', base.toggleHeaders);
}
base.$scrollableArea.removeEventListener('resize', base.updateWidth);
};

@@ -149,5 +152,4 @@

scrollTop = base.$scrollableArea.scrollY + newTopOffset,
scrollLeft = base.$scrollableArea.scrollX,
scrollTop = base.$scrollableArea.pageYOffset + newTopOffset,
scrollLeft = base.$scrollableArea.pageXOffset,
headerHeight,

@@ -165,3 +167,3 @@

}
// console.log(scrollTop, offset.top, base.$clonedHeader, headerHeight, (base.isWindowScrolling ? 0 : newTopOffset))
if (scrolledPastTop && notScrolledPastBottom) {

@@ -171,5 +173,5 @@ newLeft = offset.left - scrollLeft + base.options.leftOffset;

position: 'fixed',
marginTop: base.options.marginTop,
marginTop: base.options.marginTop + 'px',
top: 0,
left: newLeft,
left: newLeft + 'px',
zIndex: base.options.zIndex

@@ -184,4 +186,3 @@ });

base.updateWidth();
// Todo
// $this.trigger('enabledStickiness.' + name);
Util.fireEvent('enabledStickiness.' + name, base.el)
}

@@ -194,4 +195,3 @@ base.setPositionValues();

base.resetWidth(base.$clonedHeader.querySelectorAll('td,th'), base.$originalHeader.querySelectorAll('td,th'));
// Todo
// $this.trigger('disabledStickiness.' + name);
Util.fireEvent('disabledStickiness.' + name, base.el)
}

@@ -204,2 +204,3 @@ }

winScrollLeft = base.$window.pageXOffset;
if (!base.isSticky ||

@@ -211,4 +212,4 @@ winScrollTop < 0 || winScrollTop + Util.getHeight(base.$window) > Util.getHeight(base.$document) ||

Util.setStyles(base.$originalHeader, {
top: base.topOffset - (base.isWindowScrolling ? 0 : winScrollTop),
left: base.leftOffset - (base.isWindowScrolling ? 0 : winScrollLeft)
top: base.topOffset - (base.isWindowScrolling ? 0 : winScrollTop) + 'px',
left: base.leftOffset - (base.isWindowScrolling ? 0 : winScrollLeft) + 'px'
});

@@ -245,3 +246,3 @@ }, 0);

if (el.style.boxSizing === 'border-box') {
if (getComputedStyle(el).boxSizing === 'border-box') {
var boundingClientRect = el.getBoundingClientRect();

@@ -280,4 +281,4 @@ if (boundingClientRect.width) {

Util.setStyles($origHeaders[index], {
minWidth: width,
maxWidth: width
minWidth: width + 'px',
maxWidth: width + 'px'
});

@@ -322,3 +323,3 @@ });

return elements.forEach(function (element) {
var instance = element.dataset[name]
var instance = dataStore.data(element, name)
if (instance) {

@@ -331,5 +332,5 @@ if (typeof options === 'string') {

} else if (options !== 'destroy') {
element.dataset[name] = new Plugin(element, options);
dataStore.data(element, name, new Plugin(element, options));
}
});
}

@@ -0,1 +1,30 @@

export function DataStore() {
return {
data: function (obj, key, val) {
if (!obj) {
return this._data;
} else if (!key) {
if (!(obj in this._data)) {
return {};
}
return this._data[obj];
} else if (arguments.length < 3) {
if (!(obj in this._data)) {
return undefined;
}
return this._data[obj][key];
} else {
if (!(obj in this._data)) {
this._data[obj] = {};
}
this._data[obj][key] = val;
}
},
removeData: function (obj, key) {
delete this._data[obj]
},
_data: {}
};
}
export function extendObj(defaultObj, overrideObj) {

@@ -13,4 +42,4 @@ var newObj = defaultObj

return {
top: rect.top + window.scrollY,
left: rect.left + window.scrollX,
top: rect.top + window.pageYOffset,
left: rect.left + window.pageXOffset,
};

@@ -24,5 +53,12 @@ }

if (el == document) {
el = document.body
return Math.max(
document.documentElement["clientHeight"],
document.body["scrollHeight"],
document.documentElement["scrollHeight"],
document.body["offsetHeight"],
document.documentElement["offsetHeight"]
);
}
return parseFloat(getComputedStyle(el, null).height.replace("px", ""))
var height = parseFloat(getComputedStyle(el, null).height.replace("px", ""))
return height ? height : el.offsetHeight
}

@@ -35,5 +71,12 @@

if (el == document) {
el = document.body
return Math.max(
document.documentElement["clientWidth"],
document.body["scrollWidth"],
document.documentElement["scrollWidth"],
document.body["offsetWidth"],
document.documentElement["offsetWidth"]
);
}
return parseFloat(getComputedStyle(el, null).width.replace("px", ""))
var width = parseFloat(getComputedStyle(el, null).width.replace("px", ""))
return width ? width : el.offsetWidth
}

@@ -46,1 +89,6 @@

export function fireEvent(name, el, data) {
var details = data ? {} : { details: data }
var evt = new CustomEvent(name, details)
el.dispatchEvent(evt)
}

@@ -13,6 +13,7 @@ const path = require('path');

library: 'stickyThead',
libraryTarget: 'umd',
},
devtool,
optimization: {
minimizer: [new UglifyJsPlugin({ test: /\.js(\?.*)?$/i })],
minimizer: [new UglifyJsPlugin({ test: /\.js(\?.*)?$/i, sourceMap: true })],
},

@@ -19,0 +20,0 @@ module: {

Sorry, the diff of this file is not supported yet