{"version":3,"sources":["webpack:///2.chunk.js","webpack:///./node_modules/tablesaw/dist/tablesaw.jquery.js","webpack:///./node_modules/tablesaw/dist/tablesaw.css?9b1d","webpack:///./node_modules/css-loader/lib/css-base.js","webpack:///./node_modules/style-loader/addStyles.js","webpack:///./node_modules/tablesaw/dist/tablesaw.css"],"names":["webpackJsonpIWT","41","module","exports","__webpack_require__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","Symbol","iterator","root","factory","define","undefined","jQuery","Tablesaw","apply","window","$","document","domContentLoadedTriggered","test","readyState","addEventListener","i18n","modeStack","modeSwipe","modeToggle","modeSwitchColumnsAbbreviated","modeSwitchColumns","columnToggleButton","columnToggleError","sort","swipePreviousColumn","swipeNextColumn","mustard","blackberry","WebKitPoint","operamini","_init","element","trigger","init","on","TablesawConfig","extend","modes","documentElement","addClass","classes","toolbar","events","create","destroy","refresh","resize","defaultConfig","Table","Error","this","table","$table","$thead","children","filter","eq","$tbody","mode","attr","$toolbar","attributes","subrow","ignorerow","prototype","length","find","pluginName","Math","round","random","createToolbar","_initCells","data","getConfig","pluginSpecificConfig","configs","_getPrimaryHeaderRow","_getHeaderRows","is","_getRowIndex","$row","prevAll","_getHeaderRowIndeces","self","indeces","each","push","_getPrimaryHeaderCells","_$getCells","th","add","cells","$t","parent","hasColspan","_getVisibleColspan","colspan","css","parseInt","getColspanForCell","$cell","visibleColspan","visibleSiblingColumns","closest","siblings","colColspan","isCellInColumn","header","cell","updateColspanCells","cls","userAction","primaryHeaderRow","rowspan","next","maxColspan","_findPrimaryHeadersForCell","$headerRow","headerRowIndex","results","rowNumber","headerMapping","colNumber","getRows","getBodyRows","tbody","getHeaderCellIndex","lookup","colIndex","$rows","columnLookup","coltally","getAttribute","k","j","headerRowIndeces","headerIndex","rowCell","headerCol","_getToolbarAnchor","$parent","_getToolbar","$anchor","prev","insertBefore","className","replace","tableId","off","removeData","fn","$doc","e","$target","target","scrollTimeout","isScrolling","clearTimeout","setTimeout","resizeTimeout","stackTable","cellLabels","cellContentLabels","key","attrs","labelless","hideempty","Stack","tablesaw","html","$newHeader","createElement","index","$header","cloneNode","$sortableButton","remove","$checkall","append","createTextNode","el","parentNode","firstChild","appendChild","wrapInner","$label","replaceWith","prepend","removeClass","childNodes","methods","_create","oEl","sel","getElementsByTagName","_select","update","opts","label","found","setAttribute","innerHTML","opt","selected","text","i","l","nodeName","toUpperCase","replaceChild","arrg","a","b","c","call","ColumnToggle","btnTarget","set","columnToggleTable","columnBtnContain","columnBtn","popup","priorityPrefix","$headers","initSet","get","onToggleCheckboxChange","checkbox","checked","getHeaderFromCheckbox","$cells","closePopup","event","$menuButton","$btnContain","openPopup","closeTimeout","id","$popup","$menu","cfg","getColumnToggleLabelTemplate","hasNonPersistentHeaders","$this","priority","appendTo","$btnTarget","preventDefault","$overflow","timeout","$div","refreshToggle","getSortValue","$el","val","join","initSelector","sortableSwitchSelector","sortCol","defaultCol","numericCol","subRow","ignoreRow","head","ascend","descend","switcher","tableToolbar","sortButton","o","clearOthers","headcells","v","col","removeAttr","headsOnAction","stopPropagation","headCell","newSortValue","heads","$switcher","tblsaw","h","idx","isDefaultCol","isDescending","hasNumericAttribute","numericCount","slice","isNaN","isNumeric","$firstChild","tablesawbtn","split","sortRows","rows","colNum","ascending","sorted","cellArr","belongingToTbody","row","subrows","$next","ignored","customFn","forceNumeric","regex","parseFloat","toLowerCase","newRows","makeColDefault","sortBy","tbl","sortedRows","map","returnVal","args","Array","arguments","createSwipeTable","initMinHeaderWidths","width","hiddenCol","headerWidths","$headerCells","offsetWidth","showColumn","headerCell","hideColumn","persistColumn","persistCol","isPersistent","unmaintainWidths","persistWidths","maintainWidths","newHash","prefix","styles","tableWidth","hash","$style","$head","getNext","checkFound","$headerCellsNoPersist","isHidden","getPrev","nextpair","fwd","canAdvance","pair","matchesMedia","matchMedia","matches","fakeBreakpoints","containerWidth","persist","sum","sums","visibleNonPersistantCount","isPersist","needsNonPersistentColumn","advance","getCoord","touches","originalEvent","$btns","$prevBtn","$nextBtn","not","disableTouchEvents","x","y","originX","originY","scrollTop","pageYOffset","swipeHorizontalThreshold","swipeVerticalThreshold","verticalThreshold","swipe","horizontalThreshold","isPageScrolled","abs","canGoPrev","canGoNext","hideBtn","allColumnsVisible","createMiniMap","showHideNav","MiniMap","show","dots","$dotNav","hideDot","mq","S","selectors","excludeMode","main","isSelected","ignoreMode","dataMode","$otherToolbarItems","onModeChange","CheckAll","checkAllSelector","forceCheckedSelector","forceUncheckedSelector","checkboxSelector","$triggers","$checkboxes","_filterCells","getCheckboxesForButton","button","getCheckboxesForCheckbox","addCheckboxEvents","addButtonEvents","allChecked","setChecked","checkedCount","allSelected","indeterminate","42","content","locals","51","list","toString","result","item","modules","mediaQuery","alreadyImportedModules","52","addStylesToDom","options","domStyle","stylesInDom","refs","parts","addStyle","listToStyles","newStyles","media","sourceMap","part","insertStyleElement","styleElement","getHeadElement","lastStyleElementInsertedAtTop","styleElementsInsertedAtTop","insertAt","nextSibling","removeStyleElement","removeChild","indexOf","splice","createStyleElement","type","createLinkElement","linkElement","rel","obj","singleton","styleIndex","singletonCounter","singletonElement","applyToSingletonTag","bind","URL","createObjectURL","revokeObjectURL","Blob","btoa","updateLink","href","applyToTag","newObj","styleSheet","cssText","replaceText","cssNode","unescape","encodeURIComponent","JSON","stringify","blob","oldSrc","memoize","memo","isOldIE","navigator","userAgent","DEBUG","newList","mayRemove","textStore","replacement","Boolean","59"],"mappings":"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","file":"2.chunk.js","sourcesContent":["webpackJsonpIWT([2],{\n\n/***/ 41:\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n/*! Tablesaw - v3.1.0 - 2018-12-10\n* https://github.com/filamentgroup/tablesaw\n* Copyright (c) 2018 Filament Group; Licensed MIT */\n(function (root, factory) {\n\tif (true) {\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(0)], __WEBPACK_AMD_DEFINE_RESULT__ = (function (jQuery) {\n\t\t\treturn root.Tablesaw = factory(jQuery, root);\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else if ((typeof exports === 'undefined' ? 'undefined' : _typeof(exports)) === 'object') {\n\t\tif (\"document\" in root) {\n\t\t\tmodule.exports = factory(require('jquery'), root);\n\t\t} else {\n\t\t\t// special jQuery case for CommonJS (pass in a window)\n\t\t\tmodule.exports = factory(require('jquery')(root), root);\n\t\t}\n\t} else {\n\t\troot.Tablesaw = factory(jQuery, root);\n\t}\n})(typeof window !== \"undefined\" ? window : undefined, function ($, window) {\n\t\"use strict\";\n\n\tvar document = window.document;\n\n\t// Account for Tablesaw being loaded either before or after the DOMContentLoaded event is fired.\n\tvar domContentLoadedTriggered = /complete|loaded/.test(document.readyState);\n\tdocument.addEventListener(\"DOMContentLoaded\", function () {\n\t\tdomContentLoadedTriggered = true;\n\t});\n\n\tvar Tablesaw = {\n\t\ti18n: {\n\t\t\tmodeStack: \"Stack\",\n\t\t\tmodeSwipe: \"Swipe\",\n\t\t\tmodeToggle: \"Toggle\",\n\t\t\tmodeSwitchColumnsAbbreviated: \"Cols\",\n\t\t\tmodeSwitchColumns: \"Columns\",\n\t\t\tcolumnToggleButton: \"Columns\",\n\t\t\tcolumnToggleError: \"No eligible columns.\",\n\t\t\tsort: \"Sort\",\n\t\t\tswipePreviousColumn: \"Previous column\",\n\t\t\tswipeNextColumn: \"Next column\"\n\t\t},\n\t\t// cut the mustard\n\t\tmustard: \"head\" in document && ( // IE9+, Firefox 4+, Safari 5.1+, Mobile Safari 4.1+, Opera 11.5+, Android 2.3+\n\t\t!window.blackberry || window.WebKitPoint) && // only WebKit Blackberry (OS 6+)\n\t\t!window.operamini,\n\t\t$: $,\n\t\t_init: function _init(element) {\n\t\t\tTablesaw.$(element || document).trigger(\"enhance.tablesaw\");\n\t\t},\n\t\tinit: function init(element) {\n\t\t\t// Account for Tablesaw being loaded either before or after the DOMContentLoaded event is fired.\n\t\t\tdomContentLoadedTriggered = domContentLoadedTriggered || /complete|loaded/.test(document.readyState);\n\t\t\tif (!domContentLoadedTriggered) {\n\t\t\t\tif (\"addEventListener\" in document) {\n\t\t\t\t\t// Use raw DOMContentLoaded instead of shoestring (may have issues in Android 2.3, exhibited by stack table)\n\t\t\t\t\tdocument.addEventListener(\"DOMContentLoaded\", function () {\n\t\t\t\t\t\tTablesaw._init(element);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tTablesaw._init(element);\n\t\t\t}\n\t\t}\n\t};\n\n\t$(document).on(\"enhance.tablesaw\", function () {\n\t\t// Extend i18n config, if one exists.\n\t\tif (typeof TablesawConfig !== \"undefined\" && TablesawConfig.i18n) {\n\t\t\tTablesaw.i18n = $.extend(Tablesaw.i18n, TablesawConfig.i18n || {});\n\t\t}\n\n\t\tTablesaw.i18n.modes = [Tablesaw.i18n.modeStack, Tablesaw.i18n.modeSwipe, Tablesaw.i18n.modeToggle];\n\t});\n\n\tif (Tablesaw.mustard) {\n\t\t$(document.documentElement).addClass(\"tablesaw-enhanced\");\n\t}\n\n\t(function () {\n\t\tvar pluginName = \"tablesaw\";\n\t\tvar classes = {\n\t\t\ttoolbar: \"tablesaw-bar\"\n\t\t};\n\t\tvar events = {\n\t\t\tcreate: \"tablesawcreate\",\n\t\t\tdestroy: \"tablesawdestroy\",\n\t\t\trefresh: \"tablesawrefresh\",\n\t\t\tresize: \"tablesawresize\"\n\t\t};\n\t\tvar defaultMode = \"stack\";\n\t\tvar initSelector = \"table\";\n\t\tvar initFilterSelector = \"[data-tablesaw],[data-tablesaw-mode],[data-tablesaw-sortable]\";\n\t\tvar defaultConfig = {};\n\n\t\tTablesaw.events = events;\n\n\t\tvar Table = function Table(element) {\n\t\t\tif (!element) {\n\t\t\t\tthrow new Error(\"Tablesaw requires an element.\");\n\t\t\t}\n\n\t\t\tthis.table = element;\n\t\t\tthis.$table = $(element);\n\n\t\t\t// only one and are allowed, per the specification\n\t\t\tthis.$thead = this.$table.children().filter(\"thead\").eq(0);\n\n\t\t\t// multiple are allowed, per the specification\n\t\t\tthis.$tbody = this.$table.children().filter(\"tbody\");\n\n\t\t\tthis.mode = this.$table.attr(\"data-tablesaw-mode\") || defaultMode;\n\n\t\t\tthis.$toolbar = null;\n\n\t\t\tthis.attributes = {\n\t\t\t\tsubrow: \"data-tablesaw-subrow\",\n\t\t\t\tignorerow: \"data-tablesaw-ignorerow\"\n\t\t\t};\n\n\t\t\tthis.init();\n\t\t};\n\n\t\tTable.prototype.init = function () {\n\t\t\tif (!this.$thead.length) {\n\t\t\t\tthrow new Error(\"tablesaw: a is required, but none was found.\");\n\t\t\t}\n\n\t\t\tif (!this.$thead.find(\"th\").length) {\n\t\t\t\tthrow new Error(\"tablesaw: no header cells found. Are you using inside of ?\");\n\t\t\t}\n\n\t\t\t// assign an id if there is none\n\t\t\tif (!this.$table.attr(\"id\")) {\n\t\t\t\tthis.$table.attr(\"id\", pluginName + \"-\" + Math.round(Math.random() * 10000));\n\t\t\t}\n\n\t\t\tthis.createToolbar();\n\n\t\t\tthis._initCells();\n\n\t\t\tthis.$table.data(pluginName, this);\n\n\t\t\tthis.$table.trigger(events.create, [this]);\n\t\t};\n\n\t\tTable.prototype.getConfig = function (pluginSpecificConfig) {\n\t\t\t// shoestring extend doesn’t support arbitrary args\n\t\t\tvar configs = $.extend(defaultConfig, pluginSpecificConfig || {});\n\t\t\treturn $.extend(configs, typeof TablesawConfig !== \"undefined\" ? TablesawConfig : {});\n\t\t};\n\n\t\tTable.prototype._getPrimaryHeaderRow = function () {\n\t\t\treturn this._getHeaderRows().eq(0);\n\t\t};\n\n\t\tTable.prototype._getHeaderRows = function () {\n\t\t\treturn this.$thead.children().filter(\"tr\").filter(function () {\n\t\t\t\treturn !$(this).is(\"[data-tablesaw-ignorerow]\");\n\t\t\t});\n\t\t};\n\n\t\tTable.prototype._getRowIndex = function ($row) {\n\t\t\treturn $row.prevAll().length;\n\t\t};\n\n\t\tTable.prototype._getHeaderRowIndeces = function () {\n\t\t\tvar self = this;\n\t\t\tvar indeces = [];\n\t\t\tthis._getHeaderRows().each(function () {\n\t\t\t\tindeces.push(self._getRowIndex($(this)));\n\t\t\t});\n\t\t\treturn indeces;\n\t\t};\n\n\t\tTable.prototype._getPrimaryHeaderCells = function ($row) {\n\t\t\treturn ($row || this._getPrimaryHeaderRow()).find(\"th\");\n\t\t};\n\n\t\tTable.prototype._$getCells = function (th) {\n\t\t\tvar self = this;\n\t\t\treturn $(th).add(th.cells).filter(function () {\n\t\t\t\tvar $t = $(this);\n\t\t\t\tvar $row = $t.parent();\n\t\t\t\tvar hasColspan = $t.is(\"[colspan]\");\n\t\t\t\t// no subrows or ignored rows (keep cells in ignored rows that do not have a colspan)\n\t\t\t\treturn !$row.is(\"[\" + self.attributes.subrow + \"]\") && (!$row.is(\"[\" + self.attributes.ignorerow + \"]\") || !hasColspan);\n\t\t\t});\n\t\t};\n\n\t\tTable.prototype._getVisibleColspan = function () {\n\t\t\tvar colspan = 0;\n\t\t\tthis._getPrimaryHeaderCells().each(function () {\n\t\t\t\tvar $t = $(this);\n\t\t\t\tif ($t.css(\"display\") !== \"none\") {\n\t\t\t\t\tcolspan += parseInt($t.attr(\"colspan\"), 10) || 1;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn colspan;\n\t\t};\n\n\t\tTable.prototype.getColspanForCell = function ($cell) {\n\t\t\tvar visibleColspan = this._getVisibleColspan();\n\t\t\tvar visibleSiblingColumns = 0;\n\t\t\tif ($cell.closest(\"tr\").data(\"tablesaw-rowspanned\")) {\n\t\t\t\tvisibleSiblingColumns++;\n\t\t\t}\n\n\t\t\t$cell.siblings().each(function () {\n\t\t\t\tvar $t = $(this);\n\t\t\t\tvar colColspan = parseInt($t.attr(\"colspan\"), 10) || 1;\n\n\t\t\t\tif ($t.css(\"display\") !== \"none\") {\n\t\t\t\t\tvisibleSiblingColumns += colColspan;\n\t\t\t\t}\n\t\t\t});\n\t\t\t// console.log( $cell[ 0 ], visibleColspan, visibleSiblingColumns );\n\n\t\t\treturn visibleColspan - visibleSiblingColumns;\n\t\t};\n\n\t\tTable.prototype.isCellInColumn = function (header, cell) {\n\t\t\treturn $(header).add(header.cells).filter(function () {\n\t\t\t\treturn this === cell;\n\t\t\t}).length;\n\t\t};\n\n\t\tTable.prototype.updateColspanCells = function (cls, header, userAction) {\n\t\t\tvar self = this;\n\t\t\tvar primaryHeaderRow = self._getPrimaryHeaderRow();\n\n\t\t\t// find persistent column rowspans\n\t\t\tthis.$table.find(\"[rowspan][data-tablesaw-priority]\").each(function () {\n\t\t\t\tvar $t = $(this);\n\t\t\t\tif ($t.attr(\"data-tablesaw-priority\") !== \"persist\") {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar $row = $t.closest(\"tr\");\n\t\t\t\tvar rowspan = parseInt($t.attr(\"rowspan\"), 10);\n\t\t\t\tif (rowspan > 1) {\n\t\t\t\t\t$row = $row.next();\n\n\t\t\t\t\t$row.data(\"tablesaw-rowspanned\", true);\n\n\t\t\t\t\trowspan--;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.$table.find(\"[colspan],[data-tablesaw-maxcolspan]\").filter(function () {\n\t\t\t\t// is not in primary header row\n\t\t\t\treturn $(this).closest(\"tr\")[0] !== primaryHeaderRow[0];\n\t\t\t}).each(function () {\n\t\t\t\tvar $cell = $(this);\n\n\t\t\t\tif (userAction === undefined || self.isCellInColumn(header, this)) {} else {\n\t\t\t\t\t// if is not a user action AND the cell is not in the updating column, kill it\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar colspan = self.getColspanForCell($cell);\n\n\t\t\t\tif (cls && userAction !== undefined) {\n\t\t\t\t\t// console.log( colspan === 0 ? \"addClass\" : \"removeClass\", $cell );\n\t\t\t\t\t$cell[colspan === 0 ? \"addClass\" : \"removeClass\"](cls);\n\t\t\t\t}\n\n\t\t\t\t// cache original colspan\n\t\t\t\tvar maxColspan = parseInt($cell.attr(\"data-tablesaw-maxcolspan\"), 10);\n\t\t\t\tif (!maxColspan) {\n\t\t\t\t\t$cell.attr(\"data-tablesaw-maxcolspan\", $cell.attr(\"colspan\"));\n\t\t\t\t} else if (colspan > maxColspan) {\n\t\t\t\t\tcolspan = maxColspan;\n\t\t\t\t}\n\n\t\t\t\t// console.log( this, \"setting colspan to \", colspan );\n\t\t\t\t$cell.attr(\"colspan\", colspan);\n\t\t\t});\n\t\t};\n\n\t\tTable.prototype._findPrimaryHeadersForCell = function (cell) {\n\t\t\tvar $headerRow = this._getPrimaryHeaderRow();\n\t\t\tvar headerRowIndex = this._getRowIndex($headerRow);\n\t\t\tvar results = [];\n\n\t\t\tfor (var rowNumber = 0; rowNumber < this.headerMapping.length; rowNumber++) {\n\t\t\t\tif (rowNumber === headerRowIndex) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var colNumber = 0; colNumber < this.headerMapping[rowNumber].length; colNumber++) {\n\t\t\t\t\tif (this.headerMapping[rowNumber][colNumber] === cell) {\n\t\t\t\t\t\tresults.push(this.headerMapping[headerRowIndex][colNumber]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn results;\n\t\t};\n\n\t\t// used by init cells\n\t\tTable.prototype.getRows = function () {\n\t\t\tvar self = this;\n\t\t\treturn this.$table.find(\"tr\").filter(function () {\n\t\t\t\treturn $(this).closest(\"table\").is(self.$table);\n\t\t\t});\n\t\t};\n\n\t\t// used by sortable\n\t\tTable.prototype.getBodyRows = function (tbody) {\n\t\t\treturn (tbody ? $(tbody) : this.$tbody).children().filter(\"tr\");\n\t\t};\n\n\t\tTable.prototype.getHeaderCellIndex = function (cell) {\n\t\t\tvar lookup = this.headerMapping[0];\n\t\t\tfor (var colIndex = 0; colIndex < lookup.length; colIndex++) {\n\t\t\t\tif (lookup[colIndex] === cell) {\n\t\t\t\t\treturn colIndex;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn -1;\n\t\t};\n\n\t\tTable.prototype._initCells = function () {\n\t\t\t// re-establish original colspans\n\t\t\tthis.$table.find(\"[data-tablesaw-maxcolspan]\").each(function () {\n\t\t\t\tvar $t = $(this);\n\t\t\t\t$t.attr(\"colspan\", $t.attr(\"data-tablesaw-maxcolspan\"));\n\t\t\t});\n\n\t\t\tvar $rows = this.getRows();\n\t\t\tvar columnLookup = [];\n\n\t\t\t$rows.each(function (rowNumber) {\n\t\t\t\tcolumnLookup[rowNumber] = [];\n\t\t\t});\n\n\t\t\t$rows.each(function (rowNumber) {\n\t\t\t\tvar coltally = 0;\n\t\t\t\tvar $t = $(this);\n\t\t\t\tvar children = $t.children();\n\n\t\t\t\tchildren.each(function () {\n\t\t\t\t\tvar colspan = parseInt(this.getAttribute(\"data-tablesaw-maxcolspan\") || this.getAttribute(\"colspan\"), 10);\n\t\t\t\t\tvar rowspan = parseInt(this.getAttribute(\"rowspan\"), 10);\n\n\t\t\t\t\t// set in a previous rowspan\n\t\t\t\t\twhile (columnLookup[rowNumber][coltally]) {\n\t\t\t\t\t\tcoltally++;\n\t\t\t\t\t}\n\n\t\t\t\t\tcolumnLookup[rowNumber][coltally] = this;\n\n\t\t\t\t\t// TODO? both colspan and rowspan\n\t\t\t\t\tif (colspan) {\n\t\t\t\t\t\tfor (var k = 0; k < colspan - 1; k++) {\n\t\t\t\t\t\t\tcoltally++;\n\t\t\t\t\t\t\tcolumnLookup[rowNumber][coltally] = this;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (rowspan) {\n\t\t\t\t\t\tfor (var j = 1; j < rowspan; j++) {\n\t\t\t\t\t\t\tcolumnLookup[rowNumber + j][coltally] = this;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcoltally++;\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tvar headerRowIndeces = this._getHeaderRowIndeces();\n\t\t\tfor (var colNumber = 0; colNumber < columnLookup[0].length; colNumber++) {\n\t\t\t\tfor (var headerIndex = 0, k = headerRowIndeces.length; headerIndex < k; headerIndex++) {\n\t\t\t\t\tvar headerCol = columnLookup[headerRowIndeces[headerIndex]][colNumber];\n\n\t\t\t\t\tvar rowNumber = headerRowIndeces[headerIndex];\n\t\t\t\t\tvar rowCell;\n\n\t\t\t\t\tif (!headerCol.cells) {\n\t\t\t\t\t\theaderCol.cells = [];\n\t\t\t\t\t}\n\n\t\t\t\t\twhile (rowNumber < columnLookup.length) {\n\t\t\t\t\t\trowCell = columnLookup[rowNumber][colNumber];\n\n\t\t\t\t\t\tif (headerCol !== rowCell) {\n\t\t\t\t\t\t\theaderCol.cells.push(rowCell);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\trowNumber++;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.headerMapping = columnLookup;\n\t\t};\n\n\t\tTable.prototype.refresh = function () {\n\t\t\tthis._initCells();\n\n\t\t\tthis.$table.trigger(events.refresh, [this]);\n\t\t};\n\n\t\tTable.prototype._getToolbarAnchor = function () {\n\t\t\tvar $parent = this.$table.parent();\n\t\t\tif ($parent.is(\".tablesaw-overflow\")) {\n\t\t\t\treturn $parent;\n\t\t\t}\n\t\t\treturn this.$table;\n\t\t};\n\n\t\tTable.prototype._getToolbar = function ($anchor) {\n\t\t\tif (!$anchor) {\n\t\t\t\t$anchor = this._getToolbarAnchor();\n\t\t\t}\n\t\t\treturn $anchor.prev().filter(\".\" + classes.toolbar);\n\t\t};\n\n\t\tTable.prototype.createToolbar = function () {\n\t\t\t// Insert the toolbar\n\t\t\t// TODO move this into a separate component\n\t\t\tvar $anchor = this._getToolbarAnchor();\n\t\t\tvar $toolbar = this._getToolbar($anchor);\n\t\t\tif (!$toolbar.length) {\n\t\t\t\t$toolbar = $(\"
\").addClass(classes.toolbar).insertBefore($anchor);\n\t\t\t}\n\t\t\tthis.$toolbar = $toolbar;\n\n\t\t\tif (this.mode) {\n\t\t\t\tthis.$toolbar.addClass(\"tablesaw-mode-\" + this.mode);\n\t\t\t}\n\t\t};\n\n\t\tTable.prototype.destroy = function () {\n\t\t\t// Don’t remove the toolbar, just erase the classes on it.\n\t\t\t// Some of the table features are not yet destroy-friendly.\n\t\t\tthis._getToolbar().each(function () {\n\t\t\t\tthis.className = this.className.replace(/\\btablesaw-mode\\-\\w*\\b/gi, \"\");\n\t\t\t});\n\n\t\t\tvar tableId = this.$table.attr(\"id\");\n\t\t\t$(document).off(\".\" + tableId);\n\t\t\t$(window).off(\".\" + tableId);\n\n\t\t\t// other plugins\n\t\t\tthis.$table.trigger(events.destroy, [this]);\n\n\t\t\tthis.$table.removeData(pluginName);\n\t\t};\n\n\t\t// Collection method.\n\t\t$.fn[pluginName] = function () {\n\t\t\treturn this.each(function () {\n\t\t\t\tvar $t = $(this);\n\n\t\t\t\tif ($t.data(pluginName)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tnew Table(this);\n\t\t\t});\n\t\t};\n\n\t\tvar $doc = $(document);\n\t\t$doc.on(\"enhance.tablesaw\", function (e) {\n\t\t\t// Cut the mustard\n\t\t\tif (Tablesaw.mustard) {\n\t\t\t\tvar $target = $(e.target);\n\t\t\t\tif ($target.parent().length) {\n\t\t\t\t\t$target = $target.parent();\n\t\t\t\t}\n\n\t\t\t\t$target.find(initSelector).filter(initFilterSelector)[pluginName]();\n\t\t\t}\n\t\t});\n\n\t\t// Avoid a resize during scroll:\n\t\t// Some Mobile devices trigger a resize during scroll (sometimes when\n\t\t// doing elastic stretch at the end of the document or from the\n\t\t// location bar hide)\n\t\tvar isScrolling = false;\n\t\tvar scrollTimeout;\n\t\t$doc.on(\"scroll.tablesaw\", function () {\n\t\t\tisScrolling = true;\n\n\t\t\twindow.clearTimeout(scrollTimeout);\n\t\t\tscrollTimeout = window.setTimeout(function () {\n\t\t\t\tisScrolling = false;\n\t\t\t}, 300); // must be greater than the resize timeout below\n\t\t});\n\n\t\tvar resizeTimeout;\n\t\t$(window).on(\"resize\", function () {\n\t\t\tif (!isScrolling) {\n\t\t\t\twindow.clearTimeout(resizeTimeout);\n\t\t\t\tresizeTimeout = window.setTimeout(function () {\n\t\t\t\t\t$doc.trigger(events.resize);\n\t\t\t\t}, 150); // must be less than the scrolling timeout above.\n\t\t\t}\n\t\t});\n\n\t\tTablesaw.Table = Table;\n\t})();\n\n\t(function () {\n\t\tvar classes = {\n\t\t\tstackTable: \"tablesaw-stack\",\n\t\t\tcellLabels: \"tablesaw-cell-label\",\n\t\t\tcellContentLabels: \"tablesaw-cell-content\"\n\t\t};\n\n\t\tvar data = {\n\t\t\tkey: \"tablesaw-stack\"\n\t\t};\n\n\t\tvar attrs = {\n\t\t\tlabelless: \"data-tablesaw-no-labels\",\n\t\t\thideempty: \"data-tablesaw-hide-empty\"\n\t\t};\n\n\t\tvar Stack = function Stack(element, tablesaw) {\n\t\t\tthis.tablesaw = tablesaw;\n\t\t\tthis.$table = $(element);\n\n\t\t\tthis.labelless = this.$table.is(\"[\" + attrs.labelless + \"]\");\n\t\t\tthis.hideempty = this.$table.is(\"[\" + attrs.hideempty + \"]\");\n\n\t\t\tthis.$table.data(data.key, this);\n\t\t};\n\n\t\tStack.prototype.init = function () {\n\t\t\tthis.$table.addClass(classes.stackTable);\n\n\t\t\tif (this.labelless) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar self = this;\n\n\t\t\tthis.$table.find(\"th, td\").filter(function () {\n\t\t\t\treturn !$(this).closest(\"thead\").length;\n\t\t\t}).filter(function () {\n\t\t\t\treturn !$(this).is(\"[\" + attrs.labelless + \"]\") && !$(this).closest(\"tr\").is(\"[\" + attrs.labelless + \"]\") && (!self.hideempty || !!$(this).html());\n\t\t\t}).each(function () {\n\t\t\t\tvar $newHeader = $(document.createElement(\"b\")).addClass(classes.cellLabels);\n\t\t\t\tvar $cell = $(this);\n\n\t\t\t\t$(self.tablesaw._findPrimaryHeadersForCell(this)).each(function (index) {\n\t\t\t\t\tvar $header = $(this.cloneNode(true));\n\t\t\t\t\t// TODO decouple from sortable better\n\t\t\t\t\t// Changed from .text() in https://github.com/filamentgroup/tablesaw/commit/b9c12a8f893ec192830ec3ba2d75f062642f935b\n\t\t\t\t\t// to preserve structural html in headers, like \n\t\t\t\t\tvar $sortableButton = $header.find(\".tablesaw-sortable-btn\");\n\t\t\t\t\t$header.find(\".tablesaw-sortable-arrow\").remove();\n\n\t\t\t\t\t// TODO decouple from checkall better\n\t\t\t\t\tvar $checkall = $header.find(\"[data-tablesaw-checkall]\");\n\t\t\t\t\t$checkall.closest(\"label\").remove();\n\t\t\t\t\tif ($checkall.length) {\n\t\t\t\t\t\t$newHeader = $([]);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index > 0) {\n\t\t\t\t\t\t$newHeader.append(document.createTextNode(\", \"));\n\t\t\t\t\t}\n\n\t\t\t\t\tvar parentNode = $sortableButton.length ? $sortableButton[0] : $header[0];\n\t\t\t\t\tvar el;\n\t\t\t\t\twhile (el = parentNode.firstChild) {\n\t\t\t\t\t\t$newHeader[0].appendChild(el);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif ($newHeader.length && !$cell.find(\".\" + classes.cellContentLabels).length) {\n\t\t\t\t\t$cell.wrapInner(\"\");\n\t\t\t\t}\n\n\t\t\t\t// Update if already exists.\n\t\t\t\tvar $label = $cell.find(\".\" + classes.cellLabels);\n\t\t\t\tif (!$label.length) {\n\t\t\t\t\t$cell.prepend(document.createTextNode(\" \"));\n\t\t\t\t\t$cell.prepend($newHeader);\n\t\t\t\t} else {\n\t\t\t\t\t// only if changed\n\t\t\t\t\t$label.replaceWith($newHeader);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tStack.prototype.destroy = function () {\n\t\t\tthis.$table.removeClass(classes.stackTable);\n\t\t\tthis.$table.find(\".\" + classes.cellLabels).remove();\n\t\t\tthis.$table.find(\".\" + classes.cellContentLabels).each(function () {\n\t\t\t\t$(this).replaceWith($(this.childNodes));\n\t\t\t});\n\t\t};\n\n\t\t// on tablecreate, init\n\t\t$(document).on(Tablesaw.events.create, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"stack\") {\n\t\t\t\tvar table = new Stack(tablesaw.table, tablesaw);\n\t\t\t\ttable.init();\n\t\t\t}\n\t\t}).on(Tablesaw.events.refresh, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"stack\") {\n\t\t\t\t$(tablesaw.table).data(data.key).init();\n\t\t\t}\n\t\t}).on(Tablesaw.events.destroy, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"stack\") {\n\t\t\t\t$(tablesaw.table).data(data.key).destroy();\n\t\t\t}\n\t\t});\n\n\t\tTablesaw.Stack = Stack;\n\t})();\n\n\t(function () {\n\t\tvar pluginName = \"tablesawbtn\",\n\t\t methods = {\n\t\t\t_create: function _create() {\n\t\t\t\treturn $(this).each(function () {\n\t\t\t\t\t$(this).trigger(\"beforecreate.\" + pluginName)[pluginName](\"_init\").trigger(\"create.\" + pluginName);\n\t\t\t\t});\n\t\t\t},\n\t\t\t_init: function _init() {\n\t\t\t\tvar oEl = $(this),\n\t\t\t\t sel = this.getElementsByTagName(\"select\")[0];\n\n\t\t\t\tif (sel) {\n\t\t\t\t\t// TODO next major version: remove .btn-select\n\t\t\t\t\t$(this).addClass(\"btn-select tablesaw-btn-select\")[pluginName](\"_select\", sel);\n\t\t\t\t}\n\t\t\t\treturn oEl;\n\t\t\t},\n\t\t\t_select: function _select(sel) {\n\t\t\t\tvar update = function update(oEl, sel) {\n\t\t\t\t\tvar opts = $(sel).find(\"option\");\n\t\t\t\t\tvar label = document.createElement(\"span\");\n\t\t\t\t\tvar el;\n\t\t\t\t\tvar children;\n\t\t\t\t\tvar found = false;\n\n\t\t\t\t\tlabel.setAttribute(\"aria-hidden\", \"true\");\n\t\t\t\t\tlabel.innerHTML = \" \";\n\n\t\t\t\t\topts.each(function () {\n\t\t\t\t\t\tvar opt = this;\n\t\t\t\t\t\tif (opt.selected) {\n\t\t\t\t\t\t\tlabel.innerHTML = opt.text;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tchildren = oEl.childNodes;\n\t\t\t\t\tif (opts.length > 0) {\n\t\t\t\t\t\tfor (var i = 0, l = children.length; i < l; i++) {\n\t\t\t\t\t\t\tel = children[i];\n\n\t\t\t\t\t\t\tif (el && el.nodeName.toUpperCase() === \"SPAN\") {\n\t\t\t\t\t\t\t\toEl.replaceChild(label, el);\n\t\t\t\t\t\t\t\tfound = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!found) {\n\t\t\t\t\t\t\toEl.insertBefore(label, oEl.firstChild);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tupdate(this, sel);\n\t\t\t\t// todo should this be tablesawrefresh?\n\t\t\t\t$(this).on(\"change refresh\", function () {\n\t\t\t\t\tupdate(this, sel);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t// Collection method.\n\t\t$.fn[pluginName] = function (arrg, a, b, c) {\n\t\t\treturn this.each(function () {\n\t\t\t\t// if it's a method\n\t\t\t\tif (arrg && typeof arrg === \"string\") {\n\t\t\t\t\treturn $.fn[pluginName].prototype[arrg].call(this, a, b, c);\n\t\t\t\t}\n\n\t\t\t\t// don't re-init\n\t\t\t\tif ($(this).data(pluginName + \"active\")) {\n\t\t\t\t\treturn $(this);\n\t\t\t\t}\n\n\t\t\t\t$(this).data(pluginName + \"active\", true);\n\n\t\t\t\t$.fn[pluginName].prototype._create.call(this);\n\t\t\t});\n\t\t};\n\n\t\t// add methods\n\t\t$.extend($.fn[pluginName].prototype, methods);\n\n\t\t// TODO OOP this and add to Tablesaw object\n\t})();\n\n\t(function () {\n\t\tvar data = {\n\t\t\tkey: \"tablesaw-coltoggle\"\n\t\t};\n\n\t\tvar ColumnToggle = function ColumnToggle(element) {\n\t\t\tthis.$table = $(element);\n\n\t\t\tif (!this.$table.length) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.tablesaw = this.$table.data(\"tablesaw\");\n\n\t\t\tthis.attributes = {\n\t\t\t\tbtnTarget: \"data-tablesaw-columntoggle-btn-target\",\n\t\t\t\tset: \"data-tablesaw-columntoggle-set\"\n\t\t\t};\n\n\t\t\tthis.classes = {\n\t\t\t\tcolumnToggleTable: \"tablesaw-columntoggle\",\n\t\t\t\tcolumnBtnContain: \"tablesaw-columntoggle-btnwrap tablesaw-advance\",\n\t\t\t\tcolumnBtn: \"tablesaw-columntoggle-btn tablesaw-nav-btn down\",\n\t\t\t\tpopup: \"tablesaw-columntoggle-popup\",\n\t\t\t\tpriorityPrefix: \"tablesaw-priority-\"\n\t\t\t};\n\n\t\t\tthis.set = [];\n\t\t\tthis.$headers = this.tablesaw._getPrimaryHeaderCells();\n\n\t\t\tthis.$table.data(data.key, this);\n\t\t};\n\n\t\t// Column Toggle Sets (one column chooser can control multiple tables)\n\t\tColumnToggle.prototype.initSet = function () {\n\t\t\tvar set = this.$table.attr(this.attributes.set);\n\t\t\tif (set) {\n\t\t\t\t// Should not include the current table\n\t\t\t\tvar table = this.$table[0];\n\t\t\t\tthis.set = $(\"table[\" + this.attributes.set + \"='\" + set + \"']\").filter(function () {\n\t\t\t\t\treturn this !== table;\n\t\t\t\t}).get();\n\t\t\t}\n\t\t};\n\n\t\tColumnToggle.prototype.init = function () {\n\t\t\tif (!this.$table.length) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar tableId,\n\t\t\t id,\n\t\t\t $menuButton,\n\t\t\t $popup,\n\t\t\t $menu,\n\t\t\t $btnContain,\n\t\t\t self = this;\n\n\t\t\tvar cfg = this.tablesaw.getConfig({\n\t\t\t\tgetColumnToggleLabelTemplate: function getColumnToggleLabelTemplate(text) {\n\t\t\t\t\treturn \"\";\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.$table.addClass(this.classes.columnToggleTable);\n\n\t\t\ttableId = this.$table.attr(\"id\");\n\t\t\tid = tableId + \"-popup\";\n\t\t\t$btnContain = $(\"
\");\n\t\t\t// TODO next major version: remove .btn\n\t\t\t$menuButton = $(\"
\" + \"\" + Tablesaw.i18n.columnToggleButton + \"\");\n\t\t\t$popup = $(\"
\");\n\t\t\t$menu = $(\"
\");\n\n\t\t\tthis.$popup = $popup;\n\n\t\t\tvar hasNonPersistentHeaders = false;\n\t\t\tthis.$headers.each(function () {\n\t\t\t\tvar $this = $(this),\n\t\t\t\t priority = $this.attr(\"data-tablesaw-priority\"),\n\t\t\t\t $cells = self.tablesaw._$getCells(this);\n\n\t\t\t\tif (priority && priority !== \"persist\") {\n\t\t\t\t\t$cells.addClass(self.classes.priorityPrefix + priority);\n\n\t\t\t\t\t$(cfg.getColumnToggleLabelTemplate($this.text())).appendTo($menu).find('input[type=\"checkbox\"]').data(\"tablesaw-header\", this);\n\n\t\t\t\t\thasNonPersistentHeaders = true;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (!hasNonPersistentHeaders) {\n\t\t\t\t$menu.append(\"\");\n\t\t\t}\n\n\t\t\t$menu.appendTo($popup);\n\n\t\t\tfunction onToggleCheckboxChange(checkbox) {\n\t\t\t\tvar checked = checkbox.checked;\n\n\t\t\t\tvar header = self.getHeaderFromCheckbox(checkbox);\n\t\t\t\tvar $cells = self.tablesaw._$getCells(header);\n\n\t\t\t\t$cells[!checked ? \"addClass\" : \"removeClass\"](\"tablesaw-toggle-cellhidden\");\n\t\t\t\t$cells[checked ? \"addClass\" : \"removeClass\"](\"tablesaw-toggle-cellvisible\");\n\n\t\t\t\tself.updateColspanCells(header, checked);\n\n\t\t\t\tself.$table.trigger(\"tablesawcolumns\");\n\t\t\t}\n\n\t\t\t// bind change event listeners to inputs - TODO: move to a private method?\n\t\t\t$menu.find('input[type=\"checkbox\"]').on(\"change\", function (e) {\n\t\t\t\tonToggleCheckboxChange(e.target);\n\n\t\t\t\tif (self.set.length) {\n\t\t\t\t\tvar index;\n\t\t\t\t\t$(self.$popup).find(\"input[type='checkbox']\").each(function (j) {\n\t\t\t\t\t\tif (this === e.target) {\n\t\t\t\t\t\t\tindex = j;\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\t$(self.set).each(function () {\n\t\t\t\t\t\tvar checkbox = $(this).data(data.key).$popup.find(\"input[type='checkbox']\").get(index);\n\t\t\t\t\t\tif (checkbox) {\n\t\t\t\t\t\t\tcheckbox.checked = e.target.checked;\n\t\t\t\t\t\t\tonToggleCheckboxChange(checkbox);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t$menuButton.appendTo($btnContain);\n\n\t\t\t// Use a different target than the toolbar\n\t\t\tvar $btnTarget = $(this.$table.attr(this.attributes.btnTarget));\n\t\t\t$btnContain.appendTo($btnTarget.length ? $btnTarget : this.tablesaw.$toolbar);\n\n\t\t\tfunction closePopup(event) {\n\t\t\t\t// Click came from inside the popup, ignore.\n\t\t\t\tif (event && $(event.target).closest(\".\" + self.classes.popup).length) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t$(document).off(\"click.\" + tableId);\n\t\t\t\t$menuButton.removeClass(\"up\").addClass(\"down\");\n\t\t\t\t$btnContain.removeClass(\"visible\");\n\t\t\t}\n\n\t\t\tvar closeTimeout;\n\t\t\tfunction openPopup() {\n\t\t\t\t$btnContain.addClass(\"visible\");\n\t\t\t\t$menuButton.removeClass(\"down\").addClass(\"up\");\n\n\t\t\t\t$(document).off(\"click.\" + tableId, closePopup);\n\n\t\t\t\twindow.clearTimeout(closeTimeout);\n\t\t\t\tcloseTimeout = window.setTimeout(function () {\n\t\t\t\t\t$(document).on(\"click.\" + tableId, closePopup);\n\t\t\t\t}, 15);\n\t\t\t}\n\n\t\t\t$menuButton.on(\"click.tablesaw\", function (event) {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif (!$btnContain.is(\".visible\")) {\n\t\t\t\t\topenPopup();\n\t\t\t\t} else {\n\t\t\t\t\tclosePopup();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t$popup.appendTo($btnContain);\n\n\t\t\tthis.$menu = $menu;\n\n\t\t\t// Fix for iOS not rendering shadows correctly when using `-webkit-overflow-scrolling`\n\t\t\tvar $overflow = this.$table.closest(\".tablesaw-overflow\");\n\t\t\tif ($overflow.css(\"-webkit-overflow-scrolling\")) {\n\t\t\t\tvar timeout;\n\t\t\t\t$overflow.on(\"scroll\", function () {\n\t\t\t\t\tvar $div = $(this);\n\t\t\t\t\twindow.clearTimeout(timeout);\n\t\t\t\t\ttimeout = window.setTimeout(function () {\n\t\t\t\t\t\t$div.css(\"-webkit-overflow-scrolling\", \"auto\");\n\t\t\t\t\t\twindow.setTimeout(function () {\n\t\t\t\t\t\t\t$div.css(\"-webkit-overflow-scrolling\", \"touch\");\n\t\t\t\t\t\t}, 0);\n\t\t\t\t\t}, 100);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t$(window).on(Tablesaw.events.resize + \".\" + tableId, function () {\n\t\t\t\tself.refreshToggle();\n\t\t\t});\n\n\t\t\tthis.initSet();\n\t\t\tthis.refreshToggle();\n\t\t};\n\n\t\tColumnToggle.prototype.getHeaderFromCheckbox = function (checkbox) {\n\t\t\treturn $(checkbox).data(\"tablesaw-header\");\n\t\t};\n\n\t\tColumnToggle.prototype.refreshToggle = function () {\n\t\t\tvar self = this;\n\t\t\tvar invisibleColumns = 0;\n\t\t\tthis.$menu.find(\"input\").each(function () {\n\t\t\t\tvar header = self.getHeaderFromCheckbox(this);\n\t\t\t\tthis.checked = self.tablesaw._$getCells(header).eq(0).css(\"display\") === \"table-cell\";\n\t\t\t});\n\n\t\t\tthis.updateColspanCells();\n\t\t};\n\n\t\tColumnToggle.prototype.updateColspanCells = function (header, userAction) {\n\t\t\tthis.tablesaw.updateColspanCells(\"tablesaw-toggle-cellhidden\", header, userAction);\n\t\t};\n\n\t\tColumnToggle.prototype.destroy = function () {\n\t\t\tthis.$table.removeClass(this.classes.columnToggleTable);\n\t\t\tthis.$table.find(\"th, td\").each(function () {\n\t\t\t\tvar $cell = $(this);\n\t\t\t\t$cell.removeClass(\"tablesaw-toggle-cellhidden\").removeClass(\"tablesaw-toggle-cellvisible\");\n\n\t\t\t\tthis.className = this.className.replace(/\\bui\\-table\\-priority\\-\\d\\b/g, \"\");\n\t\t\t});\n\t\t};\n\n\t\t// on tablecreate, init\n\t\t$(document).on(Tablesaw.events.create, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"columntoggle\") {\n\t\t\t\tvar table = new ColumnToggle(tablesaw.table);\n\t\t\t\ttable.init();\n\t\t\t}\n\t\t});\n\n\t\t$(document).on(Tablesaw.events.destroy, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"columntoggle\") {\n\t\t\t\t$(tablesaw.table).data(data.key).destroy();\n\t\t\t}\n\t\t});\n\n\t\t$(document).on(Tablesaw.events.refresh, function (e, tablesaw) {\n\t\t\tif (tablesaw.mode === \"columntoggle\") {\n\t\t\t\t$(tablesaw.table).data(data.key).refreshToggle();\n\t\t\t}\n\t\t});\n\n\t\tTablesaw.ColumnToggle = ColumnToggle;\n\t})();\n\n\t(function () {\n\t\tfunction getSortValue(cell) {\n\t\t\tvar text = [];\n\t\t\t$(cell.childNodes).each(function () {\n\t\t\t\tvar $el = $(this);\n\t\t\t\tif ($el.is(\"input, select\")) {\n\t\t\t\t\ttext.push($el.val());\n\t\t\t\t} else if ($el.is(\".tablesaw-cell-label\")) {} else {\n\t\t\t\t\ttext.push(($el.text() || \"\").replace(/^\\s+|\\s+$/g, \"\"));\n\t\t\t\t}\n\t\t\t});\n\n\t\t\treturn text.join(\"\");\n\t\t}\n\n\t\tvar pluginName = \"tablesaw-sortable\",\n\t\t initSelector = \"table[data-\" + pluginName + \"]\",\n\t\t sortableSwitchSelector = \"[data-\" + pluginName + \"-switch]\",\n\t\t attrs = {\n\t\t\tsortCol: \"data-tablesaw-sortable-col\",\n\t\t\tdefaultCol: \"data-tablesaw-sortable-default-col\",\n\t\t\tnumericCol: \"data-tablesaw-sortable-numeric\",\n\t\t\tsubRow: \"data-tablesaw-subrow\",\n\t\t\tignoreRow: \"data-tablesaw-ignorerow\"\n\t\t},\n\t\t classes = {\n\t\t\thead: pluginName + \"-head\",\n\t\t\tascend: pluginName + \"-ascending\",\n\t\t\tdescend: pluginName + \"-descending\",\n\t\t\tswitcher: pluginName + \"-switch\",\n\t\t\ttableToolbar: \"tablesaw-bar-section\",\n\t\t\tsortButton: pluginName + \"-btn\"\n\t\t},\n\t\t methods = {\n\t\t\t_create: function _create(o) {\n\t\t\t\treturn $(this).each(function () {\n\t\t\t\t\tvar init = $(this).data(pluginName + \"-init\");\n\t\t\t\t\tif (init) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\t$(this).data(pluginName + \"-init\", true).trigger(\"beforecreate.\" + pluginName)[pluginName](\"_init\", o).trigger(\"create.\" + pluginName);\n\t\t\t\t});\n\t\t\t},\n\t\t\t_init: function _init() {\n\t\t\t\tvar el = $(this);\n\t\t\t\tvar tblsaw = el.data(\"tablesaw\");\n\t\t\t\tvar heads;\n\t\t\t\tvar $switcher;\n\n\t\t\t\tfunction addClassToHeads(h) {\n\t\t\t\t\t$.each(h, function (i, v) {\n\t\t\t\t\t\t$(v).addClass(classes.head);\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tfunction makeHeadsActionable(h, fn) {\n\t\t\t\t\t$.each(h, function (i, col) {\n\t\t\t\t\t\tvar b = $(\"