diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json index 5d2760998..7848bc818 100644 --- a/node_modules/.package-lock.json +++ b/node_modules/.package-lock.json @@ -5,8 +5,7 @@ "packages": { "node_modules/@popperjs/core": { "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.4.4.tgz", - "integrity": "sha512-1oO6+dN5kdIA3sKPZhRGJTfGVP4SWV6KqlMOwry4J3HfyD68sl/3KmG7DeYUzvN+RbhXDnv/D8vNNB8168tAMg==", + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" @@ -14,82 +13,49 @@ }, "node_modules/bulma-scss": { "version": "0.9.0-1", - "resolved": "https://registry.npmjs.org/bulma-scss/-/bulma-scss-0.9.0-1.tgz", - "integrity": "sha512-cOZFITkQii6YT0ff+P9FDTORFd2UquRzqb38CHYXVLHQDbiqKJG8cmmYzRXjA7jvEVkQy7I4897CVVG7XYeAkw==" + "license": "MIT" }, "node_modules/datatables.net": { - "version": "1.10.12", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.12.tgz", - "integrity": "sha1-1m4Ul9OfVa1vHmwquzDOGSkOMPg=", + "version": "1.10.24", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.24.tgz", + "integrity": "sha512-CwXixvOdinvBCLXvcTloDinWiEM7Geaz+GwyjPrZL+MXIGPcLv4Op1bbWn8ErsI1JWMIWC8Cuf1rnDU2RrFV5w==", "dependencies": { "jquery": ">=1.7" } }, "node_modules/datatables.net-fixedheader": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.1.2.tgz", - "integrity": "sha1-y9H7NUBqy++MypNbuWQugDIEtdA=", - "dependencies": { - "datatables.net": ">=1.10.9", - "jquery": ">=1.7" - } - }, - "node_modules/datatables.net-fixedheader/node_modules/datatables.net": { - "version": "1.10.24", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.24.tgz", - "integrity": "sha512-CwXixvOdinvBCLXvcTloDinWiEM7Geaz+GwyjPrZL+MXIGPcLv4Op1bbWn8ErsI1JWMIWC8Cuf1rnDU2RrFV5w==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/datatables.net-fixedheader/-/datatables.net-fixedheader-3.1.8.tgz", + "integrity": "sha512-MLZgzkU6sGNSqlKuuJC/5/ps4xcmJQZILHqr5bOK/2kBEzCZzH+ZVOjudVRshnxkFn7IOTAOecMQHI6HPHFhag==", "dependencies": { + "datatables.net": "^1.10.15", "jquery": ">=1.7" } }, "node_modules/datatables.net-responsive": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.1.0.tgz", - "integrity": "sha1-rPzWZ3l31B7dEL47FQdPTiHuV+Y=", - "dependencies": { - "datatables.net": ">=1.10.9", - "jquery": ">=1.7" - } - }, - "node_modules/datatables.net-responsive/node_modules/datatables.net": { - "version": "1.10.24", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.24.tgz", - "integrity": "sha512-CwXixvOdinvBCLXvcTloDinWiEM7Geaz+GwyjPrZL+MXIGPcLv4Op1bbWn8ErsI1JWMIWC8Cuf1rnDU2RrFV5w==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/datatables.net-responsive/-/datatables.net-responsive-2.2.7.tgz", + "integrity": "sha512-pjZcR+AHa0GE++giRhMBSxFLKrfjP+X7etj7oZMMfMTi1gcdYdM8YP3gmpEyfLjDEg6uPJb9PRH4mQHcc8OYyA==", "dependencies": { + "datatables.net": "^1.10.15", "jquery": ">=1.7" } }, "node_modules/datatables.net-scroller": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-1.4.2.tgz", - "integrity": "sha1-cK/eDfOI2+THU3+RX3VllmSNf/E=", - "dependencies": { - "datatables.net": ">=1.10.9", - "jquery": ">=1.7" - } - }, - "node_modules/datatables.net-scroller/node_modules/datatables.net": { - "version": "1.10.24", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.24.tgz", - "integrity": "sha512-CwXixvOdinvBCLXvcTloDinWiEM7Geaz+GwyjPrZL+MXIGPcLv4Op1bbWn8ErsI1JWMIWC8Cuf1rnDU2RrFV5w==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/datatables.net-scroller/-/datatables.net-scroller-1.5.1.tgz", + "integrity": "sha512-aMUarBCREmrSLE0n0NBmOMI55Re+EV4KMpR1rMc2l8jhoE+UQWF1Xe0AYuR4342ybesb1WW8U3RVlLdS6gQCmg==", "dependencies": { + "datatables.net": "^1.10.15", "jquery": ">=1.7" } }, "node_modules/datatables.net-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.2.0.tgz", - "integrity": "sha1-iiv9rBu3piYF7ONY0IqtEAMAsR4=", - "dependencies": { - "datatables.net": ">=1.10.9", - "jquery": ">=1.7" - } - }, - "node_modules/datatables.net-select/node_modules/datatables.net": { - "version": "1.10.24", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.24.tgz", - "integrity": "sha512-CwXixvOdinvBCLXvcTloDinWiEM7Geaz+GwyjPrZL+MXIGPcLv4Op1bbWn8ErsI1JWMIWC8Cuf1rnDU2RrFV5w==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.3.3.tgz", + "integrity": "sha512-M4e9Qx790IPt+tc+CLgk7gPram3i+M2OmhIkhIpp7RcZ2Ay4App4ouQZcEx3j1MTRIWxtOz47xjpWrwVfJ23YQ==", "dependencies": { + "datatables.net": "^1.10.15", "jquery": ">=1.7" } }, @@ -100,21 +66,18 @@ }, "node_modules/raleway-webfont": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/raleway-webfont/-/raleway-webfont-3.0.1.tgz", - "integrity": "sha1-Er9rCBVY/eBxffWpfMF/B20eq/o=" + "license": "MIT AND OFL-1.1" }, "node_modules/scrollmagic": { "version": "2.0.8", - "resolved": "https://registry.npmjs.org/scrollmagic/-/scrollmagic-2.0.8.tgz", - "integrity": "sha512-UYXEGBPVLziovXl3FjHGkY9c4UXKUKopIdXwWR2JapWxCo0U345wYegi7rcsv5vHf/ktc1bSNWy4QRFiV+Yccw==", + "license": "(MIT OR GPL-3.0+)", "engines": { "node": ">=0.10.x" } }, "node_modules/tippy.js": { "version": "6.2.5", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-6.2.5.tgz", - "integrity": "sha512-UIf8G99PMXGmdWPrr36s/DjQBdfxMPwzvPUXsxs3tDFDTZ1SgvKG+Jvt6RJ+aBqYL0oe/STxh3MNkCV3IWAKmw==", + "license": "MIT", "dependencies": { "@popperjs/core": "^2.4.4" } diff --git a/node_modules/datatables.net-fixedheader/node_modules/datatables.net/License.txt b/node_modules/datatables.net-fixedheader/License.txt similarity index 100% rename from node_modules/datatables.net-fixedheader/node_modules/datatables.net/License.txt rename to node_modules/datatables.net-fixedheader/License.txt diff --git a/node_modules/datatables.net-fixedheader/Readme.md b/node_modules/datatables.net-fixedheader/Readme.md index 913b338b0..eb70e845e 100644 --- a/node_modules/datatables.net-fixedheader/Readme.md +++ b/node_modules/datatables.net-fixedheader/Readme.md @@ -1,6 +1,6 @@ # FixedHeader for DataTables -This package contains distribution files for the [FixedHeader extension](https://datatables.net/extensions/fixedheader) for [DataTables](https://datatables.net/). Only the core software for this library is contained in this package - to be correctly styled, a styling package for FixedHeader must also be included. Styling options include DataTable's native styling, [Bootstrap](http://getboostrap.com) and [Foundation](http://foundation.zurb.com/). +This package contains distribution files for the [FixedHeader extension](https://datatables.net/extensions/fixedheader) for [DataTables](https://datatables.net/). Only the core software for this library is contained in this package - to be correctly styled, a styling package for FixedHeader must also be included. Styling options include DataTable's native styling, [Bootstrap](http://getbootstrap.com) and [Foundation](http://foundation.zurb.com/). When displaying large amounts of data in a table, it can often be useful for the end user to have the column titles always visible. This is particularly true if using DataTables with pagination disabled, or the display length is set to a high value. The FixedHeader extension provides this ability. diff --git a/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.js b/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.js index 7c236da69..129016329 100644 --- a/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.js +++ b/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.js @@ -1,16 +1,16 @@ -/*! FixedHeader 3.1.2 - * ©2009-2016 SpryMedia Ltd - datatables.net/license +/*! FixedHeader 3.1.8 + * ©2009-2021 SpryMedia Ltd - datatables.net/license */ /** * @summary FixedHeader * @description Fix a table's header or footer, so it is always visible while * scrolling - * @version 3.1.2 + * @version 3.1.8 * @file dataTables.fixedHeader.js * @author SpryMedia Ltd (www.sprymedia.co.uk) * @contact www.sprymedia.co.uk/contact - * @copyright Copyright 2009-2016 SpryMedia Ltd. + * @copyright Copyright 2009-2021 SpryMedia Ltd. * * This source file is free software, available under the following license: * MIT license - http://datatables.net/license/mit @@ -134,15 +134,13 @@ $.extend( FixedHeader.prototype, { /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * API methods */ - + /** - * Enable / disable the fixed elements - * - * @param {boolean} enable `true` to enable, `false` to disable + * Kill off FH and any events */ - enable: function ( enable ) - { - this.s.enable = enable; + destroy: function () { + this.s.dt.off( '.dtfc' ); + $(window).off( this.s.namespace ); if ( this.c.header ) { this._modeChange( 'in-place', 'header', true ); @@ -151,8 +149,29 @@ $.extend( FixedHeader.prototype, { if ( this.c.footer && this.dom.tfoot.length ) { this._modeChange( 'in-place', 'footer', true ); } + }, - this.update(); + /** + * Enable / disable the fixed elements + * + * @param {boolean} enable `true` to enable, `false` to disable + */ + enable: function ( enable, update ) + { + this.s.enable = enable; + + if ( update || update === undefined ) { + this._positions(); + this._scroll( true ); + } + }, + + /** + * Get enabled status + */ + enabled: function () + { + return this.s.enable; }, /** @@ -191,6 +210,15 @@ $.extend( FixedHeader.prototype, { */ update: function () { + var table = this.s.dt.table().node(); + + if ( $(table).is(':visible') ) { + this.enable( true, false ); + } + else { + this.enable( false, false ); + } + this._positions(); this._scroll( true ); }, @@ -215,10 +243,10 @@ $.extend( FixedHeader.prototype, { .on( 'scroll'+this.s.namespace, function () { that._scroll(); } ) - .on( 'resize'+this.s.namespace, function () { + .on( 'resize'+this.s.namespace, DataTable.util.throttle( function () { that.s.position.windowHeight = $(window).height(); that.update(); - } ); + }, 50 ) ); var autoHeader = $('.fh-fixedHeader'); if ( ! this.c.headerOffset && autoHeader.length ) { @@ -230,13 +258,12 @@ $.extend( FixedHeader.prototype, { this.c.footerOffset = autoFooter.outerHeight(); } - dt.on( 'column-reorder.dt.dtfc column-visibility.dt.dtfc draw.dt.dtfc column-sizing.dt.dtfc', function () { + dt.on( 'column-reorder.dt.dtfc column-visibility.dt.dtfc draw.dt.dtfc column-sizing.dt.dtfc responsive-display.dt.dtfc', function () { that.update(); } ); dt.on( 'destroy.dtfc', function () { - dt.off( '.dtfc' ); - $(window).off( that.s.namespace ); + that.destroy(); } ); this._positions(); @@ -280,12 +307,17 @@ $.extend( FixedHeader.prototype, { itemDom.floating = $( dt.table().node().cloneNode( false ) ) .css( 'table-layout', 'fixed' ) + .attr( 'aria-hidden', 'true' ) .removeAttr( 'id' ) .append( itemElement ) .appendTo( 'body' ); // Insert a fake thead/tfoot into the DataTable to stop it jumping around itemDom.placeholder = itemElement.clone( false ); + itemDom.placeholder + .find( '*[id]' ) + .removeAttr( 'id' ); + itemDom.host.prepend( itemDom.placeholder ); // Clone widths @@ -308,7 +340,7 @@ $.extend( FixedHeader.prototype, { var get = function ( name ) { return $(name, from) .map( function () { - return $(this).width(); + return $(this).css('width').replace(/[^\d\.]/g, '') * 1; } ).toArray(); }; @@ -393,12 +425,23 @@ $.extend( FixedHeader.prototype, { var itemDom = this.dom[ item ]; var position = this.s.position; + // It isn't trivial to add a !important css attribute... + var importantWidth = function (w) { + itemDom.floating.attr('style', function(i,s) { + return (s || '') + 'width: '+w+'px !important;'; + }); + }; + // Record focus. Browser's will cause input elements to loose focus if // they are inserted else where in the doc var tablePart = this.dom[ item==='footer' ? 'tfoot' : 'thead' ]; var focus = $.contains( tablePart[0], document.activeElement ) ? document.activeElement : null; + + if ( focus ) { + focus.blur(); + } if ( mode === 'in-place' ) { // Insert the header back into the table's real header @@ -410,10 +453,10 @@ $.extend( FixedHeader.prototype, { this._unsize( item ); if ( item === 'header' ) { - itemDom.host.prepend( this.dom.thead ); + itemDom.host.prepend( tablePart ); } else { - itemDom.host.append( this.dom.tfoot ); + itemDom.host.append( tablePart ); } if ( itemDom.floating ) { @@ -429,8 +472,9 @@ $.extend( FixedHeader.prototype, { itemDom.floating .addClass( 'fixedHeader-floating' ) .css( item === 'header' ? 'top' : 'bottom', this.c[item+'Offset'] ) - .css( 'left', position.left+'px' ) - .css( 'width', position.width+'px' ); + .css( 'left', position.left+'px' ); + + importantWidth(position.width); if ( item === 'footer' ) { itemDom.floating.css( 'top', '' ); @@ -443,8 +487,9 @@ $.extend( FixedHeader.prototype, { itemDom.floating .addClass( 'fixedHeader-locked' ) .css( 'top', position.tfootTop - position.theadHeight ) - .css( 'left', position.left+'px' ) - .css( 'width', position.width+'px' ); + .css( 'left', position.left+'px' ); + + importantWidth(position.width); } else if ( mode === 'above' ) { // only used for the footer // Fix the position of the floating footer at top of the table body @@ -453,13 +498,16 @@ $.extend( FixedHeader.prototype, { itemDom.floating .addClass( 'fixedHeader-locked' ) .css( 'top', position.tbodyTop ) - .css( 'left', position.left+'px' ) - .css( 'width', position.width+'px' ); + .css( 'left', position.left+'px' ); + + importantWidth(position.width); } // Restore focus if it was lost if ( focus && focus !== document.activeElement ) { - focus.focus(); + setTimeout( function () { + focus.focus(); + }, 10 ); } this.s.scrollLeft.header = -1; @@ -493,6 +541,7 @@ $.extend( FixedHeader.prototype, { position.left = tableNode.offset().left; position.theadTop = thead.offset().top; position.tbodyTop = tbody.offset().top; + position.tbodyHeight = tbody.outerHeight(); position.theadHeight = position.tbodyTop - position.theadTop; if ( tfoot.length ) { @@ -523,12 +572,11 @@ $.extend( FixedHeader.prototype, { var position = this.s.position; var headerMode, footerMode; - if ( ! this.s.enable ) { - return; - } - if ( this.c.header ) { - if ( ! position.visible || windowTop <= position.theadTop - this.c.headerOffset ) { + if ( ! this.s.enable ) { + headerMode = 'in-place'; + } + else if ( ! position.visible || windowTop <= position.theadTop - this.c.headerOffset ) { headerMode = 'in-place'; } else if ( windowTop <= position.tfootTop - position.theadHeight - this.c.headerOffset ) { @@ -546,7 +594,10 @@ $.extend( FixedHeader.prototype, { } if ( this.c.footer && this.dom.tfoot.length ) { - if ( ! position.visible || windowTop + position.windowHeight >= position.tfootBottom + this.c.footerOffset ) { + if ( ! this.s.enable ) { + footerMode = 'in-place'; + } + else if ( ! position.visible || windowTop + position.windowHeight >= position.tfootBottom + this.c.footerOffset ) { footerMode = 'in-place'; } else if ( position.windowHeight + windowTop > position.tbodyTop + position.tfootHeight + this.c.footerOffset ) { @@ -571,7 +622,7 @@ $.extend( FixedHeader.prototype, { * @type {String} * @static */ -FixedHeader.version = "3.1.2"; +FixedHeader.version = "3.1.8"; /** * Defaults @@ -631,17 +682,30 @@ DataTable.Api.register( 'fixedHeader.enable()', function ( flag ) { return this.iterator( 'table', function ( ctx ) { var fh = ctx._fixedHeader; - if ( fh ) { - fh.enable( flag !== undefined ? flag : true ); + flag = ( flag !== undefined ? flag : true ); + if ( fh && flag !== fh.enabled() ) { + fh.enable( flag ); } } ); } ); +DataTable.Api.register( 'fixedHeader.enabled()', function () { + if ( this.context.length ) { + var fh = this.context[0]._fixedHeader; + + if ( fh ) { + return fh.enabled(); + } + } + + return false; +} ); + DataTable.Api.register( 'fixedHeader.disable()', function ( ) { return this.iterator( 'table', function ( ctx ) { var fh = ctx._fixedHeader; - if ( fh ) { + if ( fh && fh.enabled() ) { fh.enable( false ); } } ); diff --git a/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.min.js b/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.min.js new file mode 100644 index 000000000..ffe80a4ab --- /dev/null +++ b/node_modules/datatables.net-fixedheader/js/dataTables.fixedHeader.min.js @@ -0,0 +1,19 @@ +/*! + FixedHeader 3.1.8 + ©2009-2021 SpryMedia Ltd - datatables.net/license +*/ +(function(d){"function"===typeof define&&define.amd?define(["jquery","datatables.net"],function(g){return d(g,window,document)}):"object"===typeof exports?module.exports=function(g,j){g||(g=window);if(!j||!j.fn.dataTable)j=require("datatables.net")(g,j).$;return d(j,g,g.document)}:d(jQuery,window,document)})(function(d,g,j,k){var i=d.fn.dataTable,l=0,h=function(a,b){if(!(this instanceof h))throw"FixedHeader must be initialised with the 'new' keyword.";!0===b&&(b={});a=new i.Api(a);this.c=d.extend(!0, +{},h.defaults,b);this.s={dt:a,position:{theadTop:0,tbodyTop:0,tfootTop:0,tfootBottom:0,width:0,left:0,tfootHeight:0,theadHeight:0,windowHeight:d(g).height(),visible:!0},headerMode:null,footerMode:null,autoWidth:a.settings()[0].oFeatures.bAutoWidth,namespace:".dtfc"+l++,scrollLeft:{header:-1,footer:-1},enable:!0};this.dom={floatingHeader:null,thead:d(a.table().header()),tbody:d(a.table().body()),tfoot:d(a.table().footer()),header:{host:null,floating:null,placeholder:null},footer:{host:null,floating:null, +placeholder:null}};this.dom.header.host=this.dom.thead.parent();this.dom.footer.host=this.dom.tfoot.parent();var e=a.settings()[0];if(e._fixedHeader)throw"FixedHeader already initialised on table "+e.nTable.id;e._fixedHeader=this;this._constructor()};d.extend(h.prototype,{destroy:function(){this.s.dt.off(".dtfc");d(g).off(this.s.namespace);this.c.header&&this._modeChange("in-place","header",!0);this.c.footer&&this.dom.tfoot.length&&this._modeChange("in-place","footer",!0)},enable:function(a,b){this.s.enable= +a;if(b||b===k)this._positions(),this._scroll(!0)},enabled:function(){return this.s.enable},headerOffset:function(a){a!==k&&(this.c.headerOffset=a,this.update());return this.c.headerOffset},footerOffset:function(a){a!==k&&(this.c.footerOffset=a,this.update());return this.c.footerOffset},update:function(){var a=this.s.dt.table().node();d(a).is(":visible")?this.enable(!0,!1):this.enable(!1,!1);this._positions();this._scroll(!0)},_constructor:function(){var a=this,b=this.s.dt;d(g).on("scroll"+this.s.namespace, +function(){a._scroll()}).on("resize"+this.s.namespace,i.util.throttle(function(){a.s.position.windowHeight=d(g).height();a.update()},50));var e=d(".fh-fixedHeader");!this.c.headerOffset&&e.length&&(this.c.headerOffset=e.outerHeight());e=d(".fh-fixedFooter");!this.c.footerOffset&&e.length&&(this.c.footerOffset=e.outerHeight());b.on("column-reorder.dt.dtfc column-visibility.dt.dtfc draw.dt.dtfc column-sizing.dt.dtfc responsive-display.dt.dtfc",function(){a.update()});b.on("destroy.dtfc",function(){a.destroy()}); +this._positions();this._scroll()},_clone:function(a,b){var e=this.s.dt,c=this.dom[a],f="header"===a?this.dom.thead:this.dom.tfoot;!b&&c.floating?c.floating.removeClass("fixedHeader-floating fixedHeader-locked"):(c.floating&&(c.placeholder.remove(),this._unsize(a),c.floating.children().detach(),c.floating.remove()),c.floating=d(e.table().node().cloneNode(!1)).css("table-layout","fixed").attr("aria-hidden","true").removeAttr("id").append(f).appendTo("body"),c.placeholder=f.clone(!1),c.placeholder.find("*[id]").removeAttr("id"), +c.host.prepend(c.placeholder),this._matchWidths(c.placeholder,c.floating))},_matchWidths:function(a,b){var e=function(b){return d(b,a).map(function(){return 1*d(this).css("width").replace(/[^\d\.]/g,"")}).toArray()},c=function(a,c){d(a,b).each(function(a){d(this).css({width:c[a],minWidth:c[a]})})},f=e("th"),e=e("td");c("th",f);c("td",e)},_unsize:function(a){var b=this.dom[a].floating;b&&("footer"===a||"header"===a&&!this.s.autoWidth)?d("th, td",b).css({width:"",minWidth:""}):b&&"header"===a&&d("th, td", +b).css("min-width","")},_horizontal:function(a,b){var e=this.dom[a],c=this.s.position,d=this.s.scrollLeft;e.floating&&d[a]!==b&&(e.floating.css("left",c.left-b),d[a]=b)},_modeChange:function(a,b,e){var c=this.dom[b],f=this.s.position,g=function(a){c.floating.attr("style",function(b,c){return(c||"")+"width: "+a+"px !important;"})},i=this.dom["footer"===b?"tfoot":"thead"],h=d.contains(i[0],j.activeElement)?j.activeElement:null;h&&h.blur();if("in-place"===a){if(c.placeholder&&(c.placeholder.remove(), +c.placeholder=null),this._unsize(b),"header"===b?c.host.prepend(i):c.host.append(i),c.floating)c.floating.remove(),c.floating=null}else"in"===a?(this._clone(b,e),c.floating.addClass("fixedHeader-floating").css("header"===b?"top":"bottom",this.c[b+"Offset"]).css("left",f.left+"px"),g(f.width),"footer"===b&&c.floating.css("top","")):"below"===a?(this._clone(b,e),c.floating.addClass("fixedHeader-locked").css("top",f.tfootTop-f.theadHeight).css("left",f.left+"px"),g(f.width)):"above"===a&&(this._clone(b, +e),c.floating.addClass("fixedHeader-locked").css("top",f.tbodyTop).css("left",f.left+"px"),g(f.width));h&&h!==j.activeElement&&setTimeout(function(){h.focus()},10);this.s.scrollLeft.header=-1;this.s.scrollLeft.footer=-1;this.s[b+"Mode"]=a},_positions:function(){var a=this.s.dt.table(),b=this.s.position,e=this.dom,a=d(a.node()),c=a.children("thead"),f=a.children("tfoot"),e=e.tbody;b.visible=a.is(":visible");b.width=a.outerWidth();b.left=a.offset().left;b.theadTop=c.offset().top;b.tbodyTop=e.offset().top; +b.tbodyHeight=e.outerHeight();b.theadHeight=b.tbodyTop-b.theadTop;f.length?(b.tfootTop=f.offset().top,b.tfootBottom=b.tfootTop+f.outerHeight(),b.tfootHeight=b.tfootBottom-b.tfootTop):(b.tfootTop=b.tbodyTop+e.outerHeight(),b.tfootBottom=b.tfootTop,b.tfootHeight=b.tfootTop)},_scroll:function(a){var b=d(j).scrollTop(),e=d(j).scrollLeft(),c=this.s.position,f;this.c.header&&(f=this.s.enable?!c.visible||b<=c.theadTop-this.c.headerOffset?"in-place":b<=c.tfootTop-c.theadHeight-this.c.headerOffset?"in":"below": +"in-place",(a||f!==this.s.headerMode)&&this._modeChange(f,"header",a),this._horizontal("header",e));this.c.footer&&this.dom.tfoot.length&&(b=this.s.enable?!c.visible||b+c.windowHeight>=c.tfootBottom+this.c.footerOffset?"in-place":c.windowHeight+b>c.tbodyTop+c.tfootHeight+this.c.footerOffset?"in":"above":"in-place",(a||b!==this.s.footerMode)&&this._modeChange(b,"footer",a),this._horizontal("footer",e))}});h.version="3.1.8";h.defaults={header:!0,footer:!1,headerOffset:0,footerOffset:0};d.fn.dataTable.FixedHeader= +h;d.fn.DataTable.FixedHeader=h;d(j).on("init.dt.dtfh",function(a,b){if("dt"===a.namespace){var e=b.oInit.fixedHeader,c=i.defaults.fixedHeader;if((e||c)&&!b._fixedHeader)c=d.extend({},c,e),!1!==e&&new h(b,c)}});i.Api.register("fixedHeader()",function(){});i.Api.register("fixedHeader.adjust()",function(){return this.iterator("table",function(a){(a=a._fixedHeader)&&a.update()})});i.Api.register("fixedHeader.enable()",function(a){return this.iterator("table",function(b){b=b._fixedHeader;a=a!==k?a:!0; +b&&a!==b.enabled()&&b.enable(a)})});i.Api.register("fixedHeader.enabled()",function(){if(this.context.length){var a=this.context[0]._fixedHeader;if(a)return a.enabled()}return!1});i.Api.register("fixedHeader.disable()",function(){return this.iterator("table",function(a){(a=a._fixedHeader)&&a.enabled()&&a.enable(!1)})});d.each(["header","footer"],function(a,b){i.Api.register("fixedHeader."+b+"Offset()",function(a){var c=this.context;return a===k?c.length&&c[0]._fixedHeader?c[0]._fixedHeader[b+"Offset"](): +k:this.iterator("table",function(c){if(c=c._fixedHeader)c[b+"Offset"](a)})})});return h}); diff --git a/node_modules/datatables.net-fixedheader/node_modules/datatables.net/Readme.md b/node_modules/datatables.net-fixedheader/node_modules/datatables.net/Readme.md deleted file mode 100644 index 99c922508..000000000 --- a/node_modules/datatables.net-fixedheader/node_modules/datatables.net/Readme.md +++ /dev/null @@ -1,50 +0,0 @@ -# DataTables for jQuery - -This package contains distribution files for the [DataTables library](https://datatables.net) for [jQuery](http://jquery.com/). Only the core software for this library is contained in this package - to be correctly styled, a styling package for DataTables must also be included. Styling options include DataTable's native styling, [Bootstrap](http://getbootstrap.com) and [Foundation](http://foundation.zurb.com/). - -DataTables is a table enhancing library which adds features such as paging, ordering, search, scrolling and many more to a static HTML page. A comprehensive API is also available that can be used to manipulate the table. Please refer to the [DataTables web-site](//datatables.net) for a full range of documentation and examples. - - -## Installation - -### Browser - -For inclusion of this library using a standard `