diff --git a/README.md b/README.md
index 49d45bb..826a4a2 100644
--- a/README.md
+++ b/README.md
@@ -6,11 +6,11 @@ The simple, easy-to-implement plugin to export HTML tables to xlsx, xls, csv, an
### Download and Setup
-To use this plugin, include the [jQuery](https://jquery.com) library, [FileSaver.js](https://github.com/eligrey/FileSaver.js/) script, and [TableExport.js](https://www.travismclarke.com/tableexport) plugin before the closing `
` tag of your HTML document:
+To use this plugin, include the [jQuery](https://jquery.com) library, [FileSaver.js](https://github.com/clarketm/FileSaver.js/) script, and [TableExport.js](https://www.travismclarke.com/tableexport) plugin before the closing `` tag of your HTML document:
```html
-
+
...
```
@@ -29,16 +29,16 @@ $ npm install tableexport
### [CDNjs](https://cdnjs.com/libraries/TableExport)
| | uncompressed | compressed |
| :------: | :----------: | :--------: |
-| __CSS__ | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/css/tableexport.css) | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/css/tableexport.min.css) |
-| __JS__ | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/js/tableexport.js) | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/js/tableexport.min.js) |
-| __Images__ | — | [🔗xlsx](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/img/xlsx.svg)[🔗xls](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/img/xls.svg)[🔗csv](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/img/csv.svg)[🔗txt](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.2.5/img/txt.svg) |
+| __CSS__ | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/css/tableexport.css) | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/css/tableexport.min.css) |
+| __JS__ | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/js/tableexport.js) | [🔗](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/js/tableexport.min.js) |
+| __Images__ | — | [🔗xlsx](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/img/xlsx.svg)[🔗xls](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/img/xls.svg)[🔗csv](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/img/csv.svg)[🔗txt](https://cdnjs.cloudflare.com/ajax/libs/TableExport/3.3.5/img/txt.svg) |
### Dependencies
#### Required:
* [jQuery](https://jquery.com) (1.2.1 or higher) `*`
-* [FileSaver.js](https://github.com/eligrey/FileSaver.js/)
+* [FileSaver.js](https://github.com/clarketm/FileSaver.js/)
> `*` jQuery dependency requirement is removed as of [4.0.0-alpha.1](https://github.com/clarketm/TableExport/tree/v4.0.0-alpha.1)
@@ -47,28 +47,28 @@ $ npm install tableexport
* [Bootstrap](http://getbootstrap.com/getting-started/#download) (3.1.0 or higher)
#### Add-Ons:
-In order to provide **Office Open XML SpreadsheetML Format ( .xlsx )** support, you must include the following third-party script to your project before [FileSaver.js](https://github.com/eligrey/FileSaver.js/) and [TableExport.js](https://www.travismclarke.com/tableexport).
+In order to provide **Office Open XML SpreadsheetML Format ( .xlsx )** support, you must include the following third-party script to your project before [FileSaver.js](https://github.com/clarketm/FileSaver.js/) and [TableExport.js](https://www.travismclarke.com/tableexport).
-* [xlsx-core.js](https://github.com/SheetJS/js-xlsx) by _SheetJS_
+* [xls.js](https://github.com/clarketm/js-xls) by _clarketm_
```html
-
-
+
+
...
```
#### Older Browsers:
-To support older browsers ( **Chrome** < 20, **Firefox** < 13, **Opera** < 12.10, **IE** < 10, __Safari__ < 6 ) include the [Blob.js](https://github.com/clarketm/Blob.js/) polyfill before the [FileSaver.js](https://github.com/eligrey/FileSaver.js/) script.
+To support older browsers ( **Chrome** < 20, **Firefox** < 13, **Opera** < 12.10, **IE** < 10, __Safari__ < 6 ) include the [Blob.js](https://github.com/clarketm/Blob.js/) polyfill before the [FileSaver.js](https://github.com/clarketm/FileSaver.js/) script.
-Until [Safari](https://github.com/eligrey/FileSaver.js/issues/242) provides native support for either the [HTML5 download attribute](http://caniuse.com/#feat=download) or [service workers](http://caniuse.com/#search=service%20workers), limited `xlx` and `xlsx` support is provided by including the [Blob.js](https://github.com/clarketm/Blob.js/) polyfill, albeit the **filename** will always be labeled `Unknown`.
+Until [Safari](https://github.com/clarketm/FileSaver.js/issues/242) provides native support for either the [HTML5 download attribute](http://caniuse.com/#feat=download) or [service workers](http://caniuse.com/#search=service%20workers), limited `xlx` and `xlsx` support is provided by including the [Blob.js](https://github.com/clarketm/Blob.js/) polyfill, albeit the **filename** will always be labeled `Unknown`.
* [Blob.js](https://github.com/clarketm/Blob.js) by _clarketm_
```html
-
+
-
+
...
```
@@ -221,7 +221,7 @@ $.fn.tableExport.rowDel = "\r\n";
*only _partial_ support for `xls` and `xlsx`: requires third-party dependency ([Blob.js](https://github.com/clarketm/Blob.js/))
### Live Demo
-A live, interactive demo can be found **[here](https://www.travismclarke.com/tableexport/#live-demo)**
+A live, interactive demo can be found **[here](https://www.travismclarke.com/tableexport/#live-demo)**. Also, check out the [TableExport + RequireJS](https://github.com/clarketm/tableexport_requirejs_app/blob/master/README.md) skeleton,
### License
[TableExport.js](https://www.travismclarke.com/tableexport) is licensed under the terms of the [MIT](http://opensource.org/licenses/mit-license.php) License
@@ -229,5 +229,5 @@ A live, interactive demo can be found **[here](https://www.travismclarke.com/tab
### Credits
* [John Resig](https://github.com/jeresig) - jQuery
-* [SheetJS](https://github.com/SheetJS) - js-xlsx
+* [SheetJS](https://github.com/SheetJS) - js-xls
* [Eli Grey](https://github.com/eligrey) - FileSaver.js & Blob.js
diff --git a/bower.json b/bower.json
index 1c29f93..e427cb1 100644
--- a/bower.json
+++ b/bower.json
@@ -5,7 +5,7 @@
"clarketm "
],
"description": "The simple, easy-to-implement plugin to export HTML tables to xlsx, xls, csv, and txt files",
- "main": "dist/js/tableexport.min.js",
+ "main": "dist/js/tableexport.js",
"keywords": [
"table",
"export",
@@ -21,8 +21,8 @@
"dependencies": {
"bootstrap": "~3.3.5",
"jquery": "~1.11.3",
- "js-xlsx": "0.8.0",
- "file-saver": "^1.3.3",
+ "xlsx-js": "^0.8.1",
+ "file-saverjs": "^1.3.3",
"blobjs": "^1.0.0"
},
"license": "MIT",
diff --git a/dist/css/tableexport.css b/dist/css/tableexport.css
index 49c1dba..f731cb9 100644
--- a/dist/css/tableexport.css
+++ b/dist/css/tableexport.css
@@ -64,4 +64,4 @@
.txt:before {
content: "";
background: purple url(../img/txt.svg) no-repeat center;
-}
\ No newline at end of file
+}
diff --git a/dist/css/tableexport.min.css b/dist/css/tableexport.min.css
index dc1dcd5..eeecfbe 100644
--- a/dist/css/tableexport.min.css
+++ b/dist/css/tableexport.min.css
@@ -2,4 +2,4 @@
* TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
- */.top{caption-side:top}.bottom{caption-side:bottom}.button-default,.button-default:active,.button-default:focus,.button-default:hover{text-decoration:none}.button-default{font:700 12px sans-serif;color:#222;cursor:pointer;padding:5px;margin:5px}.button-default.csv:before,.button-default.txt:before,.button-default.xls:before,.button-default.xlsx:before{content:none}.csv:before,.txt:before,.xls:before,.xlsx:before{content:""}.csv,.txt,.xls,.xlsx{margin:4px 0}.csv:before,.txt:before,.xls:before,.xlsx:before{margin-right:10px;padding:11px 15px 12px;box-shadow:1px 1px 2px rgba(0,0,0,.2)}.xlsx:before{background:url(../img/xlsx.svg) center no-repeat #006400}.xls:before{background:url(../img/xls.svg) center no-repeat green}.csv:before{background:url(../img/csv.svg) center no-repeat #00f}.txt:before{background:url(../img/txt.svg) center no-repeat purple}
\ No newline at end of file
+ */.top{caption-side:top}.bottom{caption-side:bottom}.button-default,.button-default:active,.button-default:focus,.button-default:hover{text-decoration:none}.button-default{font:700 12px sans-serif;color:#222;cursor:pointer;padding:5px;margin:5px}.button-default.csv:before,.button-default.txt:before,.button-default.xls:before,.button-default.xlsx:before{content:none}.csv:before,.txt:before,.xls:before,.xlsx:before{content:""}.csv,.txt,.xls,.xlsx{margin:4px 0}.csv:before,.txt:before,.xls:before,.xlsx:before{margin-right:10px;padding:11px 15px 12px;box-shadow:1px 1px 2px rgba(0,0,0,.2)}.xlsx:before{background:url(../img/xlsx.svg) center no-repeat #006400}.xls:before{background:url(../img/xls.svg) center no-repeat green}.csv:before{background:url(../img/csv.svg) center no-repeat #00f}.txt:before{background:url(../img/txt.svg) center no-repeat purple}
diff --git a/dist/js/tableexport.js b/dist/js/tableexport.js
index c11d575..6c782ee 100644
--- a/dist/js/tableexport.js
+++ b/dist/js/tableexport.js
@@ -1,5 +1,5 @@
/*!
- * TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+ * TableExport.js 4.0.0-alpha.2 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
*/
@@ -7,10 +7,10 @@
;(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
- define(['exports', 'jquery', 'blobjs', 'file-saver', 'xlsx'], factory);
+ define(['exports', 'jquery', 'blobjs', 'file-saverjs', 'xlsx-js'], factory);
} else if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {
// CommonJS
- factory(exports, require('jquery'), require('blobjs'), require('file-saver'), require('xlsx'));
+ factory(exports, require('jquery'), require('blobjs'), require('file-saverjs'), require('xlsx-js'));
} else {
// Browser globals
factory(root, root.jQuery, root.Blob, root.saveAs, root.XLSX);
@@ -273,6 +273,11 @@
};
TableExport.prototype = {
+ /**
+ * Version.
+ * @memberof TableExport.prototype
+ */
+ version: "4.0.0-alpha.2",
/**
* Default plugin options.
* @memberof TableExport.prototype
@@ -537,4 +542,4 @@
exports.default = exports.TableExport = TableExport;
}
-));
\ No newline at end of file
+));
diff --git a/dist/js/tableexport.min.js b/dist/js/tableexport.min.js
index 5445cde..b98f977 100644
--- a/dist/js/tableexport.min.js
+++ b/dist/js/tableexport.min.js
@@ -1,6 +1,6 @@
/*!
- * TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+ * TableExport.js 4.0.0-alpha.2 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
*/
-!function(t,e){"function"==typeof define&&define.amd?define(["exports","jquery","blobjs","file-saver","xlsx"],e):"object"==typeof exports&&"string"!=typeof exports.nodeName?e(exports,require("jquery"),require("blobjs"),require("file-saver"),require("xlsx")):e(t,t.jQuery,t.Blob,t.saveAs,t.XLSX)}(this,function(t,e,o,n,r){"use strict";function i(){for(var t=arguments,e=1;e tr")),b=n.settings.headings?s(t.querySelectorAll("thead > tr")).concat(b):b,b=n.settings.footers?s(t.querySelectorAll("tfoot > tr")).concat(b):b,h=n.settings.headings?t.querySelectorAll("thead > tr").length:0,v="id"===n.settings.fileName?t.getAttribute("id")?t.getAttribute("id"):p.prototype.defaultFileName:n.settings.fileName,S={xlsx:function(t,e){var o={},n=s(b).map(function(t,e){if(!~y.indexOf(e-h)&&!l(t,d)){var n=t.querySelectorAll("th, td");return s(n).map(function(t,n){if(!~m.indexOf(n)&&!l(t,d)){if(l(t,g))return" ";if(t.hasAttribute("colspan")&&(o[e]=o[e]||{},o[e][n+1]=t.getAttribute("colspan")-1),t.hasAttribute("rowspan"))for(var r=1;r":">","'":"'","/":"/"},xlsx:{defaultClass:"xlsx",buttonContent:"Export to xlsx",mimeType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",fileExtension:".xlsx"},xls:{defaultClass:"xls",buttonContent:"Export to xls",separator:"\t",mimeType:"application/vnd.ms-excel",fileExtension:".xls"},csv:{defaultClass:"csv",buttonContent:"Export to csv",separator:",",mimeType:"text/csv",fileExtension:".csv"},txt:{defaultClass:"txt",buttonContent:"Export to txt",separator:" ",mimeType:"text/plain",fileExtension:".txt"},escapeHtml:function(t){return String(t).replace(/[&<>'\/]/g,function(t){return p.prototype.entityMap[t]})},dateNum:function(t,e){e&&(t+=1462);var o=Date.parse(t);return(o-new Date(Date.UTC(1899,11,30)))/864e5},createSheet:function(t){for(var e={},o={s:{c:1e7,r:1e7},e:{c:0,r:0}},n=0;n!=t.length;++n)for(var i=0;i!=t[n].length;++i){o.s.r>n&&(o.s.r=n),o.s.c>i&&(o.s.c=i),o.e.r'+t+"")}function n(e,n,o){var i="";t(i)}var y=e(this);o&&y.find("caption:not(.head)").remove();var m=y.find("tbody").find("tr"),m=s.settings.headings?m.add(y.find("thead>tr")):m,m=s.settings.footers?m.add(y.find("tfoot>tr")):m,g=s.settings.headings?y.find("thead>tr").length:0,b="id"===s.settings.fileName?y.attr("id")?y.attr("id"):r.prototype.defaultFileName:s.settings.fileName,h={xlsx:function(t,o){var i={},s=m.map(function(t,n){if(!~u.indexOf(t-g)&&!e(n).is(x)){var o=e(n).find("th, td");return[o.map(function(n,o){if(!~c.indexOf(n)&&!e(o).is(x)){if(e(o).is(d))return" ";if(o.hasAttribute("colspan")&&(i[t]=i[t]||{},i[t][n+1]=o.getAttribute("colspan")-1),o.hasAttribute("rowspan"))for(var r=1;r":">","'":"'","/":"/"},xlsx:{defaultClass:"xlsx",buttonContent:"Export to xlsx",mimeType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",fileExtension:".xlsx"},xls:{defaultClass:"xls",buttonContent:"Export to xls",separator:"\t",mimeType:"application/vnd.ms-excel",fileExtension:".xls"},csv:{defaultClass:"csv",buttonContent:"Export to csv",separator:",",mimeType:"text/csv",fileExtension:".csv"},txt:{defaultClass:"txt",buttonContent:"Export to txt",separator:" ",mimeType:"text/plain",fileExtension:".txt"},escapeHtml:function(t){return String(t).replace(/[&<>'\/]/g,function(t){return r.prototype.entityMap[t]})},dateNum:function(t,e){e&&(t+=1462);var n=Date.parse(t);return(n-new Date(Date.UTC(1899,11,30)))/864e5},createSheet:function(t){for(var e={},n={s:{c:1e7,r:1e7},e:{c:0,r:0}},o=0;o!=t.length;++o)for(var r=0;r!=t[o].length;++r){n.s.r>o&&(n.s.r=o),n.s.c>r&&(n.s.c=r),n.e.r"
],
@@ -36,9 +36,9 @@
"dependencies": {
"blobjs": "^1.0.0",
"bootstrap": "~3.3.5",
- "file-saver": "^1.3.2",
+ "file-saverjs": "^1.3.2",
"jquery": "~1.11.3",
- "xlsx": "0.8.0"
+ "xlsx-js": "^0.8.1"
},
"devDependencies": {
"del": "^2.2.0",
diff --git a/src/stable/css/tableexport.css b/src/stable/css/tableexport.css
index 49c1dba..fe500cb 100644
--- a/src/stable/css/tableexport.css
+++ b/src/stable/css/tableexport.css
@@ -1,5 +1,5 @@
/*!
- * TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+ * TableExport.js 4.0.0-alpha.2 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
*/
@@ -64,4 +64,4 @@
.txt:before {
content: "";
background: purple url(../img/txt.svg) no-repeat center;
-}
\ No newline at end of file
+}
diff --git a/src/stable/css/tableexport.min.css b/src/stable/css/tableexport.min.css
index dc1dcd5..925c689 100644
--- a/src/stable/css/tableexport.min.css
+++ b/src/stable/css/tableexport.min.css
@@ -1,5 +1,5 @@
/*!
- * TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+ * TableExport.js 4.0.0-alpha.2 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
- */.top{caption-side:top}.bottom{caption-side:bottom}.button-default,.button-default:active,.button-default:focus,.button-default:hover{text-decoration:none}.button-default{font:700 12px sans-serif;color:#222;cursor:pointer;padding:5px;margin:5px}.button-default.csv:before,.button-default.txt:before,.button-default.xls:before,.button-default.xlsx:before{content:none}.csv:before,.txt:before,.xls:before,.xlsx:before{content:""}.csv,.txt,.xls,.xlsx{margin:4px 0}.csv:before,.txt:before,.xls:before,.xlsx:before{margin-right:10px;padding:11px 15px 12px;box-shadow:1px 1px 2px rgba(0,0,0,.2)}.xlsx:before{background:url(../img/xlsx.svg) center no-repeat #006400}.xls:before{background:url(../img/xls.svg) center no-repeat green}.csv:before{background:url(../img/csv.svg) center no-repeat #00f}.txt:before{background:url(../img/txt.svg) center no-repeat purple}
\ No newline at end of file
+ */.top{caption-side:top}.bottom{caption-side:bottom}.button-default,.button-default:active,.button-default:focus,.button-default:hover{text-decoration:none}.button-default{font:700 12px sans-serif;color:#222;cursor:pointer;padding:5px;margin:5px}.button-default.csv:before,.button-default.txt:before,.button-default.xls:before,.button-default.xlsx:before{content:none}.csv:before,.txt:before,.xls:before,.xlsx:before{content:""}.csv,.txt,.xls,.xlsx{margin:4px 0}.csv:before,.txt:before,.xls:before,.xlsx:before{margin-right:10px;padding:11px 15px 12px;box-shadow:1px 1px 2px rgba(0,0,0,.2)}.xlsx:before{background:url(../img/xlsx.svg) center no-repeat #006400}.xls:before{background:url(../img/xls.svg) center no-repeat green}.csv:before{background:url(../img/csv.svg) center no-repeat #00f}.txt:before{background:url(../img/txt.svg) center no-repeat purple}
diff --git a/src/stable/js/tableexport.js b/src/stable/js/tableexport.js
index c11d575..9efdec3 100644
--- a/src/stable/js/tableexport.js
+++ b/src/stable/js/tableexport.js
@@ -1,5 +1,9 @@
/*!
+<<<<<<< HEAD
* TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+=======
+ * TableExport.js v3.3.5 (https://www.travismclarke.com)
+>>>>>>> master
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
*/
@@ -7,10 +11,10 @@
;(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
- define(['exports', 'jquery', 'blobjs', 'file-saver', 'xlsx'], factory);
+ define(['exports', 'jquery', 'blobjs', 'file-saverjs', 'xlsx-js'], factory);
} else if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {
// CommonJS
- factory(exports, require('jquery'), require('blobjs'), require('file-saver'), require('xlsx'));
+ factory(exports, require('jquery'), require('blobjs'), require('file-saverjs'), require('xlsx-js'));
} else {
// Browser globals
factory(root, root.jQuery, root.Blob, root.saveAs, root.XLSX);
@@ -273,6 +277,11 @@
};
TableExport.prototype = {
+ /**
+ * Version.
+ * @memberof TableExport.prototype
+ */
+ version: "3.3.5",
/**
* Default plugin options.
* @memberof TableExport.prototype
@@ -449,7 +458,11 @@
* @param extension {String} file extension
*/
export2file: function (data, mime, name, extension) {
+<<<<<<< HEAD
if (XLSX && extension.substr(0, 4) == ".xls") {
+=======
+ if (XLSX && extension.substr(0, 4) == (".xls")) {
+>>>>>>> master
var wb = new this.Workbook(),
ws = this.createSheet(data);
@@ -534,7 +547,7 @@
}
}
- exports.default = exports.TableExport = TableExport;
+ return exports.default = exports.TableExport = TableExport;
}
));
\ No newline at end of file
diff --git a/src/stable/js/tableexport.min.js b/src/stable/js/tableexport.min.js
index 5445cde..b98f977 100644
--- a/src/stable/js/tableexport.min.js
+++ b/src/stable/js/tableexport.min.js
@@ -1,6 +1,6 @@
/*!
- * TableExport.js 4.0.0-alpha.1 (https://www.travismclarke.com)
+ * TableExport.js 4.0.0-alpha.2 (https://www.travismclarke.com)
* Copyright 2016 Travis Clarke
* Licensed under the MIT license
*/
-!function(t,e){"function"==typeof define&&define.amd?define(["exports","jquery","blobjs","file-saver","xlsx"],e):"object"==typeof exports&&"string"!=typeof exports.nodeName?e(exports,require("jquery"),require("blobjs"),require("file-saver"),require("xlsx")):e(t,t.jQuery,t.Blob,t.saveAs,t.XLSX)}(this,function(t,e,o,n,r){"use strict";function i(){for(var t=arguments,e=1;e tr")),b=n.settings.headings?s(t.querySelectorAll("thead > tr")).concat(b):b,b=n.settings.footers?s(t.querySelectorAll("tfoot > tr")).concat(b):b,h=n.settings.headings?t.querySelectorAll("thead > tr").length:0,v="id"===n.settings.fileName?t.getAttribute("id")?t.getAttribute("id"):p.prototype.defaultFileName:n.settings.fileName,S={xlsx:function(t,e){var o={},n=s(b).map(function(t,e){if(!~y.indexOf(e-h)&&!l(t,d)){var n=t.querySelectorAll("th, td");return s(n).map(function(t,n){if(!~m.indexOf(n)&&!l(t,d)){if(l(t,g))return" ";if(t.hasAttribute("colspan")&&(o[e]=o[e]||{},o[e][n+1]=t.getAttribute("colspan")-1),t.hasAttribute("rowspan"))for(var r=1;r":">","'":"'","/":"/"},xlsx:{defaultClass:"xlsx",buttonContent:"Export to xlsx",mimeType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",fileExtension:".xlsx"},xls:{defaultClass:"xls",buttonContent:"Export to xls",separator:"\t",mimeType:"application/vnd.ms-excel",fileExtension:".xls"},csv:{defaultClass:"csv",buttonContent:"Export to csv",separator:",",mimeType:"text/csv",fileExtension:".csv"},txt:{defaultClass:"txt",buttonContent:"Export to txt",separator:" ",mimeType:"text/plain",fileExtension:".txt"},escapeHtml:function(t){return String(t).replace(/[&<>'\/]/g,function(t){return p.prototype.entityMap[t]})},dateNum:function(t,e){e&&(t+=1462);var o=Date.parse(t);return(o-new Date(Date.UTC(1899,11,30)))/864e5},createSheet:function(t){for(var e={},o={s:{c:1e7,r:1e7},e:{c:0,r:0}},n=0;n!=t.length;++n)for(var i=0;i!=t[n].length;++i){o.s.r>n&&(o.s.r=n),o.s.c>i&&(o.s.c=i),o.e.r'+t+"")}function n(e,n,o){var i="";t(i)}var y=e(this);o&&y.find("caption:not(.head)").remove();var m=y.find("tbody").find("tr"),m=s.settings.headings?m.add(y.find("thead>tr")):m,m=s.settings.footers?m.add(y.find("tfoot>tr")):m,g=s.settings.headings?y.find("thead>tr").length:0,b="id"===s.settings.fileName?y.attr("id")?y.attr("id"):r.prototype.defaultFileName:s.settings.fileName,h={xlsx:function(t,o){var i={},s=m.map(function(t,n){if(!~u.indexOf(t-g)&&!e(n).is(x)){var o=e(n).find("th, td");return[o.map(function(n,o){if(!~c.indexOf(n)&&!e(o).is(x)){if(e(o).is(d))return" ";if(o.hasAttribute("colspan")&&(i[t]=i[t]||{},i[t][n+1]=o.getAttribute("colspan")-1),o.hasAttribute("rowspan"))for(var r=1;r":">","'":"'","/":"/"},xlsx:{defaultClass:"xlsx",buttonContent:"Export to xlsx",mimeType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",fileExtension:".xlsx"},xls:{defaultClass:"xls",buttonContent:"Export to xls",separator:"\t",mimeType:"application/vnd.ms-excel",fileExtension:".xls"},csv:{defaultClass:"csv",buttonContent:"Export to csv",separator:",",mimeType:"text/csv",fileExtension:".csv"},txt:{defaultClass:"txt",buttonContent:"Export to txt",separator:" ",mimeType:"text/plain",fileExtension:".txt"},escapeHtml:function(t){return String(t).replace(/[&<>'\/]/g,function(t){return r.prototype.entityMap[t]})},dateNum:function(t,e){e&&(t+=1462);var n=Date.parse(t);return(n-new Date(Date.UTC(1899,11,30)))/864e5},createSheet:function(t){for(var e={},n={s:{c:1e7,r:1e7},e:{c:0,r:0}},o=0;o!=t.length;++o)for(var r=0;r!=t[o].length;++r){n.s.r>o&&(n.s.r=o),n.s.c>r&&(n.s.c=r),n.e.r