From 5e257d5ae5adbfc5cd555f84924cb4c3d44cc530 Mon Sep 17 00:00:00 2001 From: Jan Siegel Date: Tue, 3 Nov 2015 14:35:26 +0100 Subject: [PATCH] 0.20.0 --- bower.json | 2 +- dist/handsontable.css | 8 +- dist/handsontable.full.css | 8 +- dist/handsontable.full.js | 942 +++++++++++++++++++++----------- dist/handsontable.full.min.css | 6 +- dist/handsontable.full.min.js | 38 +- dist/handsontable.js | 944 ++++++++++++++++++++++----------- dist/handsontable.min.css | 6 +- dist/handsontable.min.js | 30 +- handsontable.jquery.json | 2 +- package.json | 2 +- test/jasmine/SpecRunner.html | 2 + 12 files changed, 1324 insertions(+), 666 deletions(-) diff --git a/bower.json b/bower.json index 80530f438a0..edc99e9f88c 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { "name": "handsontable", "description": "Spreadsheet-like data grid editor that provides copy/paste functionality compatible with Excel/Google Docs", - "version": "0.19.0", + "version": "0.20.0", "main": ["./dist/handsontable.js", "./dist/handsontable.css"], "homepage": "http://handsontable.com/", "repository": { diff --git a/dist/handsontable.css b/dist/handsontable.css index fd23bd631c6..1c3ec4cddba 100644 --- a/dist/handsontable.css +++ b/dist/handsontable.css @@ -1,12 +1,12 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright 2015 Handsoncode sp. z o.o. * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ .handsontable { @@ -1136,6 +1136,10 @@ thead .htCollapseButton:after { cursor: default; } +.htContextMenu table tbody tr.htHidden { + display: none; +} + .htContextMenu table tbody tr td .htItemWrapper { margin-left: 10px; margin-right: 6px; diff --git a/dist/handsontable.full.css b/dist/handsontable.full.css index 653b63e2220..50f6e30a43a 100644 --- a/dist/handsontable.full.css +++ b/dist/handsontable.full.css @@ -1,12 +1,12 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright 2015 Handsoncode sp. z o.o. * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ .handsontable { @@ -1136,6 +1136,10 @@ thead .htCollapseButton:after { cursor: default; } +.htContextMenu table tbody tr.htHidden { + display: none; +} + .htContextMenu table tbody tr td .htItemWrapper { margin-left: 10px; margin-right: 6px; diff --git a/dist/handsontable.full.js b/dist/handsontable.full.js index 1cd1ce8b696..47b5c9f080c 100644 --- a/dist/handsontable.full.js +++ b/dist/handsontable.full.js @@ -1,5 +1,5 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright (c) 2012-2014 Marcin Warpechowski @@ -7,13 +7,13 @@ * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ /*jslint white: true, browser: true, plusplus: true, indent: 4, maxerr: 50 */ window.Handsontable = { - version: '0.19.0', - buildDate: 'Fri Oct 02 2015 12:37:12 GMT+0200 (CEST)', + version: '0.20.0', + buildDate: 'Tue Nov 03 2015 14:30:34 GMT+0100 (CET)', }; (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Handsontable = f()}})(function(){var define,module,exports;return (function init(modules, cache, entry) { (function outer (modules, cache, entry) { @@ -175,11 +175,15 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { this.eventManager.addEventListener(document.body, 'mouseup', (function() { return $__5.onMouseUp(); })); + var $__7 = this, + $__8 = function(c, len) { + $__7.eventManager.addEventListener($__7.main.childNodes[c], 'mouseenter', (function(event) { + return $__5.onMouseEnter(event, $__5.main.childNodes[c]); + })); + }; for (var c = 0, len = this.main.childNodes.length; c < len; c++) { - this.eventManager.addEventListener(this.main.childNodes[c], 'mouseenter', (function(event) { - return $__5.onMouseEnter(event); - })); + $__8(c, len); } }, onMouseDown: function() { @@ -188,15 +192,15 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { onMouseUp: function() { this.mouseDown = false; }, - onMouseEnter: function(event) { + onMouseEnter: function(event, parentElement) { if (!this.mouseDown || !this.wot.getSetting('hideBorderOnMouseDownOver')) { return; } event.preventDefault(); stopImmediatePropagation(event); var _this = this; - var bounds = this.getBoundingClientRect(); - this.style.display = 'none'; + var bounds = parentElement.getBoundingClientRect(); + parentElement.style.display = 'none'; function isOutside(event) { if (event.clientY < Math.floor(bounds.top)) { return true; @@ -214,7 +218,7 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { function handler(event) { if (isOutside(event)) { _this.eventManager.removeEventListener(document.body, 'mousemove', handler); - _this.style.display = 'block'; + parentElement.style.display = 'block'; } } this.eventManager.addEventListener(document.body, 'mousemove', handler); @@ -303,10 +307,10 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { background: '#F5F5FF', border: '1px solid #4285c8' }; - for (var prop$__7 in handleStyle) { - if (handleStyle.hasOwnProperty(prop$__7)) { - this.selectionHandles.styles.bottomRight[prop$__7] = handleStyle[prop$__7]; - this.selectionHandles.styles.topLeft[prop$__7] = handleStyle[prop$__7]; + for (var prop$__9 in handleStyle) { + if (handleStyle.hasOwnProperty(prop$__9)) { + this.selectionHandles.styles.bottomRight[prop$__9] = handleStyle[prop$__9]; + this.selectionHandles.styles.topLeft[prop$__9] = handleStyle[prop$__9]; } } this.main.appendChild(this.selectionHandles.topLeft); @@ -394,25 +398,25 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { break; } } - for (var i$__8 = ilen - 1; i$__8 >= 0; i$__8--) { - var s$__9 = this.wot.wtTable.rowFilter.renderedToSource(i$__8); - if (s$__9 >= corners[0] && s$__9 <= corners[2]) { - toRow = s$__9; + for (var i$__10 = ilen - 1; i$__10 >= 0; i$__10--) { + var s$__11 = this.wot.wtTable.rowFilter.renderedToSource(i$__10); + if (s$__11 >= corners[0] && s$__11 <= corners[2]) { + toRow = s$__11; break; } } ilen = this.wot.wtTable.getRenderedColumnsCount(); - for (var i$__10 = 0; i$__10 < ilen; i$__10++) { - var s$__11 = this.wot.wtTable.columnFilter.renderedToSource(i$__10); - if (s$__11 >= corners[1] && s$__11 <= corners[3]) { - fromColumn = s$__11; + for (var i$__12 = 0; i$__12 < ilen; i$__12++) { + var s$__13 = this.wot.wtTable.columnFilter.renderedToSource(i$__12); + if (s$__13 >= corners[1] && s$__13 <= corners[3]) { + fromColumn = s$__13; break; } } - for (var i$__12 = ilen - 1; i$__12 >= 0; i$__12--) { - var s$__13 = this.wot.wtTable.columnFilter.renderedToSource(i$__12); - if (s$__13 >= corners[1] && s$__13 <= corners[3]) { - toColumn = s$__13; + for (var i$__14 = ilen - 1; i$__14 >= 0; i$__14--) { + var s$__15 = this.wot.wtTable.columnFilter.renderedToSource(i$__14); + if (s$__15 >= corners[1] && s$__15 <= corners[3]) { + toColumn = s$__15; break; } } @@ -508,7 +512,7 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { window.WalkontableBorder = WalkontableBorder; //# -},{"cell/coords":5,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"overlay/_base.js":11}],3:[function(require,module,exports){ +},{"cell/coords":5,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"overlay/_base.js":11}],3:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableViewportColumnsCalculator: {get: function() { @@ -1236,7 +1240,7 @@ var Walkontable = function Walkontable(settings) { window.Walkontable = Walkontable; //# -},{"event":8,"helpers/dom/element":44,"helpers/object":49,"helpers/string":51,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,"overlays":16,"scroll":17,"settings":19,"table":20,"viewport":22}],8:[function(require,module,exports){ +},{"event":8,"helpers/dom/element":45,"helpers/object":50,"helpers/string":52,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,"overlays":16,"scroll":17,"settings":19,"table":20,"viewport":22}],8:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableEvent: {get: function() { @@ -1398,7 +1402,7 @@ WalkontableEvent.prototype.parentCell = function(elem) { window.WalkontableEvent = WalkontableEvent; //# -},{"eventManager":40,"helpers/dom/element":44}],9:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45}],9:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableColumnFilter: {get: function() { @@ -1594,7 +1598,7 @@ var $WalkontableOverlay = WalkontableOverlay; window.WalkontableOverlay = WalkontableOverlay; //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/object":49}],12:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/object":50}],12:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableDebugOverlay: {get: function() { @@ -1620,7 +1624,7 @@ window.WalkontableDebugOverlay = WalkontableDebugOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_DEBUG, WalkontableDebugOverlay); //# -},{"_base":11,"helpers/dom/element":44}],13:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],13:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableLeftOverlay: {get: function() { @@ -1803,7 +1807,7 @@ window.WalkontableLeftOverlay = WalkontableLeftOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_LEFT, WalkontableLeftOverlay); //# -},{"_base":11,"helpers/dom/element":44}],14:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],14:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTopOverlay: {get: function() { @@ -1874,7 +1878,8 @@ var $WalkontableTopOverlay = WalkontableTopOverlay; var sum = 0; var defaultRowHeight = this.wot.wtSettings.settings.defaultRowHeight; while (from < to) { - sum += this.wot.wtTable.getRowHeight(from) || defaultRowHeight; + var height = this.wot.wtTable.getRowHeight(from); + sum += height === void 0 ? defaultRowHeight : height; from++; } return sum; @@ -1994,7 +1999,7 @@ window.WalkontableTopOverlay = WalkontableTopOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_TOP, WalkontableTopOverlay); //# -},{"_base":11,"helpers/dom/element":44}],15:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],15:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTopLeftCornerOverlay: {get: function() { @@ -2054,7 +2059,7 @@ window.WalkontableTopLeftCornerOverlay = WalkontableTopLeftCornerOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER, WalkontableTopLeftCornerOverlay); //# -},{"_base":11,"helpers/dom/element":44}],16:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],16:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableOverlays: {get: function() { @@ -2411,7 +2416,7 @@ var WalkontableOverlays = function WalkontableOverlays(wotInstance) { window.WalkontableOverlays = WalkontableOverlays; //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/unicode":52}],17:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/unicode":53}],17:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableScroll: {get: function() { @@ -2581,7 +2586,7 @@ var WalkontableSelection = function WalkontableSelection(settings, cellRange) { window.WalkontableSelection = WalkontableSelection; //# -},{"border":2,"cell/coords":5,"cell/range":6,"helpers/dom/element":44}],19:[function(require,module,exports){ +},{"border":2,"cell/coords":5,"cell/range":6,"helpers/dom/element":45}],19:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableSettings: {get: function() { @@ -2691,7 +2696,7 @@ var WalkontableSettings = function WalkontableSettings(wotInstance, settings) { window.WalkontableSettings = WalkontableSettings; //# -},{"helpers/dom/element":44}],20:[function(require,module,exports){ +},{"helpers/dom/element":45}],20:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTable: {get: function() { @@ -3026,7 +3031,7 @@ var WalkontableTable = function WalkontableTable(wotInstance, table) { var height = this.wot.wtSettings.settings.rowHeight(sourceRow); var oversizedHeight = this.wot.wtViewport.oversizedRows[sourceRow]; if (oversizedHeight !== void 0) { - height = height ? Math.max(height, oversizedHeight) : oversizedHeight; + height = height === void 0 ? oversizedHeight : Math.max(height, oversizedHeight); } return height; }, @@ -3070,7 +3075,7 @@ var WalkontableTable = function WalkontableTable(wotInstance, table) { window.WalkontableTable = WalkontableTable; //# -},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":44,"tableRenderer":21}],21:[function(require,module,exports){ +},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":45,"tableRenderer":21}],21:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTableRenderer: {get: function() { @@ -3176,7 +3181,7 @@ var WalkontableTableRenderer = function WalkontableTableRenderer(wtTable) { var isWorkingOnClone = this.wtTable.isWorkingOnClone(); while (sourceRowIndex < totalRows && sourceRowIndex >= 0) { if (visibleRowIndex > 1000) { - throw new Error('Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.'); + console.error('Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.'); } if (rowsToRender !== void 0 && visibleRowIndex === rowsToRender) { break; @@ -3472,7 +3477,7 @@ function replaceThWithTd(TH, TR) { window.WalkontableTableRenderer = WalkontableTableRenderer; //# -},{"helpers/dom/element":44}],22:[function(require,module,exports){ +},{"helpers/dom/element":45}],22:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableViewport: {get: function() { @@ -3759,7 +3764,7 @@ var WalkontableViewport = function WalkontableViewport(wotInstance) { window.WalkontableViewport = WalkontableViewport; //# -},{"calculator/viewportColumns":3,"calculator/viewportRows":4,"eventManager":40,"helpers/dom/element":44}],23:[function(require,module,exports){ +},{"calculator/viewportColumns":3,"calculator/viewportRows":4,"eventManager":41,"helpers/dom/element":45}],23:[function(require,module,exports){ "use strict"; var $__shims_47_classes__, $__es6collections__, @@ -3832,7 +3837,7 @@ arrayHelpers.arrayEach([domHelpers, domEventHelpers], (function(helper) { })); //# -},{"cellTypes":24,"core":25,"es6collections":"es6collections","helpers/array":41,"helpers/browser":42,"helpers/data":43,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/function":46,"helpers/mixed":47,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,"helpers/unicode":52,"pluginHooks":54,"plugins/jqueryHandsontable":1,"renderers/_cellDecorator":87,"shims/classes":94}],24:[function(require,module,exports){ +},{"cellTypes":24,"core":25,"es6collections":"es6collections","helpers/array":42,"helpers/browser":43,"helpers/data":44,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/mixed":48,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,"helpers/unicode":53,"pluginHooks":56,"plugins/jqueryHandsontable":1,"renderers/_cellDecorator":89,"shims/classes":96}],24:[function(require,module,exports){ "use strict"; var $__helpers_47_browser__, $__editors__, @@ -3933,7 +3938,7 @@ Handsontable.cellLookup = {validator: { }}; //# -},{"editors":28,"editors/autocompleteEditor":30,"editors/checkboxEditor":31,"editors/dateEditor":32,"editors/dropdownEditor":33,"editors/handsontableEditor":34,"editors/mobileTextEditor":35,"editors/numericEditor":36,"editors/passwordEditor":37,"editors/selectEditor":38,"editors/textEditor":39,"helpers/browser":42,"renderers":86,"renderers/autocompleteRenderer":88,"renderers/checkboxRenderer":89,"renderers/htmlRenderer":90,"renderers/numericRenderer":91,"renderers/passwordRenderer":92,"renderers/textRenderer":93,"validators/autocompleteValidator":98,"validators/dateValidator":99,"validators/numericValidator":100}],25:[function(require,module,exports){ +},{"editors":29,"editors/autocompleteEditor":31,"editors/checkboxEditor":32,"editors/dateEditor":33,"editors/dropdownEditor":34,"editors/handsontableEditor":35,"editors/mobileTextEditor":36,"editors/numericEditor":37,"editors/passwordEditor":38,"editors/selectEditor":39,"editors/textEditor":40,"helpers/browser":43,"renderers":88,"renderers/autocompleteRenderer":90,"renderers/checkboxRenderer":91,"renderers/htmlRenderer":92,"renderers/numericRenderer":93,"renderers/passwordRenderer":94,"renderers/textRenderer":95,"validators/autocompleteValidator":100,"validators/dateValidator":101,"validators/numericValidator":102}],25:[function(require,module,exports){ "use strict"; var $__numeral__, $__helpers_47_dom_47_element__, @@ -3948,6 +3953,7 @@ var $__numeral__, $__helpers_47_string__, $__helpers_47_number__, $__tableView__, + $__dataSource__, $__helpers_47_data__, $__3rdparty_47_walkontable_47_src_47_cell_47_coords__, $__3rdparty_47_walkontable_47_src_47_cell_47_range__, @@ -3974,10 +3980,11 @@ var getRenderer = ($__renderers__ = require("renderers"), $__renderers__ && $__r var randomString = ($__helpers_47_string__ = require("helpers/string"), $__helpers_47_string__ && $__helpers_47_string__.__esModule && $__helpers_47_string__ || {default: $__helpers_47_string__}).randomString; var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; var TableView = ($__tableView__ = require("tableView"), $__tableView__ && $__tableView__.__esModule && $__tableView__ || {default: $__tableView__}).TableView; -var $__13 = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}), - translateRowsToColumns = $__13.translateRowsToColumns, - cellMethodLookupFactory = $__13.cellMethodLookupFactory, - spreadsheetColumnLabel = $__13.spreadsheetColumnLabel; +var DataSource = ($__dataSource__ = require("dataSource"), $__dataSource__ && $__dataSource__.__esModule && $__dataSource__ || {default: $__dataSource__}).DataSource; +var $__14 = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}), + translateRowsToColumns = $__14.translateRowsToColumns, + cellMethodLookupFactory = $__14.cellMethodLookupFactory, + spreadsheetColumnLabel = $__14.spreadsheetColumnLabel; var WalkontableCellCoords = ($__3rdparty_47_walkontable_47_src_47_cell_47_coords__ = require("3rdparty/walkontable/src/cell/coords"), $__3rdparty_47_walkontable_47_src_47_cell_47_coords__ && $__3rdparty_47_walkontable_47_src_47_cell_47_coords__.__esModule && $__3rdparty_47_walkontable_47_src_47_cell_47_coords__ || {default: $__3rdparty_47_walkontable_47_src_47_cell_47_coords__}).WalkontableCellCoords; var WalkontableCellRange = ($__3rdparty_47_walkontable_47_src_47_cell_47_range__ = require("3rdparty/walkontable/src/cell/range"), $__3rdparty_47_walkontable_47_src_47_cell_47_range__ && $__3rdparty_47_walkontable_47_src_47_cell_47_range__.__esModule && $__3rdparty_47_walkontable_47_src_47_cell_47_range__ || {default: $__3rdparty_47_walkontable_47_src_47_cell_47_range__}).WalkontableCellRange; var WalkontableSelection = ($__3rdparty_47_walkontable_47_src_47_selection__ = require("3rdparty/walkontable/src/selection"), $__3rdparty_47_walkontable_47_src_47_selection__ && $__3rdparty_47_walkontable_47_src_47_selection__.__esModule && $__3rdparty_47_walkontable_47_src_47_selection__ || {default: $__3rdparty_47_walkontable_47_src_47_selection__}).WalkontableSelection; @@ -3986,6 +3993,7 @@ Handsontable.activeGuid = null; Handsontable.Core = function Core(rootElement, userSettings) { var priv, datamap, + dataSource, grid, selection, editorManager, @@ -4021,7 +4029,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { amount = amount || 1; switch (action) { case 'insert_row': - if (instance.getSettings().maxRows === instance.countRows()) { + if (instance.getSettings().maxRows === instance.countSourceRows()) { return; } delta = datamap.createRow(index, amount); @@ -4051,7 +4059,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { } break; case 'remove_row': - index = instance.runHooks('modifyCol', index); datamap.removeRow(index, amount); priv.cellSettings.splice(index, amount); var totalRows = instance.countRows(); @@ -4563,6 +4570,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { } }; this.init = function() { + dataSource = new DataSource(instance, priv.settings.data); Handsontable.hooks.run(instance, 'beforeInit'); if (Handsontable.mobileBrowser) { addClass(instance.rootElement, 'mobile'); @@ -4694,8 +4702,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { this.validateCell = function(value, cellProperties, callback, source) { var validator = instance.getCellValidator(cellProperties); function done(valid) { - var col = cellProperties.col, - row = cellProperties.row, + var col = cellProperties.physicalCol, + row = cellProperties.physicalRow, td = instance.getCell(row, col, true); if (td) { instance.view.wt.wtSettings.settings.cellRenderer(row, col, td); @@ -4771,11 +4779,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { }; this.listen = function() { Handsontable.activeGuid = instance.guid; - if (document.activeElement && document.activeElement !== document.body) { - document.activeElement.blur(); - } else if (!document.activeElement) { - document.body.focus(); - } }; this.unlisten = function() { Handsontable.activeGuid = null; @@ -4847,9 +4850,13 @@ Handsontable.Core = function Core(rootElement, userSettings) { instance.dataType = 'object'; } datamap = new DataMap(instance, priv, GridSettings); + dataSource.data = data; + dataSource.dataType = instance.dataType; + dataSource.colToProp = datamap.colToProp.bind(datamap); + dataSource.propToCol = datamap.propToCol.bind(datamap); clearCellSettingCache(); grid.adjustRowsAndCols(); - Handsontable.hooks.run(instance, 'afterLoadData'); + Handsontable.hooks.run(instance, 'afterLoadData', priv.firstRun); if (priv.firstRun) { priv.firstRun = [null, 'loadData']; } else { @@ -5037,23 +5044,30 @@ Handsontable.Core = function Core(rootElement, userSettings) { range = datamap.getRange(new WalkontableCellCoords(0, datamap.propToCol(prop)), new WalkontableCellCoords(priv.settings.data.length - 1, datamap.propToCol(prop)), datamap.DESTINATION_RENDERER); return out.concat.apply(out, range); }; - this.getSourceDataAtCol = function(col) { - var out = [], - data = priv.settings.data; - for (var i = 0; i < data.length; i++) { - out.push(data[i][col]); + this.getSourceData = function(r, c, r2, c2) { + var data; + if (r === void 0) { + data = dataSource.getData(); + } else { + data = dataSource.getByRange(new WalkontableCellCoords(r, c), new WalkontableCellCoords(r2, c2)); } - return out; + return data; + }; + this.getSourceDataAtCol = function(column) { + return dataSource.getAtColumn(column); }; this.getSourceDataAtRow = function(row) { - return priv.settings.data[row]; + return dataSource.getAtRow(row); + }; + this.getSourceDataAtCell = function(row, column) { + return dataSource.getAtCell(row, column); }; this.getDataAtRow = function(row) { var data = datamap.getRange(new WalkontableCellCoords(row, 0), new WalkontableCellCoords(row, this.countCols() - 1), datamap.DESTINATION_RENDERER); return data[0]; }; this.getDataType = function(rowFrom, columnFrom, rowTo, columnTo) { - var $__18 = this; + var $__19 = this; var previousType = null; var currentType = null; if (rowFrom === void 0) { @@ -5072,7 +5086,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { rangeEach(Math.min(rowFrom, rowTo), Math.max(rowFrom, rowTo), (function(row) { var isTypeEqual = true; rangeEach(Math.min(columnFrom, columnTo), Math.max(columnFrom, columnTo), (function(column) { - var cellType = $__18.getCellMeta(row, column); + var cellType = $__19.getCellMeta(row, column); currentType = cellType.type; if (previousType) { isTypeEqual = previousType === currentType; @@ -5118,6 +5132,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { this.getCellMeta = function(row, col) { var prop = datamap.colToProp(col), cellProperties; + var physicalRow = row; + var physicalCol = col; row = translateRowIndex(row); col = translateColIndex(col); if (!priv.columnSettings[col]) { @@ -5132,6 +5148,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { cellProperties = priv.cellSettings[row][col]; cellProperties.row = row; cellProperties.col = col; + cellProperties.physicalRow = physicalRow; + cellProperties.physicalCol = physicalCol; cellProperties.prop = prop; cellProperties.instance = instance; Handsontable.hooks.run(instance, 'beforeGetCellMeta', row, col, cellProperties); @@ -5186,22 +5204,23 @@ Handsontable.Core = function Core(rootElement, userSettings) { waitingForValidator.checkIfQueueIsEmpty(); }; this.getRowHeader = function(row) { + var rowHeader = priv.settings.rowHeaders; + if (row !== void 0) { + row = Handsontable.hooks.run(instance, 'modifyRowHeader', row); + } if (row === void 0) { - var out = []; - for (var i = 0, - ilen = instance.countRows(); i < ilen; i++) { - out.push(instance.getRowHeader(i)); - } - return out; - } else if (Array.isArray(priv.settings.rowHeaders) && priv.settings.rowHeaders[row] !== void 0) { - return priv.settings.rowHeaders[row]; - } else if (typeof priv.settings.rowHeaders === 'function') { - return priv.settings.rowHeaders(row); - } else if (priv.settings.rowHeaders && typeof priv.settings.rowHeaders !== 'string' && typeof priv.settings.rowHeaders !== 'number') { - return row + 1; - } else { - return priv.settings.rowHeaders; + rowHeader = []; + rangeEach(instance.countRows() - 1, (function(i) { + rowHeader.push(instance.getRowHeader(i)); + })); + } else if (Array.isArray(rowHeader) && rowHeader[row] !== void 0) { + rowHeader = rowHeader[row]; + } else if (typeof rowHeader === 'function') { + rowHeader = rowHeader(row); + } else if (rowHeader && typeof rowHeader !== 'string' && typeof rowHeader !== 'number') { + rowHeader = row + 1; } + return rowHeader; }; this.hasRowHeaders = function() { return !!priv.settings.rowHeaders; @@ -5219,6 +5238,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { return false; }; this.getColHeader = function(col) { + col = Handsontable.hooks.run(instance, 'modifyColHeader', col); if (col === void 0) { var out = []; for (var i = 0, @@ -5293,8 +5313,11 @@ Handsontable.Core = function Core(rootElement, userSettings) { height = Handsontable.hooks.run(instance, 'modifyRowHeight', height, row); return height; }; + this.countSourceRows = function() { + return instance.getSourceData() ? instance.getSourceData().length : 0; + }; this.countRows = function() { - return priv.settings.data.length; + return datamap.getLength(); }; this.countCols = function() { if (instance.dataType === 'object' || instance.dataType === 'function') { @@ -5416,9 +5439,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { } coords = new WalkontableCellCoords(row, col); priv.selRange = new WalkontableCellRange(coords, coords, coords); - if (document.activeElement && document.activeElement !== document.documentElement && document.activeElement !== document.body) { - document.activeElement.blur(); - } if (changeListener) { instance.listen(); } @@ -5445,6 +5465,10 @@ Handsontable.Core = function Core(rootElement, userSettings) { if (instance.view) { instance.view.destroy(); } + if (dataSource) { + dataSource.destroy(); + } + dataSource = null; empty(instance.rootElement); eventManager.destroy(); Handsontable.hooks.run(instance, 'afterDestroy'); @@ -5642,7 +5666,7 @@ DefaultSettings.prototype = { Handsontable.DefaultSettings = DefaultSettings; //# -},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"dataMap":26,"editorManager":27,"eventManager":40,"helpers/array":41,"helpers/data":43,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,"numeral":"numeral","plugins":55,"renderers":86,"tableView":95}],26:[function(require,module,exports){ +},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"dataMap":26,"dataSource":27,"editorManager":28,"eventManager":41,"helpers/array":42,"helpers/data":44,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,"numeral":"numeral","plugins":57,"renderers":88,"tableView":97}],26:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DataMap: {get: function() { @@ -5655,6 +5679,7 @@ var $__SheetClip__, $__helpers_47_setting__, $__helpers_47_object__, $__helpers_47_array__, + $__helpers_47_number__, $__multiMap__; var SheetClip = ($__SheetClip__ = require("SheetClip"), $__SheetClip__ && $__SheetClip__.__esModule && $__SheetClip__ || {default: $__SheetClip__}).default; var cellMethodLookupFactory = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}).cellMethodLookupFactory; @@ -5665,6 +5690,7 @@ var $__3 = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_ob var $__4 = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}), extendArray = $__4.extendArray, to2dArray = $__4.to2dArray; +var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; var MultiMap = ($__multiMap__ = require("multiMap"), $__multiMap__ && $__multiMap__.__esModule && $__multiMap__ || {default: $__multiMap__}).MultiMap; function DataMap(instance, priv, GridSettings) { this.instance = instance; @@ -5762,12 +5788,12 @@ DataMap.prototype.createRow = function(index, amount, createdAutomatically) { if (!amount) { amount = 1; } - if (typeof index !== 'number' || index >= this.instance.countRows()) { - index = this.instance.countRows(); + if (typeof index !== 'number' || index >= this.instance.countSourceRows()) { + index = this.instance.countSourceRows(); } currentIndex = index; var maxRows = this.instance.getSettings().maxRows; - while (numberOfCreatedRows < amount && this.instance.countRows() < maxRows) { + while (numberOfCreatedRows < amount && this.instance.countSourceRows() < maxRows) { if (this.instance.dataType === 'array') { row = []; for (var c = 0; c < colCount; c++) { @@ -5779,7 +5805,7 @@ DataMap.prototype.createRow = function(index, amount, createdAutomatically) { row = {}; deepExtend(row, this.getSchema()); } - if (index === this.instance.countRows()) { + if (index === this.instance.countSourceRows()) { this.dataSource.push(row); } else { this.dataSource.splice(index, 0, row); @@ -5795,7 +5821,7 @@ DataMap.prototype.createCol = function(index, amount, createdAutomatically) { if (!this.instance.isColumnModificationAllowed()) { throw new Error('Cannot create new column. When data source in an object, ' + 'you can only have as much columns as defined in first data row, data schema or in the \'columns\' setting.' + 'If you want to be able to add new columns, you have to use array datasource.'); } - var rlen = this.instance.countRows(), + var rlen = this.instance.countSourceRows(), data = this.dataSource, constructor, numberOfCreatedCols = 0, @@ -5835,9 +5861,9 @@ DataMap.prototype.removeRow = function(index, amount) { if (typeof index !== 'number') { index = -amount; } - index = (this.instance.countRows() + index) % this.instance.countRows(); + index = (this.instance.countSourceRows() + index) % this.instance.countSourceRows(); var logicRows = this.physicalRowsToLogical(index, amount); - var actionWasNotCancelled = Handsontable.hooks.run(this.instance, 'beforeRemoveRow', index, amount); + var actionWasNotCancelled = Handsontable.hooks.run(this.instance, 'beforeRemoveRow', index, amount, logicRows); if (actionWasNotCancelled === false) { return; } @@ -5847,7 +5873,7 @@ DataMap.prototype.removeRow = function(index, amount) { }); data.length = 0; Array.prototype.push.apply(data, newData); - Handsontable.hooks.run(this.instance, 'afterRemoveRow', index, amount); + Handsontable.hooks.run(this.instance, 'afterRemoveRow', index, amount, logicRows); this.instance.forceFullRender = true; }; DataMap.prototype.removeCol = function(index, amount) { @@ -5867,7 +5893,7 @@ DataMap.prototype.removeCol = function(index, amount) { } var data = this.dataSource; for (var r = 0, - rlen = this.instance.countRows(); r < rlen; r++) { + rlen = this.instance.countSourceRows(); r < rlen; r++) { data[r].splice(index, amount); } this.priv.columnSettings.splice(index, amount); @@ -5921,9 +5947,11 @@ DataMap.prototype.get = function(row, prop) { return out; } else if (typeof prop === 'function') { return prop(this.dataSource.slice(row, row + 1)[0]); - } else { - return this.dataSource[row] ? this.dataSource[row][prop] : null; } + if (this.dataSource[row] && this.dataSource[row].hasOwnProperty && this.dataSource[row].hasOwnProperty(prop)) { + return this.dataSource[row][prop]; + } + return null; }; var copyableLookup = cellMethodLookupFactory('copyable', false); DataMap.prototype.getCopyable = function(row, prop) { @@ -5952,7 +5980,7 @@ DataMap.prototype.set = function(row, prop, value, source) { } }; DataMap.prototype.physicalRowsToLogical = function(index, amount) { - var totalRows = this.instance.countRows(); + var totalRows = this.instance.countSourceRows(); var physicRow = (totalRows + index) % totalRows; var logicRows = []; var rowsToRemove = amount; @@ -5966,14 +5994,38 @@ DataMap.prototype.physicalRowsToLogical = function(index, amount) { return logicRows; }; DataMap.prototype.clear = function() { - for (var r = 0; r < this.instance.countRows(); r++) { + for (var r = 0; r < this.instance.countSourceRows(); r++) { for (var c = 0; c < this.instance.countCols(); c++) { this.set(r, this.colToProp(c), ''); } } }; +DataMap.prototype.getLength = function() { + var $__7 = this; + var length = this.instance.countSourceRows(); + if (Handsontable.hooks.has('modifyRow', this.instance)) { + rangeEach(this.instance.countSourceRows() - 1, (function(row) { + row = Handsontable.hooks.run($__7.instance, 'modifyRow', row); + if (row === null) { + length--; + } + })); + } + return length; +}; DataMap.prototype.getAll = function() { - return this.dataSource; + var start = { + row: 0, + col: 0 + }; + var end = { + row: Math.max(this.instance.countSourceRows() - 1, 0), + col: Math.max(this.instance.countCols() - 1, 0) + }; + if (start.row - end.row === 0 && !this.instance.countSourceRows()) { + return []; + } + return this.getRange(start, end, DataMap.prototype.DESTINATION_RENDERER); }; DataMap.prototype.getRange = function(start, end, destination) { var r, @@ -5981,16 +6033,24 @@ DataMap.prototype.getRange = function(start, end, destination) { c, clen, output = [], - row; + row, + rowExists; var getFn = destination === this.DESTINATION_CLIPBOARD_GENERATOR ? this.getCopyable : this.get; rlen = Math.max(start.row, end.row); clen = Math.max(start.col, end.col); for (r = Math.min(start.row, end.row); r <= rlen; r++) { row = []; + var physicalRow = Handsontable.hooks.run(this.instance, 'modifyRow', r); for (c = Math.min(start.col, end.col); c <= clen; c++) { + var rowValue; + if (physicalRow === null) { + break; + } row.push(getFn.call(this, r, this.colToProp(c))); } - output.push(row); + if (physicalRow !== null) { + output.push(row); + } } return output; }; @@ -6004,7 +6064,92 @@ DataMap.prototype.getCopyableText = function(start, end) { Handsontable.DataMap = DataMap; //# -},{"SheetClip":"SheetClip","helpers/array":41,"helpers/data":43,"helpers/object":49,"helpers/setting":50,"multiMap":53}],27:[function(require,module,exports){ +},{"SheetClip":"SheetClip","helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"multiMap":55}],27:[function(require,module,exports){ +"use strict"; +Object.defineProperties(exports, { + DataSource: {get: function() { + return DataSource; + }}, + __esModule: {value: true} +}); +var $__helpers_47_data__, + $__helpers_47_setting__, + $__helpers_47_object__, + $__helpers_47_array__, + $__helpers_47_number__; +var cellMethodLookupFactory = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}).cellMethodLookupFactory; +var columnFactory = ($__helpers_47_setting__ = require("helpers/setting"), $__helpers_47_setting__ && $__helpers_47_setting__.__esModule && $__helpers_47_setting__ || {default: $__helpers_47_setting__}).columnFactory; +var $__2 = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_object__ && $__helpers_47_object__.__esModule && $__helpers_47_object__ || {default: $__helpers_47_object__}), + duckSchema = $__2.duckSchema, + deepExtend = $__2.deepExtend, + getProperty = $__2.getProperty; +var $__3 = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}), + extendArray = $__3.extendArray, + arrayEach = $__3.arrayEach; +var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; +var DataSource = function DataSource(hotInstance, dataSource) { + this.hot = hotInstance; + this.data = dataSource; + this.dataType = 'array'; + this.colToProp = (function() {}); + this.propToCol = (function() {}); +}; +($traceurRuntime.createClass)(DataSource, { + getData: function() { + return this.data; + }, + getAtColumn: function(column) { + var $__5 = this; + var result = []; + arrayEach(this.data, (function(row) { + var property = $__5.colToProp(column); + if (typeof property === 'string') { + row = getProperty(row, property); + } else { + row = row[property]; + } + result.push(row); + })); + return result; + }, + getAtRow: function(row) { + return this.data[row]; + }, + getAtCell: function(row, column) { + return this.data[row][this.colToProp(column)]; + }, + getByRange: function(start, end) { + var $__5 = this; + var startRow = Math.min(start.row, end.row); + var startCol = Math.min(start.col, end.col); + var endRow = Math.max(start.row, end.row); + var endCol = Math.max(start.col, end.col); + var result = []; + rangeEach(startRow, endRow, (function(currentRow) { + var row = $__5.getAtRow(currentRow); + var newRow; + if ($__5.dataType === 'array') { + newRow = row.slice(startCol, endCol); + } else if ($__5.dataType === 'object') { + newRow = {}; + rangeEach(startCol, endCol, (function(column) { + var prop = $__5.colToProp(column); + newRow[prop] = row[prop]; + })); + } + result.push(newRow); + })); + return result; + }, + destroy: function() { + this.data = null; + this.hot = null; + } +}, {}); +; + +//# +},{"helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51}],28:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { EditorManager: {get: function() { @@ -6300,7 +6445,7 @@ function EditorManager(instance, priv, selection) { } //# -},{"3rdparty/walkontable/src/cell/coords":5,"editors":28,"eventManager":40,"helpers/dom/event":45,"helpers/unicode":52}],28:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"editors":29,"eventManager":41,"helpers/dom/event":46,"helpers/unicode":53}],29:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerEditor: {get: function() { @@ -6382,7 +6527,7 @@ function hasEditor(editorName) { } //# -},{"helpers/string":51}],29:[function(require,module,exports){ +},{"helpers/string":52}],30:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { BaseEditor: {get: function() { @@ -6589,7 +6734,7 @@ BaseEditor.prototype.checkEditorSection = function() { }; //# -},{"3rdparty/walkontable/src/cell/coords":5,"helpers/mixed":47}],30:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"helpers/mixed":48}],31:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutocompleteEditor: {get: function() { @@ -6853,7 +6998,7 @@ AutocompleteEditor.prototype.allowKeyEventPropagation = function(keyCode) { registerEditor('autocomplete', AutocompleteEditor); //# -},{"editors":28,"handsontableEditor":34,"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/unicode":52}],31:[function(require,module,exports){ +},{"editors":29,"handsontableEditor":35,"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/unicode":53}],32:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CheckboxEditor: {get: function() { @@ -6890,7 +7035,7 @@ var $CheckboxEditor = CheckboxEditor; registerEditor('checkbox', CheckboxEditor); //# -},{"_baseEditor":29,"editors":28,"helpers/dom/element":44}],32:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"helpers/dom/element":45}],33:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DateEditor: {get: function() { @@ -7077,7 +7222,7 @@ var $DateEditor = DateEditor; registerEditor('date', DateEditor); //# -},{"editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"moment":"moment","pikaday":"pikaday","textEditor":39}],33:[function(require,module,exports){ +},{"editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"moment":"moment","pikaday":"pikaday","textEditor":40}],34:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DropdownEditor: {get: function() { @@ -7113,7 +7258,7 @@ Handsontable.hooks.add('beforeValidate', function(value, row, col, source) { registerEditor('dropdown', DropdownEditor); //# -},{"autocompleteEditor":30,"editors":28}],34:[function(require,module,exports){ +},{"autocompleteEditor":31,"editors":29}],35:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { HandsontableEditor: {get: function() { @@ -7264,7 +7409,7 @@ HandsontableEditor.prototype.assignHooks = function() { registerEditor('handsontable', HandsontableEditor); //# -},{"editors":28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"textEditor":39}],35:[function(require,module,exports){ +},{"editors":29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"textEditor":40}],36:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MobileTextEditor: {get: function() { @@ -7523,7 +7668,7 @@ MobileTextEditor.prototype.destroy = function() { registerEditor('mobile', MobileTextEditor); //# -},{"_baseEditor":29,"editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],36:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],37:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { NumericEditor: {get: function() { @@ -7557,7 +7702,7 @@ var $NumericEditor = NumericEditor; registerEditor('numeric', NumericEditor); //# -},{"editors":28,"numeral":"numeral","textEditor":39}],37:[function(require,module,exports){ +},{"editors":29,"numeral":"numeral","textEditor":40}],38:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { PasswordEditor: {get: function() { @@ -7592,7 +7737,7 @@ var $PasswordEditor = PasswordEditor; registerEditor('password', PasswordEditor); //# -},{"editors":28,"helpers/dom/element":44,"textEditor":39}],38:[function(require,module,exports){ +},{"editors":29,"helpers/dom/element":45,"textEditor":40}],39:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { SelectEditor: {get: function() { @@ -7814,7 +7959,7 @@ SelectEditor.prototype.getEditedCell = function() { registerEditor('select', SelectEditor); //# -},{"_baseEditor":29,"editors":28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],39:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],40:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TextEditor: {get: function() { @@ -8119,7 +8264,7 @@ TextEditor.prototype.destroy = function() { registerEditor('text', TextEditor); //# -},{"_baseEditor":29,"autoResize":"autoResize","editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],40:[function(require,module,exports){ +},{"_baseEditor":30,"autoResize":"autoResize","editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],41:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { EventManager: {get: function() { @@ -8316,7 +8461,7 @@ function eventManager(context) { } //# -},{"helpers/browser":42,"helpers/dom/element":44}],41:[function(require,module,exports){ +},{"helpers/browser":43,"helpers/dom/element":45}],42:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { to2dArray: {get: function() { @@ -8343,6 +8488,12 @@ Object.defineProperties(exports, { arraySum: {get: function() { return arraySum; }}, + arrayMax: {get: function() { + return arrayMax; + }}, + arrayMin: {get: function() { + return arrayMin; + }}, arrayAvg: {get: function() { return arrayAvg; }}, @@ -8437,6 +8588,16 @@ function arraySum(array) { return (a + b); }), 0); } +function arrayMax(array) { + return arrayReduce(array, (function(a, b) { + return (a > b ? a : b); + }), Array.isArray(array) ? array[0] : void 0); +} +function arrayMin(array) { + return arrayReduce(array, (function(a, b) { + return (a < b ? a : b); + }), Array.isArray(array) ? array[0] : void 0); +} function arrayAvg(array) { if (!array.length) { return 0; @@ -8459,7 +8620,7 @@ function arrayUnique(array) { } //# -},{}],42:[function(require,module,exports){ +},{}],43:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { isIE8: {get: function() { @@ -8545,7 +8706,7 @@ function hasCaptionProblem() { } //# -},{}],43:[function(require,module,exports){ +},{}],44:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { spreadsheetColumnLabel: {get: function() { @@ -8557,6 +8718,9 @@ Object.defineProperties(exports, { createSpreadsheetObjectData: {get: function() { return createSpreadsheetObjectData; }}, + createEmptySpreadsheetData: {get: function() { + return createEmptySpreadsheetData; + }}, translateRowsToColumns: {get: function() { return translateRowsToColumns; }}, @@ -8608,6 +8772,18 @@ function createSpreadsheetObjectData(rowCount, colCount) { } return rows; } +function createEmptySpreadsheetData(rows, columns) { + var data = []; + var row; + for (var i = 0; i < rows; i++) { + row = []; + for (var j = 0; j < columns; j++) { + row.push(''); + } + data.push(row); + } + return data; +} function translateRowsToColumns(input) { var i, ilen, @@ -8659,7 +8835,7 @@ function cellMethodLookupFactory(methodName, allowUndefined) { } //# -},{"object":49}],44:[function(require,module,exports){ +},{"object":50}],45:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { closest: {get: function() { @@ -8761,6 +8937,9 @@ Object.defineProperties(exports, { getSelectionEndPosition: {get: function() { return getSelectionEndPosition; }}, + getSelectionText: {get: function() { + return getSelectionText; + }}, setCaretPosition: {get: function() { return setCaretPosition; }}, @@ -9233,6 +9412,15 @@ function getSelectionEndPosition(el) { return re.text.indexOf(r.text) + r.text.length; } } +function getSelectionText() { + var text = ''; + if (window.getSelection) { + text = window.getSelection().toString(); + } else if (document.selection && document.selection.type !== 'Control') { + text = document.selection.createRange().text; + } + return text; +} function setCaretPosition(element, pos, endPos) { if (endPos === void 0) { endPos = pos; @@ -9351,7 +9539,7 @@ function cancelAnimationFrame(id) { } //# -},{"../browser":42}],45:[function(require,module,exports){ +},{"../browser":43}],46:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { stopImmediatePropagation: {get: function() { @@ -9403,7 +9591,7 @@ function pageY(event) { } //# -},{}],46:[function(require,module,exports){ +},{}],47:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { proxy: {get: function() { @@ -9476,7 +9664,7 @@ function throttleAfterHits(func) { } //# -},{}],47:[function(require,module,exports){ +},{}],48:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { stringify: {get: function() { @@ -9504,7 +9692,7 @@ function stringify(value) { } //# -},{}],48:[function(require,module,exports){ +},{}],49:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { isNumeric: {get: function() { @@ -9513,6 +9701,9 @@ Object.defineProperties(exports, { rangeEach: {get: function() { return rangeEach; }}, + rangeEachReverse: {get: function() { + return rangeEachReverse; + }}, valueAccordingPercent: {get: function() { return valueAccordingPercent; }}, @@ -9522,28 +9713,29 @@ function isNumeric(n) { var t = typeof n; return t == 'number' ? !isNaN(n) && isFinite(n) : t == 'string' ? !n.length ? false : n.length == 1 ? /\d/.test(n) : /^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(n) : t == 'object' ? !!n && typeof n.valueOf() == 'number' && !(n instanceof Date) : false; } -function rangeEach(rangeFrom, rangeTo, iteratee, onlyForward) { +function rangeEach(rangeFrom, rangeTo, iteratee) { var index = -1; - var _rangeTo = rangeTo; - var _rangeFrom = 0; if (typeof rangeTo === 'function') { iteratee = rangeTo; - _rangeTo = rangeFrom; + rangeTo = rangeFrom; } else { index = rangeFrom - 1; } - if (onlyForward || rangeFrom <= _rangeTo) { - while (++index <= _rangeTo) { - if (iteratee(index) === false) { - break; - } + while (++index <= rangeTo) { + if (iteratee(index) === false) { + break; } - } else { - index = rangeFrom + 1; - while (--index >= rangeTo) { - if (iteratee(index) === false) { - break; - } + } +} +function rangeEachReverse(rangeFrom, rangeTo, iteratee) { + var index = rangeFrom + 1; + if (typeof rangeTo === 'function') { + iteratee = rangeTo; + rangeTo = 0; + } + while (--index >= rangeTo) { + if (iteratee(index) === false) { + break; } } } @@ -9554,7 +9746,7 @@ function valueAccordingPercent(value, percent) { } //# -},{}],49:[function(require,module,exports){ +},{}],50:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { duckSchema: {get: function() { @@ -9593,6 +9785,9 @@ Object.defineProperties(exports, { objectEach: {get: function() { return objectEach; }}, + getProperty: {get: function() { + return getProperty; + }}, __esModule: {value: true} }); var $__array__; @@ -9664,8 +9859,15 @@ function mixin(Base) { for (var mixins = [], $__1 = 1; $__1 < arguments.length; $__1++) mixins[$__1 - 1] = arguments[$__1]; + if (!Base.MIXINS) { + Base.MIXINS = []; + } arrayEach(mixins, (function(mixin) { + Base.MIXINS.push(mixin.MIXIN_NAME); objectEach(mixin, (function(value, key) { + if (Base.prototype[key] !== void 0) { + throw new Error(("Mixin conflict. Property '" + key + "' already exist and cannot be overwritten.")); + } if (typeof value === 'function') { Base.prototype[key] = value; } else { @@ -9726,9 +9928,9 @@ function getPrototypeOf(obj) { } function defineGetter(object, property, value, options) { options.value = value; - options.writable = options.writable === false ? false : true; - options.enumerable = options.enumerable === false ? false : true; - options.configurable = options.configurable === false ? false : true; + options.writable = options.writable !== false; + options.enumerable = options.enumerable !== false; + options.configurable = options.configurable !== false; Object.defineProperty(object, property, options); } function objectEach(object, iteratee) { @@ -9741,9 +9943,21 @@ function objectEach(object, iteratee) { } return object; } +function getProperty(object, name) { + var names = name.split('.'); + var result = object; + objectEach(names, (function(name) { + result = result[name]; + if (result === void 0) { + result = void 0; + return false; + } + })); + return result; +} //# -},{"array":41}],50:[function(require,module,exports){ +},{"array":42}],51:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { columnFactory: {get: function() { @@ -9765,7 +9979,7 @@ function columnFactory(GridSettings, conflictList) { } //# -},{"object":49}],51:[function(require,module,exports){ +},{"object":50}],52:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { toUpperCaseFirst: {get: function() { @@ -9844,7 +10058,7 @@ function isPercentValue(value) { } //# -},{"mixed":47,"number":48}],52:[function(require,module,exports){ +},{"mixed":48,"number":49}],53:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { KEY_CODES: {get: function() { @@ -9933,7 +10147,52 @@ function isKey(keyCode, baseCode) { } //# -},{"array":41}],53:[function(require,module,exports){ +},{"array":42}],54:[function(require,module,exports){ +"use strict"; +Object.defineProperties(exports, { + localHooks: {get: function() { + return localHooks; + }}, + __esModule: {value: true} +}); +var $___46__46__47_helpers_47_array__, + $___46__46__47_helpers_47_object__; +var arrayEach = ($___46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47_helpers_47_array__ && $___46__46__47_helpers_47_array__.__esModule && $___46__46__47_helpers_47_array__ || {default: $___46__46__47_helpers_47_array__}).arrayEach; +var defineGetter = ($___46__46__47_helpers_47_object__ = require("helpers/object"), $___46__46__47_helpers_47_object__ && $___46__46__47_helpers_47_object__.__esModule && $___46__46__47_helpers_47_object__ || {default: $___46__46__47_helpers_47_object__}).defineGetter; +var MIXIN_NAME = 'localHooks'; +var localHooks = { + _localHooks: Object.create(null), + addLocalHook: function(key, callback) { + if (!this._localHooks[key]) { + this._localHooks[key] = []; + } + this._localHooks[key].push(callback); + }, + runLocalHooks: function(key) { + for (var params = [], + $__3 = 1; $__3 < arguments.length; $__3++) + params[$__3 - 1] = arguments[$__3]; + var $__2 = this; + if (this._localHooks[key]) { + arrayEach(this._localHooks[key], (function(callback) { + return callback.apply($__2, params); + })); + } + }, + clearLocalHooks: function() { + this._localHooks = {}; + } +}; +defineGetter(localHooks, 'MIXIN_NAME', MIXIN_NAME, { + writable: false, + enumerable: false +}); +; +Handsontable.utils = Handsontable.utils || {}; +Handsontable.utils.localHooks = localHooks; + +//# +},{"helpers/array":42,"helpers/object":50}],55:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MultiMap: {get: function() { @@ -9985,20 +10244,17 @@ function MultiMap() { } //# -},{}],54:[function(require,module,exports){ +},{}],56:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Hooks: {get: function() { return Hooks; }}, - localHooks: {get: function() { - return localHooks; - }}, __esModule: {value: true} }); var $__helpers_47_array__, $__helpers_47_object__; -var REGISTERED_HOOKS = ['afterCellMetaReset', 'afterChange', 'afterChangesObserved', 'afterColumnMove', 'afterColumnResize', 'afterContextMenuDefaultOptions', 'afterContextMenuHide', 'afterContextMenuShow', 'afterCopyLimit', 'afterCreateCol', 'afterCreateRow', 'afterDeselect', 'afterDestroy', 'afterDocumentKeyDown', 'afterGetCellMeta', 'afterGetColHeader', 'afterGetRowHeader', 'afterInit', 'afterIsMultipleSelectionCheck', 'afterLoadData', 'afterMomentumScroll', 'afterOnCellCornerMouseDown', 'afterOnCellMouseDown', 'afterOnCellMouseOver', 'afterRemoveCol', 'afterRemoveRow', 'afterRender', 'afterRenderer', 'afterScrollHorizontally', 'afterScrollVertically', 'afterSelection', 'afterSelectionByProp', 'afterSelectionEnd', 'afterSelectionEndByProp', 'afterSetCellMeta', 'afterUpdateSettings', 'afterValidate', 'beforeAutofill', 'beforeCellAlignment', 'beforeChange', 'beforeChangeRender', 'beforeDrawBorders', 'beforeGetCellMeta', 'beforeInit', 'beforeInitWalkontable', 'beforeKeyDown', 'beforeOnCellMouseDown', 'beforeRemoveCol', 'beforeRemoveRow', 'beforeRender', 'beforeSetRangeEnd', 'beforeTouchScroll', 'beforeValidate', 'construct', 'init', 'modifyCol', 'modifyColWidth', 'modifyRow', 'modifyRowHeight', 'persistentStateLoad', 'persistentStateReset', 'persistentStateSave', 'beforeColumnSort', 'afterColumnSort', 'afterAutofillApplyValues', 'modifyCopyableRange', 'beforeColumnMove', 'afterColumnMove', 'beforeRowMove', 'afterRowMove', 'beforeColumnResize', 'afterColumnResize', 'beforeRowResize', 'afterRowResize']; +var REGISTERED_HOOKS = ['afterCellMetaReset', 'afterChange', 'afterChangesObserved', 'afterColumnMove', 'afterColumnResize', 'afterContextMenuDefaultOptions', 'afterContextMenuHide', 'afterContextMenuShow', 'afterCopyLimit', 'afterCreateCol', 'afterCreateRow', 'afterDeselect', 'afterDestroy', 'afterDocumentKeyDown', 'afterGetCellMeta', 'afterGetColHeader', 'afterGetRowHeader', 'afterInit', 'afterIsMultipleSelectionCheck', 'afterLoadData', 'afterMomentumScroll', 'afterOnCellCornerMouseDown', 'afterOnCellMouseDown', 'afterOnCellMouseOver', 'afterRemoveCol', 'afterRemoveRow', 'afterRender', 'afterRenderer', 'afterScrollHorizontally', 'afterScrollVertically', 'afterSelection', 'afterSelectionByProp', 'afterSelectionEnd', 'afterSelectionEndByProp', 'afterSetCellMeta', 'afterUpdateSettings', 'afterValidate', 'beforeAutofill', 'beforeCellAlignment', 'beforeChange', 'beforeChangeRender', 'beforeDrawBorders', 'beforeGetCellMeta', 'beforeInit', 'beforeInitWalkontable', 'beforeKeyDown', 'beforeOnCellMouseDown', 'beforeRemoveCol', 'beforeRemoveRow', 'beforeRender', 'beforeSetRangeEnd', 'beforeTouchScroll', 'beforeValidate', 'construct', 'init', 'modifyCol', 'modifyColumnHeader', 'modifyColWidth', 'modifyRow', 'modifyRowHeader', 'modifyRowHeight', 'persistentStateLoad', 'persistentStateReset', 'persistentStateSave', 'beforeColumnSort', 'afterColumnSort', 'afterAutofillApplyValues', 'modifyCopyableRange', 'beforeColumnMove', 'afterColumnMove', 'beforeRowMove', 'afterRowMove', 'beforeColumnResize', 'afterColumnResize', 'beforeRowResize', 'afterRowResize']; var arrayEach = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}).arrayEach; var objectEach = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_object__ && $__helpers_47_object__.__esModule && $__helpers_47_object__ || {default: $__helpers_47_object__}).objectEach; var Hooks = function Hooks() { @@ -10065,6 +10321,11 @@ var Hooks = function Hooks() { } return false; }, + has: function(key) { + var context = arguments[1] !== (void 0) ? arguments[1] : null; + var bucket = this.getBucket(context); + return bucket[key] !== void 0 && bucket[key].length ? true : false; + }, run: function(context, key, p1, p2, p3, p4, p5, p6) { { var globalHandlers = this.globalBucket[key]; @@ -10087,19 +10348,19 @@ var Hooks = function Hooks() { } { var localHandlers = this.getBucket(context)[key]; - var index$__5 = -1; - var length$__6 = localHandlers ? localHandlers.length : 0; - if (length$__6) { - while (++index$__5 < length$__6) { - if (!localHandlers[index$__5] || localHandlers[index$__5].skip) { + var index$__4 = -1; + var length$__5 = localHandlers ? localHandlers.length : 0; + if (length$__5) { + while (++index$__4 < length$__5) { + if (!localHandlers[index$__4] || localHandlers[index$__4].skip) { continue; } - var res$__7 = localHandlers[index$__5].call(context, p1, p2, p3, p4, p5, p6); - if (res$__7 !== void 0) { - p1 = res$__7; + var res$__6 = localHandlers[index$__4].call(context, p1, p2, p3, p4, p5, p6); + if (res$__6 !== void 0) { + p1 = res$__6; } - if (localHandlers[index$__5] && localHandlers[index$__5].runOnce) { - this.remove(key, localHandlers[index$__5], context); + if (localHandlers[index$__4] && localHandlers[index$__4].runOnce) { + this.remove(key, localHandlers[index$__4], context); } } } @@ -10130,36 +10391,11 @@ var Hooks = function Hooks() { } }, {}); ; -var localHooks = { - _localHooks: Object.create(null), - addLocalHook: function(key, callback) { - if (!this._localHooks[key]) { - this._localHooks[key] = []; - } - this._localHooks[key].push(callback); - }, - runLocalHooks: function(key) { - for (var params = [], - $__4 = 1; $__4 < arguments.length; $__4++) - params[$__4 - 1] = arguments[$__4]; - var $__2 = this; - if (this._localHooks[key]) { - arrayEach(this._localHooks[key], (function(callback) { - return callback.apply($__2, params); - })); - } - }, - clearLocalHooks: function() { - this._localHooks = {}; - } -}; -; Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.Hooks = Hooks; -Handsontable.utils.localHooks = localHooks; //# -},{"helpers/array":41,"helpers/object":49}],55:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50}],57:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerPlugin: {get: function() { @@ -10230,9 +10466,11 @@ function getPluginName(hotInstance, plugin) { return pluginName; } ; +Handsontable.plugins.utils = Handsontable.plugins.utils || {}; +Handsontable.plugins.registerPlugin = registerPlugin; //# -},{"helpers/object":49,"helpers/string":51}],56:[function(require,module,exports){ +},{"helpers/object":50,"helpers/string":52}],58:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { default: {get: function() { @@ -10257,9 +10495,9 @@ var BasePlugin = function BasePlugin(hotInstance) { defineGetter(this, 'hot', hotInstance, {writable: false}); privatePool.set(this, {hooks: {}}); initializedPlugins = null; + this.pluginName = null; this.pluginsInitializedCallbacks = []; this.isPluginsReady = false; - this.pluginName = null; this.enabled = false; this.initialized = false; this.hot.addHook('afterPluginsInitialized', (function() { @@ -10342,25 +10580,30 @@ var BasePlugin = function BasePlugin(hotInstance) { this.enablePlugin(); } if (this.enabled && this.isEnabled()) { - if (this.updatePlugin) { - this.updatePlugin(); - } + this.updatePlugin(); } } }, updatePlugin: function() {}, destroy: function() { + var $__3 = this; if (this.eventManager) { this.eventManager.destroy(); } this.clearHooks(); + objectEach(this, (function(value, property) { + if (property !== 'hot') { + $__3[property] = null; + } + })); delete this.hot; } }, {}); var $__default = BasePlugin; +Handsontable.plugins.BasePlugin = BasePlugin; //# -},{"helpers/array":41,"helpers/object":49,"plugins":55}],57:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50,"plugins":57}],59:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutoColumnSize: {get: function() { @@ -10632,7 +10875,7 @@ var $AutoColumnSize = AutoColumnSize; registerPlugin('autoColumnSize', AutoColumnSize); //# -},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"_base":56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,"plugins":55,"utils/ghostTable":96,"utils/samplesGenerator":97}],58:[function(require,module,exports){ +},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"_base":58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,"plugins":57,"utils/ghostTable":98,"utils/samplesGenerator":99}],60:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutoRowSize: {get: function() { @@ -10937,7 +11180,7 @@ var $AutoRowSize = AutoRowSize; registerPlugin('autoRowSize', AutoRowSize); //# -},{"_base":56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,"plugins":55,"utils/ghostTable":96,"utils/samplesGenerator":97}],59:[function(require,module,exports){ +},{"_base":58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,"plugins":57,"utils/ghostTable":98,"utils/samplesGenerator":99}],61:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Autofill: {get: function() { @@ -11188,15 +11431,16 @@ Handsontable.hooks.add('afterInit', function() { Handsontable.Autofill = Autofill; //# -},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":40,"helpers/dom/element":44,"plugins":55}],60:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":41,"helpers/dom/element":45,"plugins":57}],62:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { - default: {get: function() { - return $__default; + ColumnSorting: {get: function() { + return ColumnSorting; }}, __esModule: {value: true} }); var $___46__46__47__46__46__47_helpers_47_dom_47_element__, + $___46__46__47__46__46__47_helpers_47_array__, $___46__46__47__46__46__47_eventManager__, $___46__46__47__95_base__, $___46__46__47__46__46__47_plugins__; @@ -11206,6 +11450,10 @@ var $__0 = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("he hasClass = $__0.hasClass, index = $__0.index, removeClass = $__0.removeClass; +var $__1 = ($___46__46__47__46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47__46__46__47_helpers_47_array__ && $___46__46__47__46__46__47_helpers_47_array__.__esModule && $___46__46__47__46__46__47_helpers_47_array__ || {default: $___46__46__47__46__46__47_helpers_47_array__}), + arrayEach = $__1.arrayEach, + arrayMap = $__1.arrayMap, + arrayReduce = $__1.arrayReduce; var eventManagerObject = ($___46__46__47__46__46__47_eventManager__ = require("eventManager"), $___46__46__47__46__46__47_eventManager__ && $___46__46__47__46__46__47_eventManager__.__esModule && $___46__46__47__46__46__47_eventManager__ || {default: $___46__46__47__46__46__47_eventManager__}).eventManager; var BasePlugin = ($___46__46__47__95_base__ = require("_base"), $___46__46__47__95_base__ && $___46__46__47__95_base__.__esModule && $___46__46__47__95_base__ || {default: $___46__46__47__95_base__}).default; var registerPlugin = ($___46__46__47__46__46__47_plugins__ = require("plugins"), $___46__46__47__46__46__47_plugins__ && $___46__46__47__46__46__47_plugins__.__esModule && $___46__46__47__46__46__47_plugins__ || {default: $___46__46__47__46__46__47_plugins__}).registerPlugin; @@ -11221,7 +11469,7 @@ var $ColumnSorting = ColumnSorting; return !!(this.hot.getSettings().columnSorting); }, enablePlugin: function() { - var $__4 = this; + var $__5 = this; if (this.enabled) { return; } @@ -11235,14 +11483,20 @@ var $ColumnSorting = ColumnSorting; this.enableObserveChangesPlugin(); } this.bindColumnSortingAfterClick(); + this.addHook('afterTrimRow', (function(row) { + return $__5.sort(); + })); + this.addHook('afterUntrimRow', (function(row) { + return $__5.sort(); + })); this.addHook('modifyRow', (function(row) { - return $__4.translateRow(row); + return $__5.translateRow(row); })); this.addHook('afterUpdateSettings', (function() { - return $__4.onAfterUpdateSettings(); + return $__5.onAfterUpdateSettings(); })); this.addHook('afterGetColHeader', (function(col, TH) { - return $__4.getColHeader(col, TH); + return $__5.getColHeader(col, TH); })); this.addHook('afterCreateRow', function() { _this.afterCreateRow.apply(_this, arguments); @@ -11251,12 +11505,12 @@ var $ColumnSorting = ColumnSorting; _this.afterRemoveRow.apply(_this, arguments); }); this.addHook('afterInit', (function() { - return $__4.sortBySettings(); + return $__5.sortBySettings(); })); this.addHook('afterLoadData', (function() { - $__4.hot.sortIndex = []; - if ($__4.hot.view) { - $__4.sortBySettings(); + $__5.hot.sortIndex = []; + if ($__5.hot.view) { + $__5.sortBySettings(); } })); if (this.hot.view) { @@ -11358,8 +11612,12 @@ var $ColumnSorting = ColumnSorting; } }); function countRowHeaders() { - var THs = _this.hot.view.TBODY.querySelector('tr').querySelectorAll('th'); - return THs.length; + var tr = _this.hot.view.TBODY.querySelector('tr'); + var length = 1; + if (tr) { + length = tr.querySelectorAll('th').length; + } + return length; } function getColumn(target) { var TH = closest(target, 'TH'); @@ -11427,6 +11685,7 @@ var $ColumnSorting = ColumnSorting; }, sort: function() { if (typeof this.hot.sortOrder == 'undefined') { + this.hot.sortIndex.length = 0; return; } var colMeta, @@ -11505,7 +11764,7 @@ var $ColumnSorting = ColumnSorting; } } for (var i = 0; i < amount; i++) { - this.hot.sortIndex.splice(index + i, 0, [index + i, this.hot.getData()[index + i][this.hot.sortColumn + this.hot.colOffset()]]); + this.hot.sortIndex.splice(index + i, 0, [index + i, this.hot.getSourceData()[index + i][this.hot.sortColumn + this.hot.colOffset()]]); } this.saveSortingState(); }, @@ -11513,21 +11772,33 @@ var $ColumnSorting = ColumnSorting; if (!this.isSorted()) { return; } - var physicalRemovedIndex = this.translateRow(index); - this.hot.sortIndex.splice(index, amount); - for (var i = 0; i < this.hot.sortIndex.length; i++) { - if (this.hot.sortIndex[i][0] > physicalRemovedIndex) { - this.hot.sortIndex[i][0] -= amount; - } + var removedRows = this.hot.sortIndex.splice(index, amount); + removedRows = arrayMap(removedRows, (function(row) { + return row[0]; + })); + function countRowShift(logicalRow) { + return arrayReduce(removedRows, (function(count, removedLogicalRow) { + if (logicalRow > removedLogicalRow) { + count++; + } + return count; + }), 0); } + this.hot.sortIndex = arrayMap(this.hot.sortIndex, (function(logicalRow, physicalRow) { + var rowShift = countRowShift(logicalRow[0]); + if (rowShift) { + logicalRow[0] -= rowShift; + } + return logicalRow; + })); this.saveSortingState(); } }, {}, BasePlugin); -var $__default = ColumnSorting; +; registerPlugin('columnSorting', ColumnSorting); //# -},{"_base":56,"eventManager":40,"helpers/dom/element":44,"plugins":55}],61:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"plugins":57}],63:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CommentEditor: {get: function() { @@ -11615,7 +11886,7 @@ var $CommentEditor = CommentEditor; ; //# -},{"helpers/dom/element":44}],62:[function(require,module,exports){ +},{"helpers/dom/element":45}],64:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Comments: {get: function() { @@ -11907,7 +12178,7 @@ var $Comments = Comments; registerPlugin('comments', Comments); //# -},{"3rdparty/walkontable/src/cell/coords":5,"_base":56,"commentEditor":61,"eventManager":40,"helpers/dom/element":44,"plugins":55}],63:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"_base":58,"commentEditor":63,"eventManager":41,"helpers/dom/element":45,"plugins":57}],65:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CommandExecutor: {get: function() { @@ -11980,7 +12251,7 @@ function findSubCommand(subCommandName, subCommands) { ; //# -},{"helpers/array":41}],64:[function(require,module,exports){ +},{"helpers/array":42}],66:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ContextMenu: {get: function() { @@ -12056,10 +12327,10 @@ var $ContextMenu = ContextMenu; $__11.menu = new Menu($__11.hot, {className: 'htContextMenu'}); $__11.menu.setMenuItems(menuItems); $__11.menu.addLocalHook('afterOpen', (function() { - return $__11.hot.runHooks('afterContextMenuShow', $__11); + return $__11.onMenuAfterOpen(); })); $__11.menu.addLocalHook('afterClose', (function() { - return $__11.hot.runHooks('afterContextMenuHide', $__11); + return $__11.onMenuAfterClose(); })); $__11.menu.addLocalHook('executeCommand', (function() { for (var params = [], @@ -12107,13 +12378,6 @@ var $ContextMenu = ContextMenu; params[$__13] = arguments[$__13]; this.commandExecutor.execute.apply(this.commandExecutor, params); }, - destroy: function() { - this.close(); - if (this.menu) { - this.menu.destroy(); - } - $traceurRuntime.superGet(this, $ContextMenu.prototype, "destroy").call(this); - }, onContextMenu: function(event) { var settings = this.hot.getSettings(); var showRowHeaders = settings.rowHeaders; @@ -12136,6 +12400,20 @@ var $ContextMenu = ContextMenu; } } this.open(event); + }, + onMenuAfterOpen: function() { + this.hot.runHooks('afterContextMenuShow', this); + }, + onMenuAfterClose: function() { + this.hot.listen(); + this.hot.runHooks('afterContextMenuHide', this); + }, + destroy: function() { + this.close(); + if (this.menu) { + this.menu.destroy(); + } + $traceurRuntime.superGet(this, $ContextMenu.prototype, "destroy").call(this); } }, {get DEFAULT_ITEMS() { return [ROW_ABOVE, ROW_BELOW, SEPARATOR, COLUMN_LEFT, COLUMN_RIGHT, SEPARATOR, REMOVE_ROW, REMOVE_COLUMN, SEPARATOR, UNDO, REDO, SEPARATOR, READ_ONLY, SEPARATOR, ALIGNMENT]; @@ -12149,7 +12427,7 @@ Handsontable.hooks.register('afterContextMenuExecute'); registerPlugin('contextMenu', ContextMenu); //# -},{"_base":56,"commandExecutor":63,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"itemsFactory":66,"menu":67,"plugins":55,"predefinedItems":68}],65:[function(require,module,exports){ +},{"_base":58,"commandExecutor":65,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"itemsFactory":68,"menu":69,"plugins":57,"predefinedItems":70}],67:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Cursor: {get: function() { @@ -12229,7 +12507,7 @@ Handsontable.plugins.utils = Handsontable.plugins.utils || {}; Handsontable.plugins.utils.Cursor = Cursor; //# -},{"helpers/dom/element":44,"helpers/dom/event":45}],66:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/dom/event":46}],68:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ItemsFactory: {get: function() { @@ -12348,7 +12626,7 @@ function getItems() { ; //# -},{"helpers/array":41,"helpers/object":49,"predefinedItems":68}],67:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50,"predefinedItems":70}],69:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Menu: {get: function() { @@ -12363,7 +12641,7 @@ var $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_helpers_47_object__, $__utils__, $___46__46__47__46__46__47_helpers_47_unicode__, - $___46__46__47__46__46__47_pluginHooks__, + $___46__46__47__46__46__47_mixins_47_localHooks__, $__predefinedItems__, $___46__46__47__46__46__47_helpers_47_dom_47_event__; var $__0 = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("helpers/dom/element"), $___46__46__47__46__46__47_helpers_47_dom_47_element__ && $___46__46__47__46__46__47_helpers_47_dom_47_element__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_element__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_element__}), @@ -12392,7 +12670,7 @@ var $__5 = ($__utils__ = require("utils"), $__utils__ && $__utils__.__esModule & hasSubMenu = $__5.hasSubMenu, normalizeSelection = $__5.normalizeSelection; var KEY_CODES = ($___46__46__47__46__46__47_helpers_47_unicode__ = require("helpers/unicode"), $___46__46__47__46__46__47_helpers_47_unicode__ && $___46__46__47__46__46__47_helpers_47_unicode__.__esModule && $___46__46__47__46__46__47_helpers_47_unicode__ || {default: $___46__46__47__46__46__47_helpers_47_unicode__}).KEY_CODES; -var localHooks = ($___46__46__47__46__46__47_pluginHooks__ = require("pluginHooks"), $___46__46__47__46__46__47_pluginHooks__ && $___46__46__47__46__46__47_pluginHooks__.__esModule && $___46__46__47__46__46__47_pluginHooks__ || {default: $___46__46__47__46__46__47_pluginHooks__}).localHooks; +var localHooks = ($___46__46__47__46__46__47_mixins_47_localHooks__ = require("mixins/localHooks"), $___46__46__47__46__46__47_mixins_47_localHooks__ && $___46__46__47__46__46__47_mixins_47_localHooks__.__esModule && $___46__46__47__46__46__47_mixins_47_localHooks__ || {default: $___46__46__47__46__46__47_mixins_47_localHooks__}).localHooks; var $__8 = ($__predefinedItems__ = require("predefinedItems"), $__predefinedItems__ && $__predefinedItems__.__esModule && $__predefinedItems__ || {default: $__predefinedItems__}), SEPARATOR = $__8.SEPARATOR, predefinedItems = $__8.predefinedItems; @@ -12452,6 +12730,7 @@ var $Menu = Menu; }) }], renderAllRows: true, + fragmentSelection: 'cell', beforeKeyDown: (function(event) { return $__10.onBeforeKeyDown(event); }), @@ -12484,7 +12763,6 @@ var $Menu = Menu; this.hotMenu.destroy(); this.hotMenu = null; this.hot.getSettings().outsideClickDeselects = this.origOutsideClickDeselects; - this.hot.listen(); this.runLocalHooks('afterClose'); } }, @@ -12494,7 +12772,7 @@ var $Menu = Menu; if (!cell || !hasSubMenu(cell)) { return false; } - var dataItem = this.hotMenu.getData()[row]; + var dataItem = this.hotMenu.getSourceDataAtRow(row); var subMenu = new $Menu(this.hot, { parent: this, name: dataItem.name, @@ -12507,7 +12785,7 @@ var $Menu = Menu; return subMenu; }, closeSubMenu: function(row) { - var dataItem = this.hotMenu.getData()[row]; + var dataItem = this.hotMenu.getSourceDataAtRow(row); var menus = this.hotSubMenus[dataItem.key]; if (menus) { menus.destroy(); @@ -12532,12 +12810,11 @@ var $Menu = Menu; isOpened: function() { return this.hotMenu !== null; }, - executeCommand: function() { - var event = arguments[0]; + executeCommand: function(event) { if (!this.isOpened() || !this.hotMenu.getSelected()) { return; } - var selectedItem = this.hotMenu.getData()[this.hotMenu.getSelected()[0]]; + var selectedItem = this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelected()[0]); this.runLocalHooks('select', selectedItem, event); if (selectedItem.isCommand === false) { return; @@ -12639,7 +12916,7 @@ var $Menu = Menu; }, menuItemRenderer: function(hot, TD, row, col, prop, value) { var $__10 = this; - var item = hot.getData()[row]; + var item = hot.getSourceDataAtRow(row); var wrapper = document.createElement('div'); var isSubMenu = (function(item) { return item.hasOwnProperty('submenu'); @@ -12650,9 +12927,13 @@ var $Menu = Menu; var itemIsDisabled = (function(item) { return item.disabled === true || (typeof item.disabled == 'function' && item.disabled.call($__10.hot) === true); }); + var itemIsHidden = (function(item) { + return typeof item.hidden == 'function' && item.hidden.call($__10.hot) === true; + }); var itemIsSelectionDisabled = (function(item) { return item.disableSelection; }); + var isHidden = itemIsHidden(item); if (typeof value === 'function') { value = value.call(this.hot); } @@ -12661,13 +12942,17 @@ var $Menu = Menu; TD.appendChild(wrapper); if (itemIsSeparator(item)) { addClass(TD, 'htSeparator'); - } else if (typeof item.renderer === 'function') { + } else if (!isHidden && typeof item.renderer === 'function') { addClass(TD, 'htCustomMenuRenderer'); TD.appendChild(item.renderer(hot, wrapper, row, col, prop, value)); } else { fastInnerHTML(wrapper, value); } - if (itemIsDisabled(item)) { + if (isHidden) { + if (TD.parentNode) { + addClass(TD.parentNode, 'htHidden'); + } + } else if (itemIsDisabled(item)) { addClass(TD, 'htDisabled'); this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { return hot.deselectCell(); @@ -12685,7 +12970,7 @@ var $Menu = Menu; })); } else { this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { - return hot.selectCell(row, col); + return hot.selectCell(row, col, void 0, void 0, void 0, false); })); } } else { @@ -12697,7 +12982,7 @@ var $Menu = Menu; })); } else { this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { - return hot.selectCell(row, col); + return hot.selectCell(row, col, void 0, void 0, void 0, false); })); } } @@ -12746,7 +13031,7 @@ var $Menu = Menu; break; case KEY_CODES.ENTER: if (selection) { - if (this.hotMenu.getData()[selection[0]].submenu) { + if (this.hotMenu.getSourceDataAtRow(selection[0]).submenu) { stopEvent = true; } else { this.executeCommand(event); @@ -12822,7 +13107,7 @@ mixin(Menu, localHooks); ; //# -},{"cursor":65,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"pluginHooks":54,"predefinedItems":68,"utils":69}],68:[function(require,module,exports){ +},{"cursor":67,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"mixins/localHooks":54,"predefinedItems":70,"utils":71}],70:[function(require,module,exports){ "use strict"; var $__4; Object.defineProperties(exports, { @@ -13020,7 +13305,9 @@ var _predefinedItems = ($__4 = {}, Object.defineProperty($__4, SEPARATOR, { name: 'Clear column', callback: function(key, selection) { var column = selection.start.col; - this.populateFromArray(0, column, [[null]], Math.max(selection.start.row, selection.end.row), column); + if (this.countRows()) { + this.populateFromArray(0, column, [[null]], Math.max(selection.start.row, selection.end.row), column); + } }, disabled: function() { var selected = getValidSelection(this); @@ -13377,7 +13664,7 @@ var _predefinedItems = ($__4 = {}, Object.defineProperty($__4, SEPARATOR, { }), $__4); //# -},{"helpers/number":48,"helpers/object":49,"utils":69}],69:[function(require,module,exports){ +},{"helpers/number":49,"helpers/object":50,"utils":71}],71:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { normalizeSelection: {get: function() { @@ -13519,7 +13806,7 @@ function markLabelAsSelected(label) { } //# -},{"helpers/dom/element":44}],70:[function(require,module,exports){ +},{"helpers/dom/element":45}],72:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ContextMenuCopyPaste: {get: function() { @@ -13611,7 +13898,7 @@ var $ContextMenuCopyPaste = ContextMenuCopyPaste; onAfterContextMenuShow: function() { var $__6 = this; var contextMenu = this.hot.getPlugin('contextMenu'); - var data = contextMenu.menu.hotMenu.getData(); + var data = contextMenu.menu.hotMenu.getSourceData(); arrayEach(data, (function(item, index) { if (item.key === 'copy') { var zeroClipboardInstance = new ZeroClipboard(contextMenu.menu.hotMenu.getCell(index, 0)); @@ -13651,7 +13938,7 @@ var $ContextMenuCopyPaste = ContextMenuCopyPaste; registerPlugin('contextMenuCopyPaste', ContextMenuCopyPaste); //# -},{"_base":56,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"plugins":55,"zeroclipboard":"zeroclipboard"}],71:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"plugins":57,"zeroclipboard":"zeroclipboard"}],73:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CopyPastePlugin: {get: function() { @@ -13665,6 +13952,7 @@ var $__copyPaste__, $___46__46__47__46__46__47_helpers_47_array__, $___46__46__47__46__46__47_helpers_47_number__, $___46__46__47__46__46__47_helpers_47_dom_47_event__, + $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_helpers_47_function__, $___46__46__47__46__46__47_plugins__, $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__, @@ -13676,7 +13964,10 @@ var $__2 = ($___46__46__47__46__46__47_helpers_47_unicode__ = require("helpers/u isCtrlKey = $__2.isCtrlKey; var arrayEach = ($___46__46__47__46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47__46__46__47_helpers_47_array__ && $___46__46__47__46__46__47_helpers_47_array__.__esModule && $___46__46__47__46__46__47_helpers_47_array__ || {default: $___46__46__47__46__46__47_helpers_47_array__}).arrayEach; var rangeEach = ($___46__46__47__46__46__47_helpers_47_number__ = require("helpers/number"), $___46__46__47__46__46__47_helpers_47_number__ && $___46__46__47__46__46__47_helpers_47_number__.__esModule && $___46__46__47__46__46__47_helpers_47_number__ || {default: $___46__46__47__46__46__47_helpers_47_number__}).rangeEach; -var stopImmediatePropagation = ($___46__46__47__46__46__47_helpers_47_dom_47_event__ = require("helpers/dom/event"), $___46__46__47__46__46__47_helpers_47_dom_47_event__ && $___46__46__47__46__46__47_helpers_47_dom_47_event__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_event__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_event__}).stopImmediatePropagation; +var $__5 = ($___46__46__47__46__46__47_helpers_47_dom_47_event__ = require("helpers/dom/event"), $___46__46__47__46__46__47_helpers_47_dom_47_event__ && $___46__46__47__46__46__47_helpers_47_dom_47_event__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_event__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_event__}), + stopImmediatePropagation = $__5.stopImmediatePropagation, + isImmediatePropagationStopped = $__5.isImmediatePropagationStopped; +var getSelectionText = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("helpers/dom/element"), $___46__46__47__46__46__47_helpers_47_dom_47_element__ && $___46__46__47__46__46__47_helpers_47_dom_47_element__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_element__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_element__}).getSelectionText; var proxy = ($___46__46__47__46__46__47_helpers_47_function__ = require("helpers/function"), $___46__46__47__46__46__47_helpers_47_function__ && $___46__46__47__46__46__47_helpers_47_function__.__esModule && $___46__46__47__46__46__47_helpers_47_function__ || {default: $___46__46__47__46__46__47_helpers_47_function__}).proxy; var registerPlugin = ($___46__46__47__46__46__47_plugins__ = require("plugins"), $___46__46__47__46__46__47_plugins__ && $___46__46__47__46__46__47_plugins__.__esModule && $___46__46__47__46__46__47_plugins__ || {default: $___46__46__47__46__46__47_plugins__}).registerPlugin; var WalkontableCellCoords = ($___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ = require("3rdparty/walkontable/src/cell/coords"), $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ && $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__.__esModule && $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ || {default: $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__}).WalkontableCellCoords; @@ -13752,7 +14043,13 @@ function CopyPastePlugin(instance) { if (instance.getActiveEditor() && instance.getActiveEditor().isOpened()) { return; } + if (isImmediatePropagationStopped(event)) { + return; + } if (isCtrlKey(event.keyCode)) { + if (instance.getSettings().fragmentSelection && getSelectionText()) { + return; + } _this.setCopyableText(); stopImmediatePropagation(event); return; @@ -13844,7 +14141,7 @@ Handsontable.hooks.register('modifyCopyableRange'); ; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"SheetClip":"SheetClip","copyPaste":"copyPaste","helpers/array":41,"helpers/dom/event":45,"helpers/function":46,"helpers/number":48,"helpers/unicode":52,"plugins":55}],72:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"SheetClip":"SheetClip","copyPaste":"copyPaste","helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/number":49,"helpers/unicode":53,"plugins":57}],74:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_plugins__, $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_range__, @@ -14181,7 +14478,7 @@ Handsontable.hooks.add('afterInit', function() { Handsontable.CustomBorders = CustomBorders; //# -},{"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"plugins":55}],73:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"plugins":57}],75:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DragToScroll: {get: function() { @@ -14269,7 +14566,7 @@ Handsontable.hooks.add('afterOnCellCornerMouseDown', function() { Handsontable.plugins.DragToScroll = DragToScroll; //# -},{"eventManager":40,"plugins":55}],74:[function(require,module,exports){ +},{"eventManager":41,"plugins":57}],76:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnFreeze: {get: function() { @@ -14426,7 +14723,7 @@ var $ManualColumnFreeze = ManualColumnFreeze; registerPlugin('manualColumnFreeze', ManualColumnFreeze); //# -},{"_base":56,"plugins":55}],75:[function(require,module,exports){ +},{"_base":58,"plugins":57}],77:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnMove: {get: function() { @@ -14694,7 +14991,7 @@ Handsontable.hooks.register('beforeColumnMove'); Handsontable.hooks.register('afterColumnMove'); //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],76:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],78:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnResize: {get: function() { @@ -14938,7 +15235,7 @@ var $ManualColumnResize = ManualColumnResize; registerPlugin('manualColumnResize', ManualColumnResize); //# -},{"_base.js":56,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],77:[function(require,module,exports){ +},{"_base.js":58,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],79:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualRowMove: {get: function() { @@ -15160,7 +15457,7 @@ Handsontable.hooks.register('beforeRowMove'); Handsontable.hooks.register('afterRowMove'); //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],78:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],80:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualRowResize: {get: function() { @@ -15402,7 +15699,7 @@ var $ManualRowResize = ManualRowResize; registerPlugin('manualRowResize', ManualRowResize); //# -},{"_base.js":56,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],79:[function(require,module,exports){ +},{"_base.js":58,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],81:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MergeCells: {get: function() { @@ -15940,7 +16237,7 @@ Handsontable.hooks.add('afterRemoveRow', onAfterRemoveRow); Handsontable.MergeCells = MergeCells; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":45,"plugins":55}],80:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":46,"plugins":57}],82:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MultipleSelectionHandles: {get: function() { @@ -16227,7 +16524,7 @@ var $MultipleSelectionHandles = MultipleSelectionHandles; registerPlugin('multipleSelectionHandles', MultipleSelectionHandles); //# -},{"_base":56,"eventManager":40,"helpers/dom/element":44,"plugins":55}],81:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/dom/element":45,"plugins":57}],83:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ObserveChanges: {get: function() { @@ -16266,7 +16563,7 @@ function createObserver() { instance.resumeObservingChanges = function() { instance.observeChangesActive = true; }; - instance.observedData = instance.getData(); + instance.observedData = instance.getSourceData(); instance.observer = jsonpatch.observe(instance.observedData, function(patches) { if (instance.observeChangesActive) { runHookForOperation.call(instance, patches); @@ -16381,7 +16678,7 @@ function afterTableAlter() { } //# -},{"jsonpatch":"jsonpatch","plugins":55}],82:[function(require,module,exports){ +},{"jsonpatch":"jsonpatch","plugins":57}],84:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { HandsontablePersistentState: {get: function() { @@ -16493,7 +16790,7 @@ Handsontable.hooks.add('beforeInit', htPersistentState.init); Handsontable.hooks.add('afterUpdateSettings', htPersistentState.init); //# -},{"plugins":55}],83:[function(require,module,exports){ +},{"plugins":57}],85:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_renderers__; @@ -16601,7 +16898,7 @@ Handsontable.hooks.add('afterInit', init); Handsontable.hooks.add('afterUpdateSettings', init); //# -},{"helpers/dom/element":44,"renderers":86}],84:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],86:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TouchScroll: {get: function() { @@ -16714,7 +17011,7 @@ var $TouchScroll = TouchScroll; registerPlugin('touchScroll', TouchScroll); //# -},{"_base":56,"helpers/dom/element":44,"plugins":55}],85:[function(require,module,exports){ +},{"_base":58,"helpers/dom/element":45,"plugins":57}],87:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_helpers_47_object__, $___46__46__47__46__46__47_helpers_47_dom_47_event__; @@ -16742,7 +17039,7 @@ Handsontable.UndoRedo = function(instance) { plugin.done(action); }); instance.addHook('beforeRemoveRow', function(index, amount) { - var originalData = plugin.instance.getData(); + var originalData = plugin.instance.getSourceData(); index = (originalData.length + index) % originalData.length; var removedData = originalData.slice(index, index + amount); var action = new Handsontable.UndoRedo.RemoveRowAction(index, removedData); @@ -16756,7 +17053,7 @@ Handsontable.UndoRedo = function(instance) { plugin.done(action); }); instance.addHook('beforeRemoveCol', function(index, amount) { - var originalData = plugin.instance.getData(); + var originalData = plugin.instance.getSourceData(); index = (plugin.instance.countCols() + index) % plugin.instance.countCols(); var removedData = []; for (var i = 0, @@ -16877,7 +17174,7 @@ inherit(Handsontable.UndoRedo.RemoveRowAction, Handsontable.UndoRedo.Action); Handsontable.UndoRedo.RemoveRowAction.prototype.undo = function(instance, undoneCallback) { var spliceArgs = [this.index, 0]; Array.prototype.push.apply(spliceArgs, this.data); - Array.prototype.splice.apply(instance.getData(), spliceArgs); + Array.prototype.splice.apply(instance.getSourceData(), spliceArgs); instance.addHookOnce('afterRender', undoneCallback); instance.render(); }; @@ -16936,7 +17233,7 @@ Handsontable.UndoRedo.RemoveColumnAction.prototype.undo = function(instance, und var row, spliceArgs; for (var i = 0, - len = instance.getData().length; i < len; i++) { + len = instance.getSourceData().length; i < len; i++) { row = instance.getSourceDataAtRow(i); spliceArgs = [this.index, 0]; Array.prototype.push.apply(spliceArgs, this.data[i]); @@ -17020,7 +17317,7 @@ Handsontable.hooks.add('afterInit', init); Handsontable.hooks.add('afterUpdateSettings', init); //# -},{"helpers/dom/event":45,"helpers/object":49}],86:[function(require,module,exports){ +},{"helpers/dom/event":46,"helpers/object":50}],88:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerRenderer: {get: function() { @@ -17065,7 +17362,7 @@ function hasRenderer(rendererName) { ; //# -},{"helpers/string":51}],87:[function(require,module,exports){ +},{"helpers/string":52}],89:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { cellDecorator: {get: function() { @@ -17107,7 +17404,7 @@ function cellDecorator(instance, TD, row, col, prop, value, cellProperties) { } //# -},{"helpers/dom/element":44,"renderers":86}],88:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],90:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { autocompleteRenderer: {get: function() { @@ -17164,7 +17461,7 @@ function autocompleteRenderer(instance, TD, row, col, prop, value, cellPropertie registerRenderer('autocomplete', autocompleteRenderer); //# -},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":40,"helpers/dom/element":44,"renderers":86}],89:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":41,"helpers/dom/element":45,"renderers":88}],91:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { checkboxRenderer: {get: function() { @@ -17321,7 +17618,7 @@ function preventDefault(event) { } //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/string":51,"helpers/unicode":52,"renderers":86}],90:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/string":52,"helpers/unicode":53,"renderers":88}],92:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { htmlRenderer: {get: function() { @@ -17343,7 +17640,7 @@ function htmlRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('html', htmlRenderer); //# -},{"helpers/dom/element":44,"renderers":86}],91:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],93:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { numericRenderer: {get: function() { @@ -17375,7 +17672,7 @@ function numericRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('numeric', numericRenderer); //# -},{"helpers/dom/element":44,"helpers/number":48,"numeral":"numeral","renderers":86}],92:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/number":49,"numeral":"numeral","renderers":88}],94:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { passwordRenderer: {get: function() { @@ -17402,7 +17699,7 @@ function passwordRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('password', passwordRenderer); //# -},{"helpers/dom/element":44,"renderers":86}],93:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],95:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { textRenderer: {get: function() { @@ -17445,7 +17742,7 @@ function textRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('text', textRenderer); //# -},{"helpers/dom/element":44,"helpers/mixed":47,"renderers":86}],94:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/mixed":48,"renderers":88}],96:[function(require,module,exports){ "use strict"; (function(global) { 'use strict'; @@ -17828,7 +18125,7 @@ registerRenderer('text', textRenderer); })(); //# -},{}],95:[function(require,module,exports){ +},{}],97:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TableView: {get: function() { @@ -17865,6 +18162,7 @@ function TableView(instance) { this.eventManager = eventManagerObject(instance); this.instance = instance; this.settings = instance.getSettings(); + this.selectionMouseDown = false; var originalStyle = instance.rootElement.getAttribute('style'); if (originalStyle) { instance.rootElement.setAttribute('data-originalstyle', originalStyle); @@ -17882,12 +18180,22 @@ function TableView(instance) { instance.table = table; instance.container.insertBefore(table, instance.container.firstChild); this.eventManager.addEventListener(instance.rootElement, 'mousedown', function(event) { + this.selectionMouseDown = true; if (!that.isTextSelectionAllowed(event.target)) { clearTextSelection(); event.preventDefault(); window.focus(); } }); + this.eventManager.addEventListener(instance.rootElement, 'mouseup', function(event) { + this.selectionMouseDown = false; + }); + this.eventManager.addEventListener(instance.rootElement, 'mousemove', function(event) { + if (this.selectionMouseDown && !that.isTextSelectionAllowed(event.target)) { + clearTextSelection(); + event.preventDefault(); + } + }); this.eventManager.addEventListener(document.documentElement, 'keyup', function(event) { if (instance.selection.isInProgress() && !event.shiftKey) { instance.selection.finish(); @@ -17939,7 +18247,7 @@ function TableView(instance) { } }); this.eventManager.addEventListener(table, 'selectstart', function(event) { - if (that.settings.fragmentSelection) { + if (that.settings.fragmentSelection || isInput(event.target)) { return; } event.preventDefault(); @@ -18002,8 +18310,12 @@ function TableView(instance) { table: table, stretchH: this.settings.stretchH, data: instance.getDataAtCell, - totalRows: instance.countRows, - totalColumns: instance.countCols, + totalRows: (function() { + return instance.countRows(); + }), + totalColumns: (function() { + return instance.countCols(); + }), fixedColumnsLeft: function() { return that.settings.fixedColumnsLeft; }, @@ -18018,24 +18330,24 @@ function TableView(instance) { }, renderAllRows: that.settings.renderAllRows, rowHeaders: function() { - var arr = []; + var headerRenderers = []; if (instance.hasRowHeaders()) { - arr.push(function(index, TH) { - that.appendRowHeader(index, TH); + headerRenderers.push(function(row, TH) { + that.appendRowHeader(row, TH); }); } - Handsontable.hooks.run(instance, 'afterGetRowHeaderRenderers', arr); - return arr; + Handsontable.hooks.run(instance, 'afterGetRowHeaderRenderers', headerRenderers); + return headerRenderers; }, columnHeaders: function() { - var arr = []; + var headerRenderers = []; if (instance.hasColHeaders()) { - arr.push(function(index, TH) { - that.appendColHeader(index, TH); + headerRenderers.push(function(column, TH) { + that.appendColHeader(column, TH); }); } - Handsontable.hooks.run(instance, 'afterGetColumnHeaderRenderers', arr); - return arr; + Handsontable.hooks.run(instance, 'afterGetColumnHeaderRenderers', headerRenderers); + return headerRenderers; }, columnWidth: instance.getColWidth, rowHeight: instance.getRowHeight, @@ -18208,11 +18520,23 @@ TableView.prototype.isTextSelectionAllowed = function(el) { if (isInput(el)) { return true; } - if (this.settings.fragmentSelection && isChildOf(el, this.TBODY)) { + var isChildOfTableBody = isChildOf(el, this.instance.view.wt.wtTable.spreader); + if (this.settings.fragmentSelection === true && isChildOfTableBody) { + return true; + } + if (this.settings.fragmentSelection === 'cell' && this.isSelectedOnlyCell() && isChildOfTableBody) { return true; } return false; }; +TableView.prototype.isSelectedOnlyCell = function() { + var $__6 = this.instance.getSelected() || [], + row = $__6[0], + col = $__6[1], + rowEnd = $__6[2], + colEnd = $__6[3]; + return row !== void 0 && row === rowEnd && col === colEnd; +}; TableView.prototype.isCellEdited = function() { var activeEditor = this.instance.getActiveEditor(); return activeEditor && activeEditor.isOpened(); @@ -18266,12 +18590,12 @@ TableView.prototype.appendRowHeader = function(row, TH) { TableView.prototype.appendColHeader = function(col, TH) { if (TH.firstChild) { var container = TH.firstChild; - if (!hasClass(container, 'relative')) { + if (hasClass(container, 'relative')) { + this.updateCellHeader(container.querySelector('.colHeader'), col, this.instance.getColHeader); + } else { empty(TH); - this.appendRowHeader(col, TH); - return; + this.appendColHeader(col, TH); } - this.updateCellHeader(container.querySelector('.colHeader'), col, this.instance.getColHeader); } else { var div = document.createElement('div'); var span = document.createElement('span'); @@ -18311,7 +18635,7 @@ TableView.prototype.destroy = function() { ; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45}],96:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46}],98:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { GhostTable: {get: function() { @@ -18536,7 +18860,7 @@ Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.GhostTable = GhostTable; //# -},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],97:[function(require,module,exports){ +},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],99:[function(require,module,exports){ "use strict"; var $__7; Object.defineProperties(exports, { @@ -18650,7 +18974,7 @@ Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.SamplesGenerator = SamplesGenerator; //# -},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],98:[function(require,module,exports){ +},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],100:[function(require,module,exports){ "use strict"; var $___46__46__47_helpers_47_mixed__; var stringify = ($___46__46__47_helpers_47_mixed__ = require("helpers/mixed"), $___46__46__47_helpers_47_mixed__ && $___46__46__47_helpers_47_mixed__.__esModule && $___46__46__47_helpers_47_mixed__ || {default: $___46__46__47_helpers_47_mixed__}).stringify; @@ -18685,7 +19009,7 @@ function process(value, callback) { } //# -},{"helpers/mixed":47}],99:[function(require,module,exports){ +},{"helpers/mixed":48}],101:[function(require,module,exports){ "use strict"; var $__moment__, $___46__46__47_editors__; @@ -18731,7 +19055,7 @@ var correctFormat = function correctFormat(value, dateFormat) { }; //# -},{"editors":28,"moment":"moment"}],100:[function(require,module,exports){ +},{"editors":29,"moment":"moment"}],102:[function(require,module,exports){ "use strict"; Handsontable.NumericValidator = function(value, callback) { if (value === null) { @@ -27192,5 +27516,5 @@ if (typeof exports !== "undefined") { })(function() { return this || window; }()); -},{}]},{},[23,57,59,58,60,81,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,82,83,84,85,98,99,100,88,89,90,91,92,93,30,34,31,32,39,33,35,36,37,38])("zeroclipboard") +},{}]},{},[23,59,61,60,62,83,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,84,85,86,87,100,101,102,90,91,92,93,94,95,31,35,32,33,40,34,36,37,38,39])("zeroclipboard") }); \ No newline at end of file diff --git a/dist/handsontable.full.min.css b/dist/handsontable.full.min.css index 675798f3ed0..059da552967 100644 --- a/dist/handsontable.full.min.css +++ b/dist/handsontable.full.min.css @@ -1,15 +1,15 @@ @charset "UTF-8";/*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright 2015 Handsoncode sp. z o.o. * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable .wtHider{width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;max-width:none;max-height:none}.handsontable col{width:50px}.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-right:1px solid #CCC;border-bottom:1px solid #CCC;height:22px;empty-cells:show;line-height:21px;padding:0 4px 0 4px;background-color:#FFF;vertical-align:top;overflow:hidden;outline-width:0;white-space:pre-line}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable th:last-child{border-right:1px solid #CCC;border-bottom:1px solid #CCC}.handsontable tr:first-child th.htNoFrame,.handsontable th:first-child.htNoFrame,.handsontable th.htNoFrame{border-left-width:0;background-color:white;border-color:#FFF}.handsontable th:first-child,.handsontable td:first-of-type,.handsontable .htNoFrame+th,.handsontable .htNoFrame+td{border-left:1px solid #CCC}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #CCC}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #CCC}.ht_master:not(.innerBorderLeft) ~ .handsontable tbody tr th,.ht_master:not(.innerBorderLeft) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child{border-right-width:0}.ht_master:not(.innerBorderTop) thead tr:last-child th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop) thead tr.lastChild th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#EEE;color:#222;text-align:center;font-weight:normal;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#CCC}.handsontable thead th .relative{padding:2px 4px}.handsontable .manualColumnMover{position:fixed;left:0;top:0;background-color:transparent;width:5px;height:25px;z-index:999;cursor:move}.handsontable .manualRowMover{position:fixed;left:-4px;top:0;background-color:transparent;height:5px;width:50px;z-index:999;cursor:move}.handsontable .manualColumnMoverGuide,.handsontable .manualRowMoverGuide{position:fixed;left:0;top:0;background-color:#CCC;width:25px;height:25px;opacity:.7;display:none}.handsontable .manualColumnMoverGuide.active,.handsontable .manualRowMoverGuide.active{display:block}.handsontable .manualColumnMover:hover,.handsontable .manualColumnMover.active,.handsontable .manualRowMover:hover,.handsontable .manualRowMover.active{background-color:#88F}.handsontable .manualColumnResizer{position:fixed;top:0;cursor:col-resize;z-index:110;width:5px;height:25px}.handsontable .manualRowResizer{position:fixed;left:0;cursor:row-resize;z-index:110;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#AAB}.handsontable .manualColumnResizerGuide{position:fixed;right:0;top:0;background-color:#AAB;display:none;width:0;border-right:1px dashed #777;margin-left:5px}.handsontable .manualRowResizerGuide{position:fixed;left:0;bottom:0;background-color:#AAB;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block}.handsontable .columnSorting{position:relative}.handsontable .columnSorting:hover{text-decoration:underline;cursor:pointer}.handsontable .columnSorting.ascending::after{content:'\25B2';color:#5f5f5f;position:absolute;right:-15px}.handsontable .columnSorting.descending::after{content:'\25BC';color:#5f5f5f;position:absolute;right:-15px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn::after,.handsontable th.afterHiddenColumn::before{content:'\25C0';color:#bbb;position:absolute;right:1px;top:2px;font-size:5pt}.handsontable th.afterHiddenColumn{position:relative}.handsontable th.afterHiddenColumn::before{left:1px;top:2px;right:auto;content:'\25B6'}.handsontable td.afterHiddenColumn.firstVisible{border-left:1px solid #CCC}.handsontable thead th.hiddenHeader{display:none}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable td.area{background:-moz-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(181,209,255,0.34)),color-stop(100%,rgba(181,209,255,0.34)));background:-webkit-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-o-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-ms-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:linear-gradient(to bottom,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#57b5d1ff',endColorstr='#57b5d1ff',GradientType=0);background-color:#fff}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.handsontable .htBorder.htFillBorder{background:red;width:1px;height:1px}.handsontableInput{border:0;outline-width:0;margin:0;padding:1px 5px 0 5px;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:inline-block;color:#000;border-radius:0;background-color:#FFF}.handsontableInputHolder{position:absolute;top:0;left:0;z-index:100}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:'▶';color:#777;position:absolute;right:5px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#EEE;cursor:default;width:16px;text-align:center}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;width:100%}.handsontable .htNumeric{text-align:right}.htCommentCell{position:relative}.htCommentCell:after{content:'';position:absolute;top:0;right:0;border-left:6px solid transparent;border-top:6px solid red}@-webkit-keyframes opacity-hide{from{opacity:1}to{opacity:0}}@keyframes opacity-hide{from{opacity:1}to{opacity:0}}@-webkit-keyframes opacity-show{from{opacity:0}to{opacity:1}}@keyframes opacity-show{from{opacity:0}to{opacity:1}}.handsontable .handsontable.ht_clone_top .wtHider{padding:0 0 5px 0}.handsontable .autocompleteEditor.handsontable{padding-right:17px}.handsontable .autocompleteEditor.handsontable.htMacScroll{padding-right:15px}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{border:1px solid #ccc;border-collapse:separate;background:white}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_clone_top{z-index:101}.ht_clone_left{z-index:102}.ht_clone_top_left_corner,.ht_clone_bottom_left_corner{z-index:103}.ht_clone_debug{z-index:103}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.htBordered{border-width:1px}.htBordered.htTopBorderSolid{border-top-style:solid;border-top-color:#000}.htBordered.htRightBorderSolid{border-right-style:solid;border-right-color:#000}.htBordered.htBottomBorderSolid{border-bottom-style:solid;border-bottom-color:#000}.htBordered.htLeftBorderSolid{border-left-style:solid;border-left-color:#000}.htCommentTextArea{-moz-box-shadow:1px 1px 2px #bbb;-webkit-box-shadow:1px 1px 2px #bbb;background-color:#fffacd;border:1px solid #999;box-shadow:1px 1px 2px #bbb;font-family:'Arial'}.handsontable tbody tr th:nth-last-child(2){border-right:1px solid #CCC}.handsontable thead tr:nth-last-child(2) th.htGroupIndicatorContainer{border-bottom:1px solid #CCC;padding-bottom:5px}.ht_clone_top_left_corner thead tr th:nth-last-child(2){border-right:1px solid #CCC}.htCollapseButton{width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;margin-bottom:3px;position:relative}.htCollapseButton:after{content:"";height:300%;width:1px;display:block;background:#ccc;margin-left:4px;position:absolute;bottom:10px}thead .htCollapseButton{right:5px;position:absolute;top:5px;background:#fff}thead .htCollapseButton:after{height:1px;width:700%;right:10px;top:4px}.handsontable tr th .htExpandButton{position:absolute;width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;top:0;display:none}.handsontable thead tr th .htExpandButton{top:5px}.handsontable tr th .htExpandButton.clickable{display:block}.collapsibleIndicator{position:absolute;top:50%;transform:translate(0%,-50%);right:5px;border:1px solid #a6a6a6;line-height:10px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgba(238,238,238,1);-moz-box-shadow:0 0 0 6px rgba(238,238,238,1);box-shadow:0 0 0 6px rgba(238,238,238,1);background:#eee}.handsontable col.hidden{width:0!important}.handsontable table tr th.lightRightBorder{border-right:1px solid #e6e6e6}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_left,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.ht_clone_left .wtHolder{overflow-x:hidden;overflow-y:auto}.ht_clone_top .wtHolder,.ht_clone_bottom .wtHolder{overflow-x:auto;overflow-y:hidden}.wtDebugHidden{display:none}.wtDebugVisible{display:block;-webkit-animation-duration:.5s;-webkit-animation-name:wtFadeInFromNone;animation-duration:.5s;animation-name:wtFadeInFromNone}@keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}@-webkit-keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.htMobileEditorContainer{display:none;position:absolute;top:0;width:70%;height:54pt;background:#f8f8f8;border-radius:20px;border:1px solid #ebebeb;z-index:999;box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-text-size-adjust:none}.topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),.topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea){z-index:9999}.topLeftSelectionHandle,.topLeftSelectionHandle-HitArea,.bottomRightSelectionHandle,.bottomRightSelectionHandle-HitArea{left:-10000px;top:-10000px}.htMobileEditorContainer.active{display:block}.htMobileEditorContainer .inputs{position:absolute;right:210pt;bottom:10pt;top:10pt;left:14px;height:34pt}.htMobileEditorContainer .inputs textarea{font-size:13pt;border:1px solid #a1a1a1;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;position:absolute;left:14px;right:14px;top:0;bottom:0;padding:7pt}.htMobileEditorContainer .cellPointer{position:absolute;top:-13pt;height:0;width:0;left:30px;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #ebebeb}.htMobileEditorContainer .cellPointer.hidden{display:none}.htMobileEditorContainer .cellPointer:before{content:'';display:block;position:absolute;top:2px;height:0;width:0;left:-13pt;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #f8f8f8}.htMobileEditorContainer .moveHandle{position:absolute;top:10pt;left:5px;width:30px;bottom:0;cursor:move;z-index:9999}.htMobileEditorContainer .moveHandle:after{content:"..\a..\a..\a..";white-space:pre;line-height:10px;font-size:20pt;display:inline-block;margin-top:-8px;color:#ebebeb}.htMobileEditorContainer .positionControls{width:205pt;position:absolute;right:5pt;top:0;bottom:0}.htMobileEditorContainer .positionControls>div{width:50pt;height:100%;float:left}.htMobileEditorContainer .positionControls>div:after{content:" ";display:block;width:15pt;height:15pt;text-align:center;line-height:50pt}.htMobileEditorContainer .leftButton:after,.htMobileEditorContainer .rightButton:after,.htMobileEditorContainer .upButton:after,.htMobileEditorContainer .downButton:after{transform-origin:5pt 5pt;-webkit-transform-origin:5pt 5pt;margin:21pt 0 0 21pt}.htMobileEditorContainer .leftButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(-45deg)}.htMobileEditorContainer .leftButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .rightButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(135deg)}.htMobileEditorContainer .rightButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .upButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(45deg)}.htMobileEditorContainer .upButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .downButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(225deg)}.htMobileEditorContainer .downButton:active:after{border-color:#cfcfcf}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}/*! * Handsontable ContextMenu - */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}/*! + */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}/*! * Pikaday * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/ */.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:" ";display:table}.pika-single:after{clear:both}.pika-single{*zoom:1}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,.5)}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.pika-next,.is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block;*display:inline}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:bold}.is-selected .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.pika-button:hover{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:0;cursor:help} \ No newline at end of file diff --git a/dist/handsontable.full.min.js b/dist/handsontable.full.min.js index 25f0be7e089..960e5b53245 100644 --- a/dist/handsontable.full.min.js +++ b/dist/handsontable.full.min.js @@ -1,5 +1,5 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright (c) 2012-2014 Marcin Warpechowski @@ -7,33 +7,33 @@ * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ -window.Handsontable={version:"0.19.0",buildDate:"Fri Oct 02 2015 12:37:12 GMT+0200 (CEST)"},function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Handsontable=e()}}(function(){var e;return function(e,t,n){return function o(e,t,n){function r(a,l){if(!t[a]){if(!e[a]){var u="function"==typeof require&&require;if(!l&&u)return u(a,!0);if(i)return i(a,!0);if(s[a]&&"undefined"!=typeof window[s[a]])return window[s[a]];var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var d=t[a]={exports:{}};e[a][0].call(d.exports,function(t){var n=e[a][1][t];return r(n?n:t)},d,d.exports,o,e,t,n)}return t[a].exports}for(var i="function"==typeof require&&require,s=JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","pikaday":"Pikaday"}')||{},a=0;a1)for(t=1,o=arguments.length;o>t;t++)r.push(arguments[t]);if(l){if("undefined"==typeof l[e])throw new Error("Handsontable do not provide action: "+e);i=l[e].apply(l,r),"destroy"===e&&a.removeData()}return i}}(window,jQuery,Handsontable)},{}],2:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableBorder:{get:function(){return b}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=l.getComputedStyle,c=l.getTrimmingContainer,d=l.innerWidth,h=l.innerHeight,f=l.offset,p=l.outerHeight,g=l.outerWidth,m=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}).stopImmediatePropagation,v=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,w=(s=e("cell/coords"),s&&s.__esModule&&s||{"default":s}).WalkontableCellCoords,y=(a=e("overlay/_base.js"),a&&a.__esModule&&a||{"default":a}).WalkontableOverlay,b=function(e,t){t&&(this.eventManager=new v(e),this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.left=null,this.bottom=null,this.right=null,this.topStyle=null,this.leftStyle=null,this.bottomStyle=null,this.rightStyle=null,this.cornerDefaultStyle={width:"5px",height:"5px",borderWidth:"2px",borderStyle:"solid",borderColor:"#FFF"},this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())};$traceurRuntime.createClass(b,{registerListeners:function(){var e=this;this.eventManager.addEventListener(document.body,"mousedown",function(){return e.onMouseDown()}),this.eventManager.addEventListener(document.body,"mouseup",function(){return e.onMouseUp()});for(var t=0,n=this.main.childNodes.length;n>t;t++)this.eventManager.addEventListener(this.main.childNodes[t],"mouseenter",function(t){return e.onMouseEnter(t)})},onMouseDown:function(){this.mouseDown=!0},onMouseUp:function(){this.mouseDown=!1},onMouseEnter:function(e){function t(e){return e.clientYMath.ceil(r.top+r.height)?!0:e.clientXMath.ceil(r.left+r.width)?!0:void 0}function n(e){t(e)&&(o.eventManager.removeEventListener(document.body,"mousemove",n),o.style.display="block")}if(this.mouseDown&&this.wot.getSetting("hideBorderOnMouseDownOver")){e.preventDefault(),m(e);var o=this,r=this.getBoundingClientRect();this.style.display="none",this.eventManager.addEventListener(document.body,"mousemove",n)}},createBorders:function(e){this.main=document.createElement("div");var t=["top","left","bottom","right","corner"],n=this.main.style;n.position="absolute",n.top=0,n.left=0;for(var o=0;5>o;o++){var r=t[o],i=document.createElement("div");i.className="wtBorder "+(this.settings.className||""),this.settings[r]&&this.settings[r].hide&&(i.className+=" hidden"),n=i.style,n.backgroundColor=this.settings[r]&&this.settings[r].color?this.settings[r].color:e.border.color,n.height=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",n.width=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",this.main.appendChild(i)}this.top=this.main.childNodes[0],this.left=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.right=this.main.childNodes[3],this.topStyle=this.top.style,this.leftStyle=this.left.style,this.bottomStyle=this.bottom.style,this.rightStyle=this.right.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),Handsontable.mobileBrowser&&this.createMultipleSelectorHandles(),this.disappear(),this.wot.wtTable.bordersHolder||(this.wot.wtTable.bordersHolder=document.createElement("div"),this.wot.wtTable.bordersHolder.className="htBorders",this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),this.wot.wtTable.bordersHolder.insertBefore(this.main,this.wot.wtTable.bordersHolder.firstChild)},createMultipleSelectorHandles:function(){this.selectionHandles={topLeft:document.createElement("DIV"),topLeftHitArea:document.createElement("DIV"),bottomRight:document.createElement("DIV"),bottomRightHitArea:document.createElement("DIV")};var e=10,t=40;this.selectionHandles.topLeft.className="topLeftSelectionHandle",this.selectionHandles.topLeftHitArea.className="topLeftSelectionHandle-HitArea",this.selectionHandles.bottomRight.className="bottomRightSelectionHandle",this.selectionHandles.bottomRightHitArea.className="bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={topLeft:this.selectionHandles.topLeft.style,topLeftHitArea:this.selectionHandles.topLeftHitArea.style,bottomRight:this.selectionHandles.bottomRight.style,bottomRightHitArea:this.selectionHandles.bottomRightHitArea.style};var n={position:"absolute",height:t+"px",width:t+"px","border-radius":parseInt(t/1.5,10)+"px"};for(var o in n)n.hasOwnProperty(o)&&(this.selectionHandles.styles.bottomRightHitArea[o]=n[o],this.selectionHandles.styles.topLeftHitArea[o]=n[o]);var r={position:"absolute",height:e+"px",width:e+"px","border-radius":parseInt(e/1.5,10)+"px",background:"#F5F5FF",border:"1px solid #4285c8"};for(var i in r)r.hasOwnProperty(i)&&(this.selectionHandles.styles.bottomRight[i]=r[i],this.selectionHandles.styles.topLeft[i]=r[i]);this.main.appendChild(this.selectionHandles.topLeft),this.main.appendChild(this.selectionHandles.bottomRight),this.main.appendChild(this.selectionHandles.topLeftHitArea),this.main.appendChild(this.selectionHandles.bottomRightHitArea)},isPartRange:function(e,t){return!this.wot.selections.area.cellRange||e==this.wot.selections.area.cellRange.to.row&&t==this.wot.selections.area.cellRange.to.col?!1:!0},updateMultipleSelectionHandlesPosition:function(e,t,n,o,r,i){var s=parseInt(this.selectionHandles.styles.topLeft.width,10),a=parseInt(this.selectionHandles.styles.topLeftHitArea.width,10);this.selectionHandles.styles.topLeft.top=parseInt(n-s,10)+"px",this.selectionHandles.styles.topLeft.left=parseInt(o-s,10)+"px",this.selectionHandles.styles.topLeftHitArea.top=parseInt(n-a/4*3,10)+"px",this.selectionHandles.styles.topLeftHitArea.left=parseInt(o-a/4*3,10)+"px",this.selectionHandles.styles.bottomRight.top=parseInt(n+i,10)+"px",this.selectionHandles.styles.bottomRight.left=parseInt(o+r,10)+"px",this.selectionHandles.styles.bottomRightHitArea.top=parseInt(n+i-a/4,10)+"px",this.selectionHandles.styles.bottomRightHitArea.left=parseInt(o+r-a/4,10)+"px",this.settings.border.multipleSelectionHandlesVisible&&this.settings.border.multipleSelectionHandlesVisible()?(this.selectionHandles.styles.topLeft.display="block",this.selectionHandles.styles.topLeftHitArea.display="block",this.isPartRange(e,t)?(this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"):(this.selectionHandles.styles.bottomRight.display="block",this.selectionHandles.styles.bottomRightHitArea.display="block")):(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.topLeftHitArea.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"),e==this.wot.wtSettings.getSetting("fixedRowsTop")||t==this.wot.wtSettings.getSetting("fixedColumnsLeft")?(this.selectionHandles.styles.topLeft.zIndex="9999",this.selectionHandles.styles.topLeftHitArea.zIndex="9999"):(this.selectionHandles.styles.topLeft.zIndex="",this.selectionHandles.styles.topLeftHitArea.zIndex="")},appear:function(e){if(!this.disabled){var t,n,o,r,i,s,a,l,m,v,b,C,R,_,E,S,T,O,M;M=y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_TOP)||y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_BOTTOM)||y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedRowsBottom"):this.wot.wtTable.getRenderedRowsCount();for(var k=0;M>k;k++){var H=this.wot.wtTable.rowFilter.renderedToSource(k);if(H>=e[0]&&H<=e[2]){R=H;break}}for(var D=M-1;D>=0;D--){var x=this.wot.wtTable.rowFilter.renderedToSource(D);if(x>=e[0]&&x<=e[2]){E=x;break}}M=this.wot.wtTable.getRenderedColumnsCount();for(var A=0;M>A;A++){var P=this.wot.wtTable.columnFilter.renderedToSource(A);if(P>=e[1]&&P<=e[3]){_=P;break}}for(var N=M-1;N>=0;N--){var L=this.wot.wtTable.columnFilter.renderedToSource(N);if(L>=e[1]&&L<=e[3]){S=L;break}}if(void 0===R||void 0===_)return void this.disappear();t=R!==E||_!==S,n=this.wot.wtTable.getCell(new w(R,_)),o=t?this.wot.wtTable.getCell(new w(E,S)):n,r=f(n),i=t?f(o):r,s=f(this.wot.wtTable.TABLE),l=r.top,b=i.top+p(o)-l,v=r.left,C=i.left+g(o)-v,a=l-s.top-1,m=v-s.left-1;var W=u(n);parseInt(W.borderTopWidth,10)>0&&(a+=1,b=b>0?b-1:0),parseInt(W.borderLeftWidth,10)>0&&(m+=1,C=C>0?C-1:0),this.topStyle.top=a+"px",this.topStyle.left=m+"px",this.topStyle.width=C+"px",this.topStyle.display="block",this.leftStyle.top=a+"px",this.leftStyle.left=m+"px",this.leftStyle.height=b+"px",this.leftStyle.display="block";var I=Math.floor(this.settings.border.width/2);this.bottomStyle.top=a+b-I+"px",this.bottomStyle.left=m+"px",this.bottomStyle.width=C+"px",this.bottomStyle.display="block",this.rightStyle.top=a+"px",this.rightStyle.left=m+C-I+"px",this.rightStyle.height=b+1+"px",this.rightStyle.display="block",Handsontable.mobileBrowser||!this.hasSetting(this.settings.border.cornerVisible)||this.isPartRange(E,S)?this.cornerStyle.display="none":(this.cornerStyle.top=a+b-4+"px",this.cornerStyle.left=m+C-4+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="block",T=c(this.wot.wtTable.TABLE),S===this.wot.getSetting("totalColumns")-1&&(O=o.offsetLeft+g(o)>=d(T),O&&(this.cornerStyle.left=Math.floor(m+C-3-parseInt(this.cornerDefaultStyle.width)/2)+"px",this.cornerStyle.borderRightWidth=0)),E===this.wot.getSetting("totalRows")-1&&(O=o.offsetTop+p(o)>=h(T),O&&(this.cornerStyle.top=Math.floor(a+b-3-parseInt(this.cornerDefaultStyle.height)/2)+"px",this.cornerStyle.borderBottomWidth=0))),Handsontable.mobileBrowser&&this.updateMultipleSelectionHandlesPosition(R,_,a,m,C,b)}},disappear:function(){this.topStyle.display="none",this.leftStyle.display="none",this.bottomStyle.display="none",this.rightStyle.display="none",this.cornerStyle.display="none",Handsontable.mobileBrowser&&(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none")},hasSetting:function(e){return"function"==typeof e?e():!!e}},{}),window.WalkontableBorder=b},{"cell/coords":5,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"overlay/_base.js":11}],3:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewportColumnsCalculator:{get:function(){return r}},__esModule:{value:!0}});var o=new WeakMap,r=function(e,t,n,r,i,s,a){o.set(this,{viewportWidth:e,scrollOffset:t,totalColumns:n,columnWidthFn:r,overrideFn:i,onlyFullyVisible:s}),this.count=0,this.startColumn=null,this.endColumn=null,this.startPosition=null,this.stretchAllRatio=0,this.stretchLastWidth=0,this.stretch=a,this.totalTargetWidth=0,this.needVerifyLastColumnWidth=!0,this.stretchAllColumnsWidth=[],this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e,t=0,n=!0,r=[],i=o.get(this),s=i.onlyFullyVisible,a=i.overrideFn,l=i.scrollOffset,u=i.totalColumns,c=i.viewportWidth,d=0;u>d;d++)if(e=this._getColumnWidth(d),l>=t&&!s&&(this.startColumn=d),t>=l&&l+c>=t+e&&(null==this.startColumn&&(this.startColumn=d),this.endColumn=d),r.push(t),t+=e,s||(this.endColumn=d),t>=l+c){n=!1;break}if(this.endColumn===u-1&&n)for(this.startColumn=this.endColumn;this.startColumn>0;){var h=r[this.endColumn]+e-r[this.startColumn-1];if((c>=h||!s)&&this.startColumn--,h>c)break}null!==this.startColumn&&a&&a(this),this.startPosition=r[this.startColumn],void 0==this.startPosition&&(this.startPosition=null),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)},refreshStretching:function(e){if("none"!==this.stretch){for(var t,n,r=0,i=o.get(this),s=i.totalColumns,a=0;s>a;a++)t=this._getColumnWidth(a),r+=t;this.totalTargetWidth=e,n=r-e,"all"===this.stretch&&0>n?(this.stretchAllRatio=e/r,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0):"last"===this.stretch&&e!==1/0&&(this.stretchLastWidth=-n+this._getColumnWidth(s-1))}},getStretchedColumnWidth:function(e,t){var n=null;return"all"===this.stretch&&0!==this.stretchAllRatio?n=this._getStretchedAllColumnWidth(e,t):"last"===this.stretch&&0!==this.stretchLastWidth&&(n=this._getStretchedLastColumnWidth(e)),n},_getStretchedAllColumnWidth:function(e,t){var n=0,r=o.get(this),i=r.totalColumns;if(this.stretchAllColumnsWidth[e]||(this.stretchAllColumnsWidth[e]=Math.round(t*this.stretchAllRatio)),this.stretchAllColumnsWidth.length===i&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(var s=0;sf;f++){var p=l(f);if(void 0===p&&(p=i.DEFAULT_HEIGHT),u>=e&&!s&&(this.startRow=f),e>=u&&u+d-h>=e+p&&(null===this.startRow&&(this.startRow=f),this.endRow=f),n.push(e),e+=p,s||(this.endRow=f),e>=u+d-h){t=!1;break}}if(this.endRow===c-1&&t)for(this.startRow=this.endRow;this.startRow>0;){var g=n[this.endRow]+p-n[this.startRow-1];if((d-h>=g||!s)&&this.startRow--,g>=d-h)break}null!==this.startRow&&a&&a(this),this.startPosition=n[this.startRow],void 0==this.startPosition&&(this.startPosition=null),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}},{get DEFAULT_HEIGHT(){return 23}}),window.WalkontableViewportRowsCalculator=r},{}],5:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellCoords:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t){"undefined"!=typeof e&&"undefined"!=typeof t?(this.row=e,this.col=t):(this.row=null,this.col=null)};$traceurRuntime.createClass(o,{isValid:function(e){return this.row<0||this.col<0?!1:this.row>=e.getSetting("totalRows")||this.col>=e.getSetting("totalColumns")?!1:!0},isEqual:function(e){return e===this?!0:this.row===e.row&&this.col===e.col},isSouthEastOf:function(e){return this.row>=e.row&&this.col>=e.col},isNorthWestOf:function(e){return this.row<=e.row&&this.col<=e.col},isSouthWestOf:function(e){return this.row>=e.row&&this.col<=e.col},isNorthEastOf:function(e){return this.row<=e.row&&this.col>=e.col}},{}),window.WalkontableCellCoords=o},{}],6:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellRange:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("cell/coords"),o&&o.__esModule&&o||{"default":o}).WalkontableCellCoords,i=function(e,t,n){this.highlight=e,this.from=t,this.to=n},s=i;$traceurRuntime.createClass(i,{isValid:function(e){return this.from.isValid(e)&&this.to.isValid(e)},isSingle:function(){return this.from.row===this.to.row&&this.from.col===this.to.col},getHeight:function(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1},getWidth:function(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1},includes:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.row<0&&(e.row=0),e.col<0&&(e.col=0),t.row<=e.row&&n.row>=e.row&&t.col<=e.col&&n.col>=e.col},includesRange:function(e){return this.includes(e.getTopLeftCorner())&&this.includes(e.getBottomRightCorner())},isEqual:function(e){return Math.min(this.from.row,this.to.row)==Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)==Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)==Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)==Math.max(e.from.col,e.to.col)},overlaps:function(e){return e.isSouthEastOf(this.getTopLeftCorner())&&e.isNorthWestOf(this.getBottomRightCorner())},isSouthEastOf:function(e){return this.getTopLeftCorner().isSouthEastOf(e)||this.getBottomRightCorner().isSouthEastOf(e)},isNorthWestOf:function(e){return this.getTopLeftCorner().isNorthWestOf(e)||this.getBottomRightCorner().isNorthWestOf(e)},expand:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.rown.row||e.col>n.col?(this.from=new r(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=new r(Math.max(n.row,e.row),Math.max(n.col,e.col)),!0):!1},expandByRange:function(e){if(this.includesRange(e)||!this.overlaps(e))return!1;var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=(this.getTopRightCorner(),this.getBottomLeftCorner(),e.getTopLeftCorner()),i=e.getBottomRightCorner(),a=Math.min(t.row,o.row),l=Math.min(t.col,o.col),u=Math.max(n.row,i.row),c=Math.max(n.col,i.col),d=new r(a,l),h=new r(u,c),f=new s(d,d,h).isCorner(this.from,e),p=e.isEqual(new s(d,d,h));return f&&!p&&(this.from.col>d.col&&(d.col=c,h.col=l),this.from.row>d.row&&(d.row=u,h.row=a)),this.from=d,this.to=h,!0},getDirection:function(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0},setDirection:function(e){switch(e){case"NW-SE":this.from=this.getTopLeftCorner(),this.to=this.getBottomRightCorner();break;case"NE-SW":this.from=this.getTopRightCorner(),this.to=this.getBottomLeftCorner();break;case"SE-NW":this.from=this.getBottomRightCorner(),this.to=this.getTopLeftCorner();break;case"SW-NE":this.from=this.getBottomLeftCorner(),this.to=this.getTopRightCorner()}},getTopLeftCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},getBottomRightCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getTopRightCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getBottomLeftCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},isCorner:function(e,t){return t&&t.includes(e)&&(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col))||this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col))||this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col))||this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))?!0:e.isEqual(this.getTopLeftCorner())||e.isEqual(this.getTopRightCorner())||e.isEqual(this.getBottomLeftCorner())||e.isEqual(this.getBottomRightCorner())},getOppositeCorner:function(e,t){if(!(e instanceof r))return!1;if(t&&t.includes(e)){if(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))return this.getBottomRightCorner();if(this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))return this.getBottomLeftCorner();if(this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))return this.getTopRightCorner();if(this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))return this.getTopLeftCorner()}return e.isEqual(this.getBottomRightCorner())?this.getTopLeftCorner():e.isEqual(this.getTopLeftCorner())?this.getBottomRightCorner():e.isEqual(this.getTopRightCorner())?this.getBottomLeftCorner():e.isEqual(this.getBottomLeftCorner())?this.getTopRightCorner():void 0},getBordersSharedWith:function(e){if(!this.includesRange(e))return[];var t={top:Math.min(this.from.row,this.to.row),bottom:Math.max(this.from.row,this.to.row),left:Math.min(this.from.col,this.to.col),right:Math.max(this.from.col,this.to.col)},n={top:Math.min(e.from.row,e.to.row),bottom:Math.max(e.from.row,e.to.row),left:Math.min(e.from.col,e.to.col),right:Math.max(e.from.col,e.to.col)},o=[];return t.top==n.top&&o.push("top"),t.right==n.right&&o.push("right"),t.bottom==n.bottom&&o.push("bottom"),t.left==n.left&&o.push("left"),o},getInner:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)this.from.row===o&&this.from.col===i||this.to.row===o&&this.to.col===i||n.push(new r(o,i));return n},getAll:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)e.row===o&&e.col===i?n.push(e):t.row===o&&t.col===i?n.push(t):n.push(new r(o,i));return n},forAll:function(e){for(var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=t.row;o<=n.row;o++)for(var r=t.col;r<=n.col;r++){var i=e(o,r);if(i===!1)return}}},{}),window.WalkontableCellRange=i},{"cell/coords":5}],7:[function(e,t,n){"use strict";Object.defineProperties(n,{Walkontable:{get:function(){return x}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f,p,g,m,v=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),w=v.addClass,y=v.fastInnerText,b=v.isVisible,C=v.removeClass,R=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,_=(i=e("helpers/string"),i&&i.__esModule&&i||{"default":i}),E=_.toUpperCaseFirst,S=_.randomString,T=(s=e("event"),s&&s.__esModule&&s||{"default":s}).WalkontableEvent,O=(a=e("overlays"),a&&a.__esModule&&a||{"default":a}).WalkontableOverlays,M=(l=e("scroll"),l&&l.__esModule&&l||{"default":l}).WalkontableScroll,k=(u=e("settings"),u&&u.__esModule&&u||{"default":u}).WalkontableSettings,H=(c=e("table"),c&&c.__esModule&&c||{"default":c}).WalkontableTable,D=(d=e("viewport"),d&&d.__esModule&&d||{"default":d}).WalkontableViewport,x=((h=e("overlay/_base.js"),h&&h.__esModule&&h||{"default":h}).WalkontableOverlay,(f=e("overlay/top.js"),f&&f.__esModule&&f||{"default":f}).WalkontableTopOverlay,(p=e("overlay/left.js"),p&&p.__esModule&&p||{"default":p}).WalkontableLeftOverlay,(g=e("overlay/debug.js"),g&&g.__esModule&&g||{"default":g}).WalkontableDebugOverlay,(m=e("overlay/topLeftCorner.js"),m&&m.__esModule&&m||{"default":m}).WalkontableTopLeftCornerOverlay,function(e){var t=[];if(this.guid="wt_"+S(),e.cloneSource?(this.cloneSource=e.cloneSource,this.cloneOverlay=e.cloneOverlay,this.wtSettings=e.cloneSource.wtSettings,this.wtTable=new H(this,e.table,e.wtRootElement),this.wtScroll=new M(this),this.wtViewport=e.cloneSource.wtViewport,this.wtEvent=new T(this),this.selections=this.cloneSource.selections):(this.wtSettings=new k(this,e),this.wtTable=new H(this,e.table),this.wtScroll=new M(this),this.wtViewport=new D(this),this.wtEvent=new T(this),this.selections=this.getSetting("selections"),this.wtOverlays=new O(this),this.exportSettingsAsClassNames()),this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(var n=0,o=this.wtTable.THEAD.childNodes[0].childNodes.length;o>n;n++)t.push(this.wtTable.THEAD.childNodes[0].childNodes[n].innerHTML);this.getSetting("columnHeaders").length||this.update("columnHeaders",[function(e,n){y(n,t[e])}])}this.drawn=!1,this.drawInterrupted=!1});$traceurRuntime.createClass(x,{draw:function(){var e=void 0!==arguments[0]?arguments[0]:!1;return this.drawInterrupted=!1,e||b(this.wtTable.TABLE)?this.wtTable.draw(e):this.drawInterrupted=!0,this},getCell:function(e){var t=void 0!==arguments[1]?arguments[1]:!1;if(!t)return this.wtTable.getCell(e);var n=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),r=this.wtSettings.getSetting("fixedRowsBottom"),i=this.wtSettings.getSetting("fixedColumnsLeft");if(e.row=n-r){if(this.wtOverlays.bottomLeftCornerOverlay.clone)return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col=n-r&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)},update:function(e,t){return this.wtSettings.update(e,t)},scrollVertical:function(e){return this.wtOverlays.topOverlay.scrollTo(e),this.getSetting("onScrollVertically"),this},scrollHorizontal:function(e){return this.wtOverlays.leftOverlay.scrollTo(e),this.getSetting("onScrollHorizontally"),this},scrollViewport:function(e){return this.wtScroll.scrollViewport(e),this},getViewport:function(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]},getOverlayName:function(){return this.cloneOverlay?this.cloneOverlay.type:"master"},exportSettingsAsClassNames:function(){var e=this,t={rowHeaders:["array"],columnHeaders:["array"]},n=[],o=[];R(t,function(t,r){t.indexOf("array")>-1&&e.getSetting(r).length&&o.push("ht"+E(r)),n.push("ht"+E(r))}),C(this.wtTable.wtRootElement.parentNode,n),w(this.wtTable.wtRootElement.parentNode,o)},getSetting:function(e,t,n,o,r){return this.wtSettings.getSetting(e,t,n,o,r)},hasSetting:function(e){return this.wtSettings.has(e)},destroy:function(){this.wtOverlays.destroy(),this.wtEvent.destroy()}},{}),window.Walkontable=x},{event:8,"helpers/dom/element":44,"helpers/object":49,"helpers/string":51,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,overlays:16,scroll:17,settings:19,table:20,viewport:22}],8:[function(e,t,n){"use strict";function o(e){var t=this,n=c(e);this.instance=e;var o=[null,null];this.dblClickTimeout=[null,null];var r,i,s=function(e){var n=t.parentCell(e.realTarget);l(e.realTarget,"corner")?t.instance.getSetting("onCellCornerMouseDown",e,e.realTarget):n.TD&&t.instance.hasSetting("onCellMouseDown")&&t.instance.getSetting("onCellMouseDown",e,n.coords,n.TD,t.instance),2!==e.button&&n.TD&&(o[0]=n.TD,clearTimeout(t.dblClickTimeout[0]),t.dblClickTimeout[0]=setTimeout(function(){o[0]=null},1e3))},d=function(e){t.instance.touchMoving=!0},h=function(e){n.addEventListener(this,"touchmove",d),t.checkIfTouchMove=setTimeout(function(){return t.instance.touchMoving===!0?(t.instance.touchMoving=void 0,void n.removeEventListener("touchmove",d,!1)):void s(e)},30)},f=function(e){var n,o;t.instance.hasSetting("onCellMouseOver")&&(n=t.instance.wtTable.TABLE,o=a(e.realTarget,["TD","TH"],n),o&&o!==i&&u(o,n)&&(i=o,t.instance.getSetting("onCellMouseOver",e,t.instance.wtTable.getCoords(o),o,t.instance)))},p=function(e){if(2!==e.button){var n=t.parentCell(e.realTarget);n.TD===o[0]&&n.TD===o[1]?(l(e.realTarget,"corner")?t.instance.getSetting("onCellCornerDblClick",e,n.coords,n.TD,t.instance):t.instance.getSetting("onCellDblClick",e,n.coords,n.TD,t.instance),o[0]=null,o[1]=null):n.TD===o[0]&&(o[1]=n.TD,clearTimeout(t.dblClickTimeout[1]),t.dblClickTimeout[1]=setTimeout(function(){o[1]=null},500))}},g=function(e){clearTimeout(r),e.preventDefault(),p(e)};if(n.addEventListener(this.instance.wtTable.holder,"mousedown",s),n.addEventListener(this.instance.wtTable.TABLE,"mouseover",f),n.addEventListener(this.instance.wtTable.holder,"mouseup",p),this.instance.wtTable.holder.parentNode.parentNode&&Handsontable.mobileBrowser&&!t.instance.wtTable.isWorkingOnClone()){var m="."+this.instance.wtTable.holder.parentNode.className.split(" ").join(".");n.addEventListener(this.instance.wtTable.holder,"touchstart",function(e){t.instance.touchApplied=!0,u(e.target,m)&&h.call(e.target,e)}),n.addEventListener(this.instance.wtTable.holder,"touchend",function(e){t.instance.touchApplied=!1,u(e.target,m)&&g.call(e.target,e)}),t.instance.momentumScrolling||(t.instance.momentumScrolling={}),n.addEventListener(this.instance.wtTable.holder,"scroll",function(e){clearTimeout(t.instance.momentumScrolling._timeout),t.instance.momentumScrolling.ongoing||t.instance.getSetting("onBeforeTouchScroll"),t.instance.momentumScrolling.ongoing=!0,t.instance.momentumScrolling._timeout=setTimeout(function(){t.instance.touchApplied||(t.instance.momentumScrolling.ongoing=!1,t.instance.getSetting("onAfterMomentumScroll"))},200)})}n.addEventListener(window,"resize",function(){"none"!==t.instance.getSetting("stretchH")&&t.instance.draw()}),this.destroy=function(){clearTimeout(this.dblClickTimeout[0]),clearTimeout(this.dblClickTimeout[1]),n.destroy()}}Object.defineProperties(n,{WalkontableEvent:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),a=s.closest,l=s.hasClass,u=s.isChildOf,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager;o.prototype.parentCell=function(e){var t={},n=this.instance.wtTable.TABLE,o=a(e,["TD","TH"],n);return o&&u(o,n)?(t.coords=this.instance.wtTable.getCoords(o),t.TD=o):l(e,"wtBorder")&&l(e,"current")?(t.coords=this.instance.selections.current.cellRange.highlight,t.TD=this.instance.wtTable.getCell(t.coords)):l(e,"wtBorder")&&l(e,"area")&&this.instance.selections.area.cellRange&&(t.coords=this.instance.selections.area.cellRange.to,t.TD=this.instance.wtTable.getCell(t.coords)),t},window.WalkontableEvent=o},{eventManager:40,"helpers/dom/element":44}],9:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableColumnFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleRowHeadedColumnToSourceColumn:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceColumnToVisibleRowHeadedColumn:function(e){return this.unOffsettedTH(this.sourceToRendered(e)); -}},{}),window.WalkontableColumnFilter=o},{}],10:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableRowFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleColHeadedRowToSourceRow:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceRowToVisibleColHeadedRow:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableRowFilter=o},{}],11:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlay:{get:function(){return h}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.getScrollableElement,l=s.getTrimmingContainer,u=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,d={},h=function(e){u(this,"wot",e,{writable:!1}),this.instance=this.wot,this.type="",this.TABLE=this.wot.wtTable.TABLE,this.hider=this.wot.wtTable.hider,this.spreader=this.wot.wtTable.spreader,this.holder=this.wot.wtTable.holder,this.wtRootElement=this.wot.wtTable.wtRootElement,this.trimmingContainer=l(this.hider.parentNode.parentNode),this.mainTableScrollableElement=a(this.wot.wtTable.TABLE),this.needFullRender=this.shouldBeRendered(),this.areElementSizesAdjusted=!1},f=h;$traceurRuntime.createClass(h,{shouldBeRendered:function(){return!0},makeClone:function(e){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error('Clone type "'+e+'" is not supported.');var t=document.createElement("DIV"),n=document.createElement("TABLE");return t.className="ht_clone_"+e+" handsontable",t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.overflow="hidden",n.className=this.wot.wtTable.TABLE.className,t.appendChild(n),this.type=e,this.wot.wtTable.wtRootElement.parentNode.appendChild(t),new Walkontable({cloneSource:this.wot,cloneOverlay:this,table:n})},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.shouldBeRendered();this.clone&&(this.needFullRender||t)&&this.clone.draw(e),this.needFullRender=t},destroy:function(){c(this.clone).destroy()}},{get CLONE_TOP(){return"top"},get CLONE_BOTTOM(){return"bottom"},get CLONE_LEFT(){return"left"},get CLONE_TOP_LEFT_CORNER(){return"top_left_corner"},get CLONE_BOTTOM_LEFT_CORNER(){return"bottom_left_corner"},get CLONE_DEBUG(){return"debug"},get CLONE_TYPES(){return[f.CLONE_TOP,f.CLONE_BOTTOM,f.CLONE_LEFT,f.CLONE_TOP_LEFT_CORNER,f.CLONE_BOTTOM_LEFT_CORNER,f.CLONE_DEBUG]},registerOverlay:function(e,t){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error("Unsupported overlay ("+e+").");d[e]=t},createOverlay:function(e,t){return new d[e](t)},isOverlayTypeOf:function(e,t){return e&&d[t]?e instanceof d[t]:!1}}),window.WalkontableOverlay=h},{eventManager:40,"helpers/dom/element":44,"helpers/object":49}],12:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableDebugOverlay:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,s=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,a=function(e){$traceurRuntime.superConstructor(l).call(this,e),this.clone=this.makeClone(s.CLONE_DEBUG),this.clone.wtTable.holder.style.opacity=.4,this.clone.wtTable.holder.style.textShadow="0 0 2px #ff0000",i(this.clone.wtTable.holder.parentNode,"wtDebugVisible")},l=a;$traceurRuntime.createClass(a,{},{},s),window.WalkontableDebugOverlay=a,s.registerOverlay(s.CLONE_DEBUG,a)},{_base:11,"helpers/dom/element":44}],13:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableLeftOverlay:{get:function(){return g}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollLeft,u=i.getWindowScrollTop,c=i.hasClass,d=i.outerWidth,h=i.removeClass,f=i.setOverlayPosition,p=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(p.CLONE_LEFT)},m=g;$traceurRuntime.createClass(g,{shouldBeRendered:function(){return this.wot.getSetting("fixedColumnsLeft")||this.wot.getSetting("rowHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.left),s=Math.ceil(r.right);o=this.wot.wtTable.hider.style.top,o=""===o?0:o,n=0>i&&s-e.offsetWidth>0?-i:0,t=n,n+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(e,u()):this.mainTableScrollableElement.scrollLeft=e},onScroll:function(){this.wot.getSetting("onScrollHorizontally")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.defaultColumnWidth;t>e;)n+=this.wot.wtTable.getStretchedColumnWidth(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientHeight===t.offsetHeight?0:a(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.height=this.wot.wtViewport.getWorkspaceHeight()-n+"px"),this.clone.wtTable.holder.style.height=r.height,e=d(this.clone.wtTable.TABLE),r.width=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.height=this.hider.style.height,this.clone.wtTable.holder.style.height=this.clone.wtTable.holder.parentNode.style.height,0===e&&(e=30),this.clone.wtTable.holder.style.width=parseInt(this.clone.wtTable.holder.parentNode.style.width,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalColumns");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style.left="0"}this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.top=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;t&&r.offsetWidth!==r.clientWidth&&(i=a()),t?(n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportWidth()):n+=this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"),e),n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.trimmingContainer===window?this.wot.wtTable.holderOffset.left:0},getScrollPosition:function(){return l(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode,n=this.wot.getSetting("rowHeaders"),o=this.wot.getSetting("fixedColumnsLeft");if(o&&!n.length)s(t,"innerBorderLeft");else if(!o&&n.length){var r=c(t,"innerBorderLeft");e?s(t,"innerBorderLeft"):h(t,"innerBorderLeft"),(!r&&e||r&&!e)&&this.wot.wtOverlays.adjustElementsSize()}}},{},p),window.WalkontableLeftOverlay=g,p.registerOverlay(p.CLONE_LEFT,g)},{_base:11,"helpers/dom/element":44}],14:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTopOverlay:{get:function(){return g}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollTop,u=i.getWindowScrollLeft,c=i.hasClass,d=i.outerHeight,h=i.removeClass,f=i.setOverlayPosition,p=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(p.CLONE_TOP)},m=g;$traceurRuntime.createClass(g,{shouldBeRendered:function(){return this.wot.getSetting("fixedRowsTop")||this.wot.getSetting("columnHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.wot.wtOverlays.leftOverlay.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.top),s=Math.ceil(r.bottom);n=this.wot.wtTable.hider.style.left,n=""===n?0:n,o=0>i&&s-e.offsetHeight>0?-i:0,t=o,o+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(u(),e):this.mainTableScrollableElement.scrollTop=e},onScroll:function(){this.wot.getSetting("onScrollVertically")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.settings.defaultRowHeight;t>e;)n+=this.wot.wtTable.getRowHeight(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientWidth===t.offsetWidth?0:a(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.width=this.wot.wtViewport.getWorkspaceWidth()-n+"px"),this.clone.wtTable.holder.style.width=r.width,e=d(this.clone.wtTable.TABLE),r.height=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.width=this.hider.style.width,this.clone.wtTable.holder.style.width=this.clone.wtTable.holder.parentNode.style.width,0===e&&(e=30),this.clone.wtTable.holder.style.height=parseInt(this.clone.wtTable.holder.parentNode.style.height,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalRows");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.left=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;if(t&&r.offsetHeight!==r.clientHeight&&(i=a()),t){var s=this.wot.getSetting("fixedRowsBottom"),l=(this.wot.getSetting("fixedRowsTop"),this.wot.getSetting("totalRows"));n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportHeight()-this.sumCellSizes(l-s,l),n+=1}else n+=this.sumCellSizes(this.wot.getSetting("fixedRowsTop"),e);n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.mainTableScrollableElement===window?this.wot.wtTable.holderOffset.top:0},getScrollPosition:function(){return l(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){if(0===this.wot.getSetting("fixedRowsTop")&&this.wot.getSetting("columnHeaders").length>0){var t=this.wot.wtTable.holder.parentNode,n=c(t,"innerBorderTop");e?s(t,"innerBorderTop"):h(t,"innerBorderTop"),(!n&&e||n&&!e)&&this.wot.wtOverlays.adjustElementsSize()}if(0===this.wot.getSetting("rowHeaders").length){var o=this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");if(o)for(var r=0;rc&&h-e.offsetWidth>0?-c+"px":"0",r=0>u&&d-e.offsetHeight>0?-u+"px":"0",l(e,o,r)}e.style.height=(0===t?t:t+4)+"px",e.style.width=(0===n?n:n+4)+"px"}}},{},u),window.WalkontableTopLeftCornerOverlay=c,u.registerOverlay(u.CLONE_TOP_LEFT_CORNER,c)},{_base:11,"helpers/dom/element":44}],16:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlays:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.getScrollableElement,l=s.getScrollbarWidth,u=s.getScrollLeft,c=s.getScrollTop,d=(r=e("helpers/unicode"),r&&r.__esModule&&r||{"default":r}).isKey,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=function(e){this.wot=e,this.instance=this.wot,this.eventManager=new h(this.wot),this.wot.update("scrollbarWidth",l()),this.wot.update("scrollbarHeight",l()),this.mainTableScrollableElement=a(this.wot.wtTable.TABLE),this.topOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP,this.wot),"undefined"==typeof WalkontableBottomOverlay?this.bottomOverlay={needFullRender:!1}:this.bottomOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM,this.wot),this.leftOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT,this.wot),this.topOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.topLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,this.wot)),this.bottomOverlay.needFullRender&&this.leftOverlay.needFullRender&&"undefined"!=typeof WalkontableBottomLeftCornerOverlay?this.bottomLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER,this.wot):this.bottomLeftCornerOverlay={needFullRender:!1},this.wot.getSetting("debug")&&(this.debug=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG,this.wot)),this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.overlayScrollPositions={master:{top:0,left:0},top:{top:null,left:0},bottom:{top:null,left:0},left:{top:0,left:null}},this.registerListeners()};$traceurRuntime.createClass(f,{refreshAll:function(){if(this.wot.drawn){if(!this.wot.wtTable.holder.parentNode)return void this.destroy();this.wot.draw(!0),this.topOverlay.onScroll(),this.leftOverlay.onScroll()}},registerListeners:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"keydown",function(t){return e.onKeyDown(t)}),this.eventManager.addEventListener(document.documentElement,"keyup",function(){return e.onKeyUp()}),this.eventManager.addEventListener(document,"visibilitychange",function(){return e.onKeyUp()}),this.eventManager.addEventListener(this.mainTableScrollableElement,"scroll",function(t){return e.onTableScroll(t)}),this.topOverlay.needFullRender&&(this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.bottomOverlay.needFullRender&&(this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.leftOverlay.needFullRender&&(this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.topOverlay.trimmingContainer!==window&&this.leftOverlay.trimmingContainer!==window&&this.eventManager.addEventListener(window,"wheel",function(t){var n,o=t.wheelDeltaY||t.deltaY,r=t.wheelDeltaX||t.deltaX;e.topOverlay.clone.wtTable.holder.contains(t.realTarget)?n="top":e.bottomOverlay.clone&&e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget)?n="bottom":e.leftOverlay.clone.wtTable.holder.contains(t.realTarget)&&(n="left"),"top"==n&&0!==o?t.preventDefault():"left"==n&&0!==r?t.preventDefault():"bottom"==n&&0!==o&&t.preventDefault()})},onTableScroll:function(e){Handsontable.mobileBrowser||(!this.keyPressed||this.mainTableScrollableElement===window||e.target.contains(this.mainTableScrollableElement))&&("scroll"===e.type?this.syncScrollPositions(e):this.translateMouseWheelToScroll(e))},onKeyDown:function(e){this.keyPressed=d(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")},onKeyUp:function(){this.keyPressed=!1},translateMouseWheelToScroll:function(e){for(var t,n=this.topOverlay.clone.wtTable.holder,o=this.bottomOverlay.clone?this.bottomOverlay.clone.wtTable.holder:null,r=this.leftOverlay.clone.wtTable.holder,i={type:"wheel"},s=e.target,a=e.wheelDeltaY||-1*e.deltaY,l=e.wheelDeltaX||-1*e.deltaX;s!=document&&null!=s;){if(s.className.indexOf("wtHolder")>-1){t=s;break}s=s.parentNode}return i.target=t,t==n?this.syncScrollPositions(i,-.2*a):t==o?this.syncScrollPositions(i,-.2*a):t==r&&this.syncScrollPositions(i,-.2*l),!1},syncScrollPositions:function(e){var t=void 0!==arguments[1]?arguments[1]:null;if(!this.destroyed){if(0===arguments.length)return void this.syncScrollWithMaster();var n,o,r,i=this.mainTableScrollableElement,s=e.target,a=0,l=!1;this.topOverlay.needFullRender&&(n=this.topOverlay.clone.wtTable.holder),this.bottomOverlay.needFullRender&&(r=this.bottomOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&(o=this.leftOverlay.clone.wtTable.holder),s===document&&(s=window),s===i?(a=u(s),this.overlayScrollPositions.master.left!==a&&(this.overlayScrollPositions.master.left=a,l=!0,n&&(n.scrollLeft=a),r&&(r.scrollLeft=a)),a=c(s),this.overlayScrollPositions.master.top!==a&&(this.overlayScrollPositions.master.top=a,l=!0,o&&(o.scrollTop=a))):s===r?(a=u(s),this.overlayScrollPositions.bottom.left!==a&&(this.overlayScrollPositions.bottom.left=a,l=!0,i.scrollLeft=a),null!==t&&(l=!0,i.scrollTop+=t)):s===n?(a=u(s),this.overlayScrollPositions.top.left!==a&&(this.overlayScrollPositions.top.left=a,l=!0,i.scrollLeft=a),null!==t&&(l=!0,i.scrollTop+=t)):s===o&&(a=c(s),this.overlayScrollPositions.left.top!==a&&(this.overlayScrollPositions.left.top=a,l=!0,i.scrollTop=a),null!==t&&(l=!0,i.scrollLeft+=t)),!this.keyPressed&&l&&"scroll"===e.type&&this.refreshAll()}},syncScrollWithMaster:function(){var e=this.topOverlay.mainTableScrollableElement;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=e.scrollLeft),this.leftOverlay.needFullRender&&(this.leftOverlay.clone.wtTable.holder.scrollTop=e.scrollTop)},destroy:function(){this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.leftOverlay.destroy(),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.destroy(),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.destroy(),this.debug&&this.debug.destroy(),this.destroyed=!0},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted){var t=this.wot.wtTable.wtRootElement.parentNode||this.wot.wtTable.wtRootElement,n=t.clientWidth,o=t.clientHeight;(n!==this.spreaderLastSize.width||o!==this.spreaderLastSize.height)&&(this.spreaderLastSize.width=n,this.spreaderLastSize.height=o,this.adjustElementsSize())}this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.leftOverlay.refresh(e),this.topOverlay.refresh(e),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.refresh(e),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.refresh(e),this.debug&&this.debug.refresh(e)},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.wot.getSetting("totalColumns"),n=this.wot.getSetting("totalRows"),o=this.wot.wtViewport.getRowHeaderWidth(),r=this.wot.wtViewport.getColumnHeaderHeight(),i=this.wot.wtTable.hider.style;i.width=o+this.leftOverlay.sumCellSizes(0,t)+"px",i.height=r+this.topOverlay.sumCellSizes(0,n)+1+"px",this.topOverlay.adjustElementsSize(e),this.leftOverlay.adjustElementsSize(e),this.bottomOverlay.clone&&this.bottomOverlay.adjustElementsSize(e)},applyToDOM:function(){this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted||this.adjustElementsSize(),this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.leftOverlay.applyToDOM()}},{}),window.WalkontableOverlays=f},{eventManager:40,"helpers/dom/element":44,"helpers/unicode":52}],17:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableScroll:{get:function(){return o}},__esModule:{value:!0}});var o=function(e){this.wot=e,this.instance=e};$traceurRuntime.createClass(o,{scrollViewport:function(e){if(this.wot.drawn){var t=this.wot.getSetting("totalRows"),n=this.wot.getSetting("totalColumns"),o=this.instance.getSetting("fixedRowsTop"),r=this.instance.getSetting("fixedRowsBottom"),i=this.instance.getSetting("fixedColumnsLeft");if(e.row<0||e.row>t-1)throw new Error("row "+e.row+" does not exist");if(e.col<0||e.col>n-1)throw new Error("column "+e.col+" does not exist");e.row>this.instance.wtTable.getLastVisibleRow()&&e.row=o&&e.rowthis.instance.wtTable.getLastVisibleColumn()?this.wot.wtOverlays.leftOverlay.scrollTo(e.col,!0):e.col>=i&&e.colu;u++)o=e.wtTable.columnFilter.renderedToSource(u),o>=l[1]&&o<=l[3]&&(r=e.wtTable.getColumnHeader(o),r&&this.settings.highlightColumnClassName&&a(r,this.settings.highlightColumnClassName));for(var c=0;i>c;c++){n=e.wtTable.rowFilter.renderedToSource(c),n>=l[0]&&n<=l[2]&&(r=e.wtTable.getRowHeader(n),r&&this.settings.highlightRowClassName&&a(r,this.settings.highlightRowClassName));for(var d=0;s>d;d++)o=e.wtTable.columnFilter.renderedToSource(d),n>=l[0]&&n<=l[2]&&o>=l[1]&&o<=l[3]?this.settings.className&&this.addClassAtCoords(e,n,o,this.settings.className):n>=l[0]&&n<=l[2]?this.settings.highlightRowClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightRowClassName):o>=l[1]&&o<=l[3]&&this.settings.highlightColumnClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightColumnClassName)}if(e.getSetting("onBeforeDrawBorders",l,this.settings.className),this.settings.border){var h=this.getBorder(e);h&&h.appear(l)}}}},{}),window.WalkontableSelection=d},{border:2,"cell/coords":5,"cell/range":6,"helpers/dom/element":44}],19:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableSettings:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).fastInnerText,i=function(e,t){var n=this;this.wot=e,this.instance=e,this.defaults={table:void 0,debug:!1,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,data:void 0,fixedColumnsLeft:0,fixedRowsTop:0,fixedRowsBottom:0,minSpareRows:0,rowHeaders:function(){return[]},columnHeaders:function(){return[]},totalRows:void 0,totalColumns:void 0,cellRenderer:function(e,t,o){var i=n.getSetting("data",e,t);r(o,void 0===i||null===i?"":i)},columnWidth:function(e){},rowHeight:function(e){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellMouseOver:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeDrawBorders:null,onScrollVertically:null,onScrollHorizontally:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,scrollbarWidth:10,scrollbarHeight:10,renderAllRows:!1,groups:!1},this.settings={};for(var o in this.defaults)if(this.defaults.hasOwnProperty(o))if(void 0!==t[o])this.settings[o]=t[o];else{if(void 0===this.defaults[o])throw new Error('A required setting "'+o+'" was not provided');this.settings[o]=this.defaults[o]}};$traceurRuntime.createClass(i,{update:function(e,t){if(void 0===t)for(var n in e)e.hasOwnProperty(n)&&(this.settings[n]=e[n]);else this.settings[e]=t;return this.wot},getSetting:function(e,t,n,o,r){return"function"==typeof this.settings[e]?this.settings[e](t,n,o,r):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]},has:function(e){return!!this.settings[e]}},{}),window.WalkontableSettings=i},{"helpers/dom/element":44}],20:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTable:{get:function(){return C}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.getStyle,d=u.getTrimmingContainer,h=u.hasClass,f=u.index,p=u.offset,g=u.removeClass,m=u.removeTextNodes,v=(u.overlayContainsElement,(r=e("cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords),w=((i=e("cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange,(s=e("filter/column"),s&&s.__esModule&&s||{"default":s}).WalkontableColumnFilter),y=(a=e("filter/row"),a&&a.__esModule&&a||{"default":a}).WalkontableRowFilter,b=(l=e("tableRenderer"),l&&l.__esModule&&l||{"default":l}).WalkontableTableRenderer,C=function(e,t){this.wot=e,this.instance=this.wot,this.TABLE=t,this.TBODY=null,this.THEAD=null,this.COLGROUP=null,this.tableOffset=0,this.holderOffset=0,m(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.colgroupChildrenLength=this.COLGROUP.childNodes.length,this.theadChildrenLength=this.THEAD.firstChild?this.THEAD.firstChild.childNodes.length:0,this.tbodyChildrenLength=this.TBODY.childNodes.length,this.rowFilter=null,this.columnFilter=null};$traceurRuntime.createClass(C,{fixTableDomTree:function(){this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=document.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=document.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=document.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD)),this.wot.getSetting("columnHeaders").length&&!this.THEAD.childNodes.length&&this.THEAD.appendChild(document.createElement("TR"))},createSpreader:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtSpreader",n&&n.insertBefore(t,e),t.appendChild(e)),t.style.position="relative",t},createHider:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtHider",n&&n.insertBefore(t,e),t.appendChild(e)),t},createHolder:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.style.position="relative",t.className="wtHolder",n&&n.insertBefore(t,e),this.isWorkingOnClone()||(t.parentNode.className+="ht_master handsontable"),t.appendChild(e)),t},alignOverlaysWithTrimmingContainer:function(){var e=d(this.wtRootElement);this.isWorkingOnClone()||(this.holder.parentNode.style.position="relative",e===window?(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible"):(this.holder.style.width=c(e,"width"),this.holder.style.height=c(e,"height"),this.holder.style.overflow=""))},isWorkingOnClone:function(){return!!this.wot.cloneSource},draw:function(e){var t=this.instance.getSetting("totalRows");if(this.isWorkingOnClone()||(this.holderOffset=p(this.holder),e=this.wot.wtViewport.createRenderCalculators(e)),e)this.isWorkingOnClone()||this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays&&this.wot.wtOverlays.refresh(!0);else{this.isWorkingOnClone()?this.tableOffset=this.wot.cloneSource.wtTable.tableOffset:this.tableOffset=p(this.TABLE);var n;n=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?0:WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?t-this.wot.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.startRow;var o;o=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?0:this.wot.wtViewport.columnsRenderCalculator.startColumn, -this.rowFilter=new y(n,t,this.wot.getSetting("columnHeaders").length),this.columnFilter=new w(o,this.wot.getSetting("totalColumns"),this.wot.getSetting("rowHeaders").length),this._doDraw(),this.alignOverlaysWithTrimmingContainer()}return this.refreshSelections(e),this.isWorkingOnClone()||(this.wot.wtOverlays.topOverlay.resetFixedPosition(),this.wot.wtOverlays.bottomOverlay.clone&&this.wot.wtOverlays.bottomOverlay.resetFixedPosition(),this.wot.wtOverlays.leftOverlay.resetFixedPosition(),this.wot.wtOverlays.topLeftCornerOverlay&&this.wot.wtOverlays.topLeftCornerOverlay.resetFixedPosition(),this.instance.wtOverlays.bottomLeftCornerOverlay&&this.instance.wtOverlays.bottomLeftCornerOverlay.clone&&this.wot.wtOverlays.bottomLeftCornerOverlay.resetFixedPosition()),this.wot.drawn=!0,this},_doDraw:function(){var e=new b(this);e.render()},removeClassFromCells:function(e){for(var t=this.TABLE.querySelectorAll("."+e),n=0,o=t.length;o>n;n++)g(t[n],e)},refreshSelections:function(e){if(this.wot.selections){var t=this.wot.selections.length;if(e)for(var n=0;t>n;n++)this.wot.selections[n].settings.className&&this.removeClassFromCells(this.wot.selections[n].settings.className),this.wot.selections[n].settings.highlightRowClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightRowClassName),this.wot.selections[n].settings.highlightColumnClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightColumnClassName);for(var o=0;t>o;o++)this.wot.selections[o].draw(this.wot,e)}},getCell:function(e){if(this.isRowBeforeRenderedRows(e.row))return-1;if(this.isRowAfterRenderedRows(e.row))return-2;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];return t?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)]:void 0},getColumnHeader:function(e){var t=void 0!==arguments[1]?arguments[1]:0,n=this.THEAD.childNodes[t];return n?n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]:void 0},getRowHeader:function(e){if(0===this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))return null;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];return t?t.childNodes[0]:void 0},getCoords:function(e){var t=e.parentNode,n=f(t);n=t.parentNode===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);var o=this.columnFilter.visibleRowHeadedColumnToSourceColumn(e.cellIndex);return new v(n,o)},getTrForRow:function(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]},getFirstRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.startRow},getFirstVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.startRow},getFirstRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.startColumn},getFirstVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.startColumn},getLastRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.endRow},getLastVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.endRow},getLastRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.endColumn},getLastVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.endColumn},isRowBeforeRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)<0&&e>=0},isRowAfterViewport:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastVisibleRow()},isRowAfterRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastRenderedRow()},isColumnBeforeViewport:function(e){return this.columnFilter.sourceToRendered(e)<0&&e>=0},isColumnAfterViewport:function(e){return this.columnFilter.sourceToRendered(e)>this.getLastVisibleColumn()},isLastRowFullyVisible:function(){return this.getLastVisibleRow()===this.getLastRenderedRow()},isLastColumnFullyVisible:function(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()},getRenderedColumnsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalColumns"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedColumnsLeft"):this.wot.wtViewport.columnsRenderCalculator.count},getRenderedRowsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalRows"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.instance.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.count},getVisibleRowsCount:function(){return this.wot.wtViewport.rowsVisibleCalculator.count},allRowsInViewport:function(){return this.wot.getSetting("totalRows")==this.getVisibleRowsCount()},getRowHeight:function(e){var t=this.wot.wtSettings.settings.rowHeight(e),n=this.wot.wtViewport.oversizedRows[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getColumnHeaderHeight:function(e){var t=this.wot.wtSettings.settings.defaultRowHeight,n=this.wot.wtViewport.oversizedColumnHeaders[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getVisibleColumnsCount:function(){return this.wot.wtViewport.columnsVisibleCalculator.count},allColumnsInViewport:function(){return this.wot.getSetting("totalColumns")==this.getVisibleColumnsCount()},getColumnWidth:function(e){var t=this.wot.wtSettings.settings.columnWidth;return"function"==typeof t?t=t(e):"object"==typeof t&&(t=t[e]),t||this.wot.wtSettings.settings.defaultColumnWidth},getStretchedColumnWidth:function(e){var t=this.getColumnWidth(e),n=-1===[void 0,null].indexOf(t)?t:this.instance.wtSettings.settings.defaultColumnWidth,o=this.wot.wtViewport.columnsRenderCalculator;if(o){var r=o.getStretchedColumnWidth(e,n);r&&(n=r)}return n}},{}),window.WalkontableTable=C},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":44,tableRenderer:21}],21:[function(e,t,n){"use strict";function o(e,t){var n=document.createElement("TH");return t.insertBefore(n,e),t.removeChild(e),n}function r(e,t){var n=document.createElement("TD");return t.insertBefore(n,e),t.removeChild(e),n}Object.defineProperties(n,{WalkontableTableRenderer:{get:function(){return h}},__esModule:{value:!0}});var i,s=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),a=s.addClass,l=s.empty,u=s.getScrollbarWidth,c=s.hasClass,d=s.innerHeight,h=function(e){this.wtTable=e,this.wot=e.instance,this.instance=e.instance,this.rowFilter=e.rowFilter,this.columnFilter=e.columnFilter,this.TABLE=e.TABLE,this.THEAD=e.THEAD,this.TBODY=e.TBODY,this.COLGROUP=e.COLGROUP,this.rowHeaders=[],this.rowHeaderCount=0,this.columnHeaders=[],this.columnHeaderCount=0,this.fixedRowsTop=0,this.fixedRowsBottom=0};$traceurRuntime.createClass(h,{render:function(){this.wtTable.isWorkingOnClone()||this.wot.getSetting("beforeDraw",!0),this.rowHeaders=this.wot.getSetting("rowHeaders"),this.rowHeaderCount=this.rowHeaders.length,this.fixedRowsTop=this.wot.getSetting("fixedRowsTop"),this.fixedRowsBottom=this.wot.getSetting("fixedRowsBottom"),this.columnHeaders=this.wot.getSetting("columnHeaders"),this.columnHeaderCount=this.columnHeaders.length;var e,t=this.wtTable.getRenderedColumnsCount(),n=this.wtTable.getRenderedRowsCount(),o=this.wot.getSetting("totalColumns"),r=this.wot.getSetting("totalRows"),i=!1;if((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(this.columnHeaders=[],this.columnHeaderCount=0),o>0&&(this.adjustAvailableNodes(),i=!0,this.renderColumnHeaders(),this.renderRows(r,n,t),this.wtTable.isWorkingOnClone()||(e=this.wot.wtViewport.getWorkspaceWidth(),this.wot.wtViewport.containerWidth=null),this.adjustColumnHeaderHeights(),this.adjustColumnWidths(t),this.markOversizedColumns()),i||this.adjustAvailableNodes(),this.removeRedundantRows(n),this.wtTable.isWorkingOnClone()){if(WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)){var s=this.wot.cloneOverlay.instance;this.wot.cloneOverlay.markOversizedFixedBottomRows(),s.wtOverlays.adjustElementsSize()}}else{if(this.markOversizedRows(),this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays.refresh(!1),this.wot.wtOverlays.applyToDOM(),e!==this.wot.wtViewport.getWorkspaceWidth()){this.wot.wtViewport.containerWidth=null;for(var a=this.wtTable.getFirstRenderedColumn(),l=this.wtTable.getLastRenderedColumn(),u=a;l>u;u++){var c=this.wtTable.getStretchedColumnWidth(u),d=this.columnFilter.sourceToRendered(u);this.COLGROUP.childNodes[d+this.rowHeaderCount].style.width=c+"px"}}this.wot.getSetting("onDraw",!0)}},removeRedundantRows:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--},renderRows:function(e,t,n){for(var o,r,i=0,s=this.rowFilter.renderedToSource(i),a=this.wtTable.isWorkingOnClone();e>s&&s>=0;){if(i>1e3)throw new Error("Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.");if(void 0!==t&&i===t)break;if(r=this.getOrCreateTrForRow(i,r),this.renderRowHeaders(s,r),this.adjustColumns(r,n+this.rowHeaderCount),o=this.renderCells(s,r,n),(!a||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM))&&this.resetOversizedRow(s),r.firstChild){var l=this.wot.wtTable.getRowHeight(s);l?(l--,r.firstChild.style.height=l+"px"):r.firstChild.style.height=""}i++,s=this.rowFilter.renderedToSource(i)}},resetOversizedRow:function(e){this.wot.getSetting("externalRowCalculator")||this.wot.wtViewport.oversizedRows&&this.wot.wtViewport.oversizedRows[e]&&(this.wot.wtViewport.oversizedRows[e]=void 0)},markOversizedRows:function(){if(!this.wot.getSetting("externalRowCalculator")){var e,t,n,o,r,i=this.instance.wtTable.TBODY.childNodes.length,s=i*this.instance.wtSettings.settings.defaultRowHeight,a=d(this.instance.wtTable.TBODY)-1;this.instance.getSetting("totalRows");if(s!==a||this.instance.getSetting("fixedRowsBottom"))for(;i;)i--,n=this.instance.wtTable.rowFilter.renderedToSource(i),e=this.instance.wtTable.getRowHeight(n),o=this.instance.wtTable.getTrForRow(n),r=o.querySelector("th"),t=r?d(r):d(o)-1,(!e&&this.instance.wtSettings.settings.defaultRowHeighte)&&(this.instance.wtViewport.oversizedRows[n]=++t)}},markOversizedColumns:function(){var e=this.wot.getOverlayName();if(this.columnHeaderCount&&!this.wot.wtViewport.isMarkedOversizedColumn[e]&&!this.wtTable.isWorkingOnClone()){for(var t=this.wtTable.getRenderedColumnsCount(),n=0;no;o++)this.markIfOversizedColumnHeader(o);this.wot.wtViewport.isMarkedOversizedColumn[e]=!0}},adjustColumnHeaderHeights:function(){for(var e=this.wot.getSetting("columnHeaders"),t=this.wot.wtTable.THEAD.childNodes,n=this.wot.wtViewport.oversizedColumnHeaders,o=0,r=e.length;r>o;o++)if(n[o]){if(0===t[o].childNodes.length)return;t[o].childNodes[0].style.height=n[o]+"px"}},markIfOversizedColumnHeader:function(e){for(var t,n,o,r=this.wot.wtTable.columnFilter.renderedToSource(e),i=this.columnHeaderCount,s=this.wot.wtSettings.settings.defaultRowHeight;i;)i--,t=this.wot.wtTable.getColumnHeaderHeight(i),n=this.wot.wtTable.getColumnHeader(r,i),n&&(o=d(n),(!t&&o>s||o>t)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=o))},renderCells:function(e,t,n){for(var o,i,s=0;n>s;s++)i=this.columnFilter.renderedToSource(s),o=0===s?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)]:o.nextSibling,"TH"==o.nodeName&&(o=r(o,t)),c(o,"hide")||(o.className=""),o.removeAttribute("style"),this.wot.wtSettings.settings.cellRenderer(e,i,o);return o},adjustColumnWidths:function(e){var t=0,n=this.wot.cloneSource?this.wot.cloneSource:this.wot,o=n.wtTable.holder;o.offsetHeightr;r++){var i=this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(r));this.COLGROUP.childNodes[r+this.rowHeaderCount].style.width=i+"px"}},appendToTbody:function(e){this.TBODY.appendChild(e),this.wtTable.tbodyChildrenLength++},getOrCreateTrForRow:function(e,t){var n;return e>=this.wtTable.tbodyChildrenLength?(n=this.createRow(),this.appendToTbody(n)):n=0===e?this.TBODY.firstChild:t.nextSibling,n.className&&n.removeAttribute("class"),n},createRow:function(){for(var e=document.createElement("TR"),t=0;to;o++){var r=this.columnFilter.renderedToSource(o);this.renderColumnHeader(t,r,n.childNodes[o+this.rowHeaderCount])}},adjustColGroups:function(){for(var e=this.wtTable.getRenderedColumnsCount();this.wtTable.colgroupChildrenLengthe+this.rowHeaderCount;)this.COLGROUP.removeChild(this.COLGROUP.lastChild),this.wtTable.colgroupChildrenLength--;this.rowHeaderCount&&a(this.COLGROUP.childNodes[0],"rowHeader")},adjustThead:function(){var e=this.wtTable.getRenderedColumnsCount(),t=this.THEAD.firstChild;if(this.columnHeaders.length){for(var n=0,o=this.columnHeaders.length;o>n;n++){for(t=this.THEAD.childNodes[n],t||(t=document.createElement("TR"),this.THEAD.appendChild(t)),this.theadChildrenLength=t.childNodes.length;this.theadChildrenLengthe+this.rowHeaderCount;)t.removeChild(t.lastChild),this.theadChildrenLength--}var r=this.THEAD.childNodes.length;if(r>this.columnHeaders.length)for(var i=this.columnHeaders.length;r>i;i++)this.THEAD.removeChild(this.THEAD.lastChild)}else t&&l(t)},getTrForColumnHeaders:function(e){return this.THEAD.childNodes[e]},renderColumnHeader:function(e,t,n){return n.className="",n.removeAttribute("style"),this.columnHeaders[e](t,n,e)},adjustColumns:function(e,t){for(var n=e.childNodes.length;t>n;){var o=document.createElement("TD");e.appendChild(o),n++}for(;n>t;)e.removeChild(e.lastChild),n--},removeRedundantColumns:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--}},{}),window.WalkontableTableRenderer=h},{"helpers/dom/element":44}],22:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewport:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=a.getScrollbarWidth,u=a.getScrollTop,c=a.getStyle,d=a.offset,h=a.outerHeight,f=a.outerWidth,p=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,g=(i=e("calculator/viewportColumns"),i&&i.__esModule&&i||{"default":i}).WalkontableViewportColumnsCalculator,m=(s=e("calculator/viewportRows"),s&&s.__esModule&&s||{"default":s}).WalkontableViewportRowsCalculator,v=function(e){var t=this;this.wot=e,this.instance=this.wot,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.isMarkedOversizedColumn={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.eventManager=new p(this.wot),this.eventManager.addEventListener(window,"resize",function(){t.clientHeight=t.getWorkspaceHeight()})};$traceurRuntime.createClass(v,{getWorkspaceHeight:function(){var e,t=this.instance.wtOverlays.topOverlay.trimmingContainer,n=0;return t===window?n=document.documentElement.clientHeight:(e=h(t),n=e>0&&t.clientHeight>0?t.clientHeight:1/0),n},getWorkspaceWidth:function(){var e,t,n=this.instance.getSetting("totalColumns"),o=this.instance.wtOverlays.leftOverlay.trimmingContainer,r=this.instance.getSetting("stretchH"),i=document.documentElement.offsetWidth;return e=Handsontable.freezeOverlays?Math.min(i-this.getWorkspaceOffset().left,i):Math.min(this.getContainerFillWidth(),i-this.getWorkspaceOffset().left,i),o===window&&n>0&&this.sumColumnWidths(0,n-1)>e?document.documentElement.clientWidth:o!==window&&(t=c(this.instance.wtOverlays.leftOverlay.trimmingContainer,"overflow"),"scroll"==t||"hidden"==t||"auto"==t)?Math.max(e,o.clientWidth):"none"!==r&&r?e:Math.max(e,f(this.instance.wtTable.TABLE))},hasVerticalScroll:function(){return this.getWorkspaceActualHeight()>this.getWorkspaceHeight()},hasHorizontalScroll:function(){return this.getWorkspaceActualWidth()>this.getWorkspaceWidth()},sumColumnWidths:function(e,t){for(var n=0;t>e;)n+=this.wot.wtTable.getColumnWidth(e),e++;return n},getContainerFillWidth:function(){if(this.containerWidth)return this.containerWidth;var e,t,n=this.instance.wtTable.holder;return t=document.createElement("div"),t.style.width="100%",t.style.height="1px",n.appendChild(t),e=t.offsetWidth,this.containerWidth=e,n.removeChild(t),e},getWorkspaceOffset:function(){return d(this.wot.wtTable.TABLE)},getWorkspaceActualHeight:function(){return h(this.wot.wtTable.TABLE)},getWorkspaceActualWidth:function(){return f(this.wot.wtTable.TABLE)||f(this.wot.wtTable.TBODY)||f(this.wot.wtTable.THEAD)},getColumnHeaderHeight:function(){return isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=h(this.wot.wtTable.THEAD)),this.columnHeaderHeight},getViewportHeight:function(){var e,t=this.getWorkspaceHeight();return t===1/0?t:(e=this.getColumnHeaderHeight(),e>0&&(t-=e),t)},getRowHeaderWidth:function(){if(this.wot.cloneSource)return this.wot.cloneSource.wtViewport.getRowHeaderWidth();if(isNaN(this.rowHeaderWidth)){var e=this.instance.getSetting("rowHeaders");if(e.length){var t=this.instance.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(var n=0,o=e.length;o>n;n++)t?(this.rowHeaderWidth+=f(t),t=t.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0}return this.rowHeaderWidth},getViewportWidth:function(){var e,t=this.getWorkspaceWidth();return t===1/0?t:(e=this.getRowHeaderWidth(),e>0?t-e:t)},createRowsCalculator:function(){var e,t,n,o,r,i,s,a=void 0!==arguments[0]?arguments[0]:!1,c=this;return this.rowHeaderWidth=NaN,e=this.wot.wtSettings.settings.renderAllRows?1/0:this.getViewportHeight(),t=u(this.wot.wtOverlays.mainTableScrollableElement)-this.wot.wtOverlays.topOverlay.getTableParentOffset(),0>t&&(t=0),n=this.wot.getSetting("fixedRowsTop"),r=this.wot.getSetting("fixedRowsBottom"),s=this.wot.getSetting("totalRows"),n&&(i=this.wot.wtOverlays.topOverlay.sumCellSizes(0,n),t+=i,e-=i),r&&this.wot.wtOverlays.bottomOverlay.clone&&(i=this.wot.wtOverlays.bottomOverlay.sumCellSizes(s-r,s),e-=i),o=this.wot.wtTable.holder.clientHeight===this.wot.wtTable.holder.offsetHeight?0:l(),new m(e,t,this.wot.getSetting("totalRows"),function(e){return c.wot.wtTable.getRowHeight(e)},a?null:this.wot.wtSettings.settings.viewportRowCalculatorOverride,a,o)},createColumnsCalculator:function(){var e,t,n=void 0!==arguments[0]?arguments[0]:!1,o=this,r=this.getViewportWidth();if(this.columnHeaderHeight=NaN,e=this.wot.wtOverlays.leftOverlay.getScrollPosition()-this.wot.wtOverlays.leftOverlay.getTableParentOffset(),0>e&&(e=0),t=this.wot.getSetting("fixedColumnsLeft")){var i=this.wot.wtOverlays.leftOverlay.sumCellSizes(0,t);e+=i,r-=i}return this.wot.wtTable.holder.clientWidth!==this.wot.wtTable.holder.offsetWidth&&(r-=l()),new g(r,e,this.wot.getSetting("totalColumns"),function(e){return o.wot.wtTable.getColumnWidth(e)},n?null:this.wot.wtSettings.settings.viewportColumnCalculatorOverride,n,this.wot.getSetting("stretchH"))},createRenderCalculators:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e){var t=this.createRowsCalculator(!0),n=this.createColumnsCalculator(!0);this.areAllProposedVisibleRowsAlreadyRendered(t)&&this.areAllProposedVisibleColumnsAlreadyRendered(n)||(e=!1)}return e||(this.rowsRenderCalculator=this.createRowsCalculator(),this.columnsRenderCalculator=this.createColumnsCalculator()),this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,e},createVisibleCalculators:function(){this.rowsVisibleCalculator=this.createRowsCalculator(!0),this.columnsVisibleCalculator=this.createColumnsCalculator(!0)},areAllProposedVisibleRowsAlreadyRendered:function(e){return this.rowsVisibleCalculator?e.startRow0?!1:e.endRow>this.rowsRenderCalculator.endRow||e.endRow===this.rowsRenderCalculator.endRow&&e.endRow0?!1:e.endColumn>this.columnsRenderCalculator.endColumn||e.endColumn===this.columnsRenderCalculator.endColumn&&e.endColumn=0;s--)if(null===e[s])e.splice(s,1);else{var a=e[s][0],l=d.propToCol(e[s][1]),u=g.runHooks("modifyCol",l),c=g.getCellMeta(a,u);if("numeric"===c.type&&"string"==typeof e[s][3]&&e[s][3].length>0&&(/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3])||c.format)){var h=e[s][3].length;"undefined"==typeof c.language?C.language("en"):e[s][3].indexOf(".")===h-3&&-1===e[s][3].indexOf(",")?C.language("en"):C.language(c.language),C.validate(e[s][3])&&(e[s][3]=C().unformat(e[s][3]))}g.getCellValidator(c)&&(i.addValidatorToQueue(),g.validateCell(e[s][3],c,function(t,n){return function(o){if("boolean"!=typeof o)throw new Error("Validation error: result is not boolean");o===!1&&n.allowInvalid===!1&&(e.splice(t,1),n.valid=!0,--t),i.removeValidatorFormQueue()}}(s,c),t))}i.checkIfQueueIsEmpty()}function r(e,t){var n=e.length-1;if(!(0>n)){for(;n>=0;n--)if(null!==e[n]){if(null!=e[n][2]||null!=e[n][3]){if(c.settings.allowInsertRow)for(;e[n][0]>g.countRows()-1;)d.createRow();if("array"===g.dataType&&c.settings.allowInsertColumn)for(;d.propToCol(e[n][1])>g.countCols()-1;)d.createCol();d.set(e[n][0],e[n][1],e[n][3])}}else e.splice(n,1);g.forceFullRender=!0,h.adjustRowsAndCols(),Handsontable.hooks.run(g,"beforeChangeRender",e,t),f.refreshBorders(null,!0),g.view.wt.wtOverlays.adjustElementsSize(),Handsontable.hooks.run(g,"afterChange",e,t||"edit")}}function i(e,t,n){ -return"object"==typeof e?e:[[e,t,n]]}function s(e){if(e.hasOwnProperty("type")){var t,n={};if("object"==typeof e.type)t=e.type;else if("string"==typeof e.type&&(t=Handsontable.cellTypes[e.type],void 0===t))throw new Error('You declared cell type "'+e.type+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');for(var o in t)t.hasOwnProperty(o)&&!e.hasOwnProperty(o)&&(n[o]=t[o]);return n}}function a(e){return Handsontable.hooks.run(g,"modifyRow",e)}function l(e){return Handsontable.hooks.run(g,"modifyCol",e)}function u(){throw new Error("This method cannot be called because this Handsontable instance has been destroyed")}var c,d,h,f,p,g=this,m=function(){},v=H(g);x(m.prototype,X.prototype),x(m.prototype,t),x(m.prototype,s(t)),this.rootElement=e,this.isHotTableEnv=S(this.rootElement),Handsontable.eventManager.isHotTableEnv=this.isHotTableEnv,this.container=document.createElement("DIV"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),this.guid="ht_"+j(),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid),c={cellSettings:[],columnSettings:[],columnsSettingConflicts:["data","width"],settings:new m,selRange:null,isPopulated:null,scrollable:null,firstRun:!0},h={alter:function(e,t,n,o,r){var i;switch(n=n||1,e){case"insert_row":if(g.getSettings().maxRows===g.countRows())return;i=d.createRow(t,n),i&&(f.isSelected()&&c.selRange.from.row>=t?(c.selRange.from.row=c.selRange.from.row+i,f.transformEnd(i,0)):f.refreshBorders());break;case"insert_col":if(i=d.createCol(t,n)){if(Array.isArray(g.getSettings().colHeaders)){var s=[t,0];s.length+=i,Array.prototype.splice.apply(g.getSettings().colHeaders,s)}f.isSelected()&&c.selRange.from.col>=t?(c.selRange.from.col=c.selRange.from.col+i,f.transformEnd(0,i)):f.refreshBorders()}break;case"remove_row":t=g.runHooks("modifyCol",t),d.removeRow(t,n),c.cellSettings.splice(t,n);var a=g.countRows(),l=g.getSettings().fixedRowsTop;l>=t+1&&(g.getSettings().fixedRowsTop-=Math.min(n,l-t));var u=g.getSettings().fixedRowsBottom;u&&t+1>=a-u&&(g.getSettings().fixedRowsBottom-=Math.min(n,u-t)),h.adjustRowsAndCols(),f.refreshBorders();break;case"remove_col":d.removeCol(t,n);for(var p=0,m=d.getAll().length;m>p;p++)p in c.cellSettings&&c.cellSettings[p].splice(t,n);var v=g.getSettings().fixedColumnsLeft;v>=t+1&&(g.getSettings().fixedColumnsLeft-=Math.min(n,v-t)),Array.isArray(g.getSettings().colHeaders)&&("undefined"==typeof t&&(t=-1),g.getSettings().colHeaders.splice(t,n)),h.adjustRowsAndCols(),f.refreshBorders();break;default:throw new Error('There is no such action "'+e+'"')}r||h.adjustRowsAndCols()},adjustRowsAndCols:function(){if(c.settings.minRows){var e=g.countRows();if(et;t++)d.createRow(g.countRows(),1,!0)}if(c.settings.minSpareRows){var o=g.countEmptyRows(!0);if(oi-1?(l=i-1,a=!0,h>l&&(h=l)):h>i-1&&(h=i-1,a=!0,l>h&&(l=h)),u>s-1?(u=s-1,a=!0,p>u&&(p=u)):p>s-1&&(p=s-1,a=!0,u>p&&(u=p)),a&&g.selectCell(l,u,h,p)}g.view&&g.view.wt.wtOverlays.adjustElementsSize()},populateFromArray:function(e,t,n,o,r,i,s){var a,l,u,d,h=[],f={};if(l=t.length,0===l)return!1;var p,m,v,w;({row:null===n?null:n.row,col:null===n?null:n.col});switch(r){case"shift_down":for(p=n?n.col-e.col+1:0,m=n?n.row-e.row+1:0,t=z(t),u=0,d=t.length,v=Math.max(d,p);v>u;u++)if(d>u){for(a=0,l=t[u].length;m-l>a;a++)t[u].push(t[u][a%l]);t[u].unshift(e.col+u,e.row,0),g.spliceCol.apply(g,t[u])}else t[u%d][0]=e.col+u,g.spliceCol.apply(g,t[u%d]);break;case"shift_right":for(p=n?n.col-e.col+1:0,m=n?n.row-e.row+1:0,a=0,l=t.length,w=Math.max(l,m);w>a;a++)if(l>a){for(u=0,d=t[a].length;p-d>u;u++)t[a].push(t[a][u%d]);t[a].unshift(e.row+a,e.col,0),g.spliceRow.apply(g,t[a])}else t[a%l][0]=e.row+a,g.spliceRow.apply(g,t[a%l]);break;case"overwrite":default:f.row=e.row,f.col=e.col;var y,b={row:n&&e?n.row-e.row+1:1,col:n&&e?n.col-e.col+1:1},C=0,R=0,_=!0,E=function(e){var n=void 0!==arguments[1]?arguments[1]:null,o=t[e%t.length];return null!==n?o[n%o.length]:o},S=t.length,T=n?n.row-e.row+1:0;for(l=n?T:Math.max(S,T),a=0;l>a&&!(n&&f.row>n.row&&T>S||!c.settings.allowInsertRow&&f.row>g.countRows()-1||f.row>=c.settings.maxRows);a++){var O=a-C,M=E(O).length,k=n?n.col-e.col+1:0;if(d=n?k:Math.max(M,k),f.col=e.col,y=g.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!y.skipRowOnPaste){for(R=0,u=0;d>u&&!(n&&f.col>n.col&&k>M||!c.settings.allowInsertColumn&&f.col>g.countCols()-1||f.col>=c.settings.maxCols);u++)if(y=g.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!y.skipColumnOnPaste)if(y.readOnly)f.col++;else{var H=u-R,D=E(O,H),x=g.getDataAtCell(f.row,f.col),L={row:O,col:H};if("autofill"===o){var W=g.runHooks("beforeAutofillInsidePopulate",L,i,t,s,{},b);W&&(D="undefined"==typeof W.value?D:W.value)}if(null!==D&&"object"==typeof D)if(null===x||"object"!=typeof x)_=!1;else{var I=A(x[0]||x),j=A(D[0]||D);P(I,j)?D=N(D):_=!1}else null!==x&&"object"==typeof x&&(_=!1);_&&h.push([f.row,f.col,D]),_=!0,f.col++}else R++,f.col++,d++;f.row++}else C++,f.row++,l++}g.setDataAtCell(h,null,null,o||"populateFromArray")}}},this.selection=f={inProgress:!1,selectedHeader:{cols:!1,rows:!1},setSelectedHeaders:function(e,t){g.selection.selectedHeader.rows=e,g.selection.selectedHeader.cols=t},begin:function(){g.selection.inProgress=!0},finish:function(){var e=g.getSelected();Handsontable.hooks.run(g,"afterSelectionEnd",e[0],e[1],e[2],e[3]),Handsontable.hooks.run(g,"afterSelectionEndByProp",e[0],g.colToProp(e[1]),e[2],g.colToProp(e[3])),g.selection.inProgress=!1},isInProgress:function(){return g.selection.inProgress},setRangeStart:function(e,t){Handsontable.hooks.run(g,"beforeSetRangeStart",e),c.selRange=new $(e,e,e),f.setRangeEnd(e,null,t)},setRangeEnd:function(e,t,n){if(null!==c.selRange){var o,r=!1,i=!0,s=g.view.wt.wtTable.getFirstVisibleRow(),a=g.view.wt.wtTable.getFirstVisibleColumn(),l={row:null,col:null};Handsontable.hooks.run(g,"beforeSetRangeEnd",e),g.selection.begin(),l.row=e.row<0?s:e.row,l.col=e.col<0?a:e.col,c.selRange.to=new G(l.row,l.col),c.settings.multiSelect||(c.selRange.from=e),g.view.wt.selections.current.clear(),o=g.getCellMeta(c.selRange.highlight.row,c.selRange.highlight.col).disableVisualSelection,"string"==typeof o&&(o=[o]),(o===!1||Array.isArray(o)&&-1===o.indexOf("current"))&&g.view.wt.selections.current.add(c.selRange.highlight),g.view.wt.selections.area.clear(),(o===!1||Array.isArray(o)&&-1===o.indexOf("area"))&&f.isMultiple()&&(g.view.wt.selections.area.add(c.selRange.from),g.view.wt.selections.area.add(c.selRange.to)),(c.settings.currentRowClassName||c.settings.currentColClassName)&&(g.view.wt.selections.highlight.clear(),g.view.wt.selections.highlight.add(c.selRange.from),g.view.wt.selections.highlight.add(c.selRange.to)),Handsontable.hooks.run(g,"afterSelection",c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col),Handsontable.hooks.run(g,"afterSelectionByProp",c.selRange.from.row,d.colToProp(c.selRange.from.col),c.selRange.to.row,d.colToProp(c.selRange.to.col)),(0===c.selRange.from.row&&c.selRange.to.row===g.countRows()-1&&g.countRows()>1||0===c.selRange.from.col&&c.selRange.to.col===g.countCols()-1&&g.countCols()>1)&&(r=!0),(e.row<0||e.col<0)&&(i=!1),t!==!1&&!r&&i&&(c.selRange.from&&!f.isMultiple()?g.view.scrollViewport(c.selRange.from):g.view.scrollViewport(e)),f.refreshBorders(null,n)}},refreshBorders:function(e,t){t||p.destroyEditor(e),g.view.render(),f.isSelected()&&!t&&p.prepareEditor()},isMultiple:function(){var e=!(c.selRange.to.col===c.selRange.from.col&&c.selRange.to.row===c.selRange.from.row),t=Handsontable.hooks.run(g,"afterIsMultipleSelection",e);return e?t:void 0},transformStart:function(e,t,n,o){var r,i,s,a,l=new G(e,t),u=0,d=0;g.runHooks("modifyTransformStart",l),r=g.countRows(),i=g.countCols(),a=g.getSettings().fixedRowsBottom,c.selRange.highlight.row+e>r-1?n&&c.settings.minSpareRows>0&&!(a&&c.selRange.highlight.row>=r-a-1)?(g.alter("insert_row",r),r=g.countRows()):c.settings.autoWrapCol&&(l.row=1-r,l.col=c.selRange.highlight.col+l.col==i-1?1-i:1):c.settings.autoWrapCol&&c.selRange.highlight.row+l.row<0&&c.selRange.highlight.col+l.col>=0&&(l.row=r-1,l.col=c.selRange.highlight.col+l.col==0?i-1:-1),c.selRange.highlight.col+l.col>i-1?n&&c.settings.minSpareCols>0?(g.alter("insert_col",i),i=g.countCols()):c.settings.autoWrapRow&&(l.row=c.selRange.highlight.row+l.row==r-1?1-r:1,l.col=1-i):c.settings.autoWrapRow&&c.selRange.highlight.col+l.col<0&&c.selRange.highlight.row+l.row>=0&&(l.row=c.selRange.highlight.row+l.row==0?r-1:-1,l.col=i-1),s=new G(c.selRange.highlight.row+l.row,c.selRange.highlight.col+l.col),s.row<0?(u=-1,s.row=0):s.row>0&&s.row>=r&&(u=1,s.row=r-1),s.col<0?(d=-1,s.col=0):s.col>0&&s.col>=i&&(d=1,s.col=i-1),g.runHooks("afterModifyTransformStart",s,u,d),f.setRangeStart(s,o)},transformEnd:function(e,t){var n,o,r,i=new G(e,t),s=0,a=0;g.runHooks("modifyTransformEnd",i),n=g.countRows(),o=g.countCols(),r=new G(c.selRange.to.row+i.row,c.selRange.to.col+i.col),r.row<0?(s=-1,r.row=0):r.row>0&&r.row>=n&&(s=1,r.row=n-1),r.col<0?(a=-1,r.col=0):r.col>0&&r.col>=o&&(a=1,r.col=o-1),g.runHooks("afterModifyTransformEnd",r,s,a),f.setRangeEnd(r,!0)},isSelected:function(){return null!==c.selRange},inInSelection:function(e){return f.isSelected()?c.selRange.includes(e):!1},deselect:function(){f.isSelected()&&(g.selection.inProgress=!1,c.selRange=null,g.view.wt.selections.current.clear(),g.view.wt.selections.area.clear(),(c.settings.currentRowClassName||c.settings.currentColClassName)&&g.view.wt.selections.highlight.clear(),p.destroyEditor(),f.refreshBorders(),Handsontable.hooks.run(g,"afterDeselect"))},selectAll:function(){c.settings.multiSelect&&(f.setRangeStart(new G(0,0)),f.setRangeEnd(new G(g.countRows()-1,g.countCols()-1),!1))},empty:function(){if(f.isSelected()){var e,t,n=c.selRange.getTopLeftCorner(),o=c.selRange.getBottomRightCorner(),r=[];for(e=n.row;e<=o.row;e++)for(t=n.col;t<=o.col;t++)g.getCellMeta(e,t).readOnly||r.push([e,t,""]);g.setDataAtCell(r)}}},this.init=function(){Handsontable.hooks.run(g,"beforeInit"),Handsontable.mobileBrowser&&_(g.rootElement,"mobile"),this.updateSettings(c.settings,!0),this.view=new F(this),p=new k(g,c,f,d),this.forceFullRender=!0,Handsontable.hooks.run(g,"init"),this.view.render(),"object"==typeof c.firstRun&&(Handsontable.hooks.run(g,"afterChange",c.firstRun[0],c.firstRun[1]),c.firstRun=!1),Handsontable.hooks.run(g,"afterInit")},this.validateCell=function(e,t,n,o){function r(e){var o=t.col,r=t.row,i=g.getCell(r,o,!0);i&&g.view.wt.wtSettings.settings.cellRenderer(r,o,i),n(e)}var i=g.getCellValidator(t);"[object RegExp]"===Object.prototype.toString.call(i)&&(i=function(e){return function(t,n){n(e.test(t))}}(i)),"function"==typeof i?(e=Handsontable.hooks.run(g,"beforeValidate",e,t.row,t.prop,o),g._registerTimeout(setTimeout(function(){i.call(t,e,function(n){n=Handsontable.hooks.run(g,"afterValidate",n,e,t.row,t.prop,o),t.valid=n,r(n),Handsontable.hooks.run(g,"postAfterValidate",n,e,t.row,t.prop,o)})},0))):(t.valid=!0,r(t.valid))},this.setDataAtCell=function(e,t,n,s){var a,l,u,c=i(e,t,n),h=[];for(a=0,l=c.length;l>a;a++){if("object"!=typeof c[a])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof c[a][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");u=d.colToProp(c[a][1]),h.push([c[a][0],u,d.get(c[a][0],u),c[a][2]])}s||"object"!=typeof e||(s=t),o(h,s,function(){r(h,s)})},this.setDataAtRowProp=function(e,t,n,s){var a,l,u=i(e,t,n),c=[];for(a=0,l=u.length;l>a;a++)c.push([u[a][0],u[a][1],d.get(u[a][0],u[a][1]),u[a][2]]);s||"object"!=typeof e||(s=t),o(c,s,function(){r(c,s)})},this.listen=function(){Handsontable.activeGuid=g.guid,document.activeElement&&document.activeElement!==document.body?document.activeElement.blur():document.activeElement||document.body.focus()},this.unlisten=function(){Handsontable.activeGuid=null},this.isListening=function(){return Handsontable.activeGuid===g.guid},this.destroyEditor=function(e){f.refreshBorders(e)},this.populateFromArray=function(e,t,n,o,r,i,s,a,l){var u;if("object"!=typeof n||"object"!=typeof n[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");return u="number"==typeof o?new G(o,r):null,h.populateFromArray(new G(e,t),n,u,i,s,a,l)},this.spliceCol=function(e,t,n){return d.spliceCol.apply(d,arguments)},this.spliceRow=function(e,t,n){return d.spliceRow.apply(d,arguments)},this.getSelected=function(){return f.isSelected()?[c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col]:void 0},this.getSelectedRange=function(){return f.isSelected()?c.selRange:void 0},this.render=function(){g.view&&(g.renderCall=!0,g.forceFullRender=!0,f.refreshBorders(null,!0))},this.loadData=function(e){function t(){c.cellSettings.length=0}if("object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error("loadData only accepts array of objects or array of arrays ("+typeof e+" given)");e=[];for(var n,o=0,r=c.settings.startRows;r>o;o++){n=[];for(var i=0,s=c.settings.startCols;s>i;i++)n.push(null);e.push(n)}}c.isPopulated=!1,m.prototype.data=e,Array.isArray(c.settings.dataSchema)||Array.isArray(e[0])?g.dataType="array":"function"==typeof c.settings.dataSchema?g.dataType="function":g.dataType="object",d=new M(g,c,m),t(),h.adjustRowsAndCols(),Handsontable.hooks.run(g,"afterLoadData"),c.firstRun?c.firstRun=[null,"loadData"]:(Handsontable.hooks.run(g,"afterChange",null,"loadData"),g.render()),c.isPopulated=!0},this.getData=function(e,t,n,o){return"undefined"==typeof e?d.getAll():d.getRange(new G(e,t),new G(n,o),d.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,n,o){return d.getCopyableText(new G(e,t),new G(n,o))},this.getCopyableData=function(e,t){return d.getCopyable(e,d.colToProp(t))},this.getSchema=function(){return d.getSchema()},this.updateSettings=function(e,t){var n,o;if("undefined"!=typeof e.rows)throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');if("undefined"!=typeof e.cols)throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');for(n in e)"data"!==n&&(Handsontable.hooks.getRegistered().indexOf(n)>-1?("function"==typeof e[n]||Array.isArray(e[n]))&&g.addHook(n,e[n]):!t&&e.hasOwnProperty(n)&&(m.prototype[n]=e[n]));if(void 0===e.data&&void 0===c.settings.data?g.loadData(null):void 0!==e.data?g.loadData(e.data):void 0!==e.columns&&d.createMap(),o=g.countCols(),c.cellSettings.length=0,o>0){var r,i;for(n=0;o>n;n++)c.columnSettings[n]=O(m,c.columnsSettingConflicts),r=c.columnSettings[n].prototype,m.prototype.columns&&(i=m.prototype.columns[n],x(r,i),x(r,s(i)))}if("undefined"!=typeof e.cell)for(n in e.cell)if(e.cell.hasOwnProperty(n)){var a=e.cell[n];g.setCellMetaObject(a.row,a.col,a)}if(Handsontable.hooks.run(g,"afterCellMetaReset"),"undefined"!=typeof e.className&&(m.prototype.className&&T(g.rootElement,m.prototype.className),e.className&&_(g.rootElement,e.className)),"undefined"!=typeof e.height){var l=e.height;"function"==typeof l&&(l=l()),g.rootElement.style.height=l+"px"}if("undefined"!=typeof e.width){var u=e.width;"function"==typeof u&&(u=u()),g.rootElement.style.width=u+"px"}l&&(g.rootElement.style.overflow="hidden"),t||Handsontable.hooks.run(g,"afterUpdateSettings"),h.adjustRowsAndCols(),g.view&&!c.firstRun&&(g.forceFullRender=!0,f.refreshBorders(null,!0))},this.getValue=function(){var e=g.getSelected();if(m.prototype.getValue){if("function"==typeof m.prototype.getValue)return m.prototype.getValue.call(g);if(e)return g.getData()[e[0]][m.prototype.getValue]}else if(e)return g.getDataAtCell(e[0],e[1])},this.getSettings=function(){return c.settings},this.clear=function(){f.selectAll(),f.empty()},this.alter=function(e,t,n,o,r){h.alter(e,t,n,o,r)},this.getCell=function(e,t,n){return g.view.getCellAtCoords(new G(e,t),n)},this.getCoords=function(e){return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable,e)},this.colToProp=function(e){return d.colToProp(e)},this.propToCol=function(e){return d.propToCol(e)},this.getDataAtCell=function(e,t){return d.get(e,d.colToProp(t))},this.getDataAtRowProp=function(e,t){return d.get(e,t)},this.getDataAtCol=function(e){var t=[];return t.concat.apply(t,d.getRange(new G(0,e),new G(c.settings.data.length-1,e),d.DESTINATION_RENDERER))},this.getDataAtProp=function(e){var t,n=[];return t=d.getRange(new G(0,d.propToCol(e)),new G(c.settings.data.length-1,d.propToCol(e)),d.DESTINATION_RENDERER),n.concat.apply(n,t)},this.getSourceDataAtCol=function(e){for(var t=[],n=c.settings.data,o=0;o=0;){for(var r=g.countCols()-1;r>=0;)t.addValidatorToQueue(),g.validateCell(g.getDataAtCell(o,r),g.getCellMeta(o,r),function(e){if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");e===!1&&(t.valid=!1),t.removeValidatorFormQueue()},"validateCells"),r--;o--}t.checkIfQueueIsEmpty()},this.getRowHeader=function(e){if(void 0===e){for(var t=[],n=0,o=g.countRows();o>n;n++)t.push(g.getRowHeader(n));return t}return Array.isArray(c.settings.rowHeaders)&&void 0!==c.settings.rowHeaders[e]?c.settings.rowHeaders[e]:"function"==typeof c.settings.rowHeaders?c.settings.rowHeaders(e):c.settings.rowHeaders&&"string"!=typeof c.settings.rowHeaders&&"number"!=typeof c.settings.rowHeaders?e+1:c.settings.rowHeaders},this.hasRowHeaders=function(){return!!c.settings.rowHeaders},this.hasColHeaders=function(){if(void 0!==c.settings.colHeaders&&null!==c.settings.colHeaders)return!!c.settings.colHeaders;for(var e=0,t=g.countCols();t>e;e++)if(g.getColHeader(e))return!0;return!1},this.getColHeader=function(e){if(void 0===e){for(var t=[],n=0,o=g.countCols();o>n;n++)t.push(g.getColHeader(n));return t}var r=e;return e=Handsontable.hooks.run(g,"modifyCol",e),c.settings.columns&&c.settings.columns[e]&&c.settings.columns[e].title?c.settings.columns[e].title:Array.isArray(c.settings.colHeaders)&&void 0!==c.settings.colHeaders[e]?c.settings.colHeaders[e]:"function"==typeof c.settings.colHeaders?c.settings.colHeaders(e):c.settings.colHeaders&&"string"!=typeof c.settings.colHeaders&&"number"!=typeof c.settings.colHeaders?U(r):c.settings.colHeaders},this._getColWidthFromSettings=function(e){var t=g.getCellMeta(0,e),n=t.width;if((void 0===n||n===c.settings.width)&&(n=t.colWidths),void 0!==n&&null!==n){switch(typeof n){case"object":n=n[e];break;case"function":n=n(e)}"string"==typeof n&&(n=parseInt(n,10))}return n},this.getColWidth=function(e){var t=g._getColWidthFromSettings(e);return t=Handsontable.hooks.run(g,"modifyColWidth",t,e),void 0===t&&(t=K.DEFAULT_WIDTH),t},this._getRowHeightFromSettings=function(e){var t=c.settings.rowHeights;if(void 0!==t&&null!==t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){var t=g._getRowHeightFromSettings(e);return t=Handsontable.hooks.run(g,"modifyRowHeight",t,e)},this.countRows=function(){return c.settings.data.length},this.countCols=function(){return"object"===g.dataType||"function"===g.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:d.colToPropCache.length:"array"===g.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:c.settings.data&&c.settings.data[0]&&c.settings.data[0].length?c.settings.data[0].length:0:void 0},this.getColspanOffset=function(e,t){var n=0;if(g.colspanArray){for(var o=0;e>o;o++)n+=g.colspanArray[t][o]-1||0;return n}for(var n=0,r=g.view.wt.wtTable.THEAD.childNodes.length-t-1,i=g.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(r+1,10)+")"),s=g.view.wt.wtSettings.settings.rowHeaders().length,o=s;s+e>o;o++)i.childNodes[o].hasAttribute("colspan")&&(n+=parseInt(i.childNodes[o].getAttribute("colspan"),10)-1);return n},this.getHeaderColspan=function(e,t){var n=g.view.wt.wtTable.THEAD.childNodes.length-t-1,o=g.view.wt.wtSettings.settings.rowHeaders().length,r=g.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(n+1,10)+")"),i=o+e-g.view.wt.wtViewport.columnsRenderCalculator.startColumn;return r.childNodes[i].hasAttribute("colspan")?parseInt(r.childNodes[i].getAttribute("colspan"),10):0},this.rowOffset=function(){return g.view.wt.wtTable.getFirstRenderedRow()},this.colOffset=function(){return g.view.wt.wtTable.getFirstRenderedColumn()},this.countRenderedRows=function(){return g.view.wt.drawn?g.view.wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return g.view.wt.drawn?g.view.wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return g.view.wt.drawn?g.view.wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return g.view.wt.drawn?g.view.wt.wtTable.getVisibleColumnsCount():-1},this.countEmptyRows=function(e){for(var t,n=g.countRows()-1,o=0;n>=0;){if(t=Handsontable.hooks.run(this,"modifyRow",n),g.isEmptyRow(t))o++;else if(e)break;n--}return o},this.countEmptyCols=function(e){if(g.countRows()<1)return 0;for(var t=g.countCols()-1,n=0;t>=0;){if(g.isEmptyCol(t))n++;else if(e)break;t--}return n},this.isEmptyRow=function(e){return c.settings.isEmptyRow.call(g,e)},this.isEmptyCol=function(e){return c.settings.isEmptyCol.call(g,e)},this.selectCell=function(e,t,n,o,r,i){var s;if(i="undefined"==typeof i||i===!0,"number"!=typeof e||0>e||e>=g.countRows())return!1;if("number"!=typeof t||0>t||t>=g.countCols())return!1;if("undefined"!=typeof n){if("number"!=typeof n||0>n||n>=g.countRows())return!1;if("number"!=typeof o||0>o||o>=g.countCols())return!1}return s=new G(e,t),c.selRange=new $(s,s,s),document.activeElement&&document.activeElement!==document.documentElement&&document.activeElement!==document.body&&document.activeElement.blur(),i&&g.listen(),"undefined"==typeof n?f.setRangeEnd(c.selRange.from,r):f.setRangeEnd(new G(n,o),r),g.selection.finish(),!0},this.selectCellByProp=function(e,t,n,o,r){return arguments[1]=d.propToCol(arguments[1]),"undefined"!=typeof arguments[3]&&(arguments[3]=d.propToCol(arguments[3])),g.selectCell.apply(g,arguments)},this.deselectCell=function(){f.deselect()},this.destroy=function(){g._clearTimeouts(),g.view&&g.view.destroy(),E(g.rootElement),v.destroy(),Handsontable.hooks.run(g,"afterDestroy"),Handsontable.hooks.destroy(g);for(var e in g)g.hasOwnProperty(e)&&("function"==typeof g[e]?g[e]=u:"guid"!==e&&(g[e]=null));c=null,d=null,h=null,f=null,p=null,g=null,m=null},this.getActiveEditor=function(){return p.getActiveEditor()},this.getPlugin=function(e){return W(this,e)},this.getInstance=function(){return g},this.addHook=function(e,t){Handsontable.hooks.add(e,t,g)},this.addHookOnce=function(e,t){Handsontable.hooks.once(e,t,g)},this.removeHook=function(e,t){Handsontable.hooks.remove(e,t,g)},this.runHooks=function(e,t,n,o,r,i,s){return Handsontable.hooks.run(g,e,t,n,o,r,i,s)},this.timeouts=[],this._registerTimeout=function(e){this.timeouts.push(e)},this._clearTimeouts=function(){for(var e=0,t=this.timeouts.length;t>e;e++)clearTimeout(this.timeouts[e])},this.version=Handsontable.version,Handsontable.hooks.run(g,"construct")};var X=function(){};X.prototype={data:void 0,dataSchema:void 0,width:void 0,height:void 0,startRows:5,startCols:5,rowHeaders:null,colHeaders:null,colWidths:void 0,columns:void 0,cells:void 0,cell:[],comments:!1,customBorders:!1,minRows:0,minCols:0,maxRows:1/0,maxCols:1/0,minSpareRows:0,minSpareCols:0,allowInsertRow:!0,allowInsertColumn:!0,allowRemoveRow:!0,allowRemoveColumn:!0,multiSelect:!0,fillHandle:!0,fixedRowsTop:0,fixedRowsBottom:0,fixedColumnsLeft:0,outsideClickDeselects:!0,enterBeginsEditing:!0,enterMoves:{row:1,col:0},tabMoves:{row:0,col:1},autoWrapRow:!1,autoWrapCol:!1,copyRowsLimit:1e3,copyColsLimit:1e3,pasteMode:"overwrite",persistentState:!1,currentRowClassName:void 0,currentColClassName:void 0,className:void 0,tableClassName:void 0,stretchH:"none",isEmptyRow:function(e){var t,n,o,r;for(t=0,n=this.countCols();n>t;t++)if(o=this.getDataAtCell(e,t),""!==o&&null!==o&&"undefined"!=typeof o)return"object"==typeof o?(r=this.getCellMeta(e,t),P(this.getSchema()[r.prop],o)):!1;return!0},isEmptyCol:function(e){var t,n,o;for(t=0,n=this.countRows();n>t;t++)if(o=this.getDataAtCell(t,e),""!==o&&null!==o&&"undefined"!=typeof o)return!1;return!0},observeDOMVisibility:!0,allowInvalid:!0,invalidCellClassName:"htInvalid",placeholder:!1,placeholderCellClassName:"htPlaceholder",readOnlyCellClassName:"htDimmed",renderer:void 0,commentedCellClassName:"htCommentCell",fragmentSelection:!1,readOnly:!1,skipColumnOnPaste:!1,search:!1,type:"text",copyable:!0,editor:void 0,autoComplete:void 0,visibleRows:10,trimDropdown:!0,debug:!1,wordWrap:!0,noWordWrapClassName:"htNoWrap",contextMenu:void 0,contextMenuCopyPaste:void 0,copyPaste:void 0,undo:void 0,columnSorting:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,mergeCells:!1,viewportRowRenderingOffset:"auto",viewportColumnRenderingOffset:"auto",validator:void 0,disableVisualSelection:!1,sortIndicator:!1,manualColumnFreeze:void 0,trimWhitespace:!0,settings:void 0,source:void 0,title:void 0,checkedTemplate:void 0,uncheckedTemplate:void 0,label:void 0,format:void 0,language:void 0,selectOptions:void 0,autoColumnSize:void 0,autoRowSize:void 0,dateFormat:void 0,correctFormat:!1,defaultDate:void 0,strict:void 0,renderAllRows:void 0},Handsontable.DefaultSettings=X},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,dataMap:26,editorManager:27,eventManager:40,"helpers/array":41,"helpers/data":43,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,numeral:"numeral",plugins:55,renderers:86,tableView:95}],26:[function(e,t,n){"use strict";function o(e,t,n){this.instance=e,this.priv=t,this.GridSettings=n,this.dataSource=this.instance.getSettings().data,this.dataSource[0]?this.duckSchema=this.recursiveDuckSchema(this.dataSource[0]):this.duckSchema={},this.createMap()}Object.defineProperties(n,{DataMap:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u,c=(r=e("SheetClip"),r&&r.__esModule&&r||{"default":r})["default"],d=(i=e("helpers/data"),i&&i.__esModule&&i||{"default":i}).cellMethodLookupFactory,h=(s=e("helpers/setting"),s&&s.__esModule&&s||{"default":s}).columnFactory,f=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),p=f.duckSchema,g=f.deepExtend,m=(l=e("helpers/array"),l&&l.__esModule&&l||{"default":l}),v=m.extendArray,w=m.to2dArray,y=(u=e("multiMap"),u&&u.__esModule&&u||{"default":u}).MultiMap;o.prototype.DESTINATION_RENDERER=1,o.prototype.DESTINATION_CLIPBOARD_GENERATOR=2,o.prototype.recursiveDuckSchema=function(e){return p(e)},o.prototype.recursiveDuckColumns=function(e,t,n){var o,r;if("undefined"==typeof t&&(t=0,n=""),"object"==typeof e&&!Array.isArray(e))for(r in e)e.hasOwnProperty(r)&&(null===e[r]?(o=n+r,this.colToPropCache.push(o),this.propToColCache.set(o,t),t++):t=this.recursiveDuckColumns(e[r],t,r+"."));return t},o.prototype.createMap=function(){var e,t,n=this.getSchema();if("undefined"==typeof n)throw new Error("trying to create `columns` definition but you didnt' provide `schema` nor `data`");this.colToPropCache=[],this.propToColCache=new y;var o=this.instance.getSettings().columns;if(o)for(e=0,t=o.length;t>e;e++)"undefined"!=typeof o[e].data&&(this.colToPropCache[e]=o[e].data,this.propToColCache.set(o[e].data,e));else this.recursiveDuckColumns(n)},o.prototype.colToProp=function(e){return e=Handsontable.hooks.run(this.instance,"modifyCol",e),this.colToPropCache&&"undefined"!=typeof this.colToPropCache[e]?this.colToPropCache[e]:e},o.prototype.propToCol=function(e){var t;return t="undefined"==typeof this.propToColCache.get(e)?e:this.propToColCache.get(e),t=Handsontable.hooks.run(this.instance,"modifyCol",t)},o.prototype.getSchema=function(){var e=this.instance.getSettings().dataSchema;return e?"function"==typeof e?e():e:this.duckSchema},o.prototype.createRow=function(e,t,n){var o,r,i=this.instance.countCols(),s=0;t||(t=1),("number"!=typeof e||e>=this.instance.countRows())&&(e=this.instance.countRows()),r=e;for(var a=this.instance.getSettings().maxRows;t>s&&this.instance.countRows()l;l++)o.push(null)}else"function"===this.instance.dataType?o=this.instance.getSettings().dataSchema(e):(o={},g(o,this.getSchema()));e===this.instance.countRows()?this.dataSource.push(o):this.dataSource.splice(e,0,o),s++,r++}return Handsontable.hooks.run(this.instance,"afterCreateRow",e,s,n),this.instance.forceFullRender=!0,s},o.prototype.createCol=function(e,t,n){if(!this.instance.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");var o,r,i=this.instance.countRows(),s=this.dataSource,a=0;t||(t=1),r=e;for(var l=this.instance.getSettings().maxCols;t>a&&this.instance.countCols()=this.instance.countCols()){for(var u=0;i>u;u++)"undefined"==typeof s[u]&&(s[u]=[]), -s[u].push(null);this.priv.columnSettings.push(o)}else{for(var u=0;i>u;u++)s[u].splice(r,0,null);this.priv.columnSettings.splice(r,0,o)}a++,r++}return Handsontable.hooks.run(this.instance,"afterCreateCol",e,a,n),this.instance.forceFullRender=!0,a},o.prototype.removeRow=function(e,t){t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countRows()+e)%this.instance.countRows();var n=this.physicalRowsToLogical(e,t),o=Handsontable.hooks.run(this.instance,"beforeRemoveRow",e,t);if(o!==!1){var r=this.dataSource,i=r.filter(function(e,t){return-1==n.indexOf(t)});r.length=0,Array.prototype.push.apply(r,i),Handsontable.hooks.run(this.instance,"afterRemoveRow",e,t),this.instance.forceFullRender=!0}},o.prototype.removeCol=function(e,t){if("object"===this.instance.dataType||this.instance.getSettings().columns)throw new Error("cannot remove column with object data source or columns option specified");t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countCols()+e)%this.instance.countCols();var n=Handsontable.hooks.run(this.instance,"beforeRemoveCol",e,t);if(n!==!1){for(var o=this.dataSource,r=0,i=this.instance.countRows();i>r;r++)o[r].splice(e,t);this.priv.columnSettings.splice(e,t),Handsontable.hooks.run(this.instance,"afterRemoveCol",e,t),this.instance.forceFullRender=!0}},o.prototype.spliceCol=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getDataAtCol(e),i=r.slice(t,t+n),s=r.slice(t+n);v(o,s);for(var a=0;n>a;)o.push(null),a++;return w(o),this.instance.populateFromArray(t,e,o,null,null,"spliceCol"),i},o.prototype.spliceRow=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getSourceDataAtRow(e),i=r.slice(t,t+n),s=r.slice(t+n);v(o,s);for(var a=0;n>a;)o.push(null),a++;return this.instance.populateFromArray(e,t,[o],null,null,"spliceRow"),i},o.prototype.get=function(e,t){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e),"string"==typeof t&&t.indexOf(".")>-1){var n=t.split("."),o=this.dataSource[e];if(!o)return null;for(var r=0,i=n.length;i>r;r++)if(o=o[n[r]],"undefined"==typeof o)return null;return o}return"function"==typeof t?t(this.dataSource.slice(e,e+1)[0]):this.dataSource[e]?this.dataSource[e][t]:null};var b=d("copyable",!1);o.prototype.getCopyable=function(e,t){return b.call(this.instance,e,this.propToCol(t))?this.get(e,t):""},o.prototype.set=function(e,t,n,o){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e,o||"datamapGet"),"string"==typeof t&&t.indexOf(".")>-1){for(var r=t.split("."),i=this.dataSource[e],s=0,a=r.length-1;a>s;s++)"undefined"==typeof i[r[s]]&&(i[r[s]]={}),i=i[r[s]];i[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(e,e+1)[0],n):this.dataSource[e][t]=n},o.prototype.physicalRowsToLogical=function(e,t){for(var n,o=this.instance.countRows(),r=(o+e)%o,i=[],s=t;o>r&&s;)n=Handsontable.hooks.run(this.instance,"modifyRow",r),i.push(n),s--,r++;return i},o.prototype.clear=function(){for(var e=0;e=o;o++){for(a=[],i=Math.min(e.col,t.col);s>=i;i++)a.push(u.call(this,o,this.colToProp(i)));l.push(a)}return l},o.prototype.getText=function(e,t){return c.stringify(this.getRange(e,t,this.DESTINATION_RENDERER))},o.prototype.getCopyableText=function(e,t){return c.stringify(this.getRange(e,t,this.DESTINATION_CLIPBOARD_GENERATOR))},Handsontable.DataMap=o},{SheetClip:"SheetClip","helpers/array":41,"helpers/data":43,"helpers/object":49,"helpers/setting":50,multiMap:53}],27:[function(e,t,n){"use strict";function o(e,t,n){function o(e){var o="function"==typeof t.settings.enterMoves?t.settings.enterMoves(event):t.settings.enterMoves;e?n.transformStart(-o.row,-o.col):n.transformStart(o.row,o.col,!0)}function r(e){e?n.transformEnd(-1,0):n.transformStart(-1,0)}function i(e){e?n.transformEnd(1,0):n.transformStart(1,0)}function s(e){e?n.transformEnd(0,1):n.transformStart(0,1)}function a(e){e?n.transformEnd(0,-1):n.transformStart(0,-1)}function l(l){var c,p;if(e.isListening()&&(Handsontable.hooks.run(e,"beforeKeyDown",l),!C&&!v(l)&&(t.lastKeyCode=l.keyCode,n.isSelected()))){if(c=(l.ctrlKey||l.metaKey)&&!l.altKey,y&&!y.isWaiting()&&!(h(l.keyCode)||f(l.keyCode)||c||b.isEditorOpened()))return void b.openEditor("",l);switch(p=l.shiftKey?n.setRangeEnd:n.setRangeStart,l.keyCode){case d.A:!b.isEditorOpened()&&c&&(n.selectAll(),l.preventDefault(),g(l));break;case d.ARROW_UP:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),r(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_DOWN:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),i(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_RIGHT:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),s(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_LEFT:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),a(l.shiftKey),l.preventDefault(),g(l);break;case d.TAB:var w="function"==typeof t.settings.tabMoves?t.settings.tabMoves(l):t.settings.tabMoves;l.shiftKey?n.transformStart(-w.row,-w.col):n.transformStart(w.row,w.col,!0),l.preventDefault(),g(l);break;case d.BACKSPACE:case d.DELETE:n.empty(l),b.prepareEditor(),l.preventDefault();break;case d.F2:b.openEditor(null,l),y&&y.enableFullEditMode(),l.preventDefault();break;case d.ENTER:b.isEditorOpened()?(y&&y.state!==Handsontable.EditorState.WAITING&&b.closeEditorAndSaveChanges(c),o(l.shiftKey)):e.getSettings().enterBeginsEditing?(b.openEditor(null,l),y&&y.enableFullEditMode()):o(l.shiftKey),l.preventDefault(),m(l);break;case d.ESCAPE:b.isEditorOpened()&&b.closeEditorAndRestoreOriginalValue(c),l.preventDefault();break;case d.HOME:p(l.ctrlKey||l.metaKey?new u(0,t.selRange.from.col):new u(t.selRange.from.row,0)),l.preventDefault(),g(l);break;case d.END:p(l.ctrlKey||l.metaKey?new u(e.countRows()-1,t.selRange.from.col):new u(t.selRange.from.row,e.countCols()-1)),l.preventDefault(),g(l);break;case d.PAGE_UP:n.transformStart(-e.countVisibleRows(),0),l.preventDefault(),g(l);break;case d.PAGE_DOWN:n.transformStart(e.countVisibleRows(),0),l.preventDefault(),g(l)}}}function c(){function t(e,t,n){"TD"==n.nodeName&&(b.openEditor(),y&&y.enableFullEditMode())}e.addHook("afterDocumentKeyDown",l),p.addEventListener(document.documentElement,"keydown",function(t){e.runHooks("afterDocumentKeyDown",t)}),e.view.wt.update("onCellDblClick",t),e.addHook("afterDestroy",function(){C=!0})}var p,y,b=this,C=!1;p=w(e),this.destroyEditor=function(e){this.closeEditor(e)},this.getActiveEditor=function(){return y},this.prepareEditor=function(){var n,o,r,i,s,a,l;return y&&y.isWaiting()?void this.closeEditor(!1,!1,function(e){e&&b.prepareEditor()}):(n=t.selRange.highlight.row,o=t.selRange.highlight.col,r=e.colToProp(o),i=e.getCell(n,o),s=e.getDataAtCell(n,o),a=e.getCellMeta(n,o),l=e.getCellEditor(a),void(l?(y=Handsontable.editors.getEditor(l,e),y.prepare(n,o,r,i,s,a)):y=void 0))},this.isEditorOpened=function(){return y&&y.isOpened()},this.openEditor=function(e,t){y&&!y.cellProperties.readOnly?y.beginEditing(e,t):y&&y.cellProperties.readOnly&&t&&t.keyCode===d.ENTER&&o()},this.closeEditor=function(e,t,n){y?y.finishEditing(e,t,n):n&&n(!1)},this.closeEditorAndSaveChanges=function(e){return this.closeEditor(!1,e)},this.closeEditorAndRestoreOriginalValue=function(e){return this.closeEditor(!0,e)},c()}Object.defineProperties(n,{EditorManager:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u=(r=e("3rdparty/walkontable/src/cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords,c=(i=e("helpers/unicode"),i&&i.__esModule&&i||{"default":i}),d=c.KEY_CODES,h=c.isMetaKey,f=c.isCtrlKey,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=p.stopPropagation,m=p.stopImmediatePropagation,v=p.isImmediatePropagationStopped,w=((a=e("editors"),a&&a.__esModule&&a||{"default":a}).getEditor,(l=e("eventManager"),l&&l.__esModule&&l||{"default":l}).eventManager);Handsontable.EditorManager=o},{"3rdparty/walkontable/src/cell/coords":5,editors:28,eventManager:40,"helpers/dom/event":45,"helpers/unicode":52}],28:[function(e,t,n){"use strict";function o(e){var t,n;n={},t=e,this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in n||(n[e.guid]=new t(e)),n[e.guid]}}function r(e,t){var n=new o(t);"string"==typeof e&&(c[e]=n,Handsontable.editors[u(e)+"Editor"]=t),d.set(t,n)}function i(e,t){var n;if("function"==typeof e)d.get(e)||r(null,e),n=d.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');n=c[e]}if(!n)throw Error('No editor registered under name "'+e+'"');return n.getInstance(t)}function s(e){var t;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');if(t=c[e],!t)throw Error('No editor registered under name "'+e+'"');return t.getConstructor()}function a(e){return c[e]?!0:!1}Object.defineProperties(n,{registerEditor:{get:function(){return r}},getEditor:{get:function(){return i}},hasEditor:{get:function(){return a}},getEditorConstructor:{get:function(){return s}},__esModule:{value:!0}});var l,u=(l=e("helpers/string"),l&&l.__esModule&&l||{"default":l}).toUpperCaseFirst,c={},d=new WeakMap;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.registerEditor=r,Handsontable.editors.getEditor=i},{"helpers/string":51}],29:[function(e,t,n){"use strict";function o(e){this.instance=e,this.state=Handsontable.EditorState.VIRGIN,this._opened=!1,this._fullEditMode=!1,this._closeCallback=null,this.init()}Object.defineProperties(n,{BaseEditor:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify,a=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.BaseEditor=o,Handsontable.EditorState={VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"},o.prototype._fireCallbacks=function(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)},o.prototype.init=function(){},o.prototype.getValue=function(){throw Error("Editor getValue() method unimplemented")},o.prototype.setValue=function(e){throw Error("Editor setValue() method unimplemented")},o.prototype.open=function(){throw Error("Editor open() method unimplemented")},o.prototype.close=function(){throw Error("Editor close() method unimplemented")},o.prototype.prepare=function(e,t,n,o,r,i){this.TD=o,this.row=e,this.col=t,this.prop=n,this.originalValue=r,this.cellProperties=i,this.state=Handsontable.EditorState.VIRGIN},o.prototype.extend=function(){function e(){n.apply(this,arguments)}function t(e,t){function n(){}return n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e,e}var n=this.constructor;return t(e,n)},o.prototype.saveValue=function(e,t){var n,o;t?(n=this.instance.getSelected(),n[0]>n[2]&&(o=n[0],n[0]=n[2],n[2]=o),n[1]>n[3]&&(o=n[1],n[1]=n[3],n[3]=o),this.instance.populateFromArray(n[0],n[1],e,n[2],n[3],"edit")):this.instance.populateFromArray(this.row,this.col,e,null,null,"edit")},o.prototype.beginEditing=function(e,t){this.state==Handsontable.EditorState.VIRGIN&&(this.instance.view.scrollViewport(new a(this.row,this.col)),this.instance.view.render(),this.state=Handsontable.EditorState.EDITING,e="string"==typeof e?e:this.originalValue,this.setValue(s(e)),this.open(t),this._opened=!0,this.focus(),this.instance.view.render())},o.prototype.finishEditing=function(e,t,n){var o,r=this;if(n){var i=this._closeCallback;this._closeCallback=function(e){i&&i(e),n(e)}}if(!this.isWaiting()){if(this.state==Handsontable.EditorState.VIRGIN)return void this.instance._registerTimeout(setTimeout(function(){r._fireCallbacks(!0)},0));if(this.state==Handsontable.EditorState.EDITING){if(e)return this.cancelChanges(),void this.instance.view.render();o=this.instance.getSettings().trimWhitespace?[["string"==typeof this.getValue()?String.prototype.trim.call(this.getValue()||""):this.getValue()]]:[[this.getValue()]],this.state=Handsontable.EditorState.WAITING,this.saveValue(o,t),this.instance.getCellValidator(this.cellProperties)?this.instance.addHookOnce("postAfterValidate",function(e){r.state=Handsontable.EditorState.FINISHED,r.discardEditor(e)}):(this.state=Handsontable.EditorState.FINISHED,this.discardEditor(!0))}}},o.prototype.cancelChanges=function(){this.state=Handsontable.EditorState.FINISHED,this.discardEditor()},o.prototype.discardEditor=function(e){this.state===Handsontable.EditorState.FINISHED&&(e===!1&&this.cellProperties.allowInvalid!==!0?(this.instance.selectCell(this.row,this.col),this.focus(),this.state=Handsontable.EditorState.EDITING,this._fireCallbacks(!1)):(this.close(),this._opened=!1,this._fullEditMode=!1,this.state=Handsontable.EditorState.VIRGIN,this._fireCallbacks(!0)))},o.prototype.enableFullEditMode=function(){this._fullEditMode=!0},o.prototype.isInFullEditMode=function(){return this._fullEditMode},o.prototype.isOpened=function(){return this._opened},o.prototype.isWaiting=function(){return this.state===Handsontable.EditorState.WAITING},o.prototype.checkEditorSection=function(){var e=this.instance.countRows(),t="";return this.row=e-this.instance.getSettings().fixedRowsBottom?t=this.col"+a+"")))},autoColumnSize:!0,modifyColWidth:function(e,t){var o=this.getPlugin("autoColumnSize").widths;return o[t]&&(e=o[t]),n?e:e+15}}),this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"]=w()+2+"px",T&&(T=!1),t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value)},0))},S.prototype.close=function(){E.prototype.close.apply(this,arguments)},S.prototype.queryChoices=function(e){if(this.query=e,"function"==typeof this.cellProperties.source){var t=this;this.cellProperties.source(e,function(e){t.updateChoicesList(e)})}else if(Array.isArray(this.cellProperties.source)){var n;if(e&&this.cellProperties.filter!==!1){var o=this.cellProperties.filteringCaseSensitive===!0,r=e.toLowerCase();n=this.cellProperties.source.filter(function(t){return o?-1!=t.indexOf(e):-1!=t.toLowerCase().indexOf(r)})}else n=this.cellProperties.source;this.updateChoicesList(n)}else this.updateChoicesList([])},S.prototype.updateChoicesList=function(e){var t,n=v(this.TEXTAREA),o=y(this.TEXTAREA),r=S.sortByRelevance(this.getValue(),e,this.cellProperties.filteringCaseSensitive);if(0==this.cellProperties.filter)t=r[0];else{for(var i=[],s=0,a=r.length;a>s;s++)i.push(e[r[s]]);t=0,e=i}this.choices=e,this.htEditor.loadData(p([e])),this.updateDropdownHeight(),this.cellProperties.strict===!0&&this.highlightBestMatchingChoice(t),this.instance.listen(),this.TEXTAREA.focus(),C(this.TEXTAREA,n,n==o?void 0:o)},S.prototype.updateDropdownHeight=function(){var e=this.htEditor.getColWidth(0)+w()+2,t=void 0===this.cellProperties.trimDropdown?!0:this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()},S.prototype.finishEditing=function(e){e||this.instance.removeHook("beforeKeyDown",o),E.prototype.finishEditing.apply(this,arguments)},S.prototype.highlightBestMatchingChoice=function(e){"number"==typeof e?this.htEditor.selectCell(e,0):this.htEditor.deselectCell()},S.sortByRelevance=function(e,t,n){var o,r,i,s,a,l=[],u=e.length,c=[];if(0===u){for(s=0,a=t.length;a>s;s++)c.push(s);return c}for(s=0,a=t.length;a>s;s++)o=f(t[s]),r=n?o.indexOf(e):o.toLowerCase().indexOf(e.toLowerCase()),-1!=r&&(i=o.length-r-u,l.push({baseIndex:s,index:r,charsLeft:i,value:o}));for(l.sort(function(e,t){return-1===t.index?-1:-1===e.index?1:e.indext.charsLeft?1:0:void 0}),s=0,a=l.length;a>s;s++)c.push(l[s].baseIndex);return c},S.prototype.getDropdownHeight=function(){var e=this.htEditor.getInstance().getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.choices.length>=t?t*e:this.choices.length*e+8},S.prototype.allowKeyEventPropagation=function(e){var t={row:this.htEditor.getSelectedRange()?this.htEditor.getSelectedRange().from.row:-1},n=!1;return e===d.ARROW_DOWN&&t.row-1&&(n=!0),n},_("autocomplete",S)},{editors:28,handsontableEditor:34,"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/unicode":52}],31:[function(e,t,n){"use strict";Object.defineProperties(n,{CheckboxEditor:{get:function(){return u}},__esModule:{value:!0}});var o,r,i,s=(o=e("editors"),o&&o.__esModule&&o||{"default":o}).registerEditor,a=(r=e("_baseEditor"),r&&r.__esModule&&r||{"default":r}).BaseEditor,l=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).hasClass,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(){var e=this.TD.querySelector('input[type="checkbox"]');l(e,"htBadValue")||e.click()},finishEditing:function(){},init:function(){},open:function(){},close:function(){},getValue:function(){},setValue:function(){},focus:function(){}},{},a),s("checkbox",u)},{_baseEditor:29,editors:28,"helpers/dom/element":44}],32:[function(e,t,n){"use strict";Object.defineProperties(n,{DateEditor:{get:function(){return E}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),f=h.addClass,p=h.outerHeight,g=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).deepExtend,m=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,v=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),w=(v.getEditor,v.registerEditor),y=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}).isMetaKey,b=(l=e("helpers/dom/event"),l&&l.__esModule&&l||{"default":l}).stopPropagation,C=(u=e("textEditor"),u&&u.__esModule&&u||{"default":u}).TextEditor,R=(c=e("moment"),c&&c.__esModule&&c||{"default":c})["default"],_=(d=e("pikaday"),d&&d.__esModule&&d||{"default":d})["default"];Handsontable.editors=Handsontable.editors||{},Handsontable.editors.DateEditor=E;var E=function(e){this.$datePicker=null,this.datePicker=null,this.datePickerStyle=null,this.defaultDateFormat="DD/MM/YYYY",this.isCellEdited=!1,this.parentDestroyed=!1,$traceurRuntime.superConstructor(S).call(this,e)},S=E;$traceurRuntime.createClass(E,{init:function(){var e=this;if("function"!=typeof R)throw new Error("You need to include moment.js to your project.");if("function"!=typeof _)throw new Error("You need to include Pikaday to your project.");$traceurRuntime.superGet(this,S.prototype,"init").call(this),this.instance.addHook("afterDestroy",function(){e.parentDestroyed=!0,e.destroyElements()})},createElements:function(){$traceurRuntime.superGet(this,S.prototype,"createElements").call(this),this.datePicker=document.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,f(this.datePicker,"htDatepickerHolder"),document.body.appendChild(this.datePicker),this.$datePicker=new _(this.getDatePickerConfig());var e=new m(this);e.addEventListener(this.datePicker,"mousedown",function(e){return b(e)}),this.hideDatepicker()},destroyElements:function(){this.$datePicker.destroy()},prepare:function(e,t,n,o,r,i){this._opened=!1,$traceurRuntime.superGet(this,S.prototype,"prepare").call(this,e,t,n,o,r,i)},open:function(){var e=void 0!==arguments[0]?arguments[0]:null;$traceurRuntime.superGet(this,S.prototype,"open").call(this),this.showDatepicker(e)},close:function(){var e=this;this._opened=!1,this.instance._registerTimeout(setTimeout(function(){e.instance.selection.refreshBorders()},0)),$traceurRuntime.superGet(this,S.prototype,"close").call(this)},finishEditing:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=void 0!==arguments[1]?arguments[1]:!1;if(e){var n=this.originalValue;void 0!==n&&this.setValue(n)}this.hideDatepicker(),$traceurRuntime.superGet(this,S.prototype,"finishEditing").call(this,e,t)},showDatepicker:function(e){this.$datePicker.config(this.getDatePickerConfig());var t,n=this.TD.getBoundingClientRect(),o=this.cellProperties.dateFormat||this.defaultDateFormat,r=this.$datePicker.config(),i=this.instance.view.isMouseDown(),s=e?y(e.keyCode):!1;this.datePickerStyle.top=window.pageYOffset+n.top+p(this.TD)+"px",this.datePickerStyle.left=window.pageXOffset+n.left+"px",this.$datePicker._onInputFocus=function(){},r.format=o,this.originalValue?(t=this.originalValue,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.cellProperties.defaultDate?(t=this.cellProperties.defaultDate,r.defaultDate=t,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.$datePicker.gotoToday(),this.datePickerStyle.display="block",this.$datePicker.show()},hideDatepicker:function(){this.datePickerStyle.display="none",this.$datePicker.hide()},getDatePickerConfig:function(){var e=this,t=this.TEXTAREA,n={};this.cellProperties&&this.cellProperties.datePickerConfig&&g(n,this.cellProperties.datePickerConfig);var o=n.onSelect,r=n.onClose;return n.field=t,n.trigger=t,n.container=this.datePicker,n.bound=!1,n.format=n.format||this.defaultDateFormat,n.reposition=n.reposition||!1,n.onSelect=function(t){isNaN(t.getTime())||(t=R(t).format(e.cellProperties.dateFormat||e.defaultDateFormat)),e.setValue(t),e.hideDatepicker(),o&&o()},n.onClose=function(){e.parentDestroyed||e.finishEditing(!1),r&&r()},n}},{},C),w("date",E)},{editors:28,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,moment:"moment",pikaday:"pikaday",textEditor:39}],33:[function(e,t,n){"use strict";Object.defineProperties(n,{DropdownEditor:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("editors"),o&&o.__esModule&&o||{"default":o}),s=(i.getEditor,i.registerEditor),a=(r=e("autocompleteEditor"),r&&r.__esModule&&r||{"default":r}).AutocompleteEditor,l=function(){$traceurRuntime.superConstructor(u).apply(this,arguments)},u=l;$traceurRuntime.createClass(l,{prepare:function(e,t,n,o,r,i){$traceurRuntime.superGet(this,u.prototype,"prepare").call(this,e,t,n,o,r,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}},{},a),Handsontable.hooks.add("beforeValidate",function(e,t,n,o){var r=this.getCellMeta(t,n);r.editor===Handsontable.editors.DropdownEditor&&void 0===r.strict&&(r.filter=!1,r.strict=!0)}),s("dropdown",l)},{autocompleteEditor:30,editors:28}],34:[function(e,t,n){"use strict";Object.defineProperties(n,{HandsontableEditor:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).extend,d=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).setCaretPosition,h=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),f=h.stopImmediatePropagation,p=h.isImmediatePropagationStopped,g=(a=e("editors"),a&&a.__esModule&&a||{"default":a}),m=(g.getEditor,g.registerEditor),v=(l=e("textEditor"),l&&l.__esModule&&l||{"default":l}).TextEditor,w=v.prototype.extend();w.prototype.createElements=function(){v.prototype.createElements.apply(this,arguments);var e=document.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()},w.prototype.prepare=function(e,t,n,o,r,i){v.prototype.prepare.apply(this,arguments);var s=this,a={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,afterOnCellMouseDown:function(){var e=this.getValue();void 0!==e&&s.setValue(e),s.instance.destroyEditor()}};this.cellProperties.handsontable&&c(a,i.handsontable),this.htOptions=a};var y=function(e){if(!p(e)){var t,n=this.getActiveEditor(),o=n.htEditor.getInstance();if(e.keyCode==u.ARROW_DOWN)if(o.getSelected()){var r=o.getSelected()[0],i=o.countRows()-1;t=Math.min(i,r+1)}else t=0;else if(e.keyCode==u.ARROW_UP&&o.getSelected()){var r=o.getSelected()[0];t=r-1}void 0!==t&&(0>t?o.deselectCell():o.selectCell(t,0),o.getData().length&&(e.preventDefault(),f(e),n.instance.listen(),n.TEXTAREA.focus()))}};w.prototype.open=function(){this.instance.addHook("beforeKeyDown",y),v.prototype.open.apply(this,arguments),this.htEditor&&this.htEditor.destroy(),this.htEditor=new Handsontable(this.htContainer,this.htOptions),this.cellProperties.strict?(this.htEditor.selectCell(0,0),this.TEXTAREA.style.visibility="hidden"):(this.htEditor.deselectCell(),this.TEXTAREA.style.visibility="visible"),d(this.TEXTAREA,0,this.TEXTAREA.value.length)},w.prototype.close=function(){this.instance.removeHook("beforeKeyDown",y),this.instance.listen(),v.prototype.close.apply(this,arguments)},w.prototype.focus=function(){this.instance.listen(),v.prototype.focus.apply(this,arguments)},w.prototype.beginEditing=function(e){var t=this.instance.getSettings().onBeginEditing;t&&t()===!1||v.prototype.beginEditing.apply(this,arguments)},w.prototype.finishEditing=function(e,t){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor&&this.htEditor.getSelected()){var n=this.htEditor.getInstance().getValue();void 0!==n&&this.setValue(n)}return v.prototype.finishEditing.apply(this,arguments)},w.prototype.assignHooks=function(){var e=this;this.instance.addHook("afterDestroy",function(){e.htEditor&&e.htEditor.destroy()})},m("handsontable",w)},{editors:28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,textEditor:39}],35:[function(e,t,n){"use strict";Object.defineProperties(n,{MobileTextEditor:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),d=c.stopImmediatePropagation,h=c.isImmediatePropagationStopped,f=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),p=f.addClass,g=f.getScrollLeft,m=f.getScrollTop,v=f.hasClass,w=f.isChildOf,y=f.offset,b=f.outerHeight,C=f.outerWidth,R=f.removeClass,_=f.setCaretPosition,E=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),S=(E.getEditor,E.registerEditor),T=(a=e("_baseEditor"),a&&a.__esModule&&a||{"default":a}).BaseEditor,O=(l=e("eventManager"),l&&l.__esModule&&l||{"default":l}).eventManager,M=T.prototype.extend(),k={},H=function(){this.controls={},this.controls.leftButton=document.createElement("DIV"),this.controls.leftButton.className="leftButton",this.controls.rightButton=document.createElement("DIV"),this.controls.rightButton.className="rightButton",this.controls.upButton=document.createElement("DIV"),this.controls.upButton.className="upButton",this.controls.downButton=document.createElement("DIV"),this.controls.downButton.className="downButton";for(var e in this.controls)this.controls.hasOwnProperty(e)&&this.positionControls.appendChild(this.controls[e])};M.prototype.valueChanged=function(){return this.initValue!=this.getValue()},M.prototype.init=function(){var e=this;this.eventManager=O(this.instance),this.createElements(),this.bindEvents(),this.instance.addHook("afterDestroy",function(){e.destroy()})},M.prototype.getValue=function(){return this.TEXTAREA.value},M.prototype.setValue=function(e){this.initValue=e,this.TEXTAREA.value=e},M.prototype.createElements=function(){this.editorContainer=document.createElement("DIV"),this.editorContainer.className="htMobileEditorContainer",this.cellPointer=document.createElement("DIV"),this.cellPointer.className="cellPointer",this.moveHandle=document.createElement("DIV"),this.moveHandle.className="moveHandle",this.inputPane=document.createElement("DIV"),this.inputPane.className="inputs",this.positionControls=document.createElement("DIV"),this.positionControls.className="positionControls",this.TEXTAREA=document.createElement("TEXTAREA"),p(this.TEXTAREA,"handsontableInput"),this.inputPane.appendChild(this.TEXTAREA),this.editorContainer.appendChild(this.cellPointer),this.editorContainer.appendChild(this.moveHandle),this.editorContainer.appendChild(this.inputPane),this.editorContainer.appendChild(this.positionControls),H.call(this),document.body.appendChild(this.editorContainer)},M.prototype.onBeforeKeyDown=function(e){var t=this,n=t.getActiveEditor();if(e.target===n.TEXTAREA&&!h(e))switch(e.keyCode){case u.ENTER:n.close(),e.preventDefault();break;case u.BACKSPACE:d(e)}},M.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),p(this.editorContainer,"active"),R(this.cellPointer,"hidden"),this.updateEditorPosition()},M.prototype.focus=function(){this.TEXTAREA.focus(),_(this.TEXTAREA,this.TEXTAREA.value.length)},M.prototype.close=function(){this.TEXTAREA.blur(),this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),R(this.editorContainer,"active")},M.prototype.scrollToView=function(){var e=this.instance.getSelectedRange().highlight;this.instance.view.scrollViewport(e)},M.prototype.hideCellPointer=function(){v(this.cellPointer,"hidden")||p(this.cellPointer,"hidden")},M.prototype.updateEditorPosition=function(e,t){if(e&&t)e=parseInt(e,10),t=parseInt(t,10), -this.editorContainer.style.top=t+"px",this.editorContainer.style.left=e+"px";else{var n=this.instance.getSelected(),o=this.instance.getCell(n[0],n[1]);if(k.cellPointer||(k.cellPointer={height:b(this.cellPointer),width:C(this.cellPointer)}),k.editorContainer||(k.editorContainer={width:C(this.editorContainer)}),void 0!==o){var r=this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer==window?0:g(this.instance.view.wt.wtOverlays.leftOverlay.holder),i=this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer==window?0:m(this.instance.view.wt.wtOverlays.topOverlay.holder),s=y(o),a=C(o),l={x:r,y:i};this.editorContainer.style.top=parseInt(s.top+b(o)-l.y+k.cellPointer.height,10)+"px",this.editorContainer.style.left=parseInt(window.innerWidth/2-k.editorContainer.width/2,10)+"px",s.left+a/2>parseInt(this.editorContainer.style.left,10)+k.editorContainer.width?this.editorContainer.style.left=window.innerWidth-k.editorContainer.width+"px":s.left+a/2n;n++)t[e[n]]=e[n];else"object"==typeof e&&(t=e);return t},E.prototype.getValue=function(){return this.select.value},E.prototype.setValue=function(e){this.select.value=e};var S=function(e){var t=this,n=t.getActiveEditor();switch(e.keyCode){case b.ARROW_UP:var o=n.select.selectedIndex-1;o>=0&&(n.select[o].selected=!0),y(e),e.preventDefault();break;case b.ARROW_DOWN:var r=n.select.selectedIndex+1;r<=n.select.length-1&&(n.select[r].selected=!0),y(e),e.preventDefault()}};E.prototype.open=function(){this._opened=!0,this.refreshDimensions(),this.select.style.display="",this.instance.addHook("beforeKeyDown",S)},E.prototype.close=function(){this._opened=!1,this.select.style.display="none",this.instance.removeHook("beforeKeyDown",S)},E.prototype.focus=function(){this.select.focus()},E.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close();var e,t=v(this.TD)+1,n=m(this.TD)+1,o=g(this.TD),r=g(this.instance.rootElement),i=p(this.TD),s=o.top-r.top-1-(i.scrollTop||0),a=o.left-r.left-1-(i.scrollLeft||0),l=this.checkEditorSection(),u=this.instance.getSettings();u.rowHeaders?1:0,u.colHeaders?1:0;switch(l){case"top":e=f(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=f(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=f(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=f(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=f(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}0===this.instance.getSelected()[0]&&(s+=1),0===this.instance.getSelected()[1]&&(a+=1);var c=this.select.style;e&&-1!=e?c[e[0]]=e[1]:w(this.select);var d=h(this.TD);parseInt(d.borderTopWidth,10)>0&&(n-=1),parseInt(d.borderLeftWidth,10)>0&&(t-=1),c.height=n+"px",c.minWidth=t+"px",c.top=s+"px",c.left=a+"px",c.margin="0px"}},E.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=101;break;case"corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.select.style.zIndex=""}return-1!=e&&-2!=e?e:void 0},R("select",E)},{_baseEditor:29,editors:28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],39:[function(e,t,n){"use strict";Object.defineProperties(n,{TextEditor:{get:function(){return H}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),d=c.addClass,h=c.getCaretPosition,f=c.getComputedStyle,p=c.getCssTransform,g=c.getScrollableElement,m=c.innerWidth,v=c.offset,w=c.resetCssTransform,y=c.setCaretPosition,b=(r=e("autoResize"),r&&r.__esModule&&r||{"default":r})["default"],C=(i=e("_baseEditor"),i&&i.__esModule&&i||{"default":i}).BaseEditor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,_=(a=e("editors"),a&&a.__esModule&&a||{"default":a}),E=(_.getEditor,_.registerEditor),S=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}).KEY_CODES,T=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}),O=T.stopPropagation,M=T.stopImmediatePropagation,k=T.isImmediatePropagationStopped,H=C.prototype.extend();H.prototype.init=function(){var e=this;this.createElements(),this.eventManager=R(this),this.bindEvents(),this.autoResize=b(),this.instance.addHook("afterDestroy",function(){e.destroy()})},H.prototype.getValue=function(){return this.TEXTAREA.value},H.prototype.setValue=function(e){this.TEXTAREA.value=e};var D=function(e){var t,n=this,o=n.getActiveEditor();if(t=(e.ctrlKey||e.metaKey)&&!e.altKey,e.target===o.TEXTAREA&&!k(e)){if(17===e.keyCode||224===e.keyCode||91===e.keyCode||93===e.keyCode)return void M(e);switch(e.keyCode){case S.ARROW_RIGHT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case S.ARROW_LEFT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case S.ARROW_UP:case S.ARROW_DOWN:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case S.ENTER:var r=o.instance.getSelected(),i=!(r[0]===r[2]&&r[1]===r[3]);if(t&&!i||e.altKey){if(o.isOpened()){var s=h(o.TEXTAREA),a=o.getValue(),l=a.slice(0,s)+"\n"+a.slice(s);o.setValue(l),y(o.TEXTAREA,s+1)}else o.beginEditing(o.originalValue+"\n");M(e)}e.preventDefault();break;case S.A:case S.X:case S.C:case S.V:t&&M(e);break;case S.BACKSPACE:case S.DELETE:case S.HOME:case S.END:M(e)}-1===[S.ARROW_UP,S.ARROW_RIGHT,S.ARROW_DOWN,S.ARROW_LEFT].indexOf(e.keyCode)&&o.autoResize.resize(String.fromCharCode(e.keyCode))}};H.prototype.open=function(){this.refreshDimensions(),this.instance.addHook("beforeKeyDown",D)},H.prototype.close=function(e){this.textareaParentStyle.display="none",this.autoResize.unObserve(),document.activeElement===this.TEXTAREA&&this.instance.listen(),this.instance.removeHook("beforeKeyDown",D)},H.prototype.focus=function(){this.TEXTAREA.focus(),y(this.TEXTAREA,this.TEXTAREA.value.length)},H.prototype.createElements=function(){this.TEXTAREA=document.createElement("TEXTAREA"),d(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.TEXTAREA_PARENT=document.createElement("DIV"),d(this.TEXTAREA_PARENT,"handsontableInputHolder"),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.textareaParentStyle.top=0,this.textareaParentStyle.left=0,this.textareaParentStyle.display="none",this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);var e=this;this.instance._registerTimeout(setTimeout(function(){e.refreshDimensions()},0))},H.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=101;break;case"top-left-corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"bottom-left-corner":e=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;case"bottom":e=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.textareaParentStyle.zIndex=""}return-1!=e&&-2!=e?e:void 0},H.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close(!0);var e,t=v(this.TD),n=v(this.instance.rootElement),o=g(this.TD),r=this.instance.countRows(),i=t.top-n.top-1-(o.scrollTop||0),s=t.left-n.left-1-(o.scrollLeft||0),a=this.instance.getSettings(),l=(a.rowHeaders?1:0,a.colHeaders?1:0),u=this.checkEditorSection(),c=this.TD.style.backgroundColor;switch(u){case"top":e=p(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=p(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=p(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=p(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=p(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(l&&0===this.instance.getSelected()[0]||a.fixedRowsBottom&&this.instance.getSelected()[0]===r-a.fixedRowsBottom)&&(i+=1),0===this.instance.getSelected()[1]&&(s+=1),e&&-1!=e?this.textareaParentStyle[e[0]]=e[1]:w(this.textareaParentStyle),this.textareaParentStyle.top=i+"px",this.textareaParentStyle.left=s+"px";var d=this.TD.offsetTop-this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition(),h=this.TD.offsetLeft-this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),y=m(this.TD)-8,b=this.instance.view.maximumVisibleElementWidth(h)-9,C=this.TD.scrollHeight+1,R=Math.max(this.instance.view.maximumVisibleElementHeight(d)-2,23),_=f(this.TD);this.TEXTAREA.style.fontSize=_.fontSize,this.TEXTAREA.style.fontFamily=_.fontFamily,this.TEXTAREA.style.backgroundColor="",this.TEXTAREA.style.backgroundColor=c?c:f(this.TEXTAREA).backgroundColor,this.autoResize.init(this.TEXTAREA,{minHeight:Math.min(C,R),maxHeight:R,minWidth:Math.min(y,b),maxWidth:b},!0),this.textareaParentStyle.display="block"}},H.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.TEXTAREA,"cut",function(e){O(e)}),this.eventManager.addEventListener(this.TEXTAREA,"paste",function(e){O(e)}),this.instance.addHook("afterScrollVertically",function(){e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterRowResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterDestroy",function(){e.eventManager.destroy()})},H.prototype.destroy=function(){this.eventManager.destroy()},E("text",H)},{_baseEditor:29,autoResize:"autoResize",editors:28,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],40:[function(e,t,n){"use strict";function o(e,t){var n,o,r,i,s,a="HOT-TABLE";if(t.isTargetWebComponent=!1,t.realTarget=t.target,!Handsontable.eventManager.isHotTableEnv)return t;for(t=l(t),s=t.path?t.path.length:0;s--;){if(t.path[s].nodeName===a)n=!0;else if(n&&t.path[s].shadowRoot){i=t.path[s];break}0!==s||i||(i=t.path[s])}return i||(i=t.target),t.isTargetWebComponent=!0,c()?t.realTarget=t.srcElement||t.toElement:(e instanceof Handsontable.Core||e instanceof Walkontable)&&(e instanceof Handsontable.Core?o=e.view?e.view.wt.wtTable.TABLE:null:e instanceof Walkontable&&(o=e.wtTable.TABLE.parentNode.parentNode),r=u(t.target,[a],o),r?t.realTarget=o.querySelector(a)||t.target:t.realTarget=t.target),Object.defineProperty(t,"target",{get:function(){return l(i)},enumerable:!0,configurable:!0}),t}function r(e){return new d(e)}Object.defineProperties(n,{EventManager:{get:function(){return d}},eventManager:{get:function(){return r}},__esModule:{value:!0}});var i,s,a=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),l=a.polymerWrap,u=a.closest,c=(s=e("helpers/browser"),s&&s.__esModule&&s||{"default":s}).isWebComponentSupportedNatively,d=function(){var e=void 0!==arguments[0]?arguments[0]:null;this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])};$traceurRuntime.createClass(d,{addEventListener:function(e,t,n){function r(e){void 0==e.target&&void 0!=e.srcElement&&(e.definePoperty?e.definePoperty("target",{value:e.srcElement}):e.target=e.srcElement),void 0==e.preventDefault&&(e.definePoperty?e.definePoperty("preventDefault",{value:function(){this.returnValue=!1}}):e.preventDefault=function(){this.returnValue=!1}),e=o(s,e),n.call(this,e)}var i=this,s=this.context;return this.context.eventListeners.push({element:e,event:t,callback:n,callbackProxy:r}),window.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r),Handsontable.countEventManagerListeners++,function(){i.removeEventListener(e,t,n)}},removeEventListener:function(e,t,n){for(var o,r=this.context.eventListeners.length;r--;)if(o=this.context.eventListeners[r],o.event==t&&o.element==e){if(n&&n!=o.callback)continue;this.context.eventListeners.splice(r,1),o.element.removeEventListener?o.element.removeEventListener(o.event,o.callbackProxy,!1):o.element.detachEvent("on"+o.event,o.callbackProxy),Handsontable.countEventManagerListeners--}},clearEvents:function(){if(this.context)for(var e=this.context.eventListeners.length;e--;){var t=this.context.eventListeners[e];t&&this.removeEventListener(t.element,t.event,t.callback)}},clear:function(){this.clearEvents()},destroy:function(){this.clearEvents(),this.context=null},fireEvent:function(e,t){var n,o={bubbles:!0,cancelable:"mousemove"!==t,view:window,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};document.createEvent?(n=document.createEvent("MouseEvents"),n.initMouseEvent(t,o.bubbles,o.cancelable,o.view,o.detail,o.screenX,o.screenY,o.clientX,o.clientY,o.ctrlKey,o.altKey,o.shiftKey,o.metaKey,o.button,o.relatedTarget||document.body.parentNode)):n=document.createEventObject(),e.dispatchEvent?e.dispatchEvent(n):e.fireEvent("on"+t,n)}},{}),window.Handsontable=window.Handsontable||{},Handsontable.countEventManagerListeners=0,Handsontable.eventManager=r},{"helpers/browser":42,"helpers/dom/element":44}],41:[function(e,t,n){"use strict";function o(e){for(var t=0,n=e.length;n>t;)e[t]=[e[t]],t++}function r(e,t){for(var n=0,o=t.length;o>n;)e.push(t[n]),n++}function i(e){var t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;for(var n=e.length,o=e[0].length,r=0;n>r;r++)for(var i=0;o>i;i++)t[i]||(t[i]=[]),t[i][r]=e[r][i];return t}function s(e,t,n,o){var r=-1,i=e.length;for(o&&i&&(n=e[++r]);++rt
t";var n=document.createElement("CAPTION");n.innerHTML="c
c
c
c",n.style.padding=0,n.style.margin=0,e.insertBefore(n,t),document.body.appendChild(e),h=e.offsetHeight<2*e.lastChild.offsetHeight,document.body.removeChild(e)}function d(){return void 0===h&&c(),h}Object.defineProperties(n,{isIE8:{get:function(){return o}},isIE9:{get:function(){return r}},isSafari:{get:function(){return i}},isChrome:{get:function(){return s}},isMobileBrowser:{get:function(){return a}},isTouchSupported:{get:function(){return l}},isWebComponentSupportedNatively:{get:function(){return u}},hasCaptionProblem:{get:function(){return d}},__esModule:{value:!0}});var h,f=!document.createTextNode("test").textContent,p=!!document.documentMode,g=/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),m=/Chrome/.test(navigator.userAgent)&&/Google/.test(navigator.vendor)},{}],43:[function(e,t,n){"use strict";function o(e){for(var t,n=e+1,o="";n>0;)t=(n-1)%26,o=String.fromCharCode(65+t)+o,n=parseInt((n-t)/26,10);return o}function r(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s=[];for(r=0;t>r;r++)s.push(o(r)+(n+1));i.push(s)}return i}function i(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s={};for(r=0;t>r;r++)s["prop"+r]=o(r)+(n+1);i.push(s)}return i}function s(e){var t,n,o,r,i=[],s=0;for(t=0,n=e.length;n>t;t++)for(o=0,r=e[t].length;r>o;o++)o==s&&(i.push([]),s++),i[o].push(e[t][o]);return i}function a(e,t){function n(e){var t=Handsontable.cellTypes[e];if("undefined"==typeof t)throw new Error('You declared cell type "'+e+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');return t}return t="undefined"==typeof t?!0:t,function(o,r){return function i(o){if(o){if(o.hasOwnProperty(e)&&void 0!==o[e])return o[e];if(o.hasOwnProperty("type")&&o.type){var r;if("string"!=typeof o.type)throw new Error("Cell type must be a string ");if(r=n(o.type),r.hasOwnProperty(e))return r[e];if(t)return}return i(u(o))}}("number"==typeof o?this.getCellMeta(o,r):o)}}Object.defineProperties(n,{spreadsheetColumnLabel:{get:function(){return o}},createSpreadsheetData:{get:function(){return r}},createSpreadsheetObjectData:{get:function(){return i}},translateRowsToColumns:{get:function(){return s}},cellMethodLookupFactory:{get:function(){return a}},__esModule:{value:!0}});var l,u=(l=e("object"),l&&l.__esModule&&l||{"default":l}).getPrototypeOf},{object:49}],44:[function(e,t,n){"use strict";function o(e,t,n){for(;null!=e&&e!==n;){if(e.nodeType===Node.ELEMENT_NODE&&(t.indexOf(e.nodeName)>-1||t.indexOf(e)>-1))return e;e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode}return null}function r(e,t){var n=e.parentNode,o=[];for("string"==typeof t?o=Array.prototype.slice.call(document.querySelectorAll(t),0):o.push(t);null!=n;){if(o.indexOf(n)>-1)return!0;n=n.parentNode}return!1}function i(e){function t(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName===o.toUpperCase()}var n,o="hot-table",r=!1;for(n=s(e);null!=n;){if(t(n)){r=!0;break}if(n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(r=t(n.host))break;n=n.host}n=n.parentNode}return r}function s(e){return"undefined"!=typeof Polymer&&"function"==typeof wrap?wrap(e):e}function a(e){return"undefined"!=typeof Polymer&&"function"==typeof unwrap?unwrap(e):e}function l(e){var t=0;if(e.previousSibling)for(;e=e.previousSibling;)++t;return t}function u(e,t){var n=document.querySelector(".ht_clone_"+e);return n?n.contains(t):null}function c(e){var t=0,n=[];if(!e||!e.length)return n;for(;e[t];)n.push(e[t]),t++;return n}function d(e,t){return $(e,t)}function h(e,t){return K(e,t)}function f(e,t){return X(e,t)}function p(e,t){if(3===e.nodeType)t.removeChild(e);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(e.nodeName)>-1)for(var n=e.childNodes,o=n.length-1;o>=0;o--)p(n[o],e)}function g(e){for(var t;t=e.lastChild;)e.removeChild(t)}function m(e,t){ie.test(t)?e.innerHTML=t:v(e,t)}function v(e,t){var n=e.firstChild;n&&3===n.nodeType&&null===n.nextSibling?se?n.textContent=t:n.data=t:(g(e),e.appendChild(document.createTextNode(t)))}function w(e){for(var t=e;a(t)!==document.documentElement;){if(null===t)return!1;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(t.host){if(t.host.impl)return w(t.host.impl);if(t.host)return w(t.host);throw new Error("Lost in Web Components world")}return!1}if("none"===t.style.display)return!1;t=t.parentNode}return!0}function y(e){var t,n,o,r,i;if(r=document.documentElement,ee()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName)return i=e.getBoundingClientRect(),{top:i.top+(window.pageYOffset||r.scrollTop)-(r.clientTop||0),left:i.left+(window.pageXOffset||r.scrollLeft)-(r.clientLeft||0)};for(t=e.offsetLeft,n=e.offsetTop,o=e;(e=e.offsetParent)&&e!==document.body;)t+=e.offsetLeft,n+=e.offsetTop,o=e;return o&&"fixed"===o.style.position&&(t+=window.pageXOffset||r.scrollLeft,n+=window.pageYOffset||r.scrollTop),{left:t,top:n}}function b(){var e=window.scrollY;return void 0===e&&(e=document.documentElement.scrollTop),e}function C(){var e=window.scrollX;return void 0===e&&(e=document.documentElement.scrollLeft),e}function R(e){return e===window?b():e.scrollTop}function _(e){return e===window?C():e.scrollLeft}function E(e){for(var t,n,o,r=e.parentNode,i=["auto","scroll"],s="",a="",l="",u="";r&&r.style&&document.body!==r;){if(t=r.style.overflow,n=r.style.overflowX,o=r.style.overflowY,"scroll"==t||"scroll"==n||"scroll"==o)return r;if(window.getComputedStyle&&(s=window.getComputedStyle(r),a=s.getPropertyValue("overflow"),l=s.getPropertyValue("overflow-y"),u=s.getPropertyValue("overflow-x"),"scroll"===a||"scroll"===u||"scroll"===l))return r;if(r.clientHeight<=r.scrollHeight&&(-1!==i.indexOf(o)||-1!==i.indexOf(t)||-1!==i.indexOf(a)||-1!==i.indexOf(l)))return r;if(r.clientWidth<=r.scrollWidth&&(-1!==i.indexOf(n)||-1!==i.indexOf(t)||-1!==i.indexOf(a)||-1!==i.indexOf(u)))return r;r=r.parentNode}return window}function S(e){for(var t=e.parentNode;t&&t.style&&document.body!==t;){if("visible"!==t.style.overflow&&""!==t.style.overflow)return t;if(window.getComputedStyle){var n=window.getComputedStyle(t);if("visible"!==n.getPropertyValue("overflow")&&""!==n.getPropertyValue("overflow"))return t}t=t.parentNode}return window}function T(e,t){if(e){if(e!==window){var n,o=e.style[t];return""!==o&&void 0!==o?o:(n=O(e),""!==n[t]&&void 0!==n[t]?n[t]:void 0)}if("width"===t)return window.innerWidth+"px";if("height"===t)return window.innerHeight+"px"}}function O(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}function M(e){return e.offsetWidth}function k(e){return ee()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName?e.offsetHeight+e.firstChild.offsetHeight:e.offsetHeight}function H(e){return e.clientHeight||e.innerHeight}function D(e){return e.clientWidth||e.innerWidth}function x(e,t,n){window.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function A(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function P(e){if(e.selectionStart)return e.selectionStart;if(document.selection){e.focus();var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange(),o=n.duplicate();return n.moveToBookmark(t.getBookmark()),o.setEndPoint("EndToStart",n),o.text.length}return 0}function N(e){if(e.selectionEnd)return e.selectionEnd;if(document.selection){var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange();return n.text.indexOf(t.text)+t.text.length}}function L(e,t,n){if(void 0===n&&(n=t),e.setSelectionRange){e.focus();try{e.setSelectionRange(t,n)}catch(o){var r=e.parentNode,i=r.style.display;r.style.display="block",e.setSelectionRange(t,n),r.style.display=i}}else if(e.createTextRange){var s=e.createTextRange();s.collapse(!0),s.moveEnd("character",n),s.moveStart("character",t),s.select()}}function W(){var e=document.createElement("p");e.style.width="100%",e.style.height="200px";var t=document.createElement("div");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.visibility="hidden",t.style.width="200px",t.style.height="150px",t.style.overflow="hidden",t.appendChild(e),(document.body||document.documentElement).appendChild(t);var n=e.offsetWidth;t.style.overflow="scroll";var o=e.offsetWidth;return n==o&&(o=t.clientWidth),(document.body||document.documentElement).removeChild(t),n-o}function I(){return void 0===re&&(re=W()),re}function j(e,t,n){Z()||J()?(e.style.top=n,e.style.left=t):Q()?e.style["-webkit-transform"]="translate3d("+t+","+n+",0)":e.style.transform="translate3d("+t+","+n+",0)"}function B(e){var t;return e.style.transform&&""!==(t=e.style.transform)?["transform",t]:e.style["-webkit-transform"]&&""!==(t=e.style["-webkit-transform"])?["-webkit-transform",t]:-1}function F(e){e.transform&&""!==e.transform?e.transform="":e["-webkit-transform"]&&""!==e["-webkit-transform"]&&(e["-webkit-transform"]="")}function V(e){var t=["INPUT","SELECT","TEXTAREA"];return t.indexOf(e.nodeName)>-1||"true"===e.contentEditable}function z(e){return V(e)&&-1==e.className.indexOf("handsontableInput")&&-1==e.className.indexOf("copyPaste")}function Y(e){return ue.call(window,e)}function U(e){ce.call(window,e)}Object.defineProperties(n,{ -closest:{get:function(){return o}},isChildOf:{get:function(){return r}},isChildOfWebComponentTable:{get:function(){return i}},polymerWrap:{get:function(){return s}},polymerUnwrap:{get:function(){return a}},index:{get:function(){return l}},overlayContainsElement:{get:function(){return u}},hasClass:{get:function(){return d}},addClass:{get:function(){return h}},removeClass:{get:function(){return f}},removeTextNodes:{get:function(){return p}},empty:{get:function(){return g}},HTML_CHARACTERS:{get:function(){return ie}},fastInnerHTML:{get:function(){return m}},fastInnerText:{get:function(){return v}},isVisible:{get:function(){return w}},offset:{get:function(){return y}},getWindowScrollTop:{get:function(){return b}},getWindowScrollLeft:{get:function(){return C}},getScrollTop:{get:function(){return R}},getScrollLeft:{get:function(){return _}},getScrollableElement:{get:function(){return E}},getTrimmingContainer:{get:function(){return S}},getStyle:{get:function(){return T}},getComputedStyle:{get:function(){return O}},outerWidth:{get:function(){return M}},outerHeight:{get:function(){return k}},innerHeight:{get:function(){return H}},innerWidth:{get:function(){return D}},addEvent:{get:function(){return x}},removeEvent:{get:function(){return A}},getCaretPosition:{get:function(){return P}},getSelectionEndPosition:{get:function(){return N}},setCaretPosition:{get:function(){return L}},getScrollbarWidth:{get:function(){return I}},setOverlayPosition:{get:function(){return j}},getCssTransform:{get:function(){return B}},resetCssTransform:{get:function(){return F}},isInput:{get:function(){return V}},isOutsideInput:{get:function(){return z}},requestAnimationFrame:{get:function(){return Y}},cancelAnimationFrame:{get:function(){return U}},__esModule:{value:!0}});var G,$,K,X,q=(G=e("../browser"),G&&G.__esModule&&G||{"default":G}),Z=q.isIE8,J=q.isIE9,Q=q.isSafari,ee=q.hasCaptionProblem,te=document.documentElement.classList?!0:!1;if(te){var ne=function(){var e=document.createElement("div");return e.classList.add("test","test2"),e.classList.contains("test2")}();$=function(e,t){return""===t?!1:e.classList.contains(t)},K=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),ne)e.classList.add.apply(e.classList,t);else for(;t&&t[n];)e.classList.add(t[n]),n++},X=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),ne)e.classList.remove.apply(e.classList,t);else for(;t&&t[n];)e.classList.remove(t[n]),n++}}else{var oe=function(e){return new RegExp("(\\s|^)"+e+"(\\s|$)")};$=function(e,t){return e.className.match(oe(t))?!0:!1},K=function(e,t){var n=0,o=e.className;if("string"==typeof t&&(t=t.split(" ")),""===o)o=t.join(" ");else for(;t&&t[n];)oe(t[n]).test(o)||(o+=" "+t[n]),n++;e.className=o},X=function(e,t){var n=0,o=e.className;for("string"==typeof t&&(t=t.split(" "));t&&t[n];)o=o.replace(oe(t[n])," ").trim(),n++;e.className!==o&&(e.className=o)}}for(var re,ie=/(<(.*)>|&(.*);)/,se=document.createTextNode("test").textContent?!0:!1,ae=0,le=["ms","moz","webkit","o"],ue=window.requestAnimationFrame,ce=window.cancelAnimationFrame,de=0;de=e)for(;++r<=i&&n(r)!==!1;);else for(r=e+1;--r>=t&&n(r)!==!1;);}function i(e,t){return t=parseInt(t.toString().replace("%",""),10),t=parseInt(e*t/100)}Object.defineProperties(n,{isNumeric:{get:function(){return o}},rangeEach:{get:function(){return r}},valueAccordingPercent:{get:function(){return i}},__esModule:{value:!0}})},{}],49:[function(e,t,n){"use strict";function o(e){var t;return Array.isArray(e)?t=[]:(t={},p(e,function(e,n){e&&"object"==typeof e&&!Array.isArray(e)?t[n]=o(e):Array.isArray(e)?e.length&&"object"==typeof e[0]&&!Array.isArray(e[0])?t[n]=[o(e[0])]:t[n]=[]:t[n]=null})),t}function r(e,t){return t.prototype.constructor=t,e.prototype=new t,e.prototype.constructor=e,e}function i(e,t){return p(t,function(t,n){e[n]=t}),e}function s(e,t){p(t,function(n,o){t[o]&&"object"==typeof t[o]?(e[o]||(Array.isArray(t[o])?e[o]=[]:e[o]={}),s(e[o],t[o])):e[o]=t[o]})}function a(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}function l(e){var t={};return p(e,function(e,n){return t[n]=e}),t}function u(e){for(var t=[],n=1;no;o++)n.prototype[t[o]]=void 0;return n}Object.defineProperties(n,{columnFactory:{get:function(){return o}},__esModule:{value:!0}});var r,i=(r=e("object"),r&&r.__esModule&&r||{"default":r}).inherit},{object:49}],51:[function(e,t,n){"use strict";function o(e){return e[0].toUpperCase()+e.substr(1)}function r(e,t){var n=!0;return h(t.length-1,function(o){return e.charAt(o)!==t.charAt(o)?(n=!1,!1):void 0}),n}function i(e,t){var n=!0,o=t.length-1,r=e.length-1;return h(o,function(i){var s=r-i,a=o-i;return e.charAt(s)!==t.charAt(a)?(n=!1,!1):void 0}),n}function s(){for(var e=[],t=0;t=48&&57>=e||e>=96&&111>=e||e>=186&&192>=e||e>=219&&222>=e||e>=226||e>=65&&90>=e}function r(e){var t=[u.ARROW_DOWN,u.ARROW_UP,u.ARROW_LEFT,u.ARROW_RIGHT,u.HOME,u.END,u.DELETE,u.BACKSPACE,u.F1,u.F2,u.F3,u.F4,u.F5,u.F6,u.F7,u.F8,u.F9,u.F10,u.F11,u.F12,u.TAB,u.PAGE_DOWN,u.PAGE_UP,u.ENTER,u.ESCAPE,u.SHIFT,u.CAPS_LOCK,u.ALT];return-1!==t.indexOf(e)}function i(e){return-1!==[u.CONTROL_LEFT,224,u.COMMAND_LEFT,u.COMMAND_RIGHT].indexOf(e)}function s(e,t){var n=t.split("|"),o=!1;return l(n,function(t){return e===u[t]?(o=!0,!1):void 0}),o}Object.defineProperties(n,{KEY_CODES:{get:function(){return u}},isPrintableChar:{get:function(){return o}},isMetaKey:{get:function(){return r}},isCtrlKey:{get:function(){return i}},isKey:{get:function(){return s}},__esModule:{value:!0}});var a,l=(a=e("array"),a&&a.__esModule&&a||{"default":a}).arrayEach,u={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL_LEFT:91,COMMAND_LEFT:17,COMMAND_RIGHT:93,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86}},{array:41}],53:[function(e,t,n){"use strict";function o(){function e(e){return null!==e&&!n(e)&&("string"==typeof e||"number"==typeof e)}function t(e){return null!==e&&("object"==typeof e||"function"==typeof e)}function n(e){return e!==e}var o={arrayMap:[],weakMap:new WeakMap};return{get:function(n){return e(n)?o.arrayMap[n]:t(n)?o.weakMap.get(n):void 0},set:function(n,r){if(e(n))o.arrayMap[n]=r;else{if(!t(n))throw new Error("Invalid key type");o.weakMap.set(n,r)}},"delete":function(n){e(n)?delete o.arrayMap[n]:t(n)&&o.weakMap["delete"](n)}}}Object.defineProperties(n,{MultiMap:{get:function(){return o}},__esModule:{value:!0}}),window.MultiMap=o},{}],54:[function(e,t,n){"use strict";Object.defineProperties(n,{Hooks:{get:function(){return l}},localHooks:{get:function(){return u}},__esModule:{value:!0}});var o,r,i=["afterCellMetaReset","afterChange","afterChangesObserved","afterColumnMove","afterColumnResize","afterContextMenuDefaultOptions","afterContextMenuHide","afterContextMenuShow","afterCopyLimit","afterCreateCol","afterCreateRow","afterDeselect","afterDestroy","afterDocumentKeyDown","afterGetCellMeta","afterGetColHeader","afterGetRowHeader","afterInit","afterIsMultipleSelectionCheck","afterLoadData","afterMomentumScroll","afterOnCellCornerMouseDown","afterOnCellMouseDown","afterOnCellMouseOver","afterRemoveCol","afterRemoveRow","afterRender","afterRenderer","afterScrollHorizontally","afterScrollVertically","afterSelection","afterSelectionByProp","afterSelectionEnd","afterSelectionEndByProp","afterSetCellMeta","afterUpdateSettings","afterValidate","beforeAutofill","beforeCellAlignment","beforeChange","beforeChangeRender","beforeDrawBorders","beforeGetCellMeta","beforeInit","beforeInitWalkontable","beforeKeyDown","beforeOnCellMouseDown","beforeRemoveCol","beforeRemoveRow","beforeRender","beforeSetRangeEnd","beforeTouchScroll","beforeValidate","construct","init","modifyCol","modifyColWidth","modifyRow","modifyRowHeight","persistentStateLoad","persistentStateReset","persistentStateSave","beforeColumnSort","afterColumnSort","afterAutofillApplyValues","modifyCopyableRange","beforeColumnMove","afterColumnMove","beforeRowMove","afterRowMove","beforeColumnResize","afterColumnResize","beforeRowResize","afterRowResize"],s=(o=e("helpers/array"),o&&o.__esModule&&o||{"default":o}).arrayEach,a=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,l=function(){this.globalBucket=this.createEmptyBucket()};$traceurRuntime.createClass(l,{createEmptyBucket:function(){var e=Object.create(null);return s(i,function(t){return e[t]=[]}),e},getBucket:function(){var e=void 0!==arguments[0]?arguments[0]:null;return e?(e.pluginHookBucket||(e.pluginHookBucket=this.createEmptyBucket()),e.pluginHookBucket):this.globalBucket},add:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this;if(Array.isArray(t))s(t,function(t){return o.add(e,t,n)});else{var r=this.getBucket(n);"undefined"==typeof r[e]&&(this.register(e),r[e]=[]),t.skip=!1,-1===r[e].indexOf(t)&&r[e].push(t)}return this},once:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this;Array.isArray(t)?s(t,function(t){return o.once(e,t,n)}):(t.runOnce=!0,this.add(e,t,n))},remove:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this.getBucket(n);return"undefined"!=typeof o[e]&&o[e].indexOf(t)>=0?(t.skip=!0,!0):!1},run:function(e,t,n,o,r,i,s,a){var l=this.globalBucket[t],u=-1,c=l?l.length:0;if(c)for(;++u=0},getRegistered:function(){return i}},{});var u={_localHooks:Object.create(null),addLocalHook:function(e,t){this._localHooks[e]||(this._localHooks[e]=[]),this._localHooks[e].push(t)},runLocalHooks:function(e){for(var t=[],n=1;n=0&&p.splice(p.indexOf(this.pluginName),1),p.length||this.hot.runHooks("afterPluginsInitialized"),this.initialized=!0},enablePlugin:function(){this.enabled=!0},disablePlugin:function(){this.eventManager&&this.eventManager.clear(),this.clearHooks(),this.enabled=!1},addHook:function(e,t){var n=f.get(this).hooks[e]=f.get(this).hooks[e]||[];this.hot.addHook(e,t),n.push(t),f.get(this).hooks[e]=n},removeHooks:function(e){var t=this;u(f.get(this).hooks[e]||[],function(n){t.hot.removeHook(e,n)})},clearHooks:function(){var e=this,t=f.get(this).hooks;l(t,function(t,n){return e.removeHooks(n)}),t.length=0},callOnPluginsReady:function(e){this.isPluginsReady?e():this.pluginsInitializedCallbacks.push(e)},onAfterPluginsInitialized:function(){u(this.pluginsInitializedCallbacks,function(e){return e()}),this.pluginsInitializedCallbacks.length=0,this.isPluginsReady=!0},onUpdateSettings:function(){this.isEnabled&&(this.enabled&&!this.isEnabled()&&this.disablePlugin(),!this.enabled&&this.isEnabled()&&this.enablePlugin(),this.enabled&&this.isEnabled()&&this.updatePlugin&&this.updatePlugin())},updatePlugin:function(){},destroy:function(){this.eventManager&&this.eventManager.destroy(),this.clearHooks(),delete this.hot}},{});var m=g},{"helpers/array":41,"helpers/object":49,plugins:55}],57:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoColumnSize:{get:function(){return D}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],p=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),g=p.arrayEach,m=p.arrayFilter,v=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),w=v.cancelAnimationFrame,y=v.requestAnimationFrame,b=v.isVisible,C=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,R=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),_=R.isObject,E=(R.objectEach,l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}),S=E.valueAccordingPercent,T=E.rangeEach,O=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,M=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,k=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,H=(h=e("3rdparty/walkontable/src/calculator/viewportColumns"),h&&h.__esModule&&h||{"default":h}).WalkontableViewportColumnsCalculator,D=function(e){var t=this;$traceurRuntime.superConstructor(x).call(this,e),this.widths=[],this.ghostTable=new C(this.hot),this.samplesGenerator=new M(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeColumnResize",function(e,n,o){return t.onBeforeColumnResize(e,n,o)})},x=D;$traceurRuntime.createClass(D,{isEnabled:function(){return this.hot.getSettings().autoColumnSize!==!1&&!this.hot.getSettings().colWidths},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("modifyColWidth",function(t,n){return e.getColumnWidth(n,t)}),$traceurRuntime.superGet(this,x.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,x.prototype,"disablePlugin").call(this)},calculateColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countRows()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),T(e.from,e.to,function(e){if(n||void 0===o.widths[e]&&!o.hot._getColWidthFromSettings(e)){var r=o.samplesGenerator.generateColumnSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addColumn(t,e)})}}),this.ghostTable.columns.length&&(this.ghostTable.getWidths(function(e,t){return o.widths[e]=t}),this.ghostTable.clean())},calculateAllColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=this,n=0,o=this.hot.countCols()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateColumnsWidth({from:n,to:Math.min(n+x.CALCULATION_STEP,o)},e),n=n+x.CALCULATION_STEP+1,void(o>n?r=y(i):(w(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(w(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateColumnsWidth({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllColumnsWidth:function(){this.hot.view&&b(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllColumnsWidth())},getSyncCalculationLimit:function(){var e=x.SYNC_CALCULATION_LIMIT,t=this.hot.countCols()-1;return _(this.hot.getSettings().autoColumnSize)&&(e=this.hot.getSettings().autoColumnSize.syncLimit,k(e)?e=S(t,e):e>>=0),Math.min(e,t)},getColumnWidth:function(e){var t=arguments[1],n=void 0!==arguments[2]?arguments[2]:!0,o=t;return void 0===o&&(o=this.widths[e],n&&"number"==typeof o&&(o=Math.max(o,H.DEFAULT_WIDTH))),o},getFirstVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getFirstVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getFirstRenderedColumn():-1},getLastVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getLastVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getLastRenderedColumn():-1},clearCache:function(){this.widths.length=0},isNeedRecalculate:function(){return m(this.widths,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateColumnsWidth({from:this.getFirstVisibleColumn(),to:this.getLastVisibleColumn()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllColumnsWidth()},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllColumnsWidth():setTimeout(function(){e.hot&&e.recalculateAllColumnsWidth()},0)},onBeforeChange:function(e){var t=this;g(e,function(e){return t.widths[e[1]]=void 0})},onBeforeColumnResize:function(e,t,n){return n&&(this.calculateColumnsWidth(e,void 0,!0),t=this.getColumnWidth(e,void 0,!1)),t},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,x.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 50}},f),O("autoColumnSize",D)},{"3rdparty/walkontable/src/calculator/viewportColumns":3,_base:56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,plugins:55,"utils/ghostTable":96,"utils/samplesGenerator":97}],58:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoRowSize:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],f=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),p=(f.arrayEach,f.arrayFilter),g=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),m=g.cancelAnimationFrame,v=g.requestAnimationFrame,w=g.isVisible,y=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,b=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),C=b.isObject,R=(b.objectEach,l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}),_=R.valueAccordingPercent,E=R.rangeEach,S=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,T=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,O=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,M=function(e){var t=this;$traceurRuntime.superConstructor(k).call(this,e),this.heights=[],this.ghostTable=new y(this.hot),this.samplesGenerator=new T(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeRowResize",function(e,n,o){return t.onBeforeRowResize(e,n,o)})},k=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().autoRowSize===!0||C(this.hot.getSettings().autoRowSize)},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeColumnMove",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnResize",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnSort",function(){return e.clearCache()}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("beforeRowMove",function(t,n){return e.onBeforeRowMove(t,n)}),this.addHook("modifyRowHeight",function(t,n){return e.getRowHeight(n,t)}),$traceurRuntime.superGet(this,k.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,k.prototype,"disablePlugin").call(this)},calculateRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countCols()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),E(e.from,e.to,function(e){if(n||void 0===o.heights[e]){var r=o.samplesGenerator.generateRowSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addRow(t,e)})}}),this.ghostTable.rows.length&&(this.ghostTable.getHeights(function(e,t){return o.heights[e]=t}),this.ghostTable.clean())},calculateAllRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=this,n=0,o=this.hot.countRows()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateRowsHeight({from:n,to:Math.min(n+k.CALCULATION_STEP,o)},e),n=n+k.CALCULATION_STEP+1,void(o>n?r=v(i):(m(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(m(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateRowsHeight({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllRowsHeight:function(){w(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllRowsHeight())},getSyncCalculationLimit:function(){var e=k.SYNC_CALCULATION_LIMIT,t=this.hot.countRows()-1;return C(this.hot.getSettings().autoRowSize)&&(e=this.hot.getSettings().autoRowSize.syncLimit,O(e)?e=_(t,e):e>>=0),Math.min(e,t)},getRowHeight:function(e){var t=arguments[1],n=t;return void 0!==this.heights[e]&&this.heights[e]>(t||0)&&(n=this.heights[e]),n},getFirstVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getFirstVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getFirstRenderedRow():-1},getLastVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getLastVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getLastRenderedRow():-1},clearCache:function(){this.heights.length=0},clearCacheByRange:function(e){var t=this;"number"==typeof e&&(e={from:e,to:e}),E(Math.min(e.from,e.to),Math.max(e.from,e.to),function(e){return t.heights[e]=void 0})},isNeedRecalculate:function(){return p(this.heights,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateRowsHeight({from:this.getFirstVisibleRow(),to:this.getLastVisibleRow()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllRowsHeight()},onBeforeRowMove:function(e,t){this.clearCacheByRange({from:e,to:t}),this.calculateAllRowsHeight()},onBeforeRowResize:function(e,t,n){return n&&(this.calculateRowsHeight(e,void 0,!0),t=this.getRowHeight(e)),t},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllRowsHeight():setTimeout(function(){e.hot&&e.recalculateAllRowsHeight()},0)},onBeforeChange:function(e){var t=null;1===e.length?t=e[0][0]:e.length>1&&(t={from:e[0][0],to:e[e.length-1][0]}),null!==t&&this.clearCacheByRange(t)},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,k.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 500}},h),S("autoRowSize",M)},{_base:56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,plugins:55,"utils/ghostTable":96,"utils/samplesGenerator":97}],59:[function(e,t,n){"use strict";function o(e,t,n,o){var r,i,s,a,l,u=n.length,c=n?n[0].length:0,d=[],h=[];if(r=t.row-e.row,i=t.col-e.col,-1!==["down","up"].indexOf(o)){for(var f=0;i>=f;f++)s=parseInt(n[0][f],10),a=parseInt(n[u-1][f],10),l=("down"===o?a-s:s-a)/(u-1)||0,h.push(l);d.push(h)}if(-1!==["right","left"].indexOf(o))for(var p=0;r>=p;p++)s=parseInt(n[p][0],10),a=parseInt(n[p][c-1],10),l=("right"===o?a-s:s-a)/(c-1)||0,h=[],h.push(l),d.push(h);return d}function r(e){function t(t){return e.autofill?void(e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged>1&&e.autofill.apply(),e.autofill.handle.isDragged=0,a=!1)):!0}function n(e){var t,n;return s.instance.autofill?(t=c(s.instance.table).top-(window.pageYOffset||document.documentElement.scrollTop)+d(s.instance.table),n=c(s.instance.table).left-(window.pageXOffset||document.documentElement.scrollLeft)+h(s.instance.table),s.addingStarted===!1&&s.instance.autofill.handle.isDragged>0&&e.clientY>t&&e.clientX<=n?(s.instance.mouseDragOutside=!0,s.addingStarted=!0):s.instance.mouseDragOutside=!1,void(s.instance.mouseDragOutside&&setTimeout(function(){s.addingStarted=!1,s.instance.alter("insert_row")},200))):!1}var o,r,i,s=this,a=!1;this.instance=e,this.addingStarted=!1,i=f(e),i.addEventListener(document,"mouseup",t),i.addEventListener(document,"mousemove",n),o=this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown,this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown=function(t){e.autofill.handle.isDragged=1,a=!0,o(t); -},r=this.instance.view.wt.wtSettings.settings.onCellMouseOver,this.instance.view.wt.wtSettings.settings.onCellMouseOver=function(t,n,o,i){e.autofill&&a&&!e.view.isMouseDown()&&e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged++,e.autofill.showBorder(n),e.autofill.checkIfNewRowNeeded()),r(t,n,o,i)},this.instance.view.wt.wtSettings.settings.onCellCornerDblClick=function(){e.autofill.selectAdjacent()}}Object.defineProperties(n,{Autofill:{get:function(){return r}},__esModule:{value:!0}});var i,s,a,l,u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),c=u.offset,d=u.outerHeight,h=u.outerWidth,f=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,p=((a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords);r.prototype.init=function(){this.handle={}},r.prototype.disable=function(){this.handle.disabled=!0},r.prototype.selectAdjacent=function(){var e,t,n,o,r;e=this.instance.selection.isMultiple()?this.instance.view.wt.selections.area.getCorners():this.instance.view.wt.selections.current.getCorners(),t=this.instance.getData();e:for(n=e[2]+1;nt[3]?(s="right",n=new p(e[0],t[3]+1),r=new p(e[2],e[3])):e[0]t[2]&&e[1]===t[1]&&(s="down",n=new p(t[2]+1,e[1]),r=new p(e[2],e[3])),n&&n.row>-1&&n.col>-1?(l={from:this.instance.getSelectedRange().from,to:this.instance.getSelectedRange().to},i=this.instance.getData(l.from.row,l.from.col,l.to.row,l.to.col),a=o(n,r,i,s),Handsontable.hooks.run(this.instance,"beforeAutofill",n,r,i),this.instance.populateFromArray(n.row,n.col,i,r.row,r.col,"autofill",null,s,a),this.instance.selection.setRangeStart(new p(e[0],e[1])),this.instance.selection.setRangeEnd(new p(e[2],e[3]))):this.instance.selection.refreshBorders())},r.prototype.showBorder=function(e){var t=this.instance.getSelectedRange().getTopLeftCorner(),n=this.instance.getSelectedRange().getBottomRightCorner();if("horizontal"!==this.instance.getSettings().fillHandle&&(n.rowe.row))e=new p(e.row,n.col);else{if("vertical"===this.instance.getSettings().fillHandle)return;e=new p(n.row,e.col)}this.instance.view.wt.selections.fill.clear(),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().from),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().to),this.instance.view.wt.selections.fill.add(e),this.instance.view.render()},r.prototype.checkIfNewRowNeeded=function(){var e,t,n=this.instance.countRows(),o=this;this.instance.view.wt.selections.fill.cellRange&&this.addingStarted===!1&&(t=this.instance.getSelected(),e=this.instance.view.wt.selections.fill.getCorners(),t[2]n[1]?e?1:-1:0}},dateSort:function(e){return function(t,n){if(t[1]===n[1])return 0;if(null===t[1]||""===t[1])return 1;if(null===n[1]||""===n[1])return-1;var o=new Date(t[1]),r=new Date(n[1]);return r>o?e?-1:1:o>r?e?1:-1:0}},sort:function(){if("undefined"!=typeof this.hot.sortOrder){var e,t;this.hot.sortingEnabled=!1,this.hot.sortIndex.length=0;for(var n=this.hot.colOffset(),o=0,r=this.hot.countRows()-this.hot.getSettings().minSpareRows;r>o;o++)this.hot.sortIndex.push([o,this.hot.getDataAtCell(o,this.hot.sortColumn+n)]);switch(e=this.hot.getCellMeta(0,this.hot.sortColumn),this.sortIndicators[this.hot.sortColumn]=e.sortIndicator,e.type){case"date":t=this.dateSort;break;default:t=this.defaultSort}this.hot.sortIndex.sort(t(this.hot.sortOrder));for(var o=this.hot.sortIndex.length;o=0&&-1===r&&l(n,"columnSorting"),h(n,"descending"),h(n,"ascending"),this.sortIndicators[e]&&e===this.hot.sortColumn&&("ascending"===this.sortOrderClass?l(n,"ascending"):"descending"===this.sortOrderClass&&l(n,"descending")))},isSorted:function(){return"undefined"!=typeof this.hot.sortColumn},afterCreateRow:function(e,t){if(this.isSorted()){for(var n=0;n=e&&(this.hot.sortIndex[n][0]+=t);for(var n=0;t>n;n++)this.hot.sortIndex.splice(e+n,0,[e+n,this.hot.getData()[e+n][this.hot.sortColumn+this.hot.colOffset()]]);this.saveSortingState()}},afterRemoveRow:function(e,t){if(this.isSorted()){var n=this.translateRow(e);this.hot.sortIndex.splice(e,t);for(var o=0;on&&(this.hot.sortIndex[o][0]-=t);this.saveSortingState()}}},{},p);var w=m;g("columnSorting",m)},{_base:56,eventManager:40,"helpers/dom/element":44,plugins:55}],61:[function(e,t,n){"use strict";Object.defineProperties(n,{CommentEditor:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,i=function(){this.editor=this.createEditor(),this.editorStyle=this.editor.style,this.editorStyle.position="absolute",this.editorStyle.zIndex=100,this.hide()},s=i;$traceurRuntime.createClass(i,{setPosition:function(e,t){this.editorStyle.left=e+"px",this.editorStyle.top=t+"px"},show:function(){this.editorStyle.display="block"},hide:function(){this.editorStyle.display="none"},isVisible:function(){return"block"===this.editorStyle.display},setValue:function(){var e=void 0!==arguments[0]?arguments[0]:"";e=e||"",this.getInputElement().value=e},getValue:function(){return this.getInputElement().value},isFocused:function(){return document.activeElement===this.getInputElement()},focus:function(){this.getInputElement().focus()},createEditor:function(){var e,t,n=document.querySelector("."+s.CLASS_EDITOR_CONTAINER);return n||(n=document.createElement("div"),r(n,s.CLASS_EDITOR_CONTAINER),document.body.appendChild(n)),e=document.createElement("div"),r(e,s.CLASS_EDITOR),t=document.createElement("textarea"),r(t,s.CLASS_INPUT),e.appendChild(t),n.appendChild(e),e},getInputElement:function(){return this.editor.querySelector("."+s.CLASS_INPUT)},destroy:function(){this.editor.parentNode.removeChild(this.editor),this.editor=null,this.editorStyle=null}},{get CLASS_EDITOR_CONTAINER(){return"htCommentsContainer"},get CLASS_EDITOR(){return"htComments"},get CLASS_INPUT(){return"htCommentTextArea"},get CLASS_CELL(){return"htCommentCell"}})},{"helpers/dom/element":44}],62:[function(e,t,n){"use strict";Object.defineProperties(n,{Comments:{get:function(){return R}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.addClass,d=u.closest,h=u.getWindowScrollLeft,f=u.getWindowScrollTop,p=u.hasClass,g=u.offset,m=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,v=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords,w=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}),y=w.registerPlugin,b=(w.getPlugin,(a=e("_base"),a&&a.__esModule&&a||{"default":a})["default"]),C=(l=e("commentEditor"),l&&l.__esModule&&l||{"default":l}).CommentEditor,R=function(e){$traceurRuntime.superConstructor(_).call(this,e),this.editor=null,this.eventManager=null,this.range={},this.mouseDown=!1,this.contextMenuEvent=!1,this.timer=null},_=R;$traceurRuntime.createClass(R,{isEnabled:function(){return this.hot.getSettings().comments},enablePlugin:function(){var e=this;this.enabled||(this.editor||(this.editor=new C),this.eventManager||(this.eventManager=new m(this)),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addToContextMenu(t)}),this.addHook("afterRenderer",function(t,n,o,r,i,s){return e.onAfterRenderer(t,s)}),this.addHook("afterScrollVertically",function(){return e.refreshEditorPosition()}),this.addHook("afterColumnResize",function(){return e.refreshEditorPosition()}),this.addHook("afterRowResize",function(){return e.refreshEditorPosition()}),this.registerListeners(),$traceurRuntime.superGet(this,_.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,_.prototype,"disablePlugin").call(this)},registerListeners:function(){var e=this;this.eventManager.addEventListener(document,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(document,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(document,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document,"mouseup",function(t){return e.onMouseUp(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"blur",function(t){return e.onEditorBlur(t)})},setRange:function(e){this.range=e},clearRange:function(){this.range={}},targetIsCellWithComment:function(e){return p(e.target,"htCommentCell")&&d(e.target,[this.hot.rootElement])?!0:!1},targetIsCommentTextArea:function(e){return this.editor.getInputElement()===e.target},saveComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.editor.getValue(),t=this.range.from.row,n=this.range.from.col;this.hot.setCellMeta(t,n,"comment",e),this.hot.render()},saveCommentAtCell:function(e,t){this.setRange({from:new v(e,t)}),this.saveComment()},removeComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');this.hot.removeCellMeta(this.range.from.row,this.range.from.col,"comment"),this.hot.render(),this.hide()},removeCommentAtCell:function(e,t){this.setRange({from:new v(e,t)}),this.removeComment()},show:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.hot.getCellMeta(this.range.from.row,this.range.from.col);return this.refreshEditorPosition(!0),this.editor.setValue(e.comment||""),this.editor.show(),!0},showAtCell:function(e,t){return this.setRange({from:new v(e,t)}),this.show()},hide:function(){this.editor.hide()},refreshEditorPosition:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e||this.range.from&&this.editor.isVisible()){var t=this.hot.view.wt.wtTable.getCell(this.range.from),n=g(t),o=this.hot.getColWidth(this.range.from.col),r=n.top,i=n.left,s=0,a=0;this.hot.view.wt.wtViewport.hasVerticalScroll()&&(r-=this.hot.view.wt.wtOverlays.topOverlay.getScrollPosition(),s=20),this.hot.view.wt.wtViewport.hasHorizontalScroll()&&(i-=this.hot.view.wt.wtOverlays.leftOverlay.getScrollPosition(),a=20);var l=i+o,u=r,c=this.hot.view.wt.wtTable.holder.getBoundingClientRect(),d={left:c.left+h()+a,right:c.right+h()-15,top:c.top+f()+s,bottom:c.bottom+f()};l<=d.left||l>d.right||u<=d.top||u>d.bottom?this.hide():this.editor.setPosition(l,u)}},onMouseDown:function(e){this.mouseDown=!0,this.hot.view&&this.hot.view.wt&&(this.contextMenuEvent||this.targetIsCommentTextArea(e)||this.targetIsCellWithComment(e)||this.hide(),this.contextMenuEvent=!1)},onMouseOver:function(e){if(!this.mouseDown&&!this.editor.isFocused())if(this.targetIsCellWithComment(e)){var t=this.hot.view.wt.wtTable.getCoords(e.target),n={from:new v(t.row,t.col)};this.setRange(n),this.show()}else this.targetIsCommentTextArea(e)||this.editor.isFocused()||this.hide()},onMouseMove:function(e){var t=this;this.targetIsCommentTextArea(e)&&(this.mouseDown=!0,clearTimeout(this.timer),this.timer=setTimeout(function(){t.mouseDown=!1},200))},onMouseUp:function(e){this.mouseDown=!1},onAfterRenderer:function(e,t){t.comment&&c(e,t.commentedCellClassName)},onEditorBlur:function(e){this.saveComment()},checkSelectionCommentsConsistency:function(){var e=this.hot.getSelectedRange();if(!e)return!1;var t=!1,n=e.from;return this.hot.getCellMeta(n.row,n.col).comment&&(t=!0),t},onContextMenuAddComment:function(){var e=this,t=this.hot.getSelectedRange();this.contextMenuEvent=!0,this.setRange({from:t.from}),this.show(),setTimeout(function(){e.hot&&(e.hot.deselectCell(),e.editor.focus())},10)},onContextMenuRemoveComment:function(e,t){this.contextMenuEvent=!0,this.removeCommentAtCell(t.start.row,t.start.col)},addToContextMenu:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"commentsAddEdit",name:function(){return t.checkSelectionCommentsConsistency()?"Edit Comment":"Add Comment"},callback:function(){return t.onContextMenuAddComment()},disabled:function(){return this.getSelected()?!1:!0}},{key:"commentsRemove",name:function(){return"Delete Comment"},callback:function(e,n){return t.onContextMenuRemoveComment(e,n)},disabled:function(){return!t.checkSelectionCommentsConsistency()}})},destroy:function(){this.editor&&this.editor.destroy(),$traceurRuntime.superGet(this,_.prototype,"destroy").call(this)}},{},b),y("comments",R)},{"3rdparty/walkontable/src/cell/coords":5,_base:56,commentEditor:61,eventManager:40,"helpers/dom/element":44,plugins:55}],63:[function(e,t,n){"use strict";function o(e,t){var n;return i(t,function(t){var o=t.key?t.key.split(":"):null;return Array.isArray(o)&&o[1]===e?(n=t,!1):void 0}),n}Object.defineProperties(n,{CommandExecutor:{get:function(){return s}},__esModule:{value:!0}});var r,i=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,s=function(e){this.hot=e,this.commands={},this.commonCallback=null};$traceurRuntime.createClass(s,{registerCommand:function(e,t){this.commands[e]=t},setCommonCallback:function(e){this.commonCallback=e},execute:function(e){for(var t=[],n=1;n0;if(s)return}}else if(!(t(i)||w(i,"current")&&w(i,"wtBorder")))return;this.open(e)}},{get DEFAULT_ITEMS(){return[S,T,N,O,M,N,k,H,N,D,x,N,A,N,P]}},p),L.SEPARATOR={name:N},Handsontable.hooks.register("afterContextMenuDefaultOptions"),Handsontable.hooks.register("afterContextMenuShow"),Handsontable.hooks.register("afterContextMenuHide"),Handsontable.hooks.register("afterContextMenuExecute"),R("contextMenu",L)},{_base:56,commandExecutor:63,eventManager:40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,itemsFactory:66,menu:67,plugins:55,predefinedItems:68}],65:[function(e,t,n){"use strict";Object.defineProperties(n,{Cursor:{get:function(){return d}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.getWindowScrollLeft,a=i.getWindowScrollTop,l=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),u=l.pageX,c=l.pageY,d=function(e){var t,n,o,r,i,l,d,h,f=a(),p=s();this.type=this.getSourceType(e),"literal"===this.type?(t=parseInt(e.top,10),o=parseInt(e.left,10),d=e.height,h=e.width):"event"===this.type&&(t=parseInt(c(e),10),o=parseInt(u(e),10),d=e.target.clientHeight,h=e.target.clientWidth),n=t-f,r=o-p,i=f,l=p,this.top=t,this.topRelative=n,this.left=o,this.leftRelative=r,this.scrollTop=i,this.scrollLeft=l,this.cellHeight=d,this.cellWidth=h};$traceurRuntime.createClass(d,{getSourceType:function(e){var t="literal";return e instanceof Event&&(t="event"),t},fitsAbove:function(e){return this.topRelative>=e.offsetHeight},fitsBelow:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerHeight;return this.topRelative+e.offsetHeight<=t},fitsOnRight:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerWidth;return this.leftRelative+this.cellWidth+e.offsetWidth<=t},fitsOnLeft:function(e){return this.leftRelative>=e.offsetWidth}},{}),Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.utils.Cursor=d},{"helpers/dom/element":44,"helpers/dom/event":45}],66:[function(e,t,n){"use strict";function o(){var e=void 0!==arguments[0]?arguments[0]:null,t=void 0!==arguments[1]?arguments[1]:[],n=void 0!==arguments[2]?arguments[2]:{},o=[];return e&&e.items?e=e.items:Array.isArray(e)||(e=t),u(e)?l(e,function(e,t){var r=n["string"==typeof e?e:t];r||(r=e),u(e)?c(r,e):"string"==typeof r&&(r={name:r}),void 0===r.key&&(r.key=t),o.push(r)}):d(e,function(e,t){var r=n[e];!r&&p.indexOf(e)>=0||(r||(r={name:e,key:t+""}),u(e)&&c(r,e),void 0===r.key&&(r.key=t),o.push(r))}),o[0].name===f&&o.shift(),o}Object.defineProperties(n,{ItemsFactory:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,a=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}),l=a.objectEach,u=a.isObject,c=a.extend,d=(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,h=(s=e("predefinedItems"),s&&s.__esModule&&s||{"default":s}),f=h.SEPARATOR,p=h.ITEMS,g=h.predefinedItems,m=function(e){var t=void 0!==arguments[1]?arguments[1]:null;this.hot=e,this.predefinedItems=g(),this.defaultOrderPattern=t};$traceurRuntime.createClass(m,{setPredefinedItems:function(e){var t=this,n={};this.defaultOrderPattern.length=0,l(e,function(e,o){var r="";e.name===f?(n[f]=e,r=f):isNaN(parseInt(o,10))?(e.key=void 0===e.key?o:e.key,n[o]=e,r=e.key):(n[e.key]=e,r=e.key),t.defaultOrderPattern.push(r)}),this.predefinedItems=n},getVisibleItems:function(){var e=void 0!==arguments[0]?arguments[0]:null,t=this,n={};return l(this.predefinedItems,function(e,o){(!e.hidden||e.hidden&&!e.hidden.apply(t.hot))&&(n[o]=e)}),o(e,this.defaultOrderPattern,n)},getItems:function(){var e=void 0!==arguments[0]?arguments[0]:null;return o(e,this.defaultOrderPattern,this.predefinedItems)}},{})},{"helpers/array":41,"helpers/object":49,predefinedItems:68}],67:[function(e,t,n){"use strict";Object.defineProperties(n,{Menu:{get:function(){return W}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),p=f.addClass,g=f.empty,m=f.fastInnerHTML,v=(f.getComputedStyle,f.getScrollbarWidth),w=(f.getWindowScrollLeft,f.getWindowScrollTop,f.hasClass,f.isChildOf),y=f.removeClass,b=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,C=(i=e("cursor"),i&&i.__esModule&&i||{"default":i}).Cursor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).EventManager,_=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),E=(_.extend,_.isObject,_.objectEach,_.mixin),S=(l=e("utils"),l&&l.__esModule&&l||{"default":l}),T=S.isSeparator,O=S.isDisabled,M=S.isSelectionDisabled,k=S.hasSubMenu,H=S.normalizeSelection,D=(u=e("helpers/unicode"),u&&u.__esModule&&u||{"default":u}).KEY_CODES,x=(c=e("pluginHooks"),c&&c.__esModule&&c||{"default":c}).localHooks,A=(d=e("predefinedItems"),d&&d.__esModule&&d||{"default":d}),P=A.SEPARATOR,N=(A.predefinedItems,h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),L=(N.stopPropagation,N.stopImmediatePropagation),W=(N.pageX,N.pageY,function(e){var t=void 0!==arguments[1]?arguments[1]:{parent:null,name:null,className:"",keepInViewport:!0};this.hot=e,this.options=t,this.eventManager=new R(this),this.container=this.createContainer(this.options.name),this.hotMenu=null,this.hotSubMenus={},this.parentMenu=this.options.parent||null,this.menuItems=null,this.origOutsideClickDeselects=null,this._afterScrollCallback=null,this.registerEvents()}),I=W;$traceurRuntime.createClass(W,{registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){return e.onDocumentMouseDown(t)})},setMenuItems:function(e){this.menuItems=e},isSubMenu:function(){return null!==this.parentMenu},open:function(){var e=this;this.container.removeAttribute("style"),this.container.style.display="block";var t={data:this.menuItems,colHeaders:!1,colWidths:[200],autoRowSize:!1,readOnly:!0,copyPaste:!1,columns:[{data:"name",renderer:function(t,n,o,r,i,s){return e.menuItemRenderer(t,n,o,r,i,s)}}],renderAllRows:!0,beforeKeyDown:function(t){return e.onBeforeKeyDown(t)},afterOnCellMouseOver:function(t,n,o){return e.openSubMenu(n.row)}};this.origOutsideClickDeselects=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1,this.hotMenu=new Handsontable.Core(this.container,t),this.hotMenu.addHook("afterInit",function(){return e.onAfterInit()}),this.hotMenu.init(),this.hotMenu.listen(),this.blockMainTableCallbacks(),this.runLocalHooks("afterOpen")},close:function(){var e=void 0!==arguments[0]?arguments[0]:!1;this.isOpened()&&(e&&this.parentMenu?this.parentMenu.close():(this.closeAllSubMenus(),this.container.style.display="none",this.releaseMainTableCallbacks(),this.hotMenu.destroy(),this.hotMenu=null,this.hot.getSettings().outsideClickDeselects=this.origOutsideClickDeselects,this.hot.listen(),this.runLocalHooks("afterClose")))},openSubMenu:function(e){var t=this.hotMenu.getCell(e,0);if(this.closeAllSubMenus(),!t||!k(t))return!1;var n=this.hotMenu.getData()[e],o=new I(this.hot,{parent:this,name:n.name,className:this.options.className});return o.setMenuItems(n.submenu.items),o.open(),o.setPosition(t.getBoundingClientRect()),this.hotSubMenus[n.key]=o,o},closeSubMenu:function(e){var t=this.hotMenu.getData()[e],n=this.hotSubMenus[t.key];n&&(n.destroy(),delete this.hotSubMenus[t.key])},closeAllSubMenus:function(){var e=this;b(this.hotMenu.getData(),function(t,n){return e.closeSubMenu(n)})},isAllSubMenusClosed:function(){return 0===Object.keys(this.hotSubMenus).length},destroy:function(){this.clearLocalHooks(),this.close(),this.parentMenu=null,this.eventManager.destroy()},isOpened:function(){return null!==this.hotMenu},executeCommand:function(){var e=arguments[0];if(this.isOpened()&&this.hotMenu.getSelected()){var t=this.hotMenu.getData()[this.hotMenu.getSelected()[0]];if(this.runLocalHooks("select",t,e),t.isCommand!==!1){var n=this.hot.getSelectedRange(),o=n?H(n):{};this.runLocalHooks("executeCommand",t.key,o,e),this.isSubMenu()&&this.parentMenu.runLocalHooks("executeCommand",t.key,o,e),this.close(!0)}}},setPosition:function(e){var t=new C(e);this.options.keepInViewport?(t.fitsBelow(this.container)?this.setPositionBelowCursor(t):t.fitsAbove(this.container)?this.setPositionAboveCursor(t):this.setPositionBelowCursor(t),t.fitsOnRight(this.container)?this.setPositionOnRightOfCursor(t):this.setPositionOnLeftOfCursor(t)):(this.setPositionBelowCursor(t),this.setPositionOnRightOfCursor(t)); -},setPositionAboveCursor:function(e){var t=e.top-this.container.offsetHeight;this.isSubMenu()&&(t=window.scrollY+e.top+e.cellHeight-this.container.offsetHeight+3),this.container.style.top=t+"px"},setPositionBelowCursor:function(e){var t=e.top-1;this.isSubMenu()&&(t=e.top+window.scrollY-1),this.container.style.top=t+"px"},setPositionOnRightOfCursor:function(e){var t;t=this.isSubMenu()?window.scrollX+1+e.left+e.cellWidth:1+e.left,this.container.style.left=t+"px"},setPositionOnLeftOfCursor:function(e){this.container.style.left=e.left-this.container.offsetWidth+v()+4+"px"},selectFirstCell:function(){var e=this.hotMenu.getCell(0,0);T(e)||O(e)||M(e)?this.selectNextCell(0,0):this.hotMenu.selectCell(0,0)},selectLastCell:function(){var e=this.hotMenu.countRows()-1,t=this.hotMenu.getCell(e,0);T(t)||O(t)||M(t)?this.selectPrevCell(e,0):this.hotMenu.selectCell(e,0)},selectNextCell:function(e,t){var n=e+1,o=n=0?this.hotMenu.getCell(n,t):null;o&&(T(o)||O(o)||M(o)?this.selectPrevCell(n,t):this.hotMenu.selectCell(n,t))},menuItemRenderer:function(e,t,n,o,r,i){var s=this,a=e.getData()[n],l=document.createElement("div"),u=function(e){return e.hasOwnProperty("submenu")},c=function(e){return new RegExp(P,"i").test(e.name)},d=function(e){return e.disabled===!0||"function"==typeof e.disabled&&e.disabled.call(s.hot)===!0},h=function(e){return e.disableSelection};"function"==typeof i&&(i=i.call(this.hot)),g(t),p(l,"htItemWrapper"),t.appendChild(l),c(a)?p(t,"htSeparator"):"function"==typeof a.renderer?(p(t,"htCustomMenuRenderer"),t.appendChild(a.renderer(e,l,n,o,r,i))):m(l,i),d(a)?(p(t,"htDisabled"),this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()})):h(a)?(p(t,"htSelectionDisabled"),this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()})):u(a)?(p(t,"htSubmenu"),h(a)?this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(l,"mouseenter",function(){return e.selectCell(n,o)})):(y(t,"htSubmenu"),y(t,"htDisabled"),h(a)?this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(l,"mouseenter",function(){return e.selectCell(n,o)}))},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:null;e&&(e=e.replace(/ /g,"_"),e=this.options.className+"Sub_"+e);var t;return t=e?document.querySelector("."+this.options.className+"."+e):document.querySelector("."+this.options.className),t||(t=document.createElement("div"),p(t,"htMenu "+this.options.className),e&&p(t,e),document.getElementsByTagName("body")[0].appendChild(t)),t},blockMainTableCallbacks:function(){this._afterScrollCallback=function(){},this.hot.addHook("afterScrollVertically",this._afterScrollCallback),this.hot.addHook("afterScrollHorizontally",this._afterScrollCallback)},releaseMainTableCallbacks:function(){this._afterScrollCallback&&(this.hot.removeHook("afterScrollVertically",this._afterScrollCallback),this.hot.removeHook("afterScrollHorizontally",this._afterScrollCallback),this._afterScrollCallback=null)},onBeforeKeyDown:function(e){var t=this.hotMenu.getSelected(),n=!1;switch(e.keyCode){case D.ESCAPE:this.close(),n=!0;break;case D.ENTER:t&&(this.hotMenu.getData()[t[0]].submenu?n=!0:(this.executeCommand(e),this.close(!0)));break;case D.ARROW_DOWN:t?this.selectNextCell(t[0],t[1]):this.selectFirstCell(),n=!0;break;case D.ARROW_UP:t?this.selectPrevCell(t[0],t[1]):this.selectLastCell(),n=!0;break;case D.ARROW_RIGHT:if(t){var o=this.openSubMenu(t[0]);o&&o.selectFirstCell()}n=!0;break;case D.ARROW_LEFT:t&&this.isSubMenu()&&(this.close(),this.parentMenu&&this.parentMenu.hotMenu.listen(),n=!0)}n&&(e.preventDefault(),L(e))},onAfterInit:function(){var e=this.hotMenu.getSettings().data,t=this.hotMenu.view.wt.wtTable.hider.style,n=this.hotMenu.view.wt.wtTable.holder.style,o=parseInt(t.width,10),r=0;b(e,function(e){return r+=e.name===P?1:26}),n.width=o+22+"px",n.height=r+4+"px"},onDocumentMouseDown:function(e){this.isOpened()&&(this.container&&w(e.target,this.container)&&this.executeCommand(e),(this.isAllSubMenusClosed()||this.isSubMenu())&&!w(e.target,".htMenu")&&w(e.target,document)&&this.close(!0))}},{}),E(W,x)},{cursor:65,eventManager:40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,pluginHooks:54,predefinedItems:68,utils:69}],68:[function(e,t,n){"use strict";function o(){var e={};return c(D,function(t,n){return e[n]=d(t)}),e}function r(e,t){-1===H.indexOf(e)&&(D[e]=t)}var i;Object.defineProperties(n,{ROW_ABOVE:{get:function(){return w}},ROW_BELOW:{get:function(){return y}},COLUMN_LEFT:{get:function(){return b}},COLUMN_RIGHT:{get:function(){return C}},CLEAR_COLUMN:{get:function(){return R}},REMOVE_ROW:{get:function(){return _}},REMOVE_COLUMN:{get:function(){return E}},UNDO:{get:function(){return S}},REDO:{get:function(){return T}},READ_ONLY:{get:function(){return O}},ALIGNMENT:{get:function(){return M}},SEPARATOR:{get:function(){return k}},ITEMS:{get:function(){return H}},predefinedItems:{get:function(){return o}},addItem:{get:function(){return r}},__esModule:{value:!0}});var s,a,l,u=(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}),c=u.objectEach,d=u.clone,h=((a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).rangeEach,l=e("utils"),l&&l.__esModule&&l||{"default":l}),f=h.align,p=h.getAlignmentClasses,g=h.getValidSelection,m=h.checkSelectionConsistency,v=h.markLabelAsSelected,w="row_above",y="row_below",b="col_left",C="col_right",R="clear_column",_="remove_row",E="remove_col",S="undo",T="redo",O="make_read_only",M="alignment",k="---------",H=[w,y,b,C,R,_,E,S,T,O,M,k],D=(i={},Object.defineProperty(i,k,{value:{name:k},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,w,{value:{key:w,name:"Insert row above",callback:function(e,t){this.alter("insert_row",t.start.row)},disabled:function(){var e=g(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,y,{value:{key:y,name:"Insert row below",callback:function(e,t){this.alter("insert_row",t.end.row+1)},disabled:function(){var e=g(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,b,{value:{key:b,name:"Insert column on the left",callback:function(e,t){this.alter("insert_col",t.start.col)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,C,{value:{key:C,name:"Insert column on the right",callback:function(e,t){this.alter("insert_col",t.end.col+1)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,R,{value:{key:R,name:"Clear column",callback:function(e,t){var n=t.start.col;this.populateFromArray(0,n,[[null]],Math.max(t.start.row,t.end.row),n)},disabled:function(){var e=g(this);if(!e)return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,_,{value:{key:_,name:"Remove row",callback:function(e,t){var n=t.end.row-t.start.row+1;this.alter("remove_row",t.start.row,n)},disabled:function(){var e=g(this);if(!e)return!0;var t=[0,e[1],this.countRows()-1,e[1]];return t.join(",")===e.join(",")},hidden:function(){return!this.getSettings().allowRemoveRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,E,{value:{key:E,name:"Remove column",callback:function(e,t){var n=t.end.col-t.start.col+1;this.alter("remove_col",t.start.col,n)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||n},hidden:function(){return!this.getSettings().allowRemoveColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,S,{value:{key:S,name:"Undo",callback:function(){this.undo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isUndoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,T,{value:{key:T,name:"Redo",callback:function(){this.redo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isRedoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,O,{value:{key:O,name:function(){var e=this,t="Read only",n=m(this.getSelectedRange(),function(t,n){return e.getCellMeta(t,n).readOnly});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=m(t,function(t,n){return e.getCellMeta(t,n).readOnly});t.forAll(function(t,o){e.getCellMeta(t,o).readOnly=n?!1:!0}),this.render()},disabled:function(){return this.getSelectedRange()?!1:!0}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,M,{value:{key:M,name:"Alignment",disabled:function(){return this.getSelectedRange()?!1:!0},submenu:{items:[{key:M+":left",name:function(){var e=this,t="Left",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htLeft")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htLeft";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":center",name:function(){var e=this,t="Center",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htCenter")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htCenter";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":right",name:function(){var e=this,t="Right",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htRight")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htRight";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":justify",name:function(){var e=this,t="Justify",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htJustify")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htJustify";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{name:k},{key:M+":top",name:function(){var e=this,t="Top",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htTop")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htTop";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":middle",name:function(){var e=this,t="Middle",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htMiddle")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htMiddle";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":bottom",name:function(){var e=this,t="Bottom",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htBottom")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htBottom";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1}]}},configurable:!0,enumerable:!0,writable:!0}),i)},{"helpers/number":48,"helpers/object":49,utils:69}],69:[function(e,t,n){"use strict";function o(e){return{start:e.getTopLeftCorner(),end:e.getBottomRightCorner()}}function r(e){return v(e,"htSeparator")}function i(e){return v(e,"htSubmenu")}function s(e){return v(e,"htDisabled")}function a(e){return v(e,"htSelectionDisabled")}function l(e){var t=e.getSelected();return t?t[0]<0?null:e.countRows()>=e.getSettings().maxRows?null:t:null}function u(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htTop","").replace("htMiddle","").replace("htBottom","").replace(" ",""),e+=" "+t)}function c(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htLeft","").replace("htCenter","").replace("htRight","").replace("htJustify","").replace(" ",""),e+=" "+t)}function d(e,t){for(var n={},o=e.from.row;o<=e.to.row;o++)for(var r=e.from.col;r<=e.to.col;r++)n[o]||(n[o]=[]),n[o][r]=t(o,r);return n}function h(e,t,n,o){if(e.from.row==e.to.row&&e.from.col==e.to.col)f(e.from.row,e.from.col,t,n,o);else for(var r=e.from.row;r<=e.to.row;r++)for(var i=e.from.col;i<=e.to.col;i++)f(r,i,t,n,o)}function f(e,t,n,o,r){var i=r(e,t),s=o;i.className&&(s="vertical"===n?u(i.className,o):c(i.className,o)),i.className=s}function p(e,t){var n=!1;return e&&e.forAll(function(e,o){return t(e,o)?(n=!0,!1):void 0}),n}function g(e){return''+String.fromCharCode(10003)+""+e}Object.defineProperties(n,{normalizeSelection:{get:function(){return o}},isSeparator:{get:function(){return r}},hasSubMenu:{get:function(){return i}},isDisabled:{get:function(){return s}},isSelectionDisabled:{get:function(){return a}},getValidSelection:{get:function(){return l}},prepareVerticalAlignClass:{get:function(){return u}},prepareHorizontalAlignClass:{get:function(){return c}},getAlignmentClasses:{get:function(){return d}},align:{get:function(){return h}},checkSelectionConsistency:{get:function(){return p}},markLabelAsSelected:{get:function(){return g}},__esModule:{value:!0}});var m,v=(m=e("helpers/dom/element"),m&&m.__esModule&&m||{"default":m}).hasClass},{"helpers/dom/element":44}],70:[function(e,t,n){"use strict";Object.defineProperties(n,{ContextMenuCopyPaste:{get:function(){return g}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).removeClass,c=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,d=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,h=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,f=(a=e("_base"),a&&a.__esModule&&a||{"default":a})["default"],p=(l=e("zeroclipboard"),l&&l.__esModule&&l||{"default":l})["default"],g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.eventManager=new d(this),this.swfPath=null,this.outsideClickDeselectsCache=null},m=g;$traceurRuntime.createClass(g,{isEnabled:function(){return this.hot.getSettings().contextMenuCopyPaste},enablePlugin:function(){var e=this;if(!this.enabled){"object"==typeof this.hot.getSettings().contextMenuCopyPaste&&(this.swfPath=this.hot.getSettings().contextMenuCopyPaste.swfPath),"undefined"==typeof p&&console.error("To be able to use the Copy/Paste feature from the context menu, you need to manually include ZeroClipboard.js file to your website.");try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(t){"undefined"==typeof navigator.mimeTypes["application/x-shockwave-flash"]&&console.error("To be able to use the Copy/Paste feature from the context menu, your browser needs to have Flash Plugin installed.")}this.swfPath&&p.config({swfPath:this.swfPath}),this.hot.addHook("afterContextMenuShow",function(){return e.onAfterContextMenuShow()}),this.hot.addHook("afterContextMenuDefaultOptions",function(t){return e.onAfterContextMenuDefaultOptions(t)}),this.registerEvents(),$traceurRuntime.superGet(this,m.prototype,"enablePlugin").call(this)}},disablePlugin:function(){$traceurRuntime.superGet(this,m.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(document,"mouseenter",function(){return e.removeCurrentClass()}),this.eventManager.addEventListener(document,"mouseleave",function(){return e.removeZeroClipboardClass()})},getCopyValue:function(){return this.hot.copyPaste.setCopyableText(),this.hot.copyPaste.copyPasteInstance.elTextarea.value},onAfterContextMenuDefaultOptions:function(e){e.items.unshift({key:"copy",name:"Copy"},{key:"paste",name:"Paste",callback:function(){this.copyPaste.triggerPaste()}},Handsontable.plugins.ContextMenu.SEPARATOR)},onAfterContextMenuShow:function(){var e=this,t=this.hot.getPlugin("contextMenu"),n=t.menu.hotMenu.getData();c(n,function(n,o){if("copy"===n.key){var r=new p(t.menu.hotMenu.getCell(o,0));return r.off(),r.on("copy",function(t){var n=t.clipboardData;n.setData("text/plain",e.getCopyValue()),e.hot.getSettings().outsideClickDeselects=e.outsideClickDeselectsCache}),!1}})},removeCurrentClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.current");t&&u(t,"current")}this.outsideClickDeselectsCache=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1},removeZeroClipboardClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.zeroclipboard-is-hover");t&&u(t,"zeroclipboard-is-hover")}this.hot.getSettings().outsideClickDeselects=this.outsideClickDeselectsCache}},{},f),h("contextMenuCopyPaste",g)},{_base:56,eventManager:40,"helpers/array":41,"helpers/dom/element":44,plugins:55,zeroclipboard:"zeroclipboard"}],71:[function(e,t,n){"use strict";function o(e){function t(){e.isListening()&&e.selection.empty()}function n(t){var n,o,r,i,s,a,l,u,c,d;if(e.isListening()&&e.selection.isSelected()){n=t,o=m.parse(n),r=e.getSelected(),i=new E(r[0],r[1]),s=new E(r[2],r[3]),a=new S(i,i,s),l=a.getTopLeftCorner(),u=a.getBottomRightCorner(),c=l,d=new E(Math.max(u.row,o.length-1+l.row),Math.max(u.col,o[0].length-1+l.col));var h=s.row-i.row>=o.length-1,f=s.col-i.col>=o[0].length-1;e.addHookOnce("afterChange",function(t,n){var o=t?t.length:0;if(o){var r={row:0,col:0},i=-1;b(t,function(e,n){var s=o>n+1?t[n+1]:null;s&&(h||(r.row=r.row+Math.max(s[0]-e[0]-1,0)),!f&&e[1]>i&&(i=e[1],r.col=r.col+Math.max(s[1]-e[1]-1,0)))}),e.selectCell(c.row,c.col,d.row+r.row,d.col+r.col)}}),e.populateFromArray(c.row,c.col,o,d.row,d.col,"paste",e.getSettings().pasteMode)}}function o(t){if(e.getSelected()&&(!e.getActiveEditor()||!e.getActiveEditor().isOpened())){if(y(t.keyCode))return r.setCopyableText(),void R(t);var n=(t.ctrlKey||t.metaKey)&&!t.altKey;t.keyCode==w.A&&n&&e._registerTimeout(setTimeout(_(r.setCopyableText,r),0))}}var r=this;this.copyPasteInstance=g(),this.copyPasteInstance.onCut(t),this.copyPasteInstance.onPaste(n),this.onPaste=n,e.addHook("beforeKeyDown",o),this.destroy=function(){this.copyPasteInstance&&(this.copyPasteInstance.removeCallback(t),this.copyPasteInstance.removeCallback(n),this.copyPasteInstance.destroy(),this.copyPasteInstance=null),e.removeHook("beforeKeyDown",o)},e.addHook("afterDestroy",_(this.destroy,this)),this.triggerPaste=_(this.copyPasteInstance.triggerPaste,this.copyPasteInstance),this.triggerCut=_(this.copyPasteInstance.triggerCut,this.copyPasteInstance),this.setCopyableText=function(){var t=e.getSettings(),n=t.copyRowsLimit,o=t.copyColsLimit,r=e.getSelectedRange(),i=r.getTopLeftCorner(),s=r.getBottomRightCorner(),a=i.row,l=i.col,u=s.row,c=s.col,d=Math.min(u,a+n-1),h=Math.min(c,l+o-1),f=[];f.push({startRow:a,startCol:l,endRow:d,endCol:h}),f=Handsontable.hooks.run(e,"modifyCopyableRange",f);var p=this.getRangedCopyableData(f);e.copyPaste.copyPasteInstance.copyable(p),(u!==d||c!==h)&&Handsontable.hooks.run(e,"afterCopyLimit",u-a+1,c-l+1,n,o)},this.getRangedCopyableData=function(t){var n=[],o=[],r=[];return b(t,function(e){C(e.startRow,e.endRow,function(e){-1===o.indexOf(e)&&o.push(e)}),C(e.startCol,e.endCol,function(e){-1===r.indexOf(e)&&r.push(e)})}),b(o,function(t){var o=[];b(r,function(n){o.push(e.getCopyableData(t,n))}),n.push(o)}),m.stringify(n)}}function r(){var e=this,t=e.getSettings().copyPaste!==!1;t&&!e.copyPaste?e.copyPaste=new o(e):!t&&e.copyPaste&&(e.copyPaste.destroy(),e.copyPaste=null)}Object.defineProperties(n,{CopyPastePlugin:{get:function(){return o}},__esModule:{value:!0}});var i,s,a,l,u,c,d,h,f,p,g=(i=e("copyPaste"),i&&i.__esModule&&i||{"default":i})["default"],m=(s=e("SheetClip"),s&&s.__esModule&&s||{"default":s})["default"],v=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}),w=v.KEY_CODES,y=v.isCtrlKey,b=(l=e("helpers/array"),l&&l.__esModule&&l||{"default":l}).arrayEach,C=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,R=(c=e("helpers/dom/event"),c&&c.__esModule&&c||{"default":c}).stopImmediatePropagation,_=(d=e("helpers/function"),d&&d.__esModule&&d||{"default":d}).proxy,E=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("3rdparty/walkontable/src/cell/coords"),f&&f.__esModule&&f||{"default":f}).WalkontableCellCoords),S=(p=e("3rdparty/walkontable/src/cell/range"),p&&p.__esModule&&p||{"default":p}).WalkontableCellRange;Handsontable.hooks.add("afterInit",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterCopyLimit"),Handsontable.hooks.register("modifyCopyableRange")},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,SheetClip:"SheetClip",copyPaste:"copyPaste","helpers/array":41,"helpers/dom/event":45,"helpers/function":46,"helpers/number":48,"helpers/unicode":52,plugins:55}],72:[function(e,t,n){"use strict";function o(){}var r,i,s,a,l=((r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,(i=e("3rdparty/walkontable/src/cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange),u=(s=e("3rdparty/walkontable/src/selection"),s&&s.__esModule&&s||{"default":s}).WalkontableSelection,c=function(e){return"boolean"==typeof e&&e===!0?!0:"object"==typeof e&&e.length>0?!0:!1},d=function(){c(this.getSettings().customBorders)&&(this.customBorders||(a=this,this.customBorders=new o))},h=function(e){for(var t=0;t=0?a.view.wt.selections[o]=n:a.view.wt.selections.push(n)},p=function(e,t,n){var o=b(e,t);o=C(o,n),this.setCellMeta(e,t,"borders",o),f(o)},g=function(e){for(var t=e.range,n=t.from.row;n<=t.to.row;n++)for(var o=t.from.col;o<=t.to.col;o++){var r=b(n,o),i=0;n==t.from.row&&(i++,e.hasOwnProperty("top")&&(r.top=e.top)),n==t.to.row&&(i++,e.hasOwnProperty("bottom")&&(r.bottom=e.bottom)),o==t.from.col&&(i++,e.hasOwnProperty("left")&&(r.left=e.left)),o==t.to.col&&(i++,e.hasOwnProperty("right")&&(r.right=e.right)),i>0&&(this.setCellMeta(n,o,"borders",r),f(r))}},m=function(e,t){return"border_row"+e+"col"+t},v=function(){return{width:1,color:"#000"}},w=function(){return{hide:!0}},y=function(){return{width:1,color:"#000",cornerVisible:!1}},b=function(e,t){return{className:m(e,t),border:y(),row:e,col:t,top:w(),right:w(),bottom:w(),left:w()}},C=function(e,t){return t.hasOwnProperty("border")&&(e.border=t.border),t.hasOwnProperty("top")&&(e.top=t.top),t.hasOwnProperty("right")&&(e.right=t.right),t.hasOwnProperty("bottom")&&(e.bottom=t.bottom),t.hasOwnProperty("left")&&(e.left=t.left),e},R=function(e){for(var t=document.querySelectorAll("."+e),n=0;n'+String.fromCharCode(10003)+""+e},M=function(e){this.getSettings().customBorders&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"borders",name:"Borders",submenu:{items:[{key:"borders:top",name:function(){var e="Top",t=T(this,"top");return t&&(e=O(e)),e},callback:function(){var e=T(this,"top");S.call(this,this.getSelectedRange(),"top",e)},disabled:!1},{key:"borders:right",name:function(){var e="Right",t=T(this,"right");return t&&(e=O(e)),e},callback:function(){var e=T(this,"right");S.call(this,this.getSelectedRange(),"right",e)},disabled:!1},{key:"borders:bottom",name:function(){var e="Bottom",t=T(this,"bottom");return t&&(e=O(e)),e},callback:function(){var e=T(this,"bottom");S.call(this,this.getSelectedRange(),"bottom",e)},disabled:!1},{key:"borders:left",name:function(){var e="Left",t=T(this,"left");return t&&(e=O(e)),e},callback:function(){var e=T(this,"left");S.call(this,this.getSelectedRange(),"left",e)},disabled:!1},{key:"borders:no_borders",name:"Remove border(s)",callback:function(){S.call(this,this.getSelectedRange(),"noBorders")},disabled:function(){return!T(this)}}]}}))};Handsontable.hooks.add("beforeInit",d),Handsontable.hooks.add("afterContextMenuDefaultOptions",M),Handsontable.hooks.add("afterInit",function(){var e=this.getSettings().customBorders;if(e){for(var t=0;tthis.boundaries.bottom&&(o=t-this.boundaries.bottom),ethis.boundaries.right&&(n=e-this.boundaries.right),this.callback(n,o)};var a,l=function(e){e.dragToScrollListening=!1;var t=e.view.wt.wtTable.holder;a=new o,t!==window&&(a.setBoundaries(t.getBoundingClientRect()),a.setCallback(function(e,n){0>e?t.scrollLeft-=50:e>0&&(t.scrollLeft+=50),0>n?t.scrollTop-=20:n>0&&(t.scrollTop+=20)}),e.dragToScrollListening=!0)};Handsontable.hooks.add("afterInit",function(){var e=this,t=s(this);t.addEventListener(document,"mouseup",function(){e.dragToScrollListening=!1}),t.addEventListener(document,"mousemove",function(t){e.dragToScrollListening&&a.check(t.clientX,t.clientY)})}),Handsontable.hooks.add("afterDestroy",function(){s(this).clear()}),Handsontable.hooks.add("afterOnCellMouseDown",function(){l(this)}),Handsontable.hooks.add("afterOnCellCornerMouseDown",function(){l(this)}),Handsontable.plugins.DragToScroll=o},{eventManager:40,plugins:55}],74:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnFreeze:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{isEnabled:function(){return!!this.hot.getSettings().manualColumnFreeze},enablePlugin:function(){var e=this;this.enabled||(this.addHook("modifyCol",function(t){return e.onModifyCol(t)}),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addContextMenuEntry(t)}),$traceurRuntime.superGet(this,l.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,l.prototype,"disablePlugin").call(this)},init:function(){$traceurRuntime.superGet(this,l.prototype,"init").call(this),"undefined"==typeof this.hot.manualColumnPositionsPluginUsages?this.hot.manualColumnPositionsPluginUsages=["manualColumnFreeze"]:this.hot.manualColumnPositionsPluginUsages.push("manualColumnFreeze"),this.fixedColumnsCount=this.hot.getSettings().fixedColumnsLeft},onModifyCol:function(e){return this.hot.manualColumnPositionsPluginUsages.length>1?e:this.getModifiedColumnIndex(e)},getModifiedColumnIndex:function(e){return this.hot.manualColumnPositions[e]},addContextMenuEntry:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"freeze_column",name:function(){var e=t.hot.getSelected()[1];return e>t.fixedColumnsCount-1?"Freeze this column":"Unfreeze this column"},disabled:function(){var e=t.hot.getSelected();return e[1]!==e[3]},callback:function(){var e=t.hot.getSelected()[1];e>t.fixedColumnsCount-1?t.freezeColumn(e):t.unfreezeColumn(e)}})},freezeColumn:function(e){if(!(e<=this.fixedColumnsCount-1)){var t=this.getModifiedColumnIndex(e)||e;this.checkPositionData(t),this.modifyColumnOrder(t,e,null,"freeze"),this.addFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},unfreezeColumn:function(e){if(!(e>this.fixedColumnsCount-1)){var t=this.getBestColumnReturnPosition(e),n=this.getModifiedColumnIndex(e)||e;this.checkPositionData(n),this.modifyColumnOrder(n,e,t,"unfreeze"),this.removeFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},addFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount+1}),this.fixedColumnsCount++},removeFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount-1}),this.fixedColumnsCount--},checkPositionData:function(e){this.hot.manualColumnPositions&&0!==this.hot.manualColumnPositions.length||this.hot.manualColumnPositions||(this.hot.manualColumnPositions=[]),e?this.hot.manualColumnPositions[e]||this.createPositionData(e+1):this.createPositionData(this.hot.countCols())},createPositionData:function(e){if(this.hot.manualColumnPositions.lengtht;t++)this.hot.manualColumnPositions[t]=t; -},modifyColumnOrder:function(e,t,n,o){null==n&&(n=e),"freeze"===o?this.hot.manualColumnPositions.splice(this.fixedColumnsCount,0,this.hot.manualColumnPositions.splice(t,1)[0]):"unfreeze"===o&&this.hot.manualColumnPositions.splice(n,0,this.hot.manualColumnPositions.splice(t,1)[0])},getBestColumnReturnPosition:function(e){for(var t=this.fixedColumnsCount,n=this.getModifiedColumnIndex(t),o=this.getModifiedColumnIndex(e);o>n;)t++,n=this.getModifiedColumnIndex(t);return t-1}},{},i),s("manualColumnFreeze",a)},{_base:56,plugins:55}],75:[function(e,t,n){"use strict";function o(){function e(e){g=this,m=e;var t=this.view.wt.wtTable.getCoords(e).col;if(t>=0){f=t;var n=m.getBoundingClientRect();l=n.left,v.style.top=n.top+"px",v.style.left=l+"px",g.rootElement.appendChild(v)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?v.style.left=n.left+n.width-o+"px":v.style.left=n.left+"px"}function n(){var e=this;u(v,"active"),u(w,"active");var t=m.getBoundingClientRect();w.style.width=t.width+"px",w.style.height=e.view.maximumVisibleElementHeight(0)+"px",w.style.top=v.style.top,w.style.left=l+"px",e.rootElement.appendChild(w)}function o(e){w.style.left=l+e+"px"}function r(){d(v,"active"),d(w,"active")}var i,s,a,l,f,g,m,v=document.createElement("DIV"),w=document.createElement("DIV"),y=h(this);v.className="manualColumnMover",w.className="manualColumnMoverGuide";var b=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualColumnPositions",e.manualColumnPositions)},C=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualColumnPositions",t),t.value},R=function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,R(e)):!1},_=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:_(e.parentNode):null},E=function(){var l,u=this;y.addEventListener(u.rootElement,"mouseover",function(n){if(R(n.target)){var o=_(n.target);if(o)if(l){var r=u.view.wt.wtTable.getCoords(o).col;r>=0&&(s=r,t(n.target,s-i))}else e.call(u,o)}}),y.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualColumnMover")&&(a=p(e),n.call(u),l=u,i=f,s=f)}),y.addEventListener(window,"mousemove",function(e){l&&o(p(e)-a)}),y.addEventListener(window,"mouseup",function(t){l&&(r(),l=!1,T(u.manualColumnPositions,u.countCols()),u.manualColumnPositions.splice(s,0,u.manualColumnPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeColumnMove",i,s),u.forceFullRender=!0,u.view.render(),b.call(u),Handsontable.hooks.run(u,"afterColumnMove",i,s),e.call(u,m))}),u.addHook("afterDestroy",S)},S=function(){y.clear()},T=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualColumnPositions=[]},this.init=function(e){var t=this,n=!!this.getSettings().manualColumnMove;if(n){var o=this.getSettings().manualColumnMove,r=C.call(t);"undefined"!=typeof r?this.manualColumnPositions=r:Array.isArray(o)?this.manualColumnPositions=o:this.manualColumnPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===y.context.eventListeners.length)&&("undefined"==typeof t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages=["manualColumnMove"]:t.manualColumnPositionsPluginUsages.push("manualColumnMove"),E.call(this),this.manualColumnPositions.length>0&&(this.forceFullRender=!0,this.render()))}else{var i=t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(S.call(this),this.manualColumnPositions=[],t.manualColumnPositionsPluginUsages[i]=void 0)}},this.modifyCol=function(e){return this.getSettings().manualColumnMove?("undefined"==typeof this.manualColumnPositions[e]&&T(this.manualColumnPositions,e+1),this.manualColumnPositions[e]):e},this.afterRemoveCol=function(e,t){if(this.getSettings().manualColumnMove){var n,o=this.manualColumnPositions;n=o.splice(e,t),o=o.map(function(e){var t,o=e;for(t=0;tn[t]&&o--;return o}),this.manualColumnPositions=o}},this.afterCreateCol=function(e,t){if(this.getSettings().manualColumnMove){var n=this.manualColumnPositions;if(n.length){for(var o=[],r=0;t>r;r++)o.push(e+r);e>=n.length?n.concat(o):(n=n.map(function(n){return n>=e?n+t:n}),n.splice.apply(n,[e,0].concat(o))),this.manualColumnPositions=n}}}}Object.defineProperties(n,{ManualColumnMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=l.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=f.pageX,g=(f.pageY,(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",g.beforeInit),Handsontable.hooks.add("afterInit",function(){g.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){g.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyCol",g.modifyCol),Handsontable.hooks.add("afterRemoveCol",g.afterRemoveCol),Handsontable.hooks.add("afterCreateCol",g.afterCreateCol),Handsontable.hooks.register("beforeColumnMove"),Handsontable.hooks.register("afterColumnMove")},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],76:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnResize:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=p.pageX,m=(p.pageY,(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin),v=function(e){$traceurRuntime.superConstructor(w).call(this,e),this.currentTH=null,this.currentCol=null,this.currentWidth=null,this.newSize=null,this.startY=null,this.startWidth=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualColumnWidths=[],c(this.handle,"manualColumnResizer"),c(this.guide,"manualColumnResizerGuide")},w=v;$traceurRuntime.createClass(v,{isEnabled:function(){return this.hot.getSettings().manualColumnResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualColumnWidths=[];var t=this.hot.getSettings().manualColumnResize,n=this.loadManualColumnWidths();this.addHook("modifyColWidth",function(t,n){return e.onModifyColWidth(t,n)}),"undefined"!=typeof n?this.manualColumnWidths=n:Array.isArray(t)?this.manualColumnWidths=t:this.manualColumnWidths=[],Handsontable.hooks.register("beforeColumnResize"),Handsontable.hooks.register("afterColumnResize"),this.bindEvents(),$traceurRuntime.superGet(this,w.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualColumnResize;Array.isArray(e)?this.manualColumnWidths=e:this.manualColumnWidths=[]},disablePlugin:function(){$traceurRuntime.superGet(this,w.prototype,"disablePlugin").call(this)},saveManualColumnWidths:function(){this.hot.runHooks("persistentStateSave","manualColumnWidths",this.manualColumnWidths)},loadManualColumnWidths:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualColumnWidths",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).col;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentCol=t,this.startOffset=n.left-6,this.startWidth=parseInt(n.width,10),this.handle.style.top=n.top+"px",this.handle.style.left=this.startOffset+this.startWidth+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.left=this.startOffset+this.currentWidth+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.height=this.hot.view.maximumVisibleElementHeight(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.left=this.handle.style.left},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfColumnHeader:function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfColumnHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfColumnHeader(e.target)){var t=this.getTHFromTargetElement(e.target);if(!t)return;var n=t.getAttribute("colspan");!t||null!==n&&1!==n||this.pressed||this.setupHandlePosition(t)}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualColumnResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null===this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startX=g(e),this.newSize=this.startWidth)},onMouseMove:function(e){this.pressed&&(this.currentWidth=this.startWidth+(g(e)-this.startX),this.newSize=this.setManualSize(this.currentCol,this.currentWidth),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startWidth&&(this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return t=Math.max(t,20),e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=t,t},onModifyColWidth:function(e,t){return this.enabled&&(t=this.hot.runHooks("modifyCol",t),this.hot.getSettings().manualColumnResize&&this.manualColumnWidths[t])?this.manualColumnWidths[t]:e}},{},l),m("manualColumnResize",v)},{"_base.js":56,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],77:[function(e,t,n){"use strict";function o(){function e(e){var t=this;g=e;var n=this.view.wt.wtTable.getCoords(e).row;if(n>=0){f=n;var o=g.getBoundingClientRect();l=o.top,m.style.top=l+"px",m.style.left=o.left+"px",t.rootElement.appendChild(m)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?m.style.top=n.top+n.height-o+"px":m.style.top=n.top+"px"}function n(){var e=this;u(m,"active"),u(v,"active");var t=g.getBoundingClientRect();v.style.width=e.view.maximumVisibleElementWidth(0)+"px",v.style.height=t.height+"px",v.style.top=l+"px",v.style.left=m.style.left,e.rootElement.appendChild(v)}function o(e){v.style.top=l+e+"px"}function r(){d(m,"active"),d(v,"active")}var i,s,a,l,f,g,m=document.createElement("DIV"),v=document.createElement("DIV"),w=h(this);m.className="manualRowMover",v.className="manualRowMoverGuide";var y=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualRowPositions",e.manualRowPositions)},b=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualRowPositions",t),t.value},C=function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,C(e)):!1},R=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:R(e.parentNode):null},_=function(){var l,u=this;w.addEventListener(u.rootElement,"mouseover",function(n){if(C(n.target)){var o=R(n.target);o&&(l?(s=u.view.wt.wtTable.getCoords(o).row,t(o,s-i)):e.call(u,o))}}),w.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualRowMover")&&(a=p(e),n.call(u),l=u,i=f,s=f)}),w.addEventListener(window,"mousemove",function(e){l&&o(p(e)-a)}),w.addEventListener(window,"mouseup",function(t){l&&(r(),l=!1,S(u.manualRowPositions,u.countRows()),u.manualRowPositions.splice(s,0,u.manualRowPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeRowMove",i,s),u.forceFullRender=!0,u.view.render(),y.call(u),Handsontable.hooks.run(u,"afterRowMove",i,s),e.call(u,g))}),u.addHook("afterDestroy",E)},E=function(){w.clear()},S=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualRowPositions=[]},this.init=function(e){var t=this,n=!!t.getSettings().manualRowMove;if(n){var o=t.getSettings().manualRowMove,r=b.call(t);"undefined"==typeof t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages=["manualColumnMove"]:t.manualRowPositionsPluginUsages.push("manualColumnMove"),"undefined"!=typeof r?this.manualRowPositions=r:Array.isArray(o)?this.manualRowPositions=o:this.manualRowPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===w.context.eventListeners.length)&&(_.call(this),this.manualRowPositions.length>0&&(t.forceFullRender=!0,t.render()))}else{var i=t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(E.call(this),t.manualRowPositions=[],t.manualRowPositionsPluginUsages[i]=void 0)}},this.modifyRow=function(e){var t=this;return t.getSettings().manualRowMove?("undefined"==typeof t.manualRowPositions[e]&&S(this.manualRowPositions,e+1),t.manualRowPositions[e]):e}}Object.defineProperties(n,{ManualRowMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=l.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=(f.pageX,f.pageY),g=((a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",g.beforeInit),Handsontable.hooks.add("afterInit",function(){g.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){g.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyRow",g.modifyRow),Handsontable.hooks.register("beforeRowMove"),Handsontable.hooks.register("afterRowMove")},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],78:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualRowResize:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=(p.pageX,p.pageY),m=(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,v=function(e){$traceurRuntime.superConstructor(w).call(this,e),this.currentTH=null,this.currentRow=null,this.currentHeight=null,this.newSize=null,this.startY=null,this.startHeight=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualRowHeights=[],c(this.handle,"manualRowResizer"),c(this.guide,"manualRowResizerGuide")},w=v;$traceurRuntime.createClass(v,{isEnabled:function(){return this.hot.getSettings().manualRowResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualRowHeights=[];var t=this.hot.getSettings().manualRowResize,n=this.loadManualRowHeights();"undefined"!=typeof n?this.manualRowHeights=n:Array.isArray(t)?this.manualRowHeights=t:this.manualRowHeights=[],this.addHook("modifyRowHeight",function(t,n){return e.onModifyRowHeight(t,n)}),Handsontable.hooks.register("beforeRowResize"),Handsontable.hooks.register("afterRowResize"),this.bindEvents(),$traceurRuntime.superGet(this,w.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualRowResize;Array.isArray(e)?this.manualRowHeights=e:this.manualRowHeights=[]},disablePlugin:function(){$traceurRuntime.superGet(this,w.prototype,"disablePlugin").call(this)},saveManualRowHeights:function(){this.hot.runHooks("persistentStateSave","manualRowHeights",this.manualRowHeights)},loadManualRowHeights:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualRowHeights",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).row;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentRow=t,this.startOffset=n.top-6,this.startHeight=parseInt(n.height,10),this.handle.style.left=n.left+"px",this.handle.style.top=this.startOffset+this.startHeight+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.top=this.startOffset+this.currentHeight+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.width=this.hot.view.maximumVisibleElementWidth(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.top=this.handle.style.top},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfRowHeader:function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfRowHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfRowHeader(e.target)){var t=this.getTHFromTargetElement(e.target);t&&(this.pressed||this.setupHandlePosition(t))}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualRowResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null==this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startY=g(e),this.newSize=this.startHeight)},onMouseMove:function(e){this.pressed&&(this.currentHeight=this.startHeight+(g(e)-this.startY),this.newSize=this.setManualSize(this.currentRow,this.currentHeight),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startHeight&&(this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualRowHeights(),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return e=this.hot.runHooks("modifyRow",e),this.manualRowHeights[e]=t,t},onModifyRowHeight:function(e,t){if(this.enabled){var n=this.hot.getPlugin("autoRowSize"),o=n?n.heights[t]:null;t=this.hot.runHooks("modifyRow",t);var r=this.manualRowHeights[t];if(void 0!==r&&(r===o||r>(e||0)))return r}return e}},{},l),m("manualRowResize",v)},{"_base.js":56,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],79:[function(e,t,n){"use strict";function o(){var e=[];return e.getInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row<=e&&this[n].row+this[n].rowspan-1>=e&&this[n].col<=t&&this[n].col+this[n].colspan-1>=t)return this[n]},e.setInfo=function(e){for(var t=0,n=this.length;n>t;t++)if(this[t].row===e.row&&this[t].col===e.col)return void(this[t]=e);this.push(e)},e.removeInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row===e&&this[n].col===t){this.splice(n,1);break}},e}function r(e){if(this.mergedCellInfoCollection=new o,Array.isArray(e))for(var t=0,n=e.length;n>t;t++)this.mergedCellInfoCollection.setInfo(e[t])}function i(e,t){var n=this.getSettings().mergeCells;if(n&&!this.selection.isMultiple()){var o=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);o&&(e[0]=o.row,e[1]=o.col,e[2]=o.row+o.rowspan-1,e[3]=o.col+o.colspan-1)}}function s(e,t){this.mergeCells&&this.mergeCells.shiftCollection("right",e,t)}function a(e,t){this.mergeCells&&this.mergeCells.shiftCollection("left",e,t)}function l(e,t){this.mergeCells&&this.mergeCells.shiftCollection("down",e,t)}function u(e,t){this.mergeCells&&this.mergeCells.shiftCollection("up",e,t)}Object.defineProperties(n,{MergeCells:{get:function(){return r}},__esModule:{value:!0}});var c,d,h,f,p,g=((c=e("plugins"),c&&c.__esModule&&c||{"default":c}).registerPlugin,(d=e("helpers/dom/event"),d&&d.__esModule&&d||{"default":d}).stopImmediatePropagation),m=(h=e("3rdparty/walkontable/src/cell/coords"),h&&h.__esModule&&h||{"default":h}).WalkontableCellCoords,v=(f=e("3rdparty/walkontable/src/cell/range"),f&&f.__esModule&&f||{"default":f}).WalkontableCellRange,w=(p=e("3rdparty/walkontable/src/table"),p&&p.__esModule&&p||{"default":p}).WalkontableTable;r.prototype.canMergeRange=function(e){return!e.isSingle()},r.prototype.mergeRange=function(e){if(this.canMergeRange(e)){var t=e.getTopLeftCorner(),n=e.getBottomRightCorner(),o={};o.row=t.row,o.col=t.col,o.rowspan=n.row-t.row+1,o.colspan=n.col-t.col+1,this.mergedCellInfoCollection.setInfo(o)}},r.prototype.mergeOrUnmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.from.row,e.from.col);t?this.unmergeSelection(e.from):this.mergeSelection(e)},r.prototype.mergeSelection=function(e){this.mergeRange(e)},r.prototype.unmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.row,e.col);this.mergedCellInfoCollection.removeInfo(t.row,t.col)},r.prototype.applySpanProperties=function(e,t,n){var o=this.mergedCellInfoCollection.getInfo(t,n);o?o.row===t&&o.col===n?(e.setAttribute("rowspan",o.rowspan),e.setAttribute("colspan",o.colspan)):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="none"):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"))},r.prototype.modifyTransform=function(e,t,n){var o=function(e,t){return t.row>=e.row&&t.row<=e.row+e.rowspan-1?!0:!1},r=function(e,t){return t.col>=e.col&&t.col<=e.col+e.colspan-1?!0:!1},i=function(e){return new m(t.to.row+e.row,t.to.col+e.col)},s={row:n.row,col:n.col};if("modifyTransformStart"==e){this.lastDesiredCoords||(this.lastDesiredCoords=new m(null,null));for(var a,l=new m(t.highlight.row,t.highlight.col),u=this.mergedCellInfoCollection.getInfo(l.row,l.col),c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var h=this.mergedCellInfoCollection[c];if(h=new m(h.row+h.rowspan-1,h.col+h.colspan-1),t.includes(h)){a=!0;break}}if(u){var f=new m(u.row,u.col),p=new m(u.row+u.rowspan-1,u.col+u.colspan-1),g=new v(f,f,p);g.includes(this.lastDesiredCoords)||(this.lastDesiredCoords=new m(null,null)),s.row=this.lastDesiredCoords.row?this.lastDesiredCoords.row-l.row:s.row,s.col=this.lastDesiredCoords.col?this.lastDesiredCoords.col-l.col:s.col,n.row>0?s.row=u.row+u.rowspan-1-l.row+n.row:n.row<0&&(s.row=l.row-u.row+n.row),n.col>0?s.col=u.col+u.colspan-1-l.col+n.col:n.col<0&&(s.col=l.col-u.col+n.col)}var w=new m(t.highlight.row+s.row,t.highlight.col+s.col),y=this.mergedCellInfoCollection.getInfo(w.row,w.col);y&&(this.lastDesiredCoords=w,s={row:y.row-l.row,col:y.col-l.col})}else if("modifyTransformEnd"==e)for(var c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var b=this.mergedCellInfoCollection[c],f=new m(b.row,b.col),p=new m(b.row+b.rowspan-1,b.col+b.colspan-1),C=new v(f,f,p),R=t.getBordersSharedWith(C);if(C.isEqual(t))t.setDirection("NW-SE");else if(R.length>0){var _=t.highlight.isEqual(C.from);R.indexOf("top")>-1?t.to.isSouthEastOf(C.from)&&_?t.setDirection("NW-SE"):t.to.isSouthWestOf(C.from)&&_&&t.setDirection("NE-SW"):R.indexOf("bottom")>-1&&(t.to.isNorthEastOf(C.from)&&_?t.setDirection("SW-NE"):t.to.isNorthWestOf(C.from)&&_&&t.setDirection("SE-NW"))}var w=i(s),E=o(b,w),S=r(b,w);t.includesRange(C)&&(C.includes(w)||E||S)&&(E&&(s.row<0?s.row-=b.rowspan-1:s.row>0&&(s.row+=b.rowspan-1)),S&&(s.col<0?s.col-=b.colspan-1:s.col>0&&(s.col+=b.colspan-1)))}0!==s.row&&(n.row=s.row),0!==s.col&&(n.col=s.col)},r.prototype.shiftCollection=function(e,t,n){var o=[0,0];switch(e){case"right":o[0]+=1;break;case"left":o[0]-=1;break;case"down":o[1]+=1;break;case"up":o[1]-=1}for(var r=0;rn;n++)e.mergeCells.mergedCellInfoCollection.setInfo(t[n])}else e.mergeCells=new r(t);else e.mergeCells&&(e.mergeCells.mergedCellInfoCollection=new o)},R=function(e){if(this.mergeCells){var t=(e.ctrlKey||e.metaKey)&&!e.altKey;t&&77===e.keyCode&&(this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render(),g(e))}},_=function(e){this.getSettings().mergeCells&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"mergeCells",name:function(){var e=this.getSelected(),t=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);return t?"Unmerge cells":"Merge cells"},callback:function(){this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render()},disabled:function(){return!1}}))},E=function(e,t,n,o,r,i){this.mergeCells&&this.mergeCells.applySpanProperties(e,t,n)},S=function(e){return function(t){var n=this.getSettings().mergeCells;if(n){var o=this.getSelectedRange();if(this.mergeCells.modifyTransform(e,o,t),"modifyTransformEnd"===e){var r=this.countRows(),i=this.countCols();o.from.row<0?o.from.row=0:o.from.row>0&&o.from.row>=r&&(o.from.row=o.from-1),o.from.col<0?o.from.col=0:o.from.col>0&&o.from.col>=i&&(o.from.col=i-1)}}}},T=function(e){this.lastDesiredCoords=null;var t=this.getSettings().mergeCells;if(t){var n=this.getSelectedRange();n.highlight=new m(n.highlight.row,n.highlight.col),n.to=e;var o=!1;do{o=!1;for(var r=0,i=this.mergeCells.mergedCellInfoCollection.length;i>r;r++){var s=this.mergeCells.mergedCellInfoCollection[r],a=new m(s.row,s.col),l=new m(s.row+s.rowspan-1,s.col+s.colspan-1),u=new v(a,a,l);n.expandByRange(u)&&(e.row=n.to.row,e.col=n.to.col,o=!0)}}while(o)}},O=function(e,t){if(t&&"area"==t){var n=this.getSettings().mergeCells;if(n)for(var o=this.getSelectedRange(),r=new v(o.from,o.from,o.from),i=new v(o.to,o.to,o.to),s=0,a=this.mergeCells.mergedCellInfoCollection.length;a>s;s++){var l=this.mergeCells.mergedCellInfoCollection[s],u=new m(l.row,l.col),c=new m(l.row+l.rowspan-1,l.col+l.colspan-1),d=new v(u,u,c);r.expandByRange(d)&&(e[0]=r.from.row,e[1]=r.from.col),i.expandByRange(d)&&(e[2]=i.from.row,e[3]=i.from.col)}}},M=function(e,t,n){var o=this.getSettings().mergeCells;if(o){var r=this.mergeCells.mergedCellInfoCollection.getInfo(e,t);!r||r.row==e&&r.col==t||(n.copyable=!1)}},k=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countCols(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(e.startRow,r),n&&n.rowe.endRow)return e.endRow=i,k.call(this,e)}}},H=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countRows(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(r,e.startColumn),n&&n.cole.endColumn)return e.endColumn=i,H.call(this,e)}}},D=function(e){if(e&&this.mergeCells){var t=this.mergeCells.mergedCellInfoCollection,n=this.getSelectedRange();for(var o in t)if(n.highlight.row==t[o].row&&n.highlight.col==t[o].col&&n.to.row==t[o].row+t[o].rowspan-1&&n.to.col==t[o].col+t[o].colspan-1)return!1}return e};Handsontable.hooks.add("beforeInit",y),Handsontable.hooks.add("afterInit",b),Handsontable.hooks.add("afterUpdateSettings",C),Handsontable.hooks.add("beforeKeyDown",R),Handsontable.hooks.add("modifyTransformStart",S("modifyTransformStart")),Handsontable.hooks.add("modifyTransformEnd",S("modifyTransformEnd")),Handsontable.hooks.add("beforeSetRangeEnd",T),Handsontable.hooks.add("beforeDrawBorders",O),Handsontable.hooks.add("afterIsMultipleSelection",D),Handsontable.hooks.add("afterRenderer",E),Handsontable.hooks.add("afterContextMenuDefaultOptions",_),Handsontable.hooks.add("afterGetCellMeta",M),Handsontable.hooks.add("afterViewportRowCalculatorOverride",k),Handsontable.hooks.add("afterViewportColumnCalculatorOverride",H),Handsontable.hooks.add("afterAutofillApplyValues",i),Handsontable.hooks.add("afterCreateCol",s),Handsontable.hooks.add("afterRemoveCol",a),Handsontable.hooks.add("afterCreateRow",l),Handsontable.hooks.add("afterRemoveRow",u),Handsontable.MergeCells=r},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":45,plugins:55}],80:[function(e,t,n){"use strict";Object.defineProperties(n,{MultipleSelectionHandles:{get:function(){return p}},__esModule:{value:!0}});var o,r,i,s,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=a.getWindowScrollTop,u=a.hasClass,c=a.getWindowScrollLeft,d=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,p=function(e){$traceurRuntime.superConstructor(g).call(this,e),this.dragged=[],this.eventManager=null,this.lastSetCell=null},g=p;$traceurRuntime.createClass(p,{isEnabled:function(){return Handsontable.mobileBrowser},enablePlugin:function(){this.enabled||(this.eventManager||(this.eventManager=new h(this)),this.registerListeners(),$traceurRuntime.superGet(this,g.prototype,"enablePlugin").call(this))},registerListeners:function(){function e(e){if(1===t.dragged.length)return t.dragged.splice(0,t.dragged.length),!0;var n=t.dragged.indexOf(e);return-1==n?!1:void(0===n?t.dragged=t.dragged.slice(0,1):1==n&&(t.dragged=t.dragged.slice(-1)))}var t=this;this.eventManager.addEventListener(this.hot.rootElement,"touchstart",function(e){ -var n;return u(e.target,"topLeftSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("topLeft"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):u(e.target,"bottomRightSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("bottomRight"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchend",function(n){return u(n.target,"topLeftSelectionHandle-HitArea")?(e.call(t,"topLeft"),t.touchStartRange=void 0,n.preventDefault(),!1):u(n.target,"bottomRightSelectionHandle-HitArea")?(e.call(t,"bottomRight"),t.touchStartRange=void 0,n.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchmove",function(e){var n,o,r,i,s,a,u,d=l(),h=c();0!==t.dragged.length&&(n=document.elementFromPoint(e.touches[0].screenX-h,e.touches[0].screenY-d),n&&n!==t.lastSetCell&&(("TD"==n.nodeName||"TH"==n.nodeName)&&(o=t.hot.getCoords(n),-1==o.col&&(o.col=0),r=t.hot.getSelectedRange(),i=r.getWidth(),s=r.getHeight(),a=r.getDirection(),1==i&&1==s&&t.hot.selection.setRangeEnd(o),u=t.getCurrentRangeCoords(r,o,t.touchStartRange.direction,a,t.dragged[0]),null!==u.start&&t.hot.selection.setRangeStart(u.start),t.hot.selection.setRangeEnd(u.end),t.lastSetCell=n),e.preventDefault()))})},getCurrentRangeCoords:function(e,t,n,o,r){var i=e.getTopLeftCorner(),s=e.getBottomRightCorner(),a=e.getBottomLeftCorner(),l=e.getTopRightCorner(),u={start:null,end:null};switch(n){case"NE-SW":switch(o){case"NE-SW":case"NW-SE":u="topLeft"==r?{start:new WalkontableCellCoords(t.row,e.highlight.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,i.col)};break;case"SE-NW":"bottomRight"==r&&(u={start:new WalkontableCellCoords(s.row,t.col),end:new WalkontableCellCoords(t.row,i.col)})}break;case"NW-SE":switch(o){case"NE-SW":"topLeft"==r?u={start:t,end:a}:u.end=t;break;case"NW-SE":"topLeft"==r?u={start:t,end:s}:u.end=t;break;case"SE-NW":"topLeft"==r?u={start:t,end:i}:u.end=t;break;case"SW-NE":"topLeft"==r?u={start:t,end:l}:u.end=t}break;case"SW-NE":switch(o){case"NW-SE":u="bottomRight"==r?{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(i.row,t.col),end:new WalkontableCellCoords(t.row,s.col)};break;case"SW-NE":u="topLeft"==r?{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,s.col)}:{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(i.row,t.col)};break;case"SE-NW":"bottomRight"==r?u={start:new WalkontableCellCoords(t.row,l.col),end:new WalkontableCellCoords(i.row,t.col)}:"topLeft"==r&&(u={start:a,end:t})}break;case"SE-NW":switch(o){case"NW-SE":case"NE-SW":case"SW-NE":"topLeft"==r&&(u.end=t);break;case"SE-NW":"topLeft"==r?u.end=t:u={start:t,end:i}}}return u},isDragged:function(){return this.dragged.length>0}},{},d),f("multipleSelectionHandles",p)},{_base:56,eventManager:40,"helpers/dom/element":44,plugins:55}],81:[function(e,t,n){"use strict";function o(){}function r(){var e=this,t=e.getSettings().observeChanges;t?(e.observer&&a.call(e),i.call(e),u.call(e)):t||a.call(e)}function i(){var e=this;e.observeChangesActive=!0,e.pauseObservingChanges=function(){e.observeChangesActive=!1},e.resumeObservingChanges=function(){e.observeChangesActive=!0},e.observedData=e.getData(),e.observer=p.observe(e.observedData,function(t){e.observeChangesActive&&(s.call(e,t),e.render()),e.runHooks("afterChangesObserved")})}function s(e){function t(e){var t;return t=o(e),t=n(t)}function n(e){var t=[];return e.filter(function(e){var n=r(e.path);if(-1!=["add","remove"].indexOf(e.op)&&!isNaN(n.col)){if(-1!=t.indexOf(n.col))return!1;t.push(n.col)}return!0})}function o(e){return e.filter(function(e){return!/[\/]length/gi.test(e.path)})}function r(e){var t=e.match(/^\/(\d+)\/?(.*)?$/);return{row:parseInt(t[1],10),col:/^\d*$/.test(t[2])?parseInt(t[2],10):t[2]}}for(var i=this,s=t(e),a=0,l=s.length;l>a;a++){var u=s[a],c=r(u.path);switch(u.op){case"add":isNaN(c.col)?i.runHooks("afterCreateRow",c.row):i.runHooks("afterCreateCol",c.col);break;case"remove":isNaN(c.col)?i.runHooks("afterRemoveRow",c.row,1):i.runHooks("afterRemoveCol",c.col,1);break;case"replace":i.runHooks("afterChange",[c.row,c.col,null,u.value],"external")}}}function a(){var e=this;e.observer&&(l.call(e),c.call(e))}function l(){var e=this;p.unobserve(e.observedData,e.observer),delete e.observedData,delete e.observeChangesActive,delete e.pauseObservingChanges,delete e.resumeObservingChanges}function u(){var e=this;e.addHook("afterDestroy",a),e.addHook("afterCreateRow",d),e.addHook("afterRemoveRow",d),e.addHook("afterCreateCol",d),e.addHook("afterRemoveCol",d),e.addHook("afterChange",function(e,t){"loadData"!=t&&d.call(this)})}function c(){var e=this;e.removeHook("afterDestroy",a),e.removeHook("afterCreateRow",d),e.removeHook("afterRemoveRow",d),e.removeHook("afterCreateCol",d),e.removeHook("afterRemoveCol",d),e.removeHook("afterChange",d)}function d(){var e=this;e.pauseObservingChanges(),e.addHookOnce("afterChangesObserved",function(){e.resumeObservingChanges()})}Object.defineProperties(n,{ObserveChanges:{get:function(){return o}},__esModule:{value:!0}});var h,f,p=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("jsonpatch"),f&&f.__esModule&&f||{"default":f})["default"]);Handsontable.hooks.add("afterLoadData",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterChangesObserved")},{jsonpatch:"jsonpatch",plugins:55}],82:[function(e,t,n){"use strict";function o(e){var t,n=function(){window.localStorage[e+"__persistentStateKeys"]=JSON.stringify(t)},o=function(){var n=window.localStorage[e+"__persistentStateKeys"],o="string"==typeof n?JSON.parse(n):void 0;t=o?o:[]},r=function(){t=[],n()};o(),this.saveValue=function(o,r){window.localStorage[e+"_"+o]=JSON.stringify(r),-1==t.indexOf(o)&&(t.push(o),n())},this.loadValue=function(t,n){t="undefined"==typeof t?n:t;var o=window.localStorage[e+"_"+t];return"undefined"==typeof o?void 0:JSON.parse(o)},this.reset=function(t){window.localStorage.removeItem(e+"_"+t)},this.resetAll=function(){for(var n=0;na;a++)for(var l=0;i>l;l++){var u=e.getDataAtCell(a,l),c=e.getCellMeta(a,l),d=c.search.callback||n,h=c.search.queryMethod||o,f=h(t,u);if(f){var p={row:a,col:l,data:u};s.push(p)}d&&d(e,a,l,u,f)}return s}},Handsontable.Search.DEFAULT_CALLBACK=function(e,t,n,o,r){e.getCellMeta(t,n).isSearchResult=r},Handsontable.Search.DEFAULT_QUERY_METHOD=function(e,t){return"undefined"!=typeof e&&null!=e&&e.toLowerCase&&0!==e.length?"undefined"==typeof t||null==t?!1:-1!=t.toString().toLowerCase().indexOf(e.toLowerCase()):!1},Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS="htSearchResult",Handsontable.Search.global=function(){var e=Handsontable.Search.DEFAULT_CALLBACK,t=Handsontable.Search.DEFAULT_QUERY_METHOD,n=Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS;return{getDefaultCallback:function(){return e},setDefaultCallback:function(t){e=t},getDefaultQueryMethod:function(){return t},setDefaultQueryMethod:function(e){t=e},getDefaultSearchResultClass:function(){return n},setDefaultSearchResultClass:function(e){n=e}}}(),Handsontable.SearchCellDecorator=function(e,t,n,o,r,i,s){var u=null!==s.search&&"object"==typeof s.search&&s.search.searchResultClass||Handsontable.Search.global.getDefaultSearchResultClass();s.isSearchResult?a(t,u):l(t,u)};var h=d("base");c("base",function(e,t,n,o,r,i,s){h.apply(this,arguments),Handsontable.SearchCellDecorator.apply(this,arguments)}),Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/element":44,renderers:86}],84:[function(e,t,n){"use strict";Object.defineProperties(n,{TouchScroll:{get:function(){return d}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.addClass,l=s.removeClass,u=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}).registerPlugin,d=function(e){var t=this;$traceurRuntime.superConstructor(h).call(this,e),this.hot.addHook("afterInit",function(){return t.afterInit()}),this.hot.addHook("afterUpdateSettings",function(){return t.onAfterUpdateSettings()}),this.scrollbars=[],this.clones=[]},h=d;$traceurRuntime.createClass(d,{afterInit:function(){this.registerEvents(),this.onAfterUpdateSettings()},onAfterUpdateSettings:function(){var e=this;this.hot.addHookOnce("afterRender",function(){var t=e.hot.view.wt.wtOverlays;e.scrollbars=[],e.scrollbars.push(t.topOverlay),t.bottomOverlay.clone&&e.scrollbars.push(t.bottomOverlay),e.scrollbars.push(t.leftOverlay),t.topLeftCornerOverlay&&e.scrollbars.push(t.topLeftCornerOverlay),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.scrollbars.push(t.bottomLeftCornerOverlay),e.clones=[],t.topOverlay.needFullRender&&e.clones.push(t.topOverlay.clone.wtTable.holder.parentNode),t.bottomOverlay.needFullRender&&e.clones.push(t.bottomOverlay.clone.wtTable.holder.parentNode),t.leftOverlay.needFullRender&&e.clones.push(t.leftOverlay.clone.wtTable.holder.parentNode),t.topLeftCornerOverlay&&e.clones.push(t.topLeftCornerOverlay.clone.wtTable.holder.parentNode),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.clones.push(t.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode)})},registerEvents:function(){var e=this;this.hot.addHook("beforeTouchScroll",function(){return e.onBeforeTouchScroll()}),this.hot.addHook("afterMomentumScroll",function(){return e.onAfterMomentumScroll()})},onBeforeTouchScroll:function(){Handsontable.freezeOverlays=!0;for(var e=0,t=this.clones.length;t>e;e++)a(this.clones[e],"hide-tween")},onAfterMomentumScroll:function(){Handsontable.freezeOverlays=!1;for(var e=this,t=0,n=this.clones.length;n>t;t++)l(this.clones[t],"hide-tween");for(var o=0,r=this.clones.length;r>o;o++)a(this.clones[o],"show-tween");setTimeout(function(){for(var t=0,n=e.clones.length;n>t;t++)l(e.clones[t],"show-tween")},400);for(var i=0,s=this.scrollbars.length;s>i;i++)this.scrollbars[i].refresh(),this.scrollbars[i].resetFixedPosition();this.hot.view.wt.wtOverlays.syncScrollWithMaster()}},{},u),c("touchScroll",d)},{_base:56,"helpers/dom/element":44,plugins:55}],85:[function(e,t,n){"use strict";function o(){var e=this,t="undefined"==typeof e.getSettings().undo||e.getSettings().undo;t?e.undoRedo||(e.undoRedo=new Handsontable.UndoRedo(e),s(e),e.addHook("beforeKeyDown",r),e.addHook("afterChange",i)):e.undoRedo&&(delete e.undoRedo,a(e),e.removeHook("beforeKeyDown",r),e.removeHook("afterChange",i))}function r(e){var t=this,n=(e.ctrlKey||e.metaKey)&&!e.altKey;n&&(89===e.keyCode||e.shiftKey&&90===e.keyCode?(t.undoRedo.redo(),f(e)):90===e.keyCode&&(t.undoRedo.undo(),f(e)))}function i(e,t){var n=this;return"loadData"==t?n.undoRedo.clear():void 0}function s(e){e.undo=function(){return e.undoRedo.undo()},e.redo=function(){return e.undoRedo.redo()},e.isUndoAvailable=function(){return e.undoRedo.isUndoAvailable()},e.isRedoAvailable=function(){return e.undoRedo.isRedoAvailable()},e.clearUndo=function(){return e.undoRedo.clear()}}function a(e){delete e.undo,delete e.redo,delete e.isUndoAvailable,delete e.isRedoAvailable,delete e.clearUndo}var l,u,c=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),d=c.inherit,h=c.deepClone,f=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}).stopImmediatePropagation;Handsontable.UndoRedo=function(e){var t=this;this.instance=e,this.doneActions=[],this.undoneActions=[],this.ignoreNewActions=!1,e.addHook("afterChange",function(e,n){if(e){var o=new Handsontable.UndoRedo.ChangeAction(e);t.done(o)}}),e.addHook("afterCreateRow",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateRowAction(e,n);t.done(r)}}),e.addHook("beforeRemoveRow",function(e,n){var o=t.instance.getData();e=(o.length+e)%o.length;var r=o.slice(e,e+n),i=new Handsontable.UndoRedo.RemoveRowAction(e,r);t.done(i)}),e.addHook("afterCreateCol",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateColumnAction(e,n);t.done(r)}}),e.addHook("beforeRemoveCol",function(n,o){var r=t.instance.getData();n=(t.instance.countCols()+n)%t.instance.countCols();for(var i=[],s=0,a=r.length;a>s;s++)i[s]=r[s].slice(n,n+o);var l;Array.isArray(e.getSettings().colHeaders)&&(l=e.getSettings().colHeaders.slice(n,n+i.length));var u=new Handsontable.UndoRedo.RemoveColumnAction(n,i,l);t.done(u)}),e.addHook("beforeCellAlignment",function(e,n,o,r){var i=new Handsontable.UndoRedo.CellAlignmentAction(e,n,o,r);t.done(i)})},Handsontable.UndoRedo.prototype.done=function(e){this.ignoreNewActions||(this.doneActions.push(e),this.undoneActions.length=0)},Handsontable.UndoRedo.prototype.undo=function(){if(this.isUndoAvailable()){var e=this.doneActions.pop();this.ignoreNewActions=!0;var t=this;e.undo(this.instance,function(){t.ignoreNewActions=!1,t.undoneActions.push(e)})}},Handsontable.UndoRedo.prototype.redo=function(){if(this.isRedoAvailable()){var e=this.undoneActions.pop();this.ignoreNewActions=!0;var t=this;e.redo(this.instance,function(){t.ignoreNewActions=!1,t.doneActions.push(e)})}},Handsontable.UndoRedo.prototype.isUndoAvailable=function(){return this.doneActions.length>0},Handsontable.UndoRedo.prototype.isRedoAvailable=function(){return this.undoneActions.length>0},Handsontable.UndoRedo.prototype.clear=function(){this.doneActions.length=0,this.undoneActions.length=0},Handsontable.UndoRedo.Action=function(){},Handsontable.UndoRedo.Action.prototype.undo=function(){},Handsontable.UndoRedo.Action.prototype.redo=function(){},Handsontable.UndoRedo.ChangeAction=function(e){this.changes=e},d(Handsontable.UndoRedo.ChangeAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.ChangeAction.prototype.undo=function(e,t){for(var n=h(this.changes),o=e.countEmptyRows(!0),r=e.countEmptyCols(!0),i=0,s=n.length;s>i;i++)n[i].splice(3,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"undo");for(var i=0,s=n.length;s>i;i++)e.getSettings().minSpareRows&&n[i][0]+1+e.getSettings().minSpareRows===e.countRows()&&o==e.getSettings().minSpareRows&&(e.alter("remove_row",parseInt(n[i][0]+1,10),e.getSettings().minSpareRows),e.undoRedo.doneActions.pop()),e.getSettings().minSpareCols&&n[i][1]+1+e.getSettings().minSpareCols===e.countCols()&&r==e.getSettings().minSpareCols&&(e.alter("remove_col",parseInt(n[i][1]+1,10),e.getSettings().minSpareCols),e.undoRedo.doneActions.pop())},Handsontable.UndoRedo.ChangeAction.prototype.redo=function(e,t){for(var n=h(this.changes),o=0,r=n.length;r>o;o++)n[o].splice(2,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"redo")},Handsontable.UndoRedo.CreateRowAction=function(e,t){this.index=e,this.amount=t},d(Handsontable.UndoRedo.CreateRowAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.CreateRowAction.prototype.undo=function(e,t){var n=e.countRows(),o=e.getSettings().minSpareRows;this.index>=n&&this.index-or;r++)n=e.getSourceDataAtRow(r),o=[this.index,0],Array.prototype.push.apply(o,this.data[r]),Array.prototype.splice.apply(n,o);"undefined"!=typeof this.headers&&(o=[this.index,0],Array.prototype.push.apply(o,this.headers),Array.prototype.splice.apply(e.getSettings().colHeaders,o)),e.addHookOnce("afterRender",t),e.render()},Handsontable.UndoRedo.RemoveColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount)},Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/event":45,"helpers/object":49}],86:[function(e,t,n){"use strict";function o(e,t){var n;l[e]=t,n=a(e)+"Renderer",Handsontable.renderers[n]=t,Handsontable[n]=t}function r(e){if("function"==typeof e)return e;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "renderer" parameter');if(!(e in l))throw Error('No editor registered under name "'+e+'"');return l[e]}function i(e){return e in l}Object.defineProperties(n,{registerRenderer:{get:function(){return o}},getRenderer:{get:function(){return r}},hasRenderer:{get:function(){return i}},__esModule:{value:!0}});var s,a=(s=e("helpers/string"),s&&s.__esModule&&s||{"default":s}).toUpperCaseFirst,l={};Handsontable.renderers=Handsontable.renderers||{},Handsontable.renderers.registerRenderer=o,Handsontable.renderers.getRenderer=r},{"helpers/string":51}],87:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){s.className&&(t.className?t.className=t.className+" "+s.className:t.className=s.className),s.readOnly&&a(t,s.readOnlyCellClassName),s.valid===!1&&s.invalidCellClassName?a(t,s.invalidCellClassName):l(t,s.invalidCellClassName),s.wordWrap===!1&&s.noWordWrapClassName&&a(t,s.noWordWrapClassName),!i&&s.placeholder&&a(t,s.placeholderCellClassName)}Object.defineProperties(n,{cellDecorator:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),a=s.addClass,l=s.removeClass,u=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}).registerRenderer;u("base",o),Handsontable.renderers.cellDecorator=o},{"helpers/dom/element":44,renderers:86}],88:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){var a=(m.cloneNode(!0),v.cloneNode(!0));if(f("text")(e,t,n,o,r,i,s),t.appendChild(a),u(t,"htAutocomplete"),t.firstChild||t.appendChild(document.createTextNode(String.fromCharCode(160))),!e.acArrowListener){var l=d(e);e.acArrowListener=function(r){c(r.target,"htAutocompleteArrow")&&e.view.wt.getSetting("onCellDblClick",null,new g(n,o),t)},l.addEventListener(e.rootElement,"mousedown",e.acArrowListener),e.addHookOnce("afterDestroy",function(){l.destroy()})}}Object.defineProperties(n,{autocompleteRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=(l.empty,(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager),h=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),f=h.getRenderer,p=h.registerRenderer,g=(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords,m=document.createElement("DIV");m.className="htAutocompleteWrapper";var v=document.createElement("DIV");v.className="htAutocompleteArrow",v.appendChild(document.createTextNode(String.fromCharCode(9660)));p("autocomplete",o)},{"3rdparty/walkontable/src/cell/coords":5,eventManager:40,"helpers/dom/element":44,renderers:86}],89:[function(e,t,n){"use strict";function o(e,t,n,o,a,l,u){function c(e){var t=[C.SPACE,C.ENTER,C.DELETE,C.BACKSPACE];-1===t.indexOf(e.keyCode)||S(e)||f(function(){E(e),e.preventDefault()}),(e.keyCode==C.SPACE||e.keyCode==C.ENTER)&&d(),(e.keyCode==C.DELETE||e.keyCode==C.BACKSPACE)&&d(!1)}function d(){var e=void 0!==arguments[0]?arguments[0]:null;f(function(t){for(var n=0,o=t.length;o>n;n++){if(m(t[n],O)&&null===e)return;h(t[n],e)}})}function h(e){var t=void 0!==arguments[1]?arguments[1]:null;null===t?e.checked=!e.checked:e.checked=t,y.fireEvent(e,"change")}function f(t){for(var n=e.getSelectedRange(),o=n.getTopLeftCorner(),r=n.getBottomRightCorner(),i=o.row;i<=r.row;i++)for(var s=o.col;s<=r.col;s++){var a=e.getCell(i,s),l=e.getCellMeta(i,s),u=a.querySelectorAll("input[type=checkbox]");u.length>0&&!l.readOnly&&t(u)}}var y=new w(e),b=r(),R=u.label,M=!1;if("undefined"==typeof u.checkedTemplate&&(u.checkedTemplate=!0),"undefined"==typeof u.uncheckedTemplate&&(u.uncheckedTemplate=!1),p(t),l===u.checkedTemplate||v(l,u.checkedTemplate)?b.checked=!0:l===u.uncheckedTemplate||v(l,u.uncheckedTemplate)?b.checked=!1:null===l?g(b,"noValue"):(b.style.display="none",g(b,O),M=!0),!M&&R){var k="";R.value?k="function"==typeof R.value?R.value.call(this,n,o,a,l):R.value:R.property&&(k=e.getDataAtRowProp(n,R.property));var H=i(k);"before"===R.position?H.appendChild(b):H.insertBefore(b,H.firstChild),b=H}t.appendChild(b),M&&t.appendChild(document.createTextNode("#bad-value#")),u.readOnly?y.addEventListener(b,"click",s):(y.addEventListener(b,"mousedown",_),y.addEventListener(b,"mouseup",_),y.addEventListener(b,"change",function(t){e.setDataAtRowProp(n,a,t.target.checked?u.checkedTemplate:u.uncheckedTemplate)})),T.has(e)||(T.set(e,!0),e.addHook("beforeKeyDown",c))}function r(){var e=document.createElement("input");return e.className="htCheckboxRendererInput",e.type="checkbox",e.setAttribute("autocomplete","off"),e.cloneNode(!1)}function i(e){var t=document.createElement("label");return t.className="htCheckboxRendererLabel",t.appendChild(document.createTextNode(e)),t.cloneNode(!0)}function s(e){e.preventDefault()}Object.defineProperties(n,{checkboxRenderer:{get:function(){return o}},__esModule:{value:!0}});var a,l,u,c,d,h,f=(a=e("helpers/dom/element"),a&&a.__esModule&&a||{"default":a}),p=f.empty,g=f.addClass,m=f.hasClass,v=(l=e("helpers/string"),l&&l.__esModule&&l||{"default":l}).equalsIgnoreCase,w=(u=e("eventManager"),u&&u.__esModule&&u||{"default":u}).EventManager,y=(c=e("renderers"),c&&c.__esModule&&c||{"default":c}),b=(y.getRenderer,y.registerRenderer),C=(d=e("helpers/unicode"),d&&d.__esModule&&d||{"default":d}).KEY_CODES,R=(h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),_=R.stopPropagation,E=R.stopImmediatePropagation,S=R.isImmediatePropagationStopped,T=new WeakMap,O="htBadValue";b("checkbox",o)},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/string":51,"helpers/unicode":52,renderers:86}],90:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,a){l("base").apply(this,arguments),s(t,i)}Object.defineProperties(n,{htmlRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}).fastInnerHTML,a=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}),l=a.getRenderer,u=a.registerRenderer;u("html",o)},{"helpers/dom/element":44,renderers:86}],91:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){f(i)&&("undefined"!=typeof s.language&&l.language(s.language),i=l(i).format(s.format||"0"),u(t,"htNumeric")),d("text")(e,t,n,o,r,i,s)}Object.defineProperties(n,{numericRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("numeral"),r&&r.__esModule&&r||{"default":r})["default"],u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).addClass,c=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),d=c.getRenderer,h=c.registerRenderer,f=(a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).isNumeric;h("numeric",o)},{"helpers/dom/element":44,"helpers/number":48,numeral:"numeral",renderers:86}],92:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,a){l("text").apply(this,arguments),i=t.innerHTML;var u,c=a.hashLength||i.length,d=a.hashSymbol||"*";for(u="";u.split(d).length-13?("function"==typeof o&&(e.__proto__=o),e.prototype=d(a(o),i(t))):e.prototype=t,f(e,"prototype",{configurable:!1,writable:!1}),h(e,i(n))}function a(e){if("function"==typeof e){var t=e.prototype;if(u(t)===t||null===t)return e.prototype;throw new c("super prototype must be an Object or null")}if(null===e)return null;throw new c("Super expression must either be null or a function, not "+typeof e+".")}function l(e,t,o){null!==g(t)&&n(e,t,"constructor",o)}var u=Object,c=TypeError,d=u.create,h=$traceurRuntime.defineProperties,f=$traceurRuntime.defineProperty,p=$traceurRuntime.getOwnPropertyDescriptor,g=Object.getPrototypeOf,m=$traceurRuntime.toProperty,v=Object,w=v.getOwnPropertyNames,y=v.getOwnPropertySymbols;$traceurRuntime.createClass=s,$traceurRuntime.defaultSuperCall=l,$traceurRuntime.superCall=n,$traceurRuntime.superConstructor=t,$traceurRuntime.superGet=o,$traceurRuntime.superSet=r}()},{}],95:[function(e,t,n){"use strict";function o(e){var t=this;this.eventManager=b(e),this.instance=e,this.settings=e.getSettings();var n=e.rootElement.getAttribute("style");n&&e.rootElement.setAttribute("data-originalstyle",n),d(e.rootElement,"handsontable");var o=document.createElement("TABLE");d(o,"htCore"),e.getSettings().tableClassName&&d(o,e.getSettings().tableClassName),this.THEAD=document.createElement("THEAD"),o.appendChild(this.THEAD),this.TBODY=document.createElement("TBODY"),o.appendChild(this.TBODY),e.table=o,e.container.insertBefore(o,e.container.firstChild),this.eventManager.addEventListener(e.rootElement,"mousedown",function(e){t.isTextSelectionAllowed(e.target)||(i(),e.preventDefault(),window.focus())}),this.eventManager.addEventListener(document.documentElement,"keyup",function(t){e.selection.isInProgress()&&!t.shiftKey&&e.selection.finish()});var r;this.isMouseDown=function(){return r},this.eventManager.addEventListener(document.documentElement,"mouseup",function(t){e.selection.isInProgress()&&1===t.which&&e.selection.finish(),r=!1,y(document.activeElement)&&e.unlisten()}),this.eventManager.addEventListener(document.documentElement,"mousedown",function(n){var o=n.target,i=n.x||n.clientX,s=n.y||n.clientY;if(!r&&e.rootElement){if(o===e.view.wt.wtTable.holder){var a=g();if(document.elementFromPoint(i+a,s)!==e.view.wt.wtTable.holder||document.elementFromPoint(i,s+a)!==e.view.wt.wtTable.holder)return}else for(;o!==document.documentElement;){if(null===o){if(n.isTargetWebComponent)break;return}if(o===e.rootElement)return;o=o.parentNode}t.settings.outsideClickDeselects?e.deselectCell():e.destroyEditor()}}),this.eventManager.addEventListener(o,"selectstart",function(e){t.settings.fragmentSelection||e.preventDefault()});var i=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},s=[new S({className:"current",border:{width:2,color:"#5292F7",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&!e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&!e.selection.isMultiple()}}}),new S({className:"area",border:{width:1,color:"#89AFF9",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&e.selection.isMultiple()}}}),new S({className:"highlight",highlightRowClassName:t.settings.currentRowClassName,highlightColumnClassName:t.settings.currentColClassName}),new S({className:"fill",border:{width:1,color:"red"}})];s.current=s[0],s.area=s[1],s.highlight=s[2],s.fill=s[3];var a={debug:function(){return t.settings.debug},externalRowCalculator:this.instance.getPlugin("autoRowSize")&&this.instance.getPlugin("autoRowSize").isEnabled(),table:o,stretchH:this.settings.stretchH,data:e.getDataAtCell,totalRows:e.countRows,totalColumns:e.countCols,fixedColumnsLeft:function(){return t.settings.fixedColumnsLeft},fixedRowsTop:function(){return t.settings.fixedRowsTop},fixedRowsBottom:function(){return t.settings.fixedRowsBottom},minSpareRows:function(){return t.settings.minSpareRows},renderAllRows:t.settings.renderAllRows,rowHeaders:function(){var n=[];return e.hasRowHeaders()&&n.push(function(e,n){t.appendRowHeader(e,n)}),Handsontable.hooks.run(e,"afterGetRowHeaderRenderers",n),n},columnHeaders:function(){var n=[];return e.hasColHeaders()&&n.push(function(e,n){t.appendColHeader(e,n)}),Handsontable.hooks.run(e,"afterGetColumnHeaderRenderers",n),n},columnWidth:e.getColWidth,rowHeight:e.getRowHeight,cellRenderer:function(e,n,o){var r=t.instance.colToProp(n),i=t.instance.getCellMeta(e,n),s=t.instance.getCellRenderer(i),a=t.instance.getDataAtRowProp(e,r);s(t.instance,o,e,n,r,a,i),Handsontable.hooks.run(t.instance,"afterRenderer",o,e,n,r,a,i)},selections:s,hideBorderOnMouseDownOver:function(){return t.settings.fragmentSelection},onCellMouseDown:function(n,o,i,s){var a,l,u=i.parentNode,c=u.parentNode;if(e.listen(),t.activeWt=s,r=!0,Handsontable.hooks.run(e,"beforeOnCellMouseDown",n,o,i),e.selection.setSelectedHeaders(!1,!1),!_(n)){if(2===n.button&&e.selection.inInSelection(o));else n.shiftKey?o.row>=0&&o.col>=0&&e.selection.setRangeEnd(o):(o.row<0||o.col<0)&&(o.row>=0||o.col>=0)?(o.row<0&&(a=c.childNodes.length-Array.prototype.indexOf.call(c.childNodes,u)-1,l=e.getHeaderColspan(o.col,a),e.selection.setSelectedHeaders(!1,!0),e.selectCell(0,o.col,e.countRows()-1,o.col+Math.max(0,l-1))),o.col<0&&(e.selection.setSelectedHeaders(!0,!1),e.selectCell(o.row,0,o.row,e.countCols()-1))):(o.row=o.row<0?0:o.row,o.col=o.col<0?0:o.col,e.selection.setRangeStart(o));Handsontable.hooks.run(e,"afterOnCellMouseDown",n,o,i),t.activeWt=t.wt}},onCellMouseOver:function(n,o,i,s){t.activeWt=s,o.row>=0&&o.col>=0?r&&e.selection.setRangeEnd(o):r&&(o.row<0&&(e.selection.selectedHeader.cols?(e.selection.setRangeEnd(new E(e.countRows()-1,o.col)),e.selection.setSelectedHeaders(!1,!0)):e.selection.setRangeEnd(new E(o.row,o.col))),o.col<0&&(e.selection.selectedHeader.rows?(e.selection.setRangeEnd(new E(o.row,e.countCols()-1)),e.selection.setSelectedHeaders(!0,!1)):e.selection.setRangeEnd(new E(o.row,o.col)))),Handsontable.hooks.run(e,"afterOnCellMouseOver",n,o,i),t.activeWt=t.wt},onCellCornerMouseDown:function(t){t.preventDefault(),Handsontable.hooks.run(e,"afterOnCellCornerMouseDown",t)},beforeDraw:function(e){t.beforeRender(e)},onDraw:function(e){t.onDraw(e)},onScrollVertically:function(){e.runHooks("afterScrollVertically")},onScrollHorizontally:function(){e.runHooks("afterScrollHorizontally")},onBeforeDrawBorders:function(t,n){e.runHooks("beforeDrawBorders",t,n)},onBeforeTouchScroll:function(){e.runHooks("beforeTouchScroll")},onAfterMomentumScroll:function(){e.runHooks("afterMomentumScroll")},viewportRowCalculatorOverride:function(n){var o=e.countRows(),r=t.settings.viewportRowRenderingOffset;if("auto"===r&&t.settings.fixedRowsTop&&(r=10),"number"==typeof r&&(n.startRow=Math.max(n.startRow-r,0),n.endRow=Math.min(n.endRow+r,o-1)),"auto"===r){var i=n.startRow+n.endRow-n.startRow,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startRow-s,0),n.endRow=Math.min(n.endRow+s,o-1)}e.runHooks("afterViewportRowCalculatorOverride",n)},viewportColumnCalculatorOverride:function(n){var o=e.countCols(),r=t.settings.viewportColumnRenderingOffset;if("auto"===r&&t.settings.fixedColumnsLeft&&(r=10),"number"==typeof r&&(n.startColumn=Math.max(n.startColumn-r,0),n.endColumn=Math.min(n.endColumn+r,o-1)),"auto"===r){var i=n.startColumn+n.endColumn-n.startColumn,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startColumn-s,0),n.endColumn=Math.min(n.endColumn+s,o-1)}e.runHooks("afterViewportColumnCalculatorOverride",n)}};Handsontable.hooks.run(e,"beforeInitWalkontable",a),this.wt=new T(a),this.activeWt=this.wt,this.eventManager.addEventListener(t.wt.wtTable.spreader,"mousedown",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(t.wt.wtTable.spreader,"contextmenu",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(document.documentElement,"click",function(){t.settings.observeDOMVisibility&&t.wt.drawInterrupted&&(t.instance.forceFullRender=!0,t.render())})}Object.defineProperties(n,{TableView:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u,c=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),d=c.addClass,h=c.empty,f=c.fastInnerHTML,p=c.fastInnerText,g=c.getScrollbarWidth,m=c.hasClass,v=c.isChildOf,w=c.isInput,y=c.isOutsideInput,b=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,C=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),R=C.stopPropagation,_=C.isImmediatePropagationStopped,E=(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords,S=(l=e("3rdparty/walkontable/src/selection"),l&&l.__esModule&&l||{"default":l}).WalkontableSelection,T=(u=e("3rdparty/walkontable/src/core"),u&&u.__esModule&&u||{"default":u}).Walkontable;Handsontable.TableView=o,o.prototype.isTextSelectionAllowed=function(e){return w(e)?!0:this.settings.fragmentSelection&&v(e,this.TBODY)?!0:!1},o.prototype.isCellEdited=function(){var e=this.instance.getActiveEditor();return e&&e.isOpened()},o.prototype.beforeRender=function(e){e&&Handsontable.hooks.run(this.instance,"beforeRender",this.instance.forceFullRender)},o.prototype.onDraw=function(e){e&&Handsontable.hooks.run(this.instance,"afterRender",this.instance.forceFullRender)},o.prototype.render=function(){this.wt.draw(!this.instance.forceFullRender),this.instance.forceFullRender=!1,this.instance.renderCall=!1},o.prototype.getCellAtCoords=function(e,t){var n=this.wt.getCell(e,t);return 0>n?null:n},o.prototype.scrollViewport=function(e){this.wt.scrollViewport(e)},o.prototype.appendRowHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".rowHeader"),e,this.instance.getRowHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="rowHeader",this.updateCellHeader(r,e,this.instance.getRowHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetRowHeader",e,t)},o.prototype.appendColHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".colHeader"),e,this.instance.getColHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="colHeader",this.updateCellHeader(r,e,this.instance.getColHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetColHeader",e,t)},o.prototype.updateCellHeader=function(e,t,n){t>-1?f(e,n(t)):(p(e,String.fromCharCode(160)),d(e,"cornerHeader"))},o.prototype.maximumVisibleElementWidth=function(e){var t=this.wt.wtViewport.getWorkspaceWidth(),n=t-e;return n>0?n:0},o.prototype.maximumVisibleElementHeight=function(e){var t=this.wt.wtViewport.getWorkspaceHeight(),n=t-e;return n>0?n:0},o.prototype.mainViewIsActive=function(){return this.wt===this.activeWt},o.prototype.destroy=function(){this.wt.destroy(),this.eventManager.destroy()}},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45}],96:[function(e,t,n){"use strict";Object.defineProperties(n,{GhostTable:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=l.addClass,c=l.outerHeight,d=l.outerWidth,h=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,f=((i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}).objectEach,(s=e("helpers/number"),s&&s.__esModule&&s||{"default":s}).rangeEach,(a=e("helpers/mixed"),a&&a.__esModule&&a||{"default":a}).stringify,function(e){this.hot=e,this.container=null,this.injected=!1,this.rows=[],this.columns=[],this.samples=null});$traceurRuntime.createClass(f,{addRow:function(e,t){if(this.columns.length)throw new Error("Doesn't support multi-dimensional table");this.rows.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={row:e};this.rows.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tr.appendChild(this.createRow(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},addColumn:function(e,t){if(this.rows.length)throw new Error("Doesn't support multi-dimensional table");this.columns.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={col:e};this.columns.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),null!==this.hot.getColHeader(e)&&this.hot.view.appendColHeader(e,this.table.th),this.table.tBody.appendChild(this.createCol(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},getHeights:function(e){this.injected||this.injectTable(),h(this.rows,function(t){e(t.row,c(t.table)-1)})},getWidths:function(e){this.injected||this.injectTable(),h(this.columns,function(t){e(t.col,d(t.table))})},createColGroupsCol:function(){var e=this,t=document,n=t.createDocumentFragment();return n.appendChild(this.createColElement(-1)),this.samples.forEach(function(t){h(t.strings,function(t){n.appendChild(e.createColElement(t.col))})}),n},createRow:function(e){var t=this,n=document,o=n.createDocumentFragment(),r=n.createElement("th");return null!==this.hot.getRowHeader(e)&&this.hot.view.appendRowHeader(e,r),o.appendChild(r),this.samples.forEach(function(r){h(r.strings,function(r){var i=r.col,s=t.hot.getCellMeta(e,i);s.col=i,s.row=e;var a=t.hot.getCellRenderer(s),l=n.createElement("td");a(t.hot,l,e,i,t.hot.colToProp(i),r.value,s),o.appendChild(l)})}),o},createCol:function(e){var t=this,n=document,o=n.createDocumentFragment();return this.samples.forEach(function(r){h(r.strings,function(r){var i=r.row,s=t.hot.getCellMeta(i,e);s.col=e,s.row=i;var a=t.hot.getCellRenderer(s),l=n.createElement("td"),u=n.createElement("tr");a(t.hot,l,i,e,t.hot.colToProp(i),r.value,s),u.appendChild(l),o.appendChild(u)})}),o},clean:function(){this.rows.length=0,this.columns.length=0,this.samples&&this.samples.clear(),this.samples=null,this.removeTable()},injectTable:function(){var e=void 0!==arguments[0]?arguments[0]:null;this.injected||((e||this.hot.rootElement).appendChild(this.container.fragment),this.injected=!0)},removeTable:function(){this.injected&&this.container.container.parentNode&&(this.container.container.parentNode.removeChild(this.container.container),this.container=null,this.injected=!1)},createColElement:function(e){var t=document,n=t.createElement("col");return n.style.width=this.hot.view.wt.wtTable.getStretchedColumnWidth(e)+"px",n},createTable:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("table"),r=t.createElement("thead"),i=t.createElement("tbody"),s=t.createElement("colgroup"),a=t.createElement("tr"),l=t.createElement("th");return this.isVertical()&&o.appendChild(s),this.isHorizontal()&&(a.appendChild(l),r.appendChild(a),o.style.tableLayout="auto",o.style.width="auto"),o.appendChild(r),this.isVertical()&&i.appendChild(a),o.appendChild(i),u(o,e),n.appendChild(o),{fragment:n,table:o,tHead:r,tBody:i,colGroup:s,tr:a,th:l}},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("div");return e="htGhostTable htAutoSize "+e.trim(),u(o,e),n.appendChild(o),{fragment:n,container:o}},isVertical:function(){return this.rows.length&&!this.columns.length?!0:!1},isHorizontal:function(){return this.columns.length&&!this.rows.length?!0:!1}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.GhostTable=f},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],97:[function(e,t,n){"use strict";var o;Object.defineProperties(n,{SamplesGenerator:{get:function(){return h}},__esModule:{value:!0}});var r,i,s,a,l,u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=(u.addClass,u.outerHeight,u.outerWidth,(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}).objectEach,(a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).rangeEach),d=(l=e("helpers/mixed"),l&&l.__esModule&&l||{"default":l}).stringify,h=function(e){this.samples=null,this.dataFactory=e},f=h;$traceurRuntime.createClass(h,(o={},Object.defineProperty(o,"generateRowSamples",{value:function(e,t){return this.generateSamples("row",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateColumnSamples",{value:function(e,t){return this.generateSamples("col",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSamples",{value:function(e,t,n){var o=this,r=new Map;return"number"==typeof n&&(n={from:n,to:n}),c(n.from,n.to,function(n){var i=o.generateSample(e,t,n);r.set(n,i)}),r},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSample",{value:function(e,t,n){var o=this,r=new Map;return c(t.from,t.to,function(t){var i,s;if("row"===e)s=o.dataFactory(n,t);else{if("col"!==e)throw new Error("Unsupported sample type");s=o.dataFactory(t,n)}Array.isArray(s)||(s=d(s));var a=s.length;r.has(a)||r.set(a,{needed:f.SAMPLE_COUNT,strings:[]});var l=r.get(a);if(l.needed){var u="row"===e?"col":"row";l.strings.push((i={},Object.defineProperty(i,"value",{value:s,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,u,{value:t,configurable:!0,enumerable:!0,writable:!0}),i)),l.needed--}}),r},configurable:!0,enumerable:!0,writable:!0}),o),{get SAMPLE_COUNT(){return 3}}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.SamplesGenerator=h},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],98:[function(e,t,n){"use strict";function o(e,t){var n=e,o="string"==typeof n?n.toLowerCase():null;return function(e){for(var r=!1,s=0,a=e.length;a>s;s++){if(n===e[s]){r=!0;break}if(o===i(e[s]).toLowerCase()){r=!0;break}}t(r)}}var r,i=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify;Handsontable.AutocompleteValidator=function(e,t){this.strict&&this.source?"function"==typeof this.source?this.source(e,o(e,t)):o(e,t)(this.source):t(!0)}},{"helpers/mixed":47}],99:[function(e,t,n){"use strict";var o,r,i=(o=e("moment"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("editors"),r&&r.__esModule&&r||{"default":r}).getEditor;Handsontable.DateValidator=function(e,t){var n=!0,o=s("date",this.instance);null===e&&(e="");var r=i(new Date(e)).isValid(),l=i(e,this.dateFormat||o.defaultDateFormat,!0).isValid();if(r||(n=!1),!r&&l&&(n=!0),r&&!l)if(this.correctFormat===!0){var u=a(e,this.dateFormat);this.instance.setDataAtCell(this.row,this.col,u,"dateValidator"),n=!0}else n=!1;t(n)};var a=function(e,t){var n=i(new Date(e)),o=n.format("YYYY"),r=i().format("YYYY");return o.substr(0,2)!==r.substr(0,2)?e.match(new RegExp(o))||n.year(o.replace(o.substr(0,2),r.substr(0,2))):o.length>4&&n.year((n.year()+"").substr(0,4)),n.format(t)}},{editors:28,moment:"moment"}],100:[function(e,t,n){"use strict";Handsontable.NumericValidator=function(e,t){null===e&&(e=""),t(/^-?\d*(\.|\,)?\d*$/.test(e))}},{}],SheetClip:[function(e,t,n){"use strict";!function(e){function t(e){return e.split('"').length-1}var o={parse:function(e){var n,o,r,i,s,a,l,u=[],c=0;for(r=e.split("\n"),r.length>1&&""===r[r.length-1]&&r.pop(),n=0,o=r.length;o>n;n+=1){for(r[n]=r[n].split(" "),i=0,s=r[n].length;s>i;i+=1)u[c]||(u[c]=[]),a&&0===i?(l=u[c].length-1,u[c][l]=u[c][l]+"\n"+r[n][0],a&&1&t(r[n][0])&&(a=!1,u[c][l]=u[c][l].substring(0,u[c][l].length-1).replace(/""/g,'"'))):i===s-1&&0===r[n][i].indexOf('"')&&1&t(r[n][i])?(u[c].push(r[n][i].substring(1).replace(/""/g,'"')),a=!0):(u[c].push(r[n][i].replace(/""/g,'"')),a=!1);a||(c+=1)}return u},stringify:function(e){var t,n,o,r,i,s="";for(t=0,n=e.length;n>t;t+=1){for(r=e[t].length,o=0;r>o;o+=1)o>0&&(s+=" "),i=e[t][o],s+="string"==typeof i?i.indexOf("\n")>-1?'"'+i.replace(/"/g,'""')+'"':i:null===i||void 0===i?"":i;s+="\n"}return s}};"undefined"!=typeof n?(n.parse=o.parse,n.stringify=o.stringify):e.SheetClip=o}(window)},{}],autoResize:[function(e,t,n){"use strict";function o(){var e,t={minHeight:200,maxHeight:300,minWidth:100,maxWidth:300},n=document.body,o=document.createTextNode(""),r=document.createElement("SPAN"),i=function(e,t,n){window.attachEvent?e.attachEvent("on"+t,n):e.addEventListener(t,n,!1)},s=function(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)},a=function(i){var s,a;i?/^[a-zA-Z \.,\\\/\|0-9]$/.test(i)||(i="."):i="",void 0!==o.textContent?o.textContent=e.value+i:o.data=e.value+i,r.style.fontSize=Handsontable.Dom.getComputedStyle(e).fontSize,r.style.fontFamily=Handsontable.Dom.getComputedStyle(e).fontFamily,r.style.whiteSpace="pre",n.appendChild(r),s=r.clientWidth+2,n.removeChild(r),e.style.height=t.minHeight+"px",t.minWidth>s?e.style.width=t.minWidth+"px":s>t.maxWidth?e.style.width=t.maxWidth+"px":e.style.width=s+"px",a=e.scrollHeight?e.scrollHeight-1:0,t.minHeight>a?e.style.height=t.minHeight+"px":t.maxHeight-1||"true"===e.contentEditable}var n=this,o=!1;if(e.metaKey?o=!0:e.ctrlKey&&-1===navigator.userAgent.indexOf("Mac")&&(o=!0),o){if(document.activeElement!==this.elTextarea&&(""!==this.getSelectionText()||t()))return;this.selectNodeText(this.elTextarea),setTimeout(function(){document.activeElement!==n.elTextarea&&n.selectNodeText(n.elTextarea)},0)}!o||67!==e.keyCode&&86!==e.keyCode&&88!==e.keyCode||(88===e.keyCode?setTimeout(function(){n.triggerCut(e)},0):86===e.keyCode&&setTimeout(function(){n.triggerPaste(e)},0))},r.prototype.selectNodeText=function(e){e&&e.select()},r.prototype.getSelectionText=function(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e},r.prototype.copyable=function(e){if("string"!=typeof e&&void 0===e.toString)throw new Error("copyable requires string parameter");this.elTextarea.value=e,this.selectNodeText(this.elTextarea)},r.prototype.onCut=function(e){this.cutCallbacks.push(e)},r.prototype.onPaste=function(e){this.pasteCallbacks.push(e)},r.prototype.removeCallback=function(e){var t,n;for(t=0,n=this.copyCallbacks.length;n>t;t++)if(this.copyCallbacks[t]===e)return this.copyCallbacks.splice(t,1),!0;for(t=0,n=this.cutCallbacks.length;n>t;t++)if(this.cutCallbacks[t]===e)return this.cutCallbacks.splice(t,1),!0;for(t=0,n=this.pasteCallbacks.length;n>t;t++)if(this.pasteCallbacks[t]===e)return this.pasteCallbacks.splice(t,1),!0;return!1},r.prototype.triggerCut=function(e){var t=this;t.cutCallbacks&&setTimeout(function(){for(var n=0,o=t.cutCallbacks.length;o>n;n++)t.cutCallbacks[n](e)},50)},r.prototype.triggerPaste=function(e,t){var n=this;n.pasteCallbacks&&setTimeout(function(){for(var o=t||n.elTextarea.value,r=0,i=n.pasteCallbacks.length;i>r;r++)n.pasteCallbacks[r](o,e)},50)},r.prototype.destroy=function(){this.hasBeenDestroyed()||0!==--this.refCounter||(this.elDiv&&this.elDiv.parentNode&&(this.elDiv.parentNode.removeChild(this.elDiv),this.elDiv=null,this.elTextarea=null),document.documentElement.removeEventListener("keydown",this.onKeyDownRef),this.onKeyDownRef=null)},r.prototype.hasBeenDestroyed=function(){return!this.refCounter}},{}],es6collections:[function(e,t,n){"use strict";!function(e){function t(e,t){function o(e){return this&&this.constructor===o?(this._keys=[],this._values=[],this._itp=[],this.objectOnly=t,void(e&&n.call(this,e))):new o(e)}return t||y(e,"size",{get:m}),e.constructor=o,o.prototype=e,o}function n(e){this.add?e.forEach(this.add,this):e.forEach(function(e){this.set(e[0],e[1])},this)}function o(e){return this.has(e)&&(this._keys.splice(w,1),this._values.splice(w,1),this._itp.forEach(function(e){w-1}function r(e){return this.has(e)?this._values[w]:void 0}function i(e,t){if(this.objectOnly&&t!==Object(t))throw new TypeError("Invalid value used as weak collection key");if(t!=t||0===t)for(w=e.length;w--&&!b(e[w],t););else w=e.indexOf(t);return w>-1}function s(e){return i.call(this,this._values,e)}function a(e){return i.call(this,this._keys,e)}function l(e,t){return this.has(e)?this._values[w]=t:this._values[this._keys.push(e)-1]=t,this}function u(e){return this.has(e)||this._values.push(e),this}function c(){this._values.length=0}function d(){return g(this._itp,this._keys)}function h(){return g(this._itp,this._values)}function f(){return g(this._itp,this._keys,this._values)}function p(){return g(this._itp,this._values,this._values)}function g(e,t,n){var o=[0],r=!1;return e.push(o),{next:function(){var i,s=o[0];return!r&&st;t++)if(w[t].obj===e)return w[t]}function i(e){for(var t=0,n=w.length;n>t;t++)w[t]===e&&w.splice(t,1)}function s(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].callback===t)return e.observers[n].observer}function a(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].observer===t)return e.observers.splice(n,1),void(e.observers.length||i(e))}function l(e,t){h(t),Object.observe?d(t,e):clearTimeout(t.next);var n=r(e);a(n,t)}function u(e,t){var n,i=[],a=e,l=r(e);if(l?n=s(l,t):(l=new y(e),w.push(l)),n)return n;if(Object.observe)n=function(r){d(n,e),c(n,e);for(var s=0,l=r.length;l>s;){if(("length"!==r[s].name||!R(r[s].object))&&"__Jasmine_been_here_before__"!==r[s].name){var u=r[s].type;switch(u){case"new":u="add";break;case"deleted":u="delete";break;case"updated":u="update"}v[u].call(r[s],i,o(a,r[s].object))}s++}i&&t&&t(i),n.patches=i,i=[]};else if(n={},l.value=JSON.parse(JSON.stringify(e)),t){n.callback=t,n.next=null;var u=this.intervals||[100,1e3,1e4,6e4],f=0,p=function(){h(n)},g=function(){clearTimeout(n.next),n.next=setTimeout(function(){p(),f=0,n.next=setTimeout(m,u[f++])},0)},m=function(){p(),f==u.length&&(f=u.length-1),n.next=setTimeout(m,u[f++])};"undefined"!=typeof window&&(window.addEventListener?(window.addEventListener("mousedown",g),window.addEventListener("mouseup",g),window.addEventListener("keydown",g)):(window.attachEvent("onmousedown",g),window.attachEvent("onmouseup",g),window.attachEvent("onkeydown",g))),n.next=setTimeout(m,u[f++])}return n.patches=i,n.object=e,l.observers.push(new b(t,n)),c(n,e)}function c(e,t){if(Object.observe){Object.observe(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&c(e,o)}}return e}function d(e,t){if(Object.observe){Object.unobserve(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&d(e,o)}}return e}function h(e){if(Object.observe)Object.deliverChangeRecords(e);else{for(var t,n=0,o=w.length;o>n;n++)if(w[n].obj===e.object){t=w[n];break}t&&f(t.value,e.object,e.patches,"")}var r=e.patches;return r.length>0&&(e.patches=[],e.callback&&e.callback(r)),r}function f(e,n,o,r){for(var i=C(n),s=C(e),a=!1,l=!1,u=s.length-1;u>=0;u--){var c=s[u],d=e[c];if(n.hasOwnProperty(c)){var h=n[c];d instanceof Object?f(d,h,o,r+"/"+t(c)):d!=h&&(a=!0,o.push({op:"replace",path:r+"/"+t(c),value:h}),e[c]=h)}else o.push({op:"remove",path:r+"/"+t(c)}),delete e[c],l=!0}if(l||i.length!=s.length)for(var u=0;ur;){n=t[r];for(var s=n.path.split("/"),a=e,l=1,u=s.length;;)if(R(a)){var c=parseInt(s[l],10);if(l++,l>=u){o=m[n.op].call(n,a,c,e);break}a=a[c]}else{var d=s[l];if(-1!=d.indexOf("~")&&(d=d.replace(/~1/g,"/").replace(/~0/g,"~")),l++,l>=u){o=g[n.op].call(n,a,d,e);break}a=a[d]}r++}return o}var g={add:function(e,t){return e[t]=this.value,!0},remove:function(e,t){return delete e[t],!0},replace:function(e,t){return e[t]=this.value,!0},move:function(e,t,n){var o={op:"_get",path:this.from};return p(n,[o]),p(n,[{op:"remove",path:this.from}]),p(n,[{op:"add",path:this.path,value:o.value}]),!0},copy:function(e,t,n){var o={op:"_get",path:this.from};return p(n,[o]),p(n,[{op:"add",path:this.path,value:o.value}]),!0},test:function(e,t){return JSON.stringify(e[t])===JSON.stringify(this.value)},_get:function(e,t){this.value=e[t]}},m={add:function(e,t){return e.splice(t,0,this.value),!0},remove:function(e,t){return e.splice(t,1),!0},replace:function(e,t){return e[t]=this.value,!0},move:g.move,copy:g.copy,test:g.test,_get:g._get},v={add:function(e,n){var o={op:"add",path:n+t(this.name),value:this.object[this.name]};e.push(o)},"delete":function(e,n){var o={op:"remove",path:n+t(this.name)};e.push(o)},update:function(e,n){var o={op:"replace",path:n+t(this.name),value:this.object[this.name]};e.push(o)}},w=[];e.intervals;var y=function(){function e(e){this.observers=[],this.obj=e}return e}(),b=function(){function e(e,t){this.callback=e,this.observer=t}return e}();e.unobserve=l,e.observe=u,e.generate=h;var C;C=Object.keys?Object.keys:function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t};var R;R=Array.isArray?Array.isArray:function(e){return e.push&&"number"==typeof e.length},e.apply=p}(o||(o={})),"undefined"!=typeof n&&(n.apply=o.apply,n.observe=o.observe,n.unobserve=o.unobserve,n.generate=o.generate)},{}],moment:[function(t,n,o){ +window.Handsontable={version:"0.20.0",buildDate:"Tue Nov 03 2015 14:30:34 GMT+0100 (CET)"},function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Handsontable=e()}}(function(){var e;return function(e,t,n){return function o(e,t,n){function r(a,l){if(!t[a]){if(!e[a]){var u="function"==typeof require&&require;if(!l&&u)return u(a,!0);if(i)return i(a,!0);if(s[a]&&"undefined"!=typeof window[s[a]])return window[s[a]];var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var d=t[a]={exports:{}};e[a][0].call(d.exports,function(t){var n=e[a][1][t];return r(n?n:t)},d,d.exports,o,e,t,n)}return t[a].exports}for(var i="function"==typeof require&&require,s=JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","pikaday":"Pikaday"}')||{},a=0;a1)for(t=1,o=arguments.length;o>t;t++)r.push(arguments[t]);if(l){if("undefined"==typeof l[e])throw new Error("Handsontable do not provide action: "+e);i=l[e].apply(l,r),"destroy"===e&&a.removeData()}return i}}(window,jQuery,Handsontable)},{}],2:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableBorder:{get:function(){return b}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=l.getComputedStyle,c=l.getTrimmingContainer,d=l.innerWidth,h=l.innerHeight,f=l.offset,p=l.outerHeight,g=l.outerWidth,m=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}).stopImmediatePropagation,v=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,w=(s=e("cell/coords"),s&&s.__esModule&&s||{"default":s}).WalkontableCellCoords,y=(a=e("overlay/_base.js"),a&&a.__esModule&&a||{"default":a}).WalkontableOverlay,b=function(e,t){t&&(this.eventManager=new v(e),this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.left=null,this.bottom=null,this.right=null,this.topStyle=null,this.leftStyle=null,this.bottomStyle=null,this.rightStyle=null,this.cornerDefaultStyle={width:"5px",height:"5px",borderWidth:"2px",borderStyle:"solid",borderColor:"#FFF"},this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())};$traceurRuntime.createClass(b,{registerListeners:function(){var e=this;this.eventManager.addEventListener(document.body,"mousedown",function(){return e.onMouseDown()}),this.eventManager.addEventListener(document.body,"mouseup",function(){return e.onMouseUp()});for(var t=this,n=function(n,o){t.eventManager.addEventListener(t.main.childNodes[n],"mouseenter",function(t){return e.onMouseEnter(t,e.main.childNodes[n])})},o=0,r=this.main.childNodes.length;r>o;o++)n(o,r)},onMouseDown:function(){this.mouseDown=!0},onMouseUp:function(){this.mouseDown=!1},onMouseEnter:function(e,t){function n(e){return e.clientYMath.ceil(i.top+i.height)?!0:e.clientXMath.ceil(i.left+i.width)?!0:void 0}function o(e){n(e)&&(r.eventManager.removeEventListener(document.body,"mousemove",o),t.style.display="block")}if(this.mouseDown&&this.wot.getSetting("hideBorderOnMouseDownOver")){e.preventDefault(),m(e);var r=this,i=t.getBoundingClientRect();t.style.display="none",this.eventManager.addEventListener(document.body,"mousemove",o)}},createBorders:function(e){this.main=document.createElement("div");var t=["top","left","bottom","right","corner"],n=this.main.style;n.position="absolute",n.top=0,n.left=0;for(var o=0;5>o;o++){var r=t[o],i=document.createElement("div");i.className="wtBorder "+(this.settings.className||""),this.settings[r]&&this.settings[r].hide&&(i.className+=" hidden"),n=i.style,n.backgroundColor=this.settings[r]&&this.settings[r].color?this.settings[r].color:e.border.color,n.height=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",n.width=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",this.main.appendChild(i)}this.top=this.main.childNodes[0],this.left=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.right=this.main.childNodes[3],this.topStyle=this.top.style,this.leftStyle=this.left.style,this.bottomStyle=this.bottom.style,this.rightStyle=this.right.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),Handsontable.mobileBrowser&&this.createMultipleSelectorHandles(),this.disappear(),this.wot.wtTable.bordersHolder||(this.wot.wtTable.bordersHolder=document.createElement("div"),this.wot.wtTable.bordersHolder.className="htBorders",this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),this.wot.wtTable.bordersHolder.insertBefore(this.main,this.wot.wtTable.bordersHolder.firstChild)},createMultipleSelectorHandles:function(){this.selectionHandles={topLeft:document.createElement("DIV"),topLeftHitArea:document.createElement("DIV"),bottomRight:document.createElement("DIV"),bottomRightHitArea:document.createElement("DIV")};var e=10,t=40;this.selectionHandles.topLeft.className="topLeftSelectionHandle",this.selectionHandles.topLeftHitArea.className="topLeftSelectionHandle-HitArea",this.selectionHandles.bottomRight.className="bottomRightSelectionHandle",this.selectionHandles.bottomRightHitArea.className="bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={topLeft:this.selectionHandles.topLeft.style,topLeftHitArea:this.selectionHandles.topLeftHitArea.style,bottomRight:this.selectionHandles.bottomRight.style,bottomRightHitArea:this.selectionHandles.bottomRightHitArea.style};var n={position:"absolute",height:t+"px",width:t+"px","border-radius":parseInt(t/1.5,10)+"px"};for(var o in n)n.hasOwnProperty(o)&&(this.selectionHandles.styles.bottomRightHitArea[o]=n[o],this.selectionHandles.styles.topLeftHitArea[o]=n[o]);var r={position:"absolute",height:e+"px",width:e+"px","border-radius":parseInt(e/1.5,10)+"px",background:"#F5F5FF",border:"1px solid #4285c8"};for(var i in r)r.hasOwnProperty(i)&&(this.selectionHandles.styles.bottomRight[i]=r[i],this.selectionHandles.styles.topLeft[i]=r[i]);this.main.appendChild(this.selectionHandles.topLeft),this.main.appendChild(this.selectionHandles.bottomRight),this.main.appendChild(this.selectionHandles.topLeftHitArea),this.main.appendChild(this.selectionHandles.bottomRightHitArea)},isPartRange:function(e,t){return!this.wot.selections.area.cellRange||e==this.wot.selections.area.cellRange.to.row&&t==this.wot.selections.area.cellRange.to.col?!1:!0},updateMultipleSelectionHandlesPosition:function(e,t,n,o,r,i){var s=parseInt(this.selectionHandles.styles.topLeft.width,10),a=parseInt(this.selectionHandles.styles.topLeftHitArea.width,10);this.selectionHandles.styles.topLeft.top=parseInt(n-s,10)+"px",this.selectionHandles.styles.topLeft.left=parseInt(o-s,10)+"px",this.selectionHandles.styles.topLeftHitArea.top=parseInt(n-a/4*3,10)+"px",this.selectionHandles.styles.topLeftHitArea.left=parseInt(o-a/4*3,10)+"px",this.selectionHandles.styles.bottomRight.top=parseInt(n+i,10)+"px",this.selectionHandles.styles.bottomRight.left=parseInt(o+r,10)+"px",this.selectionHandles.styles.bottomRightHitArea.top=parseInt(n+i-a/4,10)+"px",this.selectionHandles.styles.bottomRightHitArea.left=parseInt(o+r-a/4,10)+"px",this.settings.border.multipleSelectionHandlesVisible&&this.settings.border.multipleSelectionHandlesVisible()?(this.selectionHandles.styles.topLeft.display="block",this.selectionHandles.styles.topLeftHitArea.display="block",this.isPartRange(e,t)?(this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"):(this.selectionHandles.styles.bottomRight.display="block",this.selectionHandles.styles.bottomRightHitArea.display="block")):(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.topLeftHitArea.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"),e==this.wot.wtSettings.getSetting("fixedRowsTop")||t==this.wot.wtSettings.getSetting("fixedColumnsLeft")?(this.selectionHandles.styles.topLeft.zIndex="9999",this.selectionHandles.styles.topLeftHitArea.zIndex="9999"):(this.selectionHandles.styles.topLeft.zIndex="",this.selectionHandles.styles.topLeftHitArea.zIndex="")},appear:function(e){if(!this.disabled){var t,n,o,r,i,s,a,l,m,v,b,C,R,_,S,E,T,O,M;M=y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_TOP)||y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_BOTTOM)||y.isOverlayTypeOf(this.wot.cloneOverlay,y.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedRowsBottom"):this.wot.wtTable.getRenderedRowsCount();for(var k=0;M>k;k++){var H=this.wot.wtTable.rowFilter.renderedToSource(k);if(H>=e[0]&&H<=e[2]){R=H;break}}for(var D=M-1;D>=0;D--){var x=this.wot.wtTable.rowFilter.renderedToSource(D);if(x>=e[0]&&x<=e[2]){S=x;break}}M=this.wot.wtTable.getRenderedColumnsCount();for(var A=0;M>A;A++){var P=this.wot.wtTable.columnFilter.renderedToSource(A);if(P>=e[1]&&P<=e[3]){_=P;break}}for(var N=M-1;N>=0;N--){var L=this.wot.wtTable.columnFilter.renderedToSource(N);if(L>=e[1]&&L<=e[3]){E=L;break}}if(void 0===R||void 0===_)return void this.disappear();t=R!==S||_!==E,n=this.wot.wtTable.getCell(new w(R,_)),o=t?this.wot.wtTable.getCell(new w(S,E)):n,r=f(n),i=t?f(o):r,s=f(this.wot.wtTable.TABLE),l=r.top,b=i.top+p(o)-l,v=r.left,C=i.left+g(o)-v,a=l-s.top-1,m=v-s.left-1;var W=u(n);parseInt(W.borderTopWidth,10)>0&&(a+=1,b=b>0?b-1:0),parseInt(W.borderLeftWidth,10)>0&&(m+=1,C=C>0?C-1:0),this.topStyle.top=a+"px",this.topStyle.left=m+"px",this.topStyle.width=C+"px",this.topStyle.display="block",this.leftStyle.top=a+"px",this.leftStyle.left=m+"px",this.leftStyle.height=b+"px",this.leftStyle.display="block";var I=Math.floor(this.settings.border.width/2);this.bottomStyle.top=a+b-I+"px",this.bottomStyle.left=m+"px",this.bottomStyle.width=C+"px",this.bottomStyle.display="block",this.rightStyle.top=a+"px",this.rightStyle.left=m+C-I+"px",this.rightStyle.height=b+1+"px",this.rightStyle.display="block",Handsontable.mobileBrowser||!this.hasSetting(this.settings.border.cornerVisible)||this.isPartRange(S,E)?this.cornerStyle.display="none":(this.cornerStyle.top=a+b-4+"px",this.cornerStyle.left=m+C-4+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="block",T=c(this.wot.wtTable.TABLE),E===this.wot.getSetting("totalColumns")-1&&(O=o.offsetLeft+g(o)>=d(T),O&&(this.cornerStyle.left=Math.floor(m+C-3-parseInt(this.cornerDefaultStyle.width)/2)+"px",this.cornerStyle.borderRightWidth=0)),S===this.wot.getSetting("totalRows")-1&&(O=o.offsetTop+p(o)>=h(T),O&&(this.cornerStyle.top=Math.floor(a+b-3-parseInt(this.cornerDefaultStyle.height)/2)+"px",this.cornerStyle.borderBottomWidth=0))),Handsontable.mobileBrowser&&this.updateMultipleSelectionHandlesPosition(R,_,a,m,C,b)}},disappear:function(){this.topStyle.display="none",this.leftStyle.display="none",this.bottomStyle.display="none",this.rightStyle.display="none",this.cornerStyle.display="none",Handsontable.mobileBrowser&&(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none")},hasSetting:function(e){return"function"==typeof e?e():!!e}},{}),window.WalkontableBorder=b},{"cell/coords":5,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"overlay/_base.js":11}],3:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewportColumnsCalculator:{get:function(){return r}},__esModule:{value:!0}});var o=new WeakMap,r=function(e,t,n,r,i,s,a){o.set(this,{viewportWidth:e,scrollOffset:t,totalColumns:n,columnWidthFn:r,overrideFn:i,onlyFullyVisible:s}),this.count=0,this.startColumn=null,this.endColumn=null,this.startPosition=null,this.stretchAllRatio=0,this.stretchLastWidth=0,this.stretch=a,this.totalTargetWidth=0,this.needVerifyLastColumnWidth=!0,this.stretchAllColumnsWidth=[],this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e,t=0,n=!0,r=[],i=o.get(this),s=i.onlyFullyVisible,a=i.overrideFn,l=i.scrollOffset,u=i.totalColumns,c=i.viewportWidth,d=0;u>d;d++)if(e=this._getColumnWidth(d),l>=t&&!s&&(this.startColumn=d),t>=l&&l+c>=t+e&&(null==this.startColumn&&(this.startColumn=d),this.endColumn=d),r.push(t),t+=e,s||(this.endColumn=d),t>=l+c){n=!1;break}if(this.endColumn===u-1&&n)for(this.startColumn=this.endColumn;this.startColumn>0;){var h=r[this.endColumn]+e-r[this.startColumn-1];if((c>=h||!s)&&this.startColumn--,h>c)break}null!==this.startColumn&&a&&a(this),this.startPosition=r[this.startColumn],void 0==this.startPosition&&(this.startPosition=null),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)},refreshStretching:function(e){if("none"!==this.stretch){for(var t,n,r=0,i=o.get(this),s=i.totalColumns,a=0;s>a;a++)t=this._getColumnWidth(a),r+=t;this.totalTargetWidth=e,n=r-e,"all"===this.stretch&&0>n?(this.stretchAllRatio=e/r,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0):"last"===this.stretch&&e!==1/0&&(this.stretchLastWidth=-n+this._getColumnWidth(s-1))}},getStretchedColumnWidth:function(e,t){var n=null;return"all"===this.stretch&&0!==this.stretchAllRatio?n=this._getStretchedAllColumnWidth(e,t):"last"===this.stretch&&0!==this.stretchLastWidth&&(n=this._getStretchedLastColumnWidth(e)),n},_getStretchedAllColumnWidth:function(e,t){var n=0,r=o.get(this),i=r.totalColumns;if(this.stretchAllColumnsWidth[e]||(this.stretchAllColumnsWidth[e]=Math.round(t*this.stretchAllRatio)),this.stretchAllColumnsWidth.length===i&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(var s=0;sf;f++){var p=l(f);if(void 0===p&&(p=i.DEFAULT_HEIGHT),u>=e&&!s&&(this.startRow=f),e>=u&&u+d-h>=e+p&&(null===this.startRow&&(this.startRow=f),this.endRow=f),n.push(e),e+=p,s||(this.endRow=f),e>=u+d-h){t=!1;break}}if(this.endRow===c-1&&t)for(this.startRow=this.endRow;this.startRow>0;){var g=n[this.endRow]+p-n[this.startRow-1];if((d-h>=g||!s)&&this.startRow--,g>=d-h)break}null!==this.startRow&&a&&a(this),this.startPosition=n[this.startRow],void 0==this.startPosition&&(this.startPosition=null),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}},{get DEFAULT_HEIGHT(){return 23}}),window.WalkontableViewportRowsCalculator=r},{}],5:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellCoords:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t){"undefined"!=typeof e&&"undefined"!=typeof t?(this.row=e,this.col=t):(this.row=null,this.col=null)};$traceurRuntime.createClass(o,{isValid:function(e){return this.row<0||this.col<0?!1:this.row>=e.getSetting("totalRows")||this.col>=e.getSetting("totalColumns")?!1:!0},isEqual:function(e){return e===this?!0:this.row===e.row&&this.col===e.col},isSouthEastOf:function(e){return this.row>=e.row&&this.col>=e.col},isNorthWestOf:function(e){return this.row<=e.row&&this.col<=e.col},isSouthWestOf:function(e){return this.row>=e.row&&this.col<=e.col},isNorthEastOf:function(e){return this.row<=e.row&&this.col>=e.col}},{}),window.WalkontableCellCoords=o},{}],6:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellRange:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("cell/coords"),o&&o.__esModule&&o||{"default":o}).WalkontableCellCoords,i=function(e,t,n){this.highlight=e,this.from=t,this.to=n},s=i;$traceurRuntime.createClass(i,{isValid:function(e){return this.from.isValid(e)&&this.to.isValid(e)},isSingle:function(){return this.from.row===this.to.row&&this.from.col===this.to.col},getHeight:function(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1},getWidth:function(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1},includes:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.row<0&&(e.row=0),e.col<0&&(e.col=0),t.row<=e.row&&n.row>=e.row&&t.col<=e.col&&n.col>=e.col},includesRange:function(e){return this.includes(e.getTopLeftCorner())&&this.includes(e.getBottomRightCorner())},isEqual:function(e){return Math.min(this.from.row,this.to.row)==Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)==Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)==Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)==Math.max(e.from.col,e.to.col)},overlaps:function(e){return e.isSouthEastOf(this.getTopLeftCorner())&&e.isNorthWestOf(this.getBottomRightCorner())},isSouthEastOf:function(e){return this.getTopLeftCorner().isSouthEastOf(e)||this.getBottomRightCorner().isSouthEastOf(e)},isNorthWestOf:function(e){return this.getTopLeftCorner().isNorthWestOf(e)||this.getBottomRightCorner().isNorthWestOf(e)},expand:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.rown.row||e.col>n.col?(this.from=new r(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=new r(Math.max(n.row,e.row),Math.max(n.col,e.col)),!0):!1},expandByRange:function(e){if(this.includesRange(e)||!this.overlaps(e))return!1;var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=(this.getTopRightCorner(),this.getBottomLeftCorner(),e.getTopLeftCorner()),i=e.getBottomRightCorner(),a=Math.min(t.row,o.row),l=Math.min(t.col,o.col),u=Math.max(n.row,i.row),c=Math.max(n.col,i.col),d=new r(a,l),h=new r(u,c),f=new s(d,d,h).isCorner(this.from,e),p=e.isEqual(new s(d,d,h));return f&&!p&&(this.from.col>d.col&&(d.col=c,h.col=l),this.from.row>d.row&&(d.row=u,h.row=a)),this.from=d,this.to=h,!0},getDirection:function(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0},setDirection:function(e){switch(e){case"NW-SE":this.from=this.getTopLeftCorner(),this.to=this.getBottomRightCorner();break;case"NE-SW":this.from=this.getTopRightCorner(),this.to=this.getBottomLeftCorner();break;case"SE-NW":this.from=this.getBottomRightCorner(),this.to=this.getTopLeftCorner();break;case"SW-NE":this.from=this.getBottomLeftCorner(),this.to=this.getTopRightCorner()}},getTopLeftCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},getBottomRightCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getTopRightCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getBottomLeftCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},isCorner:function(e,t){return t&&t.includes(e)&&(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col))||this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col))||this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col))||this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))?!0:e.isEqual(this.getTopLeftCorner())||e.isEqual(this.getTopRightCorner())||e.isEqual(this.getBottomLeftCorner())||e.isEqual(this.getBottomRightCorner())},getOppositeCorner:function(e,t){if(!(e instanceof r))return!1;if(t&&t.includes(e)){if(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))return this.getBottomRightCorner();if(this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))return this.getBottomLeftCorner();if(this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))return this.getTopRightCorner();if(this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))return this.getTopLeftCorner()}return e.isEqual(this.getBottomRightCorner())?this.getTopLeftCorner():e.isEqual(this.getTopLeftCorner())?this.getBottomRightCorner():e.isEqual(this.getTopRightCorner())?this.getBottomLeftCorner():e.isEqual(this.getBottomLeftCorner())?this.getTopRightCorner():void 0},getBordersSharedWith:function(e){if(!this.includesRange(e))return[];var t={top:Math.min(this.from.row,this.to.row),bottom:Math.max(this.from.row,this.to.row),left:Math.min(this.from.col,this.to.col),right:Math.max(this.from.col,this.to.col)},n={top:Math.min(e.from.row,e.to.row),bottom:Math.max(e.from.row,e.to.row),left:Math.min(e.from.col,e.to.col),right:Math.max(e.from.col,e.to.col)},o=[];return t.top==n.top&&o.push("top"),t.right==n.right&&o.push("right"),t.bottom==n.bottom&&o.push("bottom"),t.left==n.left&&o.push("left"),o},getInner:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)this.from.row===o&&this.from.col===i||this.to.row===o&&this.to.col===i||n.push(new r(o,i));return n},getAll:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)e.row===o&&e.col===i?n.push(e):t.row===o&&t.col===i?n.push(t):n.push(new r(o,i));return n},forAll:function(e){for(var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=t.row;o<=n.row;o++)for(var r=t.col;r<=n.col;r++){var i=e(o,r);if(i===!1)return}}},{}),window.WalkontableCellRange=i},{"cell/coords":5}],7:[function(e,t,n){"use strict";Object.defineProperties(n,{Walkontable:{get:function(){return x}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f,p,g,m,v=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),w=v.addClass,y=v.fastInnerText,b=v.isVisible,C=v.removeClass,R=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,_=(i=e("helpers/string"),i&&i.__esModule&&i||{"default":i}),S=_.toUpperCaseFirst,E=_.randomString,T=(s=e("event"),s&&s.__esModule&&s||{"default":s}).WalkontableEvent,O=(a=e("overlays"),a&&a.__esModule&&a||{"default":a}).WalkontableOverlays,M=(l=e("scroll"),l&&l.__esModule&&l||{"default":l}).WalkontableScroll,k=(u=e("settings"),u&&u.__esModule&&u||{"default":u}).WalkontableSettings,H=(c=e("table"),c&&c.__esModule&&c||{"default":c}).WalkontableTable,D=(d=e("viewport"),d&&d.__esModule&&d||{"default":d}).WalkontableViewport,x=((h=e("overlay/_base.js"),h&&h.__esModule&&h||{"default":h}).WalkontableOverlay,(f=e("overlay/top.js"),f&&f.__esModule&&f||{"default":f}).WalkontableTopOverlay,(p=e("overlay/left.js"),p&&p.__esModule&&p||{"default":p}).WalkontableLeftOverlay,(g=e("overlay/debug.js"),g&&g.__esModule&&g||{"default":g}).WalkontableDebugOverlay,(m=e("overlay/topLeftCorner.js"),m&&m.__esModule&&m||{"default":m}).WalkontableTopLeftCornerOverlay,function(e){var t=[];if(this.guid="wt_"+E(),e.cloneSource?(this.cloneSource=e.cloneSource,this.cloneOverlay=e.cloneOverlay,this.wtSettings=e.cloneSource.wtSettings,this.wtTable=new H(this,e.table,e.wtRootElement),this.wtScroll=new M(this),this.wtViewport=e.cloneSource.wtViewport,this.wtEvent=new T(this),this.selections=this.cloneSource.selections):(this.wtSettings=new k(this,e),this.wtTable=new H(this,e.table),this.wtScroll=new M(this),this.wtViewport=new D(this),this.wtEvent=new T(this),this.selections=this.getSetting("selections"),this.wtOverlays=new O(this),this.exportSettingsAsClassNames()),this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(var n=0,o=this.wtTable.THEAD.childNodes[0].childNodes.length;o>n;n++)t.push(this.wtTable.THEAD.childNodes[0].childNodes[n].innerHTML);this.getSetting("columnHeaders").length||this.update("columnHeaders",[function(e,n){y(n,t[e])}])}this.drawn=!1,this.drawInterrupted=!1});$traceurRuntime.createClass(x,{draw:function(){var e=void 0!==arguments[0]?arguments[0]:!1;return this.drawInterrupted=!1,e||b(this.wtTable.TABLE)?this.wtTable.draw(e):this.drawInterrupted=!0,this},getCell:function(e){var t=void 0!==arguments[1]?arguments[1]:!1;if(!t)return this.wtTable.getCell(e);var n=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),r=this.wtSettings.getSetting("fixedRowsBottom"),i=this.wtSettings.getSetting("fixedColumnsLeft");if(e.row=n-r){if(this.wtOverlays.bottomLeftCornerOverlay.clone)return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col=n-r&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)},update:function(e,t){return this.wtSettings.update(e,t)},scrollVertical:function(e){return this.wtOverlays.topOverlay.scrollTo(e),this.getSetting("onScrollVertically"),this},scrollHorizontal:function(e){return this.wtOverlays.leftOverlay.scrollTo(e),this.getSetting("onScrollHorizontally"),this},scrollViewport:function(e){return this.wtScroll.scrollViewport(e),this},getViewport:function(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]},getOverlayName:function(){return this.cloneOverlay?this.cloneOverlay.type:"master"},exportSettingsAsClassNames:function(){var e=this,t={rowHeaders:["array"],columnHeaders:["array"]},n=[],o=[];R(t,function(t,r){t.indexOf("array")>-1&&e.getSetting(r).length&&o.push("ht"+S(r)),n.push("ht"+S(r))}),C(this.wtTable.wtRootElement.parentNode,n),w(this.wtTable.wtRootElement.parentNode,o)},getSetting:function(e,t,n,o,r){return this.wtSettings.getSetting(e,t,n,o,r)},hasSetting:function(e){return this.wtSettings.has(e)},destroy:function(){this.wtOverlays.destroy(),this.wtEvent.destroy()}},{}),window.Walkontable=x},{event:8,"helpers/dom/element":45,"helpers/object":50,"helpers/string":52,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,overlays:16,scroll:17,settings:19,table:20,viewport:22}],8:[function(e,t,n){"use strict";function o(e){var t=this,n=c(e);this.instance=e;var o=[null,null];this.dblClickTimeout=[null,null];var r,i,s=function(e){var n=t.parentCell(e.realTarget);l(e.realTarget,"corner")?t.instance.getSetting("onCellCornerMouseDown",e,e.realTarget):n.TD&&t.instance.hasSetting("onCellMouseDown")&&t.instance.getSetting("onCellMouseDown",e,n.coords,n.TD,t.instance),2!==e.button&&n.TD&&(o[0]=n.TD,clearTimeout(t.dblClickTimeout[0]),t.dblClickTimeout[0]=setTimeout(function(){o[0]=null},1e3))},d=function(e){t.instance.touchMoving=!0},h=function(e){n.addEventListener(this,"touchmove",d),t.checkIfTouchMove=setTimeout(function(){return t.instance.touchMoving===!0?(t.instance.touchMoving=void 0,void n.removeEventListener("touchmove",d,!1)):void s(e)},30)},f=function(e){var n,o;t.instance.hasSetting("onCellMouseOver")&&(n=t.instance.wtTable.TABLE,o=a(e.realTarget,["TD","TH"],n),o&&o!==i&&u(o,n)&&(i=o,t.instance.getSetting("onCellMouseOver",e,t.instance.wtTable.getCoords(o),o,t.instance)))},p=function(e){if(2!==e.button){var n=t.parentCell(e.realTarget);n.TD===o[0]&&n.TD===o[1]?(l(e.realTarget,"corner")?t.instance.getSetting("onCellCornerDblClick",e,n.coords,n.TD,t.instance):t.instance.getSetting("onCellDblClick",e,n.coords,n.TD,t.instance),o[0]=null,o[1]=null):n.TD===o[0]&&(o[1]=n.TD,clearTimeout(t.dblClickTimeout[1]),t.dblClickTimeout[1]=setTimeout(function(){o[1]=null},500))}},g=function(e){clearTimeout(r),e.preventDefault(),p(e)};if(n.addEventListener(this.instance.wtTable.holder,"mousedown",s),n.addEventListener(this.instance.wtTable.TABLE,"mouseover",f),n.addEventListener(this.instance.wtTable.holder,"mouseup",p),this.instance.wtTable.holder.parentNode.parentNode&&Handsontable.mobileBrowser&&!t.instance.wtTable.isWorkingOnClone()){var m="."+this.instance.wtTable.holder.parentNode.className.split(" ").join(".");n.addEventListener(this.instance.wtTable.holder,"touchstart",function(e){t.instance.touchApplied=!0,u(e.target,m)&&h.call(e.target,e)}),n.addEventListener(this.instance.wtTable.holder,"touchend",function(e){t.instance.touchApplied=!1,u(e.target,m)&&g.call(e.target,e)}),t.instance.momentumScrolling||(t.instance.momentumScrolling={}),n.addEventListener(this.instance.wtTable.holder,"scroll",function(e){clearTimeout(t.instance.momentumScrolling._timeout),t.instance.momentumScrolling.ongoing||t.instance.getSetting("onBeforeTouchScroll"),t.instance.momentumScrolling.ongoing=!0,t.instance.momentumScrolling._timeout=setTimeout(function(){t.instance.touchApplied||(t.instance.momentumScrolling.ongoing=!1,t.instance.getSetting("onAfterMomentumScroll"))},200)})}n.addEventListener(window,"resize",function(){"none"!==t.instance.getSetting("stretchH")&&t.instance.draw()}),this.destroy=function(){clearTimeout(this.dblClickTimeout[0]),clearTimeout(this.dblClickTimeout[1]),n.destroy()}}Object.defineProperties(n,{WalkontableEvent:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),a=s.closest,l=s.hasClass,u=s.isChildOf,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager;o.prototype.parentCell=function(e){var t={},n=this.instance.wtTable.TABLE,o=a(e,["TD","TH"],n);return o&&u(o,n)?(t.coords=this.instance.wtTable.getCoords(o),t.TD=o):l(e,"wtBorder")&&l(e,"current")?(t.coords=this.instance.selections.current.cellRange.highlight,t.TD=this.instance.wtTable.getCell(t.coords)):l(e,"wtBorder")&&l(e,"area")&&this.instance.selections.area.cellRange&&(t.coords=this.instance.selections.area.cellRange.to,t.TD=this.instance.wtTable.getCell(t.coords)),t},window.WalkontableEvent=o},{eventManager:41,"helpers/dom/element":45}],9:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableColumnFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleRowHeadedColumnToSourceColumn:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceColumnToVisibleRowHeadedColumn:function(e){ +return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableColumnFilter=o},{}],10:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableRowFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleColHeadedRowToSourceRow:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceRowToVisibleColHeadedRow:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableRowFilter=o},{}],11:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlay:{get:function(){return h}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.getScrollableElement,l=s.getTrimmingContainer,u=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,d={},h=function(e){u(this,"wot",e,{writable:!1}),this.instance=this.wot,this.type="",this.TABLE=this.wot.wtTable.TABLE,this.hider=this.wot.wtTable.hider,this.spreader=this.wot.wtTable.spreader,this.holder=this.wot.wtTable.holder,this.wtRootElement=this.wot.wtTable.wtRootElement,this.trimmingContainer=l(this.hider.parentNode.parentNode),this.mainTableScrollableElement=a(this.wot.wtTable.TABLE),this.needFullRender=this.shouldBeRendered(),this.areElementSizesAdjusted=!1},f=h;$traceurRuntime.createClass(h,{shouldBeRendered:function(){return!0},makeClone:function(e){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error('Clone type "'+e+'" is not supported.');var t=document.createElement("DIV"),n=document.createElement("TABLE");return t.className="ht_clone_"+e+" handsontable",t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.overflow="hidden",n.className=this.wot.wtTable.TABLE.className,t.appendChild(n),this.type=e,this.wot.wtTable.wtRootElement.parentNode.appendChild(t),new Walkontable({cloneSource:this.wot,cloneOverlay:this,table:n})},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.shouldBeRendered();this.clone&&(this.needFullRender||t)&&this.clone.draw(e),this.needFullRender=t},destroy:function(){c(this.clone).destroy()}},{get CLONE_TOP(){return"top"},get CLONE_BOTTOM(){return"bottom"},get CLONE_LEFT(){return"left"},get CLONE_TOP_LEFT_CORNER(){return"top_left_corner"},get CLONE_BOTTOM_LEFT_CORNER(){return"bottom_left_corner"},get CLONE_DEBUG(){return"debug"},get CLONE_TYPES(){return[f.CLONE_TOP,f.CLONE_BOTTOM,f.CLONE_LEFT,f.CLONE_TOP_LEFT_CORNER,f.CLONE_BOTTOM_LEFT_CORNER,f.CLONE_DEBUG]},registerOverlay:function(e,t){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error("Unsupported overlay ("+e+").");d[e]=t},createOverlay:function(e,t){return new d[e](t)},isOverlayTypeOf:function(e,t){return e&&d[t]?e instanceof d[t]:!1}}),window.WalkontableOverlay=h},{eventManager:41,"helpers/dom/element":45,"helpers/object":50}],12:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableDebugOverlay:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,s=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,a=function(e){$traceurRuntime.superConstructor(l).call(this,e),this.clone=this.makeClone(s.CLONE_DEBUG),this.clone.wtTable.holder.style.opacity=.4,this.clone.wtTable.holder.style.textShadow="0 0 2px #ff0000",i(this.clone.wtTable.holder.parentNode,"wtDebugVisible")},l=a;$traceurRuntime.createClass(a,{},{},s),window.WalkontableDebugOverlay=a,s.registerOverlay(s.CLONE_DEBUG,a)},{_base:11,"helpers/dom/element":45}],13:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableLeftOverlay:{get:function(){return g}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollLeft,u=i.getWindowScrollTop,c=i.hasClass,d=i.outerWidth,h=i.removeClass,f=i.setOverlayPosition,p=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(p.CLONE_LEFT)},m=g;$traceurRuntime.createClass(g,{shouldBeRendered:function(){return this.wot.getSetting("fixedColumnsLeft")||this.wot.getSetting("rowHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.left),s=Math.ceil(r.right);o=this.wot.wtTable.hider.style.top,o=""===o?0:o,n=0>i&&s-e.offsetWidth>0?-i:0,t=n,n+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(e,u()):this.mainTableScrollableElement.scrollLeft=e},onScroll:function(){this.wot.getSetting("onScrollHorizontally")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.defaultColumnWidth;t>e;)n+=this.wot.wtTable.getStretchedColumnWidth(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientHeight===t.offsetHeight?0:a(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.height=this.wot.wtViewport.getWorkspaceHeight()-n+"px"),this.clone.wtTable.holder.style.height=r.height,e=d(this.clone.wtTable.TABLE),r.width=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.height=this.hider.style.height,this.clone.wtTable.holder.style.height=this.clone.wtTable.holder.parentNode.style.height,0===e&&(e=30),this.clone.wtTable.holder.style.width=parseInt(this.clone.wtTable.holder.parentNode.style.width,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalColumns");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style.left="0"}this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.top=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;t&&r.offsetWidth!==r.clientWidth&&(i=a()),t?(n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportWidth()):n+=this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"),e),n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.trimmingContainer===window?this.wot.wtTable.holderOffset.left:0},getScrollPosition:function(){return l(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode,n=this.wot.getSetting("rowHeaders"),o=this.wot.getSetting("fixedColumnsLeft");if(o&&!n.length)s(t,"innerBorderLeft");else if(!o&&n.length){var r=c(t,"innerBorderLeft");e?s(t,"innerBorderLeft"):h(t,"innerBorderLeft"),(!r&&e||r&&!e)&&this.wot.wtOverlays.adjustElementsSize()}}},{},p),window.WalkontableLeftOverlay=g,p.registerOverlay(p.CLONE_LEFT,g)},{_base:11,"helpers/dom/element":45}],14:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTopOverlay:{get:function(){return g}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,a=i.getScrollbarWidth,l=i.getScrollTop,u=i.getWindowScrollLeft,c=i.hasClass,d=i.outerHeight,h=i.removeClass,f=i.setOverlayPosition,p=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(p.CLONE_TOP)},m=g;$traceurRuntime.createClass(g,{shouldBeRendered:function(){return this.wot.getSetting("fixedRowsTop")||this.wot.getSetting("columnHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.wot.wtOverlays.leftOverlay.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.top),s=Math.ceil(r.bottom);n=this.wot.wtTable.hider.style.left,n=""===n?0:n,o=0>i&&s-e.offsetHeight>0?-i:0,t=o,o+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(u(),e):this.mainTableScrollableElement.scrollTop=e},onScroll:function(){this.wot.getSetting("onScrollVertically")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.settings.defaultRowHeight;t>e;){var r=this.wot.wtTable.getRowHeight(e);n+=void 0===r?o:r,e++}return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientWidth===t.offsetWidth?0:a(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.width=this.wot.wtViewport.getWorkspaceWidth()-n+"px"),this.clone.wtTable.holder.style.width=r.width,e=d(this.clone.wtTable.TABLE),r.height=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=a();this.clone.wtTable.hider.style.width=this.hider.style.width,this.clone.wtTable.holder.style.width=this.clone.wtTable.holder.parentNode.style.width,0===e&&(e=30),this.clone.wtTable.holder.style.height=parseInt(this.clone.wtTable.holder.parentNode.style.height,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalRows");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.left=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;if(t&&r.offsetHeight!==r.clientHeight&&(i=a()),t){var s=this.wot.getSetting("fixedRowsBottom"),l=(this.wot.getSetting("fixedRowsTop"),this.wot.getSetting("totalRows"));n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportHeight()-this.sumCellSizes(l-s,l),n+=1}else n+=this.sumCellSizes(this.wot.getSetting("fixedRowsTop"),e);n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.mainTableScrollableElement===window?this.wot.wtTable.holderOffset.top:0},getScrollPosition:function(){return l(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){if(0===this.wot.getSetting("fixedRowsTop")&&this.wot.getSetting("columnHeaders").length>0){var t=this.wot.wtTable.holder.parentNode,n=c(t,"innerBorderTop");e?s(t,"innerBorderTop"):h(t,"innerBorderTop"),(!n&&e||n&&!e)&&this.wot.wtOverlays.adjustElementsSize()}if(0===this.wot.getSetting("rowHeaders").length){var o=this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");if(o)for(var r=0;rc&&h-e.offsetWidth>0?-c+"px":"0",r=0>u&&d-e.offsetHeight>0?-u+"px":"0",l(e,o,r)}e.style.height=(0===t?t:t+4)+"px",e.style.width=(0===n?n:n+4)+"px"}}},{},u),window.WalkontableTopLeftCornerOverlay=c,u.registerOverlay(u.CLONE_TOP_LEFT_CORNER,c)},{_base:11,"helpers/dom/element":45}],16:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlays:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.getScrollableElement,l=s.getScrollbarWidth,u=s.getScrollLeft,c=s.getScrollTop,d=(r=e("helpers/unicode"),r&&r.__esModule&&r||{"default":r}).isKey,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=function(e){this.wot=e,this.instance=this.wot,this.eventManager=new h(this.wot),this.wot.update("scrollbarWidth",l()),this.wot.update("scrollbarHeight",l()),this.mainTableScrollableElement=a(this.wot.wtTable.TABLE),this.topOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP,this.wot),"undefined"==typeof WalkontableBottomOverlay?this.bottomOverlay={needFullRender:!1}:this.bottomOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM,this.wot),this.leftOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT,this.wot),this.topOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.topLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,this.wot)),this.bottomOverlay.needFullRender&&this.leftOverlay.needFullRender&&"undefined"!=typeof WalkontableBottomLeftCornerOverlay?this.bottomLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER,this.wot):this.bottomLeftCornerOverlay={needFullRender:!1},this.wot.getSetting("debug")&&(this.debug=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG,this.wot)),this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.overlayScrollPositions={master:{top:0,left:0},top:{top:null,left:0},bottom:{top:null,left:0},left:{top:0,left:null}},this.registerListeners()};$traceurRuntime.createClass(f,{refreshAll:function(){if(this.wot.drawn){if(!this.wot.wtTable.holder.parentNode)return void this.destroy();this.wot.draw(!0),this.topOverlay.onScroll(),this.leftOverlay.onScroll()}},registerListeners:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"keydown",function(t){return e.onKeyDown(t)}),this.eventManager.addEventListener(document.documentElement,"keyup",function(){return e.onKeyUp()}),this.eventManager.addEventListener(document,"visibilitychange",function(){return e.onKeyUp()}),this.eventManager.addEventListener(this.mainTableScrollableElement,"scroll",function(t){return e.onTableScroll(t)}),this.topOverlay.needFullRender&&(this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.bottomOverlay.needFullRender&&(this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.leftOverlay.needFullRender&&(this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.topOverlay.trimmingContainer!==window&&this.leftOverlay.trimmingContainer!==window&&this.eventManager.addEventListener(window,"wheel",function(t){var n,o=t.wheelDeltaY||t.deltaY,r=t.wheelDeltaX||t.deltaX;e.topOverlay.clone.wtTable.holder.contains(t.realTarget)?n="top":e.bottomOverlay.clone&&e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget)?n="bottom":e.leftOverlay.clone.wtTable.holder.contains(t.realTarget)&&(n="left"),"top"==n&&0!==o?t.preventDefault():"left"==n&&0!==r?t.preventDefault():"bottom"==n&&0!==o&&t.preventDefault()})},onTableScroll:function(e){Handsontable.mobileBrowser||(!this.keyPressed||this.mainTableScrollableElement===window||e.target.contains(this.mainTableScrollableElement))&&("scroll"===e.type?this.syncScrollPositions(e):this.translateMouseWheelToScroll(e))},onKeyDown:function(e){this.keyPressed=d(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")},onKeyUp:function(){this.keyPressed=!1},translateMouseWheelToScroll:function(e){for(var t,n=this.topOverlay.clone.wtTable.holder,o=this.bottomOverlay.clone?this.bottomOverlay.clone.wtTable.holder:null,r=this.leftOverlay.clone.wtTable.holder,i={type:"wheel"},s=e.target,a=e.wheelDeltaY||-1*e.deltaY,l=e.wheelDeltaX||-1*e.deltaX;s!=document&&null!=s;){if(s.className.indexOf("wtHolder")>-1){t=s;break}s=s.parentNode}return i.target=t,t==n?this.syncScrollPositions(i,-.2*a):t==o?this.syncScrollPositions(i,-.2*a):t==r&&this.syncScrollPositions(i,-.2*l),!1},syncScrollPositions:function(e){var t=void 0!==arguments[1]?arguments[1]:null;if(!this.destroyed){if(0===arguments.length)return void this.syncScrollWithMaster();var n,o,r,i=this.mainTableScrollableElement,s=e.target,a=0,l=!1;this.topOverlay.needFullRender&&(n=this.topOverlay.clone.wtTable.holder),this.bottomOverlay.needFullRender&&(r=this.bottomOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&(o=this.leftOverlay.clone.wtTable.holder),s===document&&(s=window),s===i?(a=u(s),this.overlayScrollPositions.master.left!==a&&(this.overlayScrollPositions.master.left=a,l=!0,n&&(n.scrollLeft=a),r&&(r.scrollLeft=a)),a=c(s),this.overlayScrollPositions.master.top!==a&&(this.overlayScrollPositions.master.top=a,l=!0,o&&(o.scrollTop=a))):s===r?(a=u(s),this.overlayScrollPositions.bottom.left!==a&&(this.overlayScrollPositions.bottom.left=a,l=!0,i.scrollLeft=a),null!==t&&(l=!0,i.scrollTop+=t)):s===n?(a=u(s),this.overlayScrollPositions.top.left!==a&&(this.overlayScrollPositions.top.left=a,l=!0,i.scrollLeft=a),null!==t&&(l=!0,i.scrollTop+=t)):s===o&&(a=c(s),this.overlayScrollPositions.left.top!==a&&(this.overlayScrollPositions.left.top=a,l=!0,i.scrollTop=a),null!==t&&(l=!0,i.scrollLeft+=t)),!this.keyPressed&&l&&"scroll"===e.type&&this.refreshAll()}},syncScrollWithMaster:function(){var e=this.topOverlay.mainTableScrollableElement;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=e.scrollLeft),this.leftOverlay.needFullRender&&(this.leftOverlay.clone.wtTable.holder.scrollTop=e.scrollTop)},destroy:function(){this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.leftOverlay.destroy(),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.destroy(),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.destroy(),this.debug&&this.debug.destroy(),this.destroyed=!0},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted){var t=this.wot.wtTable.wtRootElement.parentNode||this.wot.wtTable.wtRootElement,n=t.clientWidth,o=t.clientHeight;(n!==this.spreaderLastSize.width||o!==this.spreaderLastSize.height)&&(this.spreaderLastSize.width=n,this.spreaderLastSize.height=o,this.adjustElementsSize())}this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.leftOverlay.refresh(e),this.topOverlay.refresh(e),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.refresh(e),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.refresh(e),this.debug&&this.debug.refresh(e)},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.wot.getSetting("totalColumns"),n=this.wot.getSetting("totalRows"),o=this.wot.wtViewport.getRowHeaderWidth(),r=this.wot.wtViewport.getColumnHeaderHeight(),i=this.wot.wtTable.hider.style;i.width=o+this.leftOverlay.sumCellSizes(0,t)+"px",i.height=r+this.topOverlay.sumCellSizes(0,n)+1+"px",this.topOverlay.adjustElementsSize(e),this.leftOverlay.adjustElementsSize(e),this.bottomOverlay.clone&&this.bottomOverlay.adjustElementsSize(e)},applyToDOM:function(){this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted||this.adjustElementsSize(),this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.leftOverlay.applyToDOM()}},{}),window.WalkontableOverlays=f},{eventManager:41,"helpers/dom/element":45,"helpers/unicode":53}],17:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableScroll:{get:function(){return o}},__esModule:{value:!0}});var o=function(e){this.wot=e,this.instance=e};$traceurRuntime.createClass(o,{scrollViewport:function(e){if(this.wot.drawn){var t=this.wot.getSetting("totalRows"),n=this.wot.getSetting("totalColumns"),o=this.instance.getSetting("fixedRowsTop"),r=this.instance.getSetting("fixedRowsBottom"),i=this.instance.getSetting("fixedColumnsLeft");if(e.row<0||e.row>t-1)throw new Error("row "+e.row+" does not exist");if(e.col<0||e.col>n-1)throw new Error("column "+e.col+" does not exist");e.row>this.instance.wtTable.getLastVisibleRow()&&e.row=o&&e.rowthis.instance.wtTable.getLastVisibleColumn()?this.wot.wtOverlays.leftOverlay.scrollTo(e.col,!0):e.col>=i&&e.colu;u++)o=e.wtTable.columnFilter.renderedToSource(u),o>=l[1]&&o<=l[3]&&(r=e.wtTable.getColumnHeader(o),r&&this.settings.highlightColumnClassName&&a(r,this.settings.highlightColumnClassName));for(var c=0;i>c;c++){n=e.wtTable.rowFilter.renderedToSource(c),n>=l[0]&&n<=l[2]&&(r=e.wtTable.getRowHeader(n),r&&this.settings.highlightRowClassName&&a(r,this.settings.highlightRowClassName));for(var d=0;s>d;d++)o=e.wtTable.columnFilter.renderedToSource(d),n>=l[0]&&n<=l[2]&&o>=l[1]&&o<=l[3]?this.settings.className&&this.addClassAtCoords(e,n,o,this.settings.className):n>=l[0]&&n<=l[2]?this.settings.highlightRowClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightRowClassName):o>=l[1]&&o<=l[3]&&this.settings.highlightColumnClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightColumnClassName)}if(e.getSetting("onBeforeDrawBorders",l,this.settings.className),this.settings.border){var h=this.getBorder(e);h&&h.appear(l)}}}},{}),window.WalkontableSelection=d},{border:2,"cell/coords":5,"cell/range":6,"helpers/dom/element":45}],19:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableSettings:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).fastInnerText,i=function(e,t){var n=this;this.wot=e,this.instance=e,this.defaults={table:void 0,debug:!1,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,data:void 0,fixedColumnsLeft:0,fixedRowsTop:0,fixedRowsBottom:0,minSpareRows:0,rowHeaders:function(){return[]},columnHeaders:function(){return[]},totalRows:void 0,totalColumns:void 0,cellRenderer:function(e,t,o){var i=n.getSetting("data",e,t);r(o,void 0===i||null===i?"":i)},columnWidth:function(e){},rowHeight:function(e){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellMouseOver:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeDrawBorders:null,onScrollVertically:null,onScrollHorizontally:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,scrollbarWidth:10,scrollbarHeight:10,renderAllRows:!1,groups:!1},this.settings={};for(var o in this.defaults)if(this.defaults.hasOwnProperty(o))if(void 0!==t[o])this.settings[o]=t[o];else{if(void 0===this.defaults[o])throw new Error('A required setting "'+o+'" was not provided');this.settings[o]=this.defaults[o]}};$traceurRuntime.createClass(i,{update:function(e,t){if(void 0===t)for(var n in e)e.hasOwnProperty(n)&&(this.settings[n]=e[n]);else this.settings[e]=t;return this.wot},getSetting:function(e,t,n,o,r){return"function"==typeof this.settings[e]?this.settings[e](t,n,o,r):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]},has:function(e){return!!this.settings[e]}},{}),window.WalkontableSettings=i},{"helpers/dom/element":45}],20:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTable:{get:function(){return C}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.getStyle,d=u.getTrimmingContainer,h=u.hasClass,f=u.index,p=u.offset,g=u.removeClass,m=u.removeTextNodes,v=(u.overlayContainsElement,(r=e("cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords),w=((i=e("cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange,(s=e("filter/column"),s&&s.__esModule&&s||{"default":s}).WalkontableColumnFilter),y=(a=e("filter/row"),a&&a.__esModule&&a||{"default":a}).WalkontableRowFilter,b=(l=e("tableRenderer"),l&&l.__esModule&&l||{"default":l}).WalkontableTableRenderer,C=function(e,t){this.wot=e,this.instance=this.wot,this.TABLE=t,this.TBODY=null,this.THEAD=null,this.COLGROUP=null,this.tableOffset=0,this.holderOffset=0,m(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.colgroupChildrenLength=this.COLGROUP.childNodes.length,this.theadChildrenLength=this.THEAD.firstChild?this.THEAD.firstChild.childNodes.length:0,this.tbodyChildrenLength=this.TBODY.childNodes.length,this.rowFilter=null,this.columnFilter=null};$traceurRuntime.createClass(C,{fixTableDomTree:function(){this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=document.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=document.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=document.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD)),this.wot.getSetting("columnHeaders").length&&!this.THEAD.childNodes.length&&this.THEAD.appendChild(document.createElement("TR"))},createSpreader:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtSpreader",n&&n.insertBefore(t,e),t.appendChild(e)),t.style.position="relative",t},createHider:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtHider",n&&n.insertBefore(t,e),t.appendChild(e)),t},createHolder:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.style.position="relative",t.className="wtHolder",n&&n.insertBefore(t,e),this.isWorkingOnClone()||(t.parentNode.className+="ht_master handsontable"),t.appendChild(e)),t},alignOverlaysWithTrimmingContainer:function(){var e=d(this.wtRootElement);this.isWorkingOnClone()||(this.holder.parentNode.style.position="relative",e===window?(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible"):(this.holder.style.width=c(e,"width"),this.holder.style.height=c(e,"height"),this.holder.style.overflow=""))},isWorkingOnClone:function(){return!!this.wot.cloneSource},draw:function(e){var t=this.instance.getSetting("totalRows");if(this.isWorkingOnClone()||(this.holderOffset=p(this.holder),e=this.wot.wtViewport.createRenderCalculators(e)),e)this.isWorkingOnClone()||this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays&&this.wot.wtOverlays.refresh(!0);else{this.isWorkingOnClone()?this.tableOffset=this.wot.cloneSource.wtTable.tableOffset:this.tableOffset=p(this.TABLE);var n;n=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?0:WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?t-this.wot.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.startRow;var o;o=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?0:this.wot.wtViewport.columnsRenderCalculator.startColumn, +this.rowFilter=new y(n,t,this.wot.getSetting("columnHeaders").length),this.columnFilter=new w(o,this.wot.getSetting("totalColumns"),this.wot.getSetting("rowHeaders").length),this._doDraw(),this.alignOverlaysWithTrimmingContainer()}return this.refreshSelections(e),this.isWorkingOnClone()||(this.wot.wtOverlays.topOverlay.resetFixedPosition(),this.wot.wtOverlays.bottomOverlay.clone&&this.wot.wtOverlays.bottomOverlay.resetFixedPosition(),this.wot.wtOverlays.leftOverlay.resetFixedPosition(),this.wot.wtOverlays.topLeftCornerOverlay&&this.wot.wtOverlays.topLeftCornerOverlay.resetFixedPosition(),this.instance.wtOverlays.bottomLeftCornerOverlay&&this.instance.wtOverlays.bottomLeftCornerOverlay.clone&&this.wot.wtOverlays.bottomLeftCornerOverlay.resetFixedPosition()),this.wot.drawn=!0,this},_doDraw:function(){var e=new b(this);e.render()},removeClassFromCells:function(e){for(var t=this.TABLE.querySelectorAll("."+e),n=0,o=t.length;o>n;n++)g(t[n],e)},refreshSelections:function(e){if(this.wot.selections){var t=this.wot.selections.length;if(e)for(var n=0;t>n;n++)this.wot.selections[n].settings.className&&this.removeClassFromCells(this.wot.selections[n].settings.className),this.wot.selections[n].settings.highlightRowClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightRowClassName),this.wot.selections[n].settings.highlightColumnClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightColumnClassName);for(var o=0;t>o;o++)this.wot.selections[o].draw(this.wot,e)}},getCell:function(e){if(this.isRowBeforeRenderedRows(e.row))return-1;if(this.isRowAfterRenderedRows(e.row))return-2;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];return t?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)]:void 0},getColumnHeader:function(e){var t=void 0!==arguments[1]?arguments[1]:0,n=this.THEAD.childNodes[t];return n?n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]:void 0},getRowHeader:function(e){if(0===this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))return null;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];return t?t.childNodes[0]:void 0},getCoords:function(e){var t=e.parentNode,n=f(t);n=t.parentNode===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);var o=this.columnFilter.visibleRowHeadedColumnToSourceColumn(e.cellIndex);return new v(n,o)},getTrForRow:function(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]},getFirstRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.startRow},getFirstVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.startRow},getFirstRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.startColumn},getFirstVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.startColumn},getLastRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.endRow},getLastVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.endRow},getLastRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.endColumn},getLastVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.endColumn},isRowBeforeRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)<0&&e>=0},isRowAfterViewport:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastVisibleRow()},isRowAfterRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastRenderedRow()},isColumnBeforeViewport:function(e){return this.columnFilter.sourceToRendered(e)<0&&e>=0},isColumnAfterViewport:function(e){return this.columnFilter.sourceToRendered(e)>this.getLastVisibleColumn()},isLastRowFullyVisible:function(){return this.getLastVisibleRow()===this.getLastRenderedRow()},isLastColumnFullyVisible:function(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()},getRenderedColumnsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalColumns"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedColumnsLeft"):this.wot.wtViewport.columnsRenderCalculator.count},getRenderedRowsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalRows"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.instance.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.count},getVisibleRowsCount:function(){return this.wot.wtViewport.rowsVisibleCalculator.count},allRowsInViewport:function(){return this.wot.getSetting("totalRows")==this.getVisibleRowsCount()},getRowHeight:function(e){var t=this.wot.wtSettings.settings.rowHeight(e),n=this.wot.wtViewport.oversizedRows[e];return void 0!==n&&(t=void 0===t?n:Math.max(t,n)),t},getColumnHeaderHeight:function(e){var t=this.wot.wtSettings.settings.defaultRowHeight,n=this.wot.wtViewport.oversizedColumnHeaders[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getVisibleColumnsCount:function(){return this.wot.wtViewport.columnsVisibleCalculator.count},allColumnsInViewport:function(){return this.wot.getSetting("totalColumns")==this.getVisibleColumnsCount()},getColumnWidth:function(e){var t=this.wot.wtSettings.settings.columnWidth;return"function"==typeof t?t=t(e):"object"==typeof t&&(t=t[e]),t||this.wot.wtSettings.settings.defaultColumnWidth},getStretchedColumnWidth:function(e){var t=this.getColumnWidth(e),n=-1===[void 0,null].indexOf(t)?t:this.instance.wtSettings.settings.defaultColumnWidth,o=this.wot.wtViewport.columnsRenderCalculator;if(o){var r=o.getStretchedColumnWidth(e,n);r&&(n=r)}return n}},{}),window.WalkontableTable=C},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":45,tableRenderer:21}],21:[function(e,t,n){"use strict";function o(e,t){var n=document.createElement("TH");return t.insertBefore(n,e),t.removeChild(e),n}function r(e,t){var n=document.createElement("TD");return t.insertBefore(n,e),t.removeChild(e),n}Object.defineProperties(n,{WalkontableTableRenderer:{get:function(){return h}},__esModule:{value:!0}});var i,s=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),a=s.addClass,l=s.empty,u=s.getScrollbarWidth,c=s.hasClass,d=s.innerHeight,h=function(e){this.wtTable=e,this.wot=e.instance,this.instance=e.instance,this.rowFilter=e.rowFilter,this.columnFilter=e.columnFilter,this.TABLE=e.TABLE,this.THEAD=e.THEAD,this.TBODY=e.TBODY,this.COLGROUP=e.COLGROUP,this.rowHeaders=[],this.rowHeaderCount=0,this.columnHeaders=[],this.columnHeaderCount=0,this.fixedRowsTop=0,this.fixedRowsBottom=0};$traceurRuntime.createClass(h,{render:function(){this.wtTable.isWorkingOnClone()||this.wot.getSetting("beforeDraw",!0),this.rowHeaders=this.wot.getSetting("rowHeaders"),this.rowHeaderCount=this.rowHeaders.length,this.fixedRowsTop=this.wot.getSetting("fixedRowsTop"),this.fixedRowsBottom=this.wot.getSetting("fixedRowsBottom"),this.columnHeaders=this.wot.getSetting("columnHeaders"),this.columnHeaderCount=this.columnHeaders.length;var e,t=this.wtTable.getRenderedColumnsCount(),n=this.wtTable.getRenderedRowsCount(),o=this.wot.getSetting("totalColumns"),r=this.wot.getSetting("totalRows"),i=!1;if((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(this.columnHeaders=[],this.columnHeaderCount=0),o>0&&(this.adjustAvailableNodes(),i=!0,this.renderColumnHeaders(),this.renderRows(r,n,t),this.wtTable.isWorkingOnClone()||(e=this.wot.wtViewport.getWorkspaceWidth(),this.wot.wtViewport.containerWidth=null),this.adjustColumnHeaderHeights(),this.adjustColumnWidths(t),this.markOversizedColumns()),i||this.adjustAvailableNodes(),this.removeRedundantRows(n),this.wtTable.isWorkingOnClone()){if(WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)){var s=this.wot.cloneOverlay.instance;this.wot.cloneOverlay.markOversizedFixedBottomRows(),s.wtOverlays.adjustElementsSize()}}else{if(this.markOversizedRows(),this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays.refresh(!1),this.wot.wtOverlays.applyToDOM(),e!==this.wot.wtViewport.getWorkspaceWidth()){this.wot.wtViewport.containerWidth=null;for(var a=this.wtTable.getFirstRenderedColumn(),l=this.wtTable.getLastRenderedColumn(),u=a;l>u;u++){var c=this.wtTable.getStretchedColumnWidth(u),d=this.columnFilter.sourceToRendered(u);this.COLGROUP.childNodes[d+this.rowHeaderCount].style.width=c+"px"}}this.wot.getSetting("onDraw",!0)}},removeRedundantRows:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--},renderRows:function(e,t,n){for(var o,r,i=0,s=this.rowFilter.renderedToSource(i),a=this.wtTable.isWorkingOnClone();e>s&&s>=0&&(i>1e3&&console.error("Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars."),void 0===t||i!==t);){if(r=this.getOrCreateTrForRow(i,r),this.renderRowHeaders(s,r),this.adjustColumns(r,n+this.rowHeaderCount),o=this.renderCells(s,r,n),(!a||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM))&&this.resetOversizedRow(s),r.firstChild){var l=this.wot.wtTable.getRowHeight(s);l?(l--,r.firstChild.style.height=l+"px"):r.firstChild.style.height=""}i++,s=this.rowFilter.renderedToSource(i)}},resetOversizedRow:function(e){this.wot.getSetting("externalRowCalculator")||this.wot.wtViewport.oversizedRows&&this.wot.wtViewport.oversizedRows[e]&&(this.wot.wtViewport.oversizedRows[e]=void 0)},markOversizedRows:function(){if(!this.wot.getSetting("externalRowCalculator")){var e,t,n,o,r,i=this.instance.wtTable.TBODY.childNodes.length,s=i*this.instance.wtSettings.settings.defaultRowHeight,a=d(this.instance.wtTable.TBODY)-1;this.instance.getSetting("totalRows");if(s!==a||this.instance.getSetting("fixedRowsBottom"))for(;i;)i--,n=this.instance.wtTable.rowFilter.renderedToSource(i),e=this.instance.wtTable.getRowHeight(n),o=this.instance.wtTable.getTrForRow(n),r=o.querySelector("th"),t=r?d(r):d(o)-1,(!e&&this.instance.wtSettings.settings.defaultRowHeighte)&&(this.instance.wtViewport.oversizedRows[n]=++t)}},markOversizedColumns:function(){var e=this.wot.getOverlayName();if(this.columnHeaderCount&&!this.wot.wtViewport.isMarkedOversizedColumn[e]&&!this.wtTable.isWorkingOnClone()){for(var t=this.wtTable.getRenderedColumnsCount(),n=0;no;o++)this.markIfOversizedColumnHeader(o);this.wot.wtViewport.isMarkedOversizedColumn[e]=!0}},adjustColumnHeaderHeights:function(){for(var e=this.wot.getSetting("columnHeaders"),t=this.wot.wtTable.THEAD.childNodes,n=this.wot.wtViewport.oversizedColumnHeaders,o=0,r=e.length;r>o;o++)if(n[o]){if(0===t[o].childNodes.length)return;t[o].childNodes[0].style.height=n[o]+"px"}},markIfOversizedColumnHeader:function(e){for(var t,n,o,r=this.wot.wtTable.columnFilter.renderedToSource(e),i=this.columnHeaderCount,s=this.wot.wtSettings.settings.defaultRowHeight;i;)i--,t=this.wot.wtTable.getColumnHeaderHeight(i),n=this.wot.wtTable.getColumnHeader(r,i),n&&(o=d(n),(!t&&o>s||o>t)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=o))},renderCells:function(e,t,n){for(var o,i,s=0;n>s;s++)i=this.columnFilter.renderedToSource(s),o=0===s?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)]:o.nextSibling,"TH"==o.nodeName&&(o=r(o,t)),c(o,"hide")||(o.className=""),o.removeAttribute("style"),this.wot.wtSettings.settings.cellRenderer(e,i,o);return o},adjustColumnWidths:function(e){var t=0,n=this.wot.cloneSource?this.wot.cloneSource:this.wot,o=n.wtTable.holder;o.offsetHeightr;r++){var i=this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(r));this.COLGROUP.childNodes[r+this.rowHeaderCount].style.width=i+"px"}},appendToTbody:function(e){this.TBODY.appendChild(e),this.wtTable.tbodyChildrenLength++},getOrCreateTrForRow:function(e,t){var n;return e>=this.wtTable.tbodyChildrenLength?(n=this.createRow(),this.appendToTbody(n)):n=0===e?this.TBODY.firstChild:t.nextSibling,n.className&&n.removeAttribute("class"),n},createRow:function(){for(var e=document.createElement("TR"),t=0;to;o++){var r=this.columnFilter.renderedToSource(o);this.renderColumnHeader(t,r,n.childNodes[o+this.rowHeaderCount])}},adjustColGroups:function(){for(var e=this.wtTable.getRenderedColumnsCount();this.wtTable.colgroupChildrenLengthe+this.rowHeaderCount;)this.COLGROUP.removeChild(this.COLGROUP.lastChild),this.wtTable.colgroupChildrenLength--;this.rowHeaderCount&&a(this.COLGROUP.childNodes[0],"rowHeader")},adjustThead:function(){var e=this.wtTable.getRenderedColumnsCount(),t=this.THEAD.firstChild;if(this.columnHeaders.length){for(var n=0,o=this.columnHeaders.length;o>n;n++){for(t=this.THEAD.childNodes[n],t||(t=document.createElement("TR"),this.THEAD.appendChild(t)),this.theadChildrenLength=t.childNodes.length;this.theadChildrenLengthe+this.rowHeaderCount;)t.removeChild(t.lastChild),this.theadChildrenLength--}var r=this.THEAD.childNodes.length;if(r>this.columnHeaders.length)for(var i=this.columnHeaders.length;r>i;i++)this.THEAD.removeChild(this.THEAD.lastChild)}else t&&l(t)},getTrForColumnHeaders:function(e){return this.THEAD.childNodes[e]},renderColumnHeader:function(e,t,n){return n.className="",n.removeAttribute("style"),this.columnHeaders[e](t,n,e)},adjustColumns:function(e,t){for(var n=e.childNodes.length;t>n;){var o=document.createElement("TD");e.appendChild(o),n++}for(;n>t;)e.removeChild(e.lastChild),n--},removeRedundantColumns:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--}},{}),window.WalkontableTableRenderer=h},{"helpers/dom/element":45}],22:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewport:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=a.getScrollbarWidth,u=a.getScrollTop,c=a.getStyle,d=a.offset,h=a.outerHeight,f=a.outerWidth,p=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,g=(i=e("calculator/viewportColumns"),i&&i.__esModule&&i||{"default":i}).WalkontableViewportColumnsCalculator,m=(s=e("calculator/viewportRows"),s&&s.__esModule&&s||{"default":s}).WalkontableViewportRowsCalculator,v=function(e){var t=this;this.wot=e,this.instance=this.wot,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.isMarkedOversizedColumn={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.eventManager=new p(this.wot),this.eventManager.addEventListener(window,"resize",function(){t.clientHeight=t.getWorkspaceHeight()})};$traceurRuntime.createClass(v,{getWorkspaceHeight:function(){var e,t=this.instance.wtOverlays.topOverlay.trimmingContainer,n=0;return t===window?n=document.documentElement.clientHeight:(e=h(t),n=e>0&&t.clientHeight>0?t.clientHeight:1/0),n},getWorkspaceWidth:function(){var e,t,n=this.instance.getSetting("totalColumns"),o=this.instance.wtOverlays.leftOverlay.trimmingContainer,r=this.instance.getSetting("stretchH"),i=document.documentElement.offsetWidth;return e=Handsontable.freezeOverlays?Math.min(i-this.getWorkspaceOffset().left,i):Math.min(this.getContainerFillWidth(),i-this.getWorkspaceOffset().left,i),o===window&&n>0&&this.sumColumnWidths(0,n-1)>e?document.documentElement.clientWidth:o!==window&&(t=c(this.instance.wtOverlays.leftOverlay.trimmingContainer,"overflow"),"scroll"==t||"hidden"==t||"auto"==t)?Math.max(e,o.clientWidth):"none"!==r&&r?e:Math.max(e,f(this.instance.wtTable.TABLE))},hasVerticalScroll:function(){return this.getWorkspaceActualHeight()>this.getWorkspaceHeight()},hasHorizontalScroll:function(){return this.getWorkspaceActualWidth()>this.getWorkspaceWidth()},sumColumnWidths:function(e,t){for(var n=0;t>e;)n+=this.wot.wtTable.getColumnWidth(e),e++;return n},getContainerFillWidth:function(){if(this.containerWidth)return this.containerWidth;var e,t,n=this.instance.wtTable.holder;return t=document.createElement("div"),t.style.width="100%",t.style.height="1px",n.appendChild(t),e=t.offsetWidth,this.containerWidth=e,n.removeChild(t),e},getWorkspaceOffset:function(){return d(this.wot.wtTable.TABLE)},getWorkspaceActualHeight:function(){return h(this.wot.wtTable.TABLE)},getWorkspaceActualWidth:function(){return f(this.wot.wtTable.TABLE)||f(this.wot.wtTable.TBODY)||f(this.wot.wtTable.THEAD)},getColumnHeaderHeight:function(){return isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=h(this.wot.wtTable.THEAD)),this.columnHeaderHeight},getViewportHeight:function(){var e,t=this.getWorkspaceHeight();return t===1/0?t:(e=this.getColumnHeaderHeight(),e>0&&(t-=e),t)},getRowHeaderWidth:function(){if(this.wot.cloneSource)return this.wot.cloneSource.wtViewport.getRowHeaderWidth();if(isNaN(this.rowHeaderWidth)){var e=this.instance.getSetting("rowHeaders");if(e.length){var t=this.instance.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(var n=0,o=e.length;o>n;n++)t?(this.rowHeaderWidth+=f(t),t=t.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0}return this.rowHeaderWidth},getViewportWidth:function(){var e,t=this.getWorkspaceWidth();return t===1/0?t:(e=this.getRowHeaderWidth(),e>0?t-e:t)},createRowsCalculator:function(){var e,t,n,o,r,i,s,a=void 0!==arguments[0]?arguments[0]:!1,c=this;return this.rowHeaderWidth=NaN,e=this.wot.wtSettings.settings.renderAllRows?1/0:this.getViewportHeight(),t=u(this.wot.wtOverlays.mainTableScrollableElement)-this.wot.wtOverlays.topOverlay.getTableParentOffset(),0>t&&(t=0),n=this.wot.getSetting("fixedRowsTop"),r=this.wot.getSetting("fixedRowsBottom"),s=this.wot.getSetting("totalRows"),n&&(i=this.wot.wtOverlays.topOverlay.sumCellSizes(0,n),t+=i,e-=i),r&&this.wot.wtOverlays.bottomOverlay.clone&&(i=this.wot.wtOverlays.bottomOverlay.sumCellSizes(s-r,s),e-=i),o=this.wot.wtTable.holder.clientHeight===this.wot.wtTable.holder.offsetHeight?0:l(),new m(e,t,this.wot.getSetting("totalRows"),function(e){return c.wot.wtTable.getRowHeight(e)},a?null:this.wot.wtSettings.settings.viewportRowCalculatorOverride,a,o)},createColumnsCalculator:function(){var e,t,n=void 0!==arguments[0]?arguments[0]:!1,o=this,r=this.getViewportWidth();if(this.columnHeaderHeight=NaN,e=this.wot.wtOverlays.leftOverlay.getScrollPosition()-this.wot.wtOverlays.leftOverlay.getTableParentOffset(),0>e&&(e=0),t=this.wot.getSetting("fixedColumnsLeft")){var i=this.wot.wtOverlays.leftOverlay.sumCellSizes(0,t);e+=i,r-=i}return this.wot.wtTable.holder.clientWidth!==this.wot.wtTable.holder.offsetWidth&&(r-=l()),new g(r,e,this.wot.getSetting("totalColumns"),function(e){return o.wot.wtTable.getColumnWidth(e)},n?null:this.wot.wtSettings.settings.viewportColumnCalculatorOverride,n,this.wot.getSetting("stretchH"))},createRenderCalculators:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e){var t=this.createRowsCalculator(!0),n=this.createColumnsCalculator(!0);this.areAllProposedVisibleRowsAlreadyRendered(t)&&this.areAllProposedVisibleColumnsAlreadyRendered(n)||(e=!1)}return e||(this.rowsRenderCalculator=this.createRowsCalculator(),this.columnsRenderCalculator=this.createColumnsCalculator()),this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,e},createVisibleCalculators:function(){this.rowsVisibleCalculator=this.createRowsCalculator(!0),this.columnsVisibleCalculator=this.createColumnsCalculator(!0)},areAllProposedVisibleRowsAlreadyRendered:function(e){return this.rowsVisibleCalculator?e.startRow0?!1:e.endRow>this.rowsRenderCalculator.endRow||e.endRow===this.rowsRenderCalculator.endRow&&e.endRow0?!1:e.endColumn>this.columnsRenderCalculator.endColumn||e.endColumn===this.columnsRenderCalculator.endColumn&&e.endColumn=0;s--)if(null===e[s])e.splice(s,1);else{var a=e[s][0],l=d.propToCol(e[s][1]),u=m.runHooks("modifyCol",l),c=m.getCellMeta(a,u);if("numeric"===c.type&&"string"==typeof e[s][3]&&e[s][3].length>0&&(/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3])||c.format)){var h=e[s][3].length;"undefined"==typeof c.language?R.language("en"):e[s][3].indexOf(".")===h-3&&-1===e[s][3].indexOf(",")?R.language("en"):R.language(c.language),R.validate(e[s][3])&&(e[s][3]=R().unformat(e[s][3]))}m.getCellValidator(c)&&(i.addValidatorToQueue(),m.validateCell(e[s][3],c,function(t,n){return function(o){if("boolean"!=typeof o)throw new Error("Validation error: result is not boolean");o===!1&&n.allowInvalid===!1&&(e.splice(t,1),n.valid=!0,--t),i.removeValidatorFormQueue()}}(s,c),t))}i.checkIfQueueIsEmpty()}function r(e,t){var n=e.length-1;if(!(0>n)){for(;n>=0;n--)if(null!==e[n]){if(null!=e[n][2]||null!=e[n][3]){if(c.settings.allowInsertRow)for(;e[n][0]>m.countRows()-1;)d.createRow();if("array"===m.dataType&&c.settings.allowInsertColumn)for(;d.propToCol(e[n][1])>m.countCols()-1;)d.createCol();d.set(e[n][0],e[n][1],e[n][3])}}else e.splice(n,1);m.forceFullRender=!0,f.adjustRowsAndCols(),Handsontable.hooks.run(m,"beforeChangeRender",e,t),p.refreshBorders(null,!0),m.view.wt.wtOverlays.adjustElementsSize(), +Handsontable.hooks.run(m,"afterChange",e,t||"edit")}}function i(e,t,n){return"object"==typeof e?e:[[e,t,n]]}function s(e){if(e.hasOwnProperty("type")){var t,n={};if("object"==typeof e.type)t=e.type;else if("string"==typeof e.type&&(t=Handsontable.cellTypes[e.type],void 0===t))throw new Error('You declared cell type "'+e.type+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');for(var o in t)t.hasOwnProperty(o)&&!e.hasOwnProperty(o)&&(n[o]=t[o]);return n}}function a(e){return Handsontable.hooks.run(m,"modifyRow",e)}function l(e){return Handsontable.hooks.run(m,"modifyCol",e)}function u(){throw new Error("This method cannot be called because this Handsontable instance has been destroyed")}var c,d,h,f,p,g,m=this,v=function(){},w=D(m);A(v.prototype,Z.prototype),A(v.prototype,t),A(v.prototype,s(t)),this.rootElement=e,this.isHotTableEnv=T(this.rootElement),Handsontable.eventManager.isHotTableEnv=this.isHotTableEnv,this.container=document.createElement("DIV"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),this.guid="ht_"+B(),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid),c={cellSettings:[],columnSettings:[],columnsSettingConflicts:["data","width"],settings:new v,selRange:null,isPopulated:null,scrollable:null,firstRun:!0},f={alter:function(e,t,n,o,r){var i;switch(n=n||1,e){case"insert_row":if(m.getSettings().maxRows===m.countSourceRows())return;i=d.createRow(t,n),i&&(p.isSelected()&&c.selRange.from.row>=t?(c.selRange.from.row=c.selRange.from.row+i,p.transformEnd(i,0)):p.refreshBorders());break;case"insert_col":if(i=d.createCol(t,n)){if(Array.isArray(m.getSettings().colHeaders)){var s=[t,0];s.length+=i,Array.prototype.splice.apply(m.getSettings().colHeaders,s)}p.isSelected()&&c.selRange.from.col>=t?(c.selRange.from.col=c.selRange.from.col+i,p.transformEnd(0,i)):p.refreshBorders()}break;case"remove_row":d.removeRow(t,n),c.cellSettings.splice(t,n);var a=m.countRows(),l=m.getSettings().fixedRowsTop;l>=t+1&&(m.getSettings().fixedRowsTop-=Math.min(n,l-t));var u=m.getSettings().fixedRowsBottom;u&&t+1>=a-u&&(m.getSettings().fixedRowsBottom-=Math.min(n,u-t)),f.adjustRowsAndCols(),p.refreshBorders();break;case"remove_col":d.removeCol(t,n);for(var h=0,g=d.getAll().length;g>h;h++)h in c.cellSettings&&c.cellSettings[h].splice(t,n);var v=m.getSettings().fixedColumnsLeft;v>=t+1&&(m.getSettings().fixedColumnsLeft-=Math.min(n,v-t)),Array.isArray(m.getSettings().colHeaders)&&("undefined"==typeof t&&(t=-1),m.getSettings().colHeaders.splice(t,n)),f.adjustRowsAndCols(),p.refreshBorders();break;default:throw new Error('There is no such action "'+e+'"')}r||f.adjustRowsAndCols()},adjustRowsAndCols:function(){if(c.settings.minRows){var e=m.countRows();if(et;t++)d.createRow(m.countRows(),1,!0)}if(c.settings.minSpareRows){var o=m.countEmptyRows(!0);if(oi-1?(l=i-1,a=!0,h>l&&(h=l)):h>i-1&&(h=i-1,a=!0,l>h&&(l=h)),u>s-1?(u=s-1,a=!0,f>u&&(f=u)):f>s-1&&(f=s-1,a=!0,u>f&&(u=f)),a&&m.selectCell(l,u,h,f)}m.view&&m.view.wt.wtOverlays.adjustElementsSize()},populateFromArray:function(e,t,n,o,r,i,s){var a,l,u,d,h=[],f={};if(l=t.length,0===l)return!1;var p,g,v,w;({row:null===n?null:n.row,col:null===n?null:n.col});switch(r){case"shift_down":for(p=n?n.col-e.col+1:0,g=n?n.row-e.row+1:0,t=U(t),u=0,d=t.length,v=Math.max(d,p);v>u;u++)if(d>u){for(a=0,l=t[u].length;g-l>a;a++)t[u].push(t[u][a%l]);t[u].unshift(e.col+u,e.row,0),m.spliceCol.apply(m,t[u])}else t[u%d][0]=e.col+u,m.spliceCol.apply(m,t[u%d]);break;case"shift_right":for(p=n?n.col-e.col+1:0,g=n?n.row-e.row+1:0,a=0,l=t.length,w=Math.max(l,g);w>a;a++)if(l>a){for(u=0,d=t[a].length;p-d>u;u++)t[a].push(t[a][u%d]);t[a].unshift(e.row+a,e.col,0),m.spliceRow.apply(m,t[a])}else t[a%l][0]=e.row+a,m.spliceRow.apply(m,t[a%l]);break;case"overwrite":default:f.row=e.row,f.col=e.col;var y,b={row:n&&e?n.row-e.row+1:1,col:n&&e?n.col-e.col+1:1},C=0,R=0,_=!0,S=function(e){var n=void 0!==arguments[1]?arguments[1]:null,o=t[e%t.length];return null!==n?o[n%o.length]:o},E=t.length,T=n?n.row-e.row+1:0;for(l=n?T:Math.max(E,T),a=0;l>a&&!(n&&f.row>n.row&&T>E||!c.settings.allowInsertRow&&f.row>m.countRows()-1||f.row>=c.settings.maxRows);a++){var O=a-C,M=S(O).length,k=n?n.col-e.col+1:0;if(d=n?k:Math.max(M,k),f.col=e.col,y=m.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!y.skipRowOnPaste){for(R=0,u=0;d>u&&!(n&&f.col>n.col&&k>M||!c.settings.allowInsertColumn&&f.col>m.countCols()-1||f.col>=c.settings.maxCols);u++)if(y=m.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!y.skipColumnOnPaste)if(y.readOnly)f.col++;else{var H=u-R,D=S(O,H),x=m.getDataAtCell(f.row,f.col),A={row:O,col:H};if("autofill"===o){var W=m.runHooks("beforeAutofillInsidePopulate",A,i,t,s,{},b);W&&(D="undefined"==typeof W.value?D:W.value)}if(null!==D&&"object"==typeof D)if(null===x||"object"!=typeof x)_=!1;else{var I=P(x[0]||x),j=P(D[0]||D);N(I,j)?D=L(D):_=!1}else null!==x&&"object"==typeof x&&(_=!1);_&&h.push([f.row,f.col,D]),_=!0,f.col++}else R++,f.col++,d++;f.row++}else C++,f.row++,l++}m.setDataAtCell(h,null,null,o||"populateFromArray")}}},this.selection=p={inProgress:!1,selectedHeader:{cols:!1,rows:!1},setSelectedHeaders:function(e,t){m.selection.selectedHeader.rows=e,m.selection.selectedHeader.cols=t},begin:function(){m.selection.inProgress=!0},finish:function(){var e=m.getSelected();Handsontable.hooks.run(m,"afterSelectionEnd",e[0],e[1],e[2],e[3]),Handsontable.hooks.run(m,"afterSelectionEndByProp",e[0],m.colToProp(e[1]),e[2],m.colToProp(e[3])),m.selection.inProgress=!1},isInProgress:function(){return m.selection.inProgress},setRangeStart:function(e,t){Handsontable.hooks.run(m,"beforeSetRangeStart",e),c.selRange=new X(e,e,e),p.setRangeEnd(e,null,t)},setRangeEnd:function(e,t,n){if(null!==c.selRange){var o,r=!1,i=!0,s=m.view.wt.wtTable.getFirstVisibleRow(),a=m.view.wt.wtTable.getFirstVisibleColumn(),l={row:null,col:null};Handsontable.hooks.run(m,"beforeSetRangeEnd",e),m.selection.begin(),l.row=e.row<0?s:e.row,l.col=e.col<0?a:e.col,c.selRange.to=new K(l.row,l.col),c.settings.multiSelect||(c.selRange.from=e),m.view.wt.selections.current.clear(),o=m.getCellMeta(c.selRange.highlight.row,c.selRange.highlight.col).disableVisualSelection,"string"==typeof o&&(o=[o]),(o===!1||Array.isArray(o)&&-1===o.indexOf("current"))&&m.view.wt.selections.current.add(c.selRange.highlight),m.view.wt.selections.area.clear(),(o===!1||Array.isArray(o)&&-1===o.indexOf("area"))&&p.isMultiple()&&(m.view.wt.selections.area.add(c.selRange.from),m.view.wt.selections.area.add(c.selRange.to)),(c.settings.currentRowClassName||c.settings.currentColClassName)&&(m.view.wt.selections.highlight.clear(),m.view.wt.selections.highlight.add(c.selRange.from),m.view.wt.selections.highlight.add(c.selRange.to)),Handsontable.hooks.run(m,"afterSelection",c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col),Handsontable.hooks.run(m,"afterSelectionByProp",c.selRange.from.row,d.colToProp(c.selRange.from.col),c.selRange.to.row,d.colToProp(c.selRange.to.col)),(0===c.selRange.from.row&&c.selRange.to.row===m.countRows()-1&&m.countRows()>1||0===c.selRange.from.col&&c.selRange.to.col===m.countCols()-1&&m.countCols()>1)&&(r=!0),(e.row<0||e.col<0)&&(i=!1),t!==!1&&!r&&i&&(c.selRange.from&&!p.isMultiple()?m.view.scrollViewport(c.selRange.from):m.view.scrollViewport(e)),p.refreshBorders(null,n)}},refreshBorders:function(e,t){t||g.destroyEditor(e),m.view.render(),p.isSelected()&&!t&&g.prepareEditor()},isMultiple:function(){var e=!(c.selRange.to.col===c.selRange.from.col&&c.selRange.to.row===c.selRange.from.row),t=Handsontable.hooks.run(m,"afterIsMultipleSelection",e);return e?t:void 0},transformStart:function(e,t,n,o){var r,i,s,a,l=new K(e,t),u=0,d=0;m.runHooks("modifyTransformStart",l),r=m.countRows(),i=m.countCols(),a=m.getSettings().fixedRowsBottom,c.selRange.highlight.row+e>r-1?n&&c.settings.minSpareRows>0&&!(a&&c.selRange.highlight.row>=r-a-1)?(m.alter("insert_row",r),r=m.countRows()):c.settings.autoWrapCol&&(l.row=1-r,l.col=c.selRange.highlight.col+l.col==i-1?1-i:1):c.settings.autoWrapCol&&c.selRange.highlight.row+l.row<0&&c.selRange.highlight.col+l.col>=0&&(l.row=r-1,l.col=c.selRange.highlight.col+l.col==0?i-1:-1),c.selRange.highlight.col+l.col>i-1?n&&c.settings.minSpareCols>0?(m.alter("insert_col",i),i=m.countCols()):c.settings.autoWrapRow&&(l.row=c.selRange.highlight.row+l.row==r-1?1-r:1,l.col=1-i):c.settings.autoWrapRow&&c.selRange.highlight.col+l.col<0&&c.selRange.highlight.row+l.row>=0&&(l.row=c.selRange.highlight.row+l.row==0?r-1:-1,l.col=i-1),s=new K(c.selRange.highlight.row+l.row,c.selRange.highlight.col+l.col),s.row<0?(u=-1,s.row=0):s.row>0&&s.row>=r&&(u=1,s.row=r-1),s.col<0?(d=-1,s.col=0):s.col>0&&s.col>=i&&(d=1,s.col=i-1),m.runHooks("afterModifyTransformStart",s,u,d),p.setRangeStart(s,o)},transformEnd:function(e,t){var n,o,r,i=new K(e,t),s=0,a=0;m.runHooks("modifyTransformEnd",i),n=m.countRows(),o=m.countCols(),r=new K(c.selRange.to.row+i.row,c.selRange.to.col+i.col),r.row<0?(s=-1,r.row=0):r.row>0&&r.row>=n&&(s=1,r.row=n-1),r.col<0?(a=-1,r.col=0):r.col>0&&r.col>=o&&(a=1,r.col=o-1),m.runHooks("afterModifyTransformEnd",r,s,a),p.setRangeEnd(r,!0)},isSelected:function(){return null!==c.selRange},inInSelection:function(e){return p.isSelected()?c.selRange.includes(e):!1},deselect:function(){p.isSelected()&&(m.selection.inProgress=!1,c.selRange=null,m.view.wt.selections.current.clear(),m.view.wt.selections.area.clear(),(c.settings.currentRowClassName||c.settings.currentColClassName)&&m.view.wt.selections.highlight.clear(),g.destroyEditor(),p.refreshBorders(),Handsontable.hooks.run(m,"afterDeselect"))},selectAll:function(){c.settings.multiSelect&&(p.setRangeStart(new K(0,0)),p.setRangeEnd(new K(m.countRows()-1,m.countCols()-1),!1))},empty:function(){if(p.isSelected()){var e,t,n=c.selRange.getTopLeftCorner(),o=c.selRange.getBottomRightCorner(),r=[];for(e=n.row;e<=o.row;e++)for(t=n.col;t<=o.col;t++)m.getCellMeta(e,t).readOnly||r.push([e,t,""]);m.setDataAtCell(r)}}},this.init=function(){h=new z(m,c.settings.data),Handsontable.hooks.run(m,"beforeInit"),Handsontable.mobileBrowser&&S(m.rootElement,"mobile"),this.updateSettings(c.settings,!0),this.view=new V(this),g=new H(m,c,p,d),this.forceFullRender=!0,Handsontable.hooks.run(m,"init"),this.view.render(),"object"==typeof c.firstRun&&(Handsontable.hooks.run(m,"afterChange",c.firstRun[0],c.firstRun[1]),c.firstRun=!1),Handsontable.hooks.run(m,"afterInit")},this.validateCell=function(e,t,n,o){function r(e){var o=t.physicalCol,r=t.physicalRow,i=m.getCell(r,o,!0);i&&m.view.wt.wtSettings.settings.cellRenderer(r,o,i),n(e)}var i=m.getCellValidator(t);"[object RegExp]"===Object.prototype.toString.call(i)&&(i=function(e){return function(t,n){n(e.test(t))}}(i)),"function"==typeof i?(e=Handsontable.hooks.run(m,"beforeValidate",e,t.row,t.prop,o),m._registerTimeout(setTimeout(function(){i.call(t,e,function(n){n=Handsontable.hooks.run(m,"afterValidate",n,e,t.row,t.prop,o),t.valid=n,r(n),Handsontable.hooks.run(m,"postAfterValidate",n,e,t.row,t.prop,o)})},0))):(t.valid=!0,r(t.valid))},this.setDataAtCell=function(e,t,n,s){var a,l,u,c=i(e,t,n),h=[];for(a=0,l=c.length;l>a;a++){if("object"!=typeof c[a])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof c[a][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");u=d.colToProp(c[a][1]),h.push([c[a][0],u,d.get(c[a][0],u),c[a][2]])}s||"object"!=typeof e||(s=t),o(h,s,function(){r(h,s)})},this.setDataAtRowProp=function(e,t,n,s){var a,l,u=i(e,t,n),c=[];for(a=0,l=u.length;l>a;a++)c.push([u[a][0],u[a][1],d.get(u[a][0],u[a][1]),u[a][2]]);s||"object"!=typeof e||(s=t),o(c,s,function(){r(c,s)})},this.listen=function(){Handsontable.activeGuid=m.guid},this.unlisten=function(){Handsontable.activeGuid=null},this.isListening=function(){return Handsontable.activeGuid===m.guid},this.destroyEditor=function(e){p.refreshBorders(e)},this.populateFromArray=function(e,t,n,o,r,i,s,a,l){var u;if("object"!=typeof n||"object"!=typeof n[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");return u="number"==typeof o?new K(o,r):null,f.populateFromArray(new K(e,t),n,u,i,s,a,l)},this.spliceCol=function(e,t,n){return d.spliceCol.apply(d,arguments)},this.spliceRow=function(e,t,n){return d.spliceRow.apply(d,arguments)},this.getSelected=function(){return p.isSelected()?[c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col]:void 0},this.getSelectedRange=function(){return p.isSelected()?c.selRange:void 0},this.render=function(){m.view&&(m.renderCall=!0,m.forceFullRender=!0,p.refreshBorders(null,!0))},this.loadData=function(e){function t(){c.cellSettings.length=0}if("object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error("loadData only accepts array of objects or array of arrays ("+typeof e+" given)");e=[];for(var n,o=0,r=c.settings.startRows;r>o;o++){n=[];for(var i=0,s=c.settings.startCols;s>i;i++)n.push(null);e.push(n)}}c.isPopulated=!1,v.prototype.data=e,Array.isArray(c.settings.dataSchema)||Array.isArray(e[0])?m.dataType="array":"function"==typeof c.settings.dataSchema?m.dataType="function":m.dataType="object",d=new k(m,c,v),h.data=e,h.dataType=m.dataType,h.colToProp=d.colToProp.bind(d),h.propToCol=d.propToCol.bind(d),t(),f.adjustRowsAndCols(),Handsontable.hooks.run(m,"afterLoadData",c.firstRun),c.firstRun?c.firstRun=[null,"loadData"]:(Handsontable.hooks.run(m,"afterChange",null,"loadData"),m.render()),c.isPopulated=!0},this.getData=function(e,t,n,o){return"undefined"==typeof e?d.getAll():d.getRange(new K(e,t),new K(n,o),d.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,n,o){return d.getCopyableText(new K(e,t),new K(n,o))},this.getCopyableData=function(e,t){return d.getCopyable(e,d.colToProp(t))},this.getSchema=function(){return d.getSchema()},this.updateSettings=function(e,t){var n,o;if("undefined"!=typeof e.rows)throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');if("undefined"!=typeof e.cols)throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');for(n in e)"data"!==n&&(Handsontable.hooks.getRegistered().indexOf(n)>-1?("function"==typeof e[n]||Array.isArray(e[n]))&&m.addHook(n,e[n]):!t&&e.hasOwnProperty(n)&&(v.prototype[n]=e[n]));if(void 0===e.data&&void 0===c.settings.data?m.loadData(null):void 0!==e.data?m.loadData(e.data):void 0!==e.columns&&d.createMap(),o=m.countCols(),c.cellSettings.length=0,o>0){var r,i;for(n=0;o>n;n++)c.columnSettings[n]=M(v,c.columnsSettingConflicts),r=c.columnSettings[n].prototype,v.prototype.columns&&(i=v.prototype.columns[n],A(r,i),A(r,s(i)))}if("undefined"!=typeof e.cell)for(n in e.cell)if(e.cell.hasOwnProperty(n)){var a=e.cell[n];m.setCellMetaObject(a.row,a.col,a)}if(Handsontable.hooks.run(m,"afterCellMetaReset"),"undefined"!=typeof e.className&&(v.prototype.className&&O(m.rootElement,v.prototype.className),e.className&&S(m.rootElement,e.className)),"undefined"!=typeof e.height){var l=e.height;"function"==typeof l&&(l=l()),m.rootElement.style.height=l+"px"}if("undefined"!=typeof e.width){var u=e.width;"function"==typeof u&&(u=u()),m.rootElement.style.width=u+"px"}l&&(m.rootElement.style.overflow="hidden"),t||Handsontable.hooks.run(m,"afterUpdateSettings"),f.adjustRowsAndCols(),m.view&&!c.firstRun&&(m.forceFullRender=!0,p.refreshBorders(null,!0))},this.getValue=function(){var e=m.getSelected();if(v.prototype.getValue){if("function"==typeof v.prototype.getValue)return v.prototype.getValue.call(m);if(e)return m.getData()[e[0]][v.prototype.getValue]}else if(e)return m.getDataAtCell(e[0],e[1])},this.getSettings=function(){return c.settings},this.clear=function(){p.selectAll(),p.empty()},this.alter=function(e,t,n,o,r){f.alter(e,t,n,o,r)},this.getCell=function(e,t,n){return m.view.getCellAtCoords(new K(e,t),n)},this.getCoords=function(e){return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable,e)},this.colToProp=function(e){return d.colToProp(e)},this.propToCol=function(e){return d.propToCol(e)},this.getDataAtCell=function(e,t){return d.get(e,d.colToProp(t))},this.getDataAtRowProp=function(e,t){return d.get(e,t)},this.getDataAtCol=function(e){var t=[];return t.concat.apply(t,d.getRange(new K(0,e),new K(c.settings.data.length-1,e),d.DESTINATION_RENDERER))},this.getDataAtProp=function(e){var t,n=[];return t=d.getRange(new K(0,d.propToCol(e)),new K(c.settings.data.length-1,d.propToCol(e)),d.DESTINATION_RENDERER),n.concat.apply(n,t)},this.getSourceData=function(e,t,n,o){var r;return r=void 0===e?h.getData():h.getByRange(new K(e,t),new K(n,o))},this.getSourceDataAtCol=function(e){return h.getAtColumn(e)},this.getSourceDataAtRow=function(e){return h.getAtRow(e)},this.getSourceDataAtCell=function(e,t){return h.getAtCell(e,t)},this.getDataAtRow=function(e){var t=d.getRange(new K(e,0),new K(e,this.countCols()-1),d.DESTINATION_RENDERER);return t[0]},this.getDataType=function(e,t,n,o){var r=this,i=null,s=null;void 0===e&&(e=0,n=this.countRows(),t=0,o=this.countCols()),void 0===n&&(n=e),void 0===o&&(o=t);var a="mixed";return F(Math.min(e,n),Math.max(e,n),function(e){var n=!0;return F(Math.min(t,o),Math.max(t,o),function(t){var o=r.getCellMeta(e,t);return s=o.type,i?n=i===s:i=s,n}),a=n?s:"mixed",n}),a},this.removeCellMeta=function(e,t,n){var o=m.getCellMeta(e,t);void 0!=o[n]&&delete c.cellSettings[e][t][n]},this.setCellMetaObject=function(e,t,n){if("object"==typeof n)for(var o in n)if(n.hasOwnProperty(o)){var r=n[o];this.setCellMeta(e,t,o,r)}},this.setCellMeta=function(e,t,n,o){c.cellSettings[e]||(c.cellSettings[e]=[]),c.cellSettings[e][t]||(c.cellSettings[e][t]=new c.columnSettings[t]),c.cellSettings[e][t][n]=o,Handsontable.hooks.run(m,"afterSetCellMeta",e,t,n,o)},this.getCellsMeta=function(){return W(c.cellSettings)},this.getCellMeta=function(e,t){var n,o=d.colToProp(t),r=e,i=t;if(e=a(e),t=l(t),c.columnSettings[t]||(c.columnSettings[t]=M(v,c.columnsSettingConflicts)),c.cellSettings[e]||(c.cellSettings[e]=[]),c.cellSettings[e][t]||(c.cellSettings[e][t]=new c.columnSettings[t]),n=c.cellSettings[e][t],n.row=e,n.col=t,n.physicalRow=r,n.physicalCol=i,n.prop=o,n.instance=m,Handsontable.hooks.run(m,"beforeGetCellMeta",e,t,n),A(n,s(n)),n.cells){var u=n.cells.call(n,e,t,o);u&&(A(n,u),A(n,s(u)))}return Handsontable.hooks.run(m,"afterGetCellMeta",e,t,n),n},this.isColumnModificationAllowed=function(){return!("object"===m.dataType||m.getSettings().columns)};var y=G("renderer");this.getCellRenderer=function(e,t){var n=y.call(this,e,t);return j(n)},this.getCellEditor=G("editor"),this.getCellValidator=G("validator"),this.validateCells=function(e){var t=new n;t.onQueueEmpty=e;for(var o=m.countRows()-1;o>=0;){for(var r=m.countCols()-1;r>=0;)t.addValidatorToQueue(),m.validateCell(m.getDataAtCell(o,r),m.getCellMeta(o,r),function(e){if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");e===!1&&(t.valid=!1),t.removeValidatorFormQueue()},"validateCells"),r--;o--}t.checkIfQueueIsEmpty()},this.getRowHeader=function(e){var t=c.settings.rowHeaders;return void 0!==e&&(e=Handsontable.hooks.run(m,"modifyRowHeader",e)),void 0===e?(t=[],F(m.countRows()-1,function(e){t.push(m.getRowHeader(e))})):Array.isArray(t)&&void 0!==t[e]?t=t[e]:"function"==typeof t?t=t(e):t&&"string"!=typeof t&&"number"!=typeof t&&(t=e+1),t},this.hasRowHeaders=function(){return!!c.settings.rowHeaders},this.hasColHeaders=function(){if(void 0!==c.settings.colHeaders&&null!==c.settings.colHeaders)return!!c.settings.colHeaders;for(var e=0,t=m.countCols();t>e;e++)if(m.getColHeader(e))return!0;return!1},this.getColHeader=function(e){if(e=Handsontable.hooks.run(m,"modifyColHeader",e),void 0===e){for(var t=[],n=0,o=m.countCols();o>n;n++)t.push(m.getColHeader(n));return t}var r=e;return e=Handsontable.hooks.run(m,"modifyCol",e),c.settings.columns&&c.settings.columns[e]&&c.settings.columns[e].title?c.settings.columns[e].title:Array.isArray(c.settings.colHeaders)&&void 0!==c.settings.colHeaders[e]?c.settings.colHeaders[e]:"function"==typeof c.settings.colHeaders?c.settings.colHeaders(e):c.settings.colHeaders&&"string"!=typeof c.settings.colHeaders&&"number"!=typeof c.settings.colHeaders?$(r):c.settings.colHeaders},this._getColWidthFromSettings=function(e){var t=m.getCellMeta(0,e),n=t.width;if((void 0===n||n===c.settings.width)&&(n=t.colWidths),void 0!==n&&null!==n){switch(typeof n){case"object":n=n[e];break;case"function":n=n(e)}"string"==typeof n&&(n=parseInt(n,10))}return n},this.getColWidth=function(e){var t=m._getColWidthFromSettings(e);return t=Handsontable.hooks.run(m,"modifyColWidth",t,e),void 0===t&&(t=q.DEFAULT_WIDTH),t},this._getRowHeightFromSettings=function(e){var t=c.settings.rowHeights;if(void 0!==t&&null!==t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){var t=m._getRowHeightFromSettings(e);return t=Handsontable.hooks.run(m,"modifyRowHeight",t,e)},this.countSourceRows=function(){return m.getSourceData()?m.getSourceData().length:0},this.countRows=function(){return d.getLength()},this.countCols=function(){return"object"===m.dataType||"function"===m.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:d.colToPropCache.length:"array"===m.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:c.settings.data&&c.settings.data[0]&&c.settings.data[0].length?c.settings.data[0].length:0:void 0},this.getColspanOffset=function(e,t){var n=0;if(m.colspanArray){for(var o=0;e>o;o++)n+=m.colspanArray[t][o]-1||0;return n}for(var n=0,r=m.view.wt.wtTable.THEAD.childNodes.length-t-1,i=m.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(r+1,10)+")"),s=m.view.wt.wtSettings.settings.rowHeaders().length,o=s;s+e>o;o++)i.childNodes[o].hasAttribute("colspan")&&(n+=parseInt(i.childNodes[o].getAttribute("colspan"),10)-1);return n},this.getHeaderColspan=function(e,t){var n=m.view.wt.wtTable.THEAD.childNodes.length-t-1,o=m.view.wt.wtSettings.settings.rowHeaders().length,r=m.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(n+1,10)+")"),i=o+e-m.view.wt.wtViewport.columnsRenderCalculator.startColumn;return r.childNodes[i].hasAttribute("colspan")?parseInt(r.childNodes[i].getAttribute("colspan"),10):0},this.rowOffset=function(){return m.view.wt.wtTable.getFirstRenderedRow()},this.colOffset=function(){return m.view.wt.wtTable.getFirstRenderedColumn()},this.countRenderedRows=function(){return m.view.wt.drawn?m.view.wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return m.view.wt.drawn?m.view.wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return m.view.wt.drawn?m.view.wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return m.view.wt.drawn?m.view.wt.wtTable.getVisibleColumnsCount():-1},this.countEmptyRows=function(e){for(var t,n=m.countRows()-1,o=0;n>=0;){if(t=Handsontable.hooks.run(this,"modifyRow",n),m.isEmptyRow(t))o++;else if(e)break;n--}return o},this.countEmptyCols=function(e){if(m.countRows()<1)return 0;for(var t=m.countCols()-1,n=0;t>=0;){if(m.isEmptyCol(t))n++;else if(e)break;t--}return n},this.isEmptyRow=function(e){return c.settings.isEmptyRow.call(m,e)},this.isEmptyCol=function(e){return c.settings.isEmptyCol.call(m,e)},this.selectCell=function(e,t,n,o,r,i){var s;if(i="undefined"==typeof i||i===!0,"number"!=typeof e||0>e||e>=m.countRows())return!1;if("number"!=typeof t||0>t||t>=m.countCols())return!1;if("undefined"!=typeof n){if("number"!=typeof n||0>n||n>=m.countRows())return!1;if("number"!=typeof o||0>o||o>=m.countCols())return!1}return s=new K(e,t),c.selRange=new X(s,s,s),i&&m.listen(),"undefined"==typeof n?p.setRangeEnd(c.selRange.from,r):p.setRangeEnd(new K(n,o),r),m.selection.finish(),!0},this.selectCellByProp=function(e,t,n,o,r){return arguments[1]=d.propToCol(arguments[1]),"undefined"!=typeof arguments[3]&&(arguments[3]=d.propToCol(arguments[3])),m.selectCell.apply(m,arguments)},this.deselectCell=function(){p.deselect()},this.destroy=function(){m._clearTimeouts(),m.view&&m.view.destroy(),h&&h.destroy(),h=null,E(m.rootElement),w.destroy(),Handsontable.hooks.run(m,"afterDestroy"),Handsontable.hooks.destroy(m);for(var e in m)m.hasOwnProperty(e)&&("function"==typeof m[e]?m[e]=u:"guid"!==e&&(m[e]=null));c=null,d=null,f=null,p=null,g=null,m=null,v=null},this.getActiveEditor=function(){return g.getActiveEditor()},this.getPlugin=function(e){return I(this,e)},this.getInstance=function(){return m},this.addHook=function(e,t){Handsontable.hooks.add(e,t,m)},this.addHookOnce=function(e,t){Handsontable.hooks.once(e,t,m)},this.removeHook=function(e,t){Handsontable.hooks.remove(e,t,m)},this.runHooks=function(e,t,n,o,r,i,s){return Handsontable.hooks.run(m,e,t,n,o,r,i,s)},this.timeouts=[],this._registerTimeout=function(e){this.timeouts.push(e)},this._clearTimeouts=function(){for(var e=0,t=this.timeouts.length;t>e;e++)clearTimeout(this.timeouts[e])},this.version=Handsontable.version,Handsontable.hooks.run(m,"construct")};var Z=function(){};Z.prototype={data:void 0,dataSchema:void 0,width:void 0,height:void 0,startRows:5,startCols:5,rowHeaders:null,colHeaders:null,colWidths:void 0,columns:void 0,cells:void 0,cell:[],comments:!1,customBorders:!1,minRows:0,minCols:0,maxRows:1/0,maxCols:1/0,minSpareRows:0,minSpareCols:0,allowInsertRow:!0,allowInsertColumn:!0,allowRemoveRow:!0,allowRemoveColumn:!0,multiSelect:!0,fillHandle:!0,fixedRowsTop:0,fixedRowsBottom:0,fixedColumnsLeft:0,outsideClickDeselects:!0,enterBeginsEditing:!0,enterMoves:{row:1,col:0},tabMoves:{row:0,col:1},autoWrapRow:!1,autoWrapCol:!1,copyRowsLimit:1e3,copyColsLimit:1e3,pasteMode:"overwrite",persistentState:!1,currentRowClassName:void 0,currentColClassName:void 0,className:void 0,tableClassName:void 0,stretchH:"none",isEmptyRow:function(e){var t,n,o,r;for(t=0,n=this.countCols();n>t;t++)if(o=this.getDataAtCell(e,t),""!==o&&null!==o&&"undefined"!=typeof o)return"object"==typeof o?(r=this.getCellMeta(e,t),N(this.getSchema()[r.prop],o)):!1;return!0},isEmptyCol:function(e){var t,n,o;for(t=0,n=this.countRows();n>t;t++)if(o=this.getDataAtCell(t,e),""!==o&&null!==o&&"undefined"!=typeof o)return!1;return!0},observeDOMVisibility:!0,allowInvalid:!0,invalidCellClassName:"htInvalid",placeholder:!1,placeholderCellClassName:"htPlaceholder",readOnlyCellClassName:"htDimmed",renderer:void 0,commentedCellClassName:"htCommentCell",fragmentSelection:!1,readOnly:!1,skipColumnOnPaste:!1,search:!1,type:"text",copyable:!0,editor:void 0,autoComplete:void 0,visibleRows:10,trimDropdown:!0,debug:!1,wordWrap:!0,noWordWrapClassName:"htNoWrap",contextMenu:void 0,contextMenuCopyPaste:void 0,copyPaste:void 0,undo:void 0,columnSorting:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,mergeCells:!1,viewportRowRenderingOffset:"auto",viewportColumnRenderingOffset:"auto",validator:void 0,disableVisualSelection:!1,sortIndicator:!1,manualColumnFreeze:void 0,trimWhitespace:!0,settings:void 0,source:void 0,title:void 0,checkedTemplate:void 0,uncheckedTemplate:void 0,label:void 0,format:void 0,language:void 0,selectOptions:void 0,autoColumnSize:void 0,autoRowSize:void 0,dateFormat:void 0,correctFormat:!1,defaultDate:void 0,strict:void 0,renderAllRows:void 0},Handsontable.DefaultSettings=Z},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,dataMap:26,dataSource:27,editorManager:28,eventManager:41,"helpers/array":42,"helpers/data":44,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,numeral:"numeral",plugins:57,renderers:88,tableView:97}],26:[function(e,t,n){"use strict";function o(e,t,n){this.instance=e,this.priv=t,this.GridSettings=n,this.dataSource=this.instance.getSettings().data,this.dataSource[0]?this.duckSchema=this.recursiveDuckSchema(this.dataSource[0]):this.duckSchema={},this.createMap()}Object.defineProperties(n,{DataMap:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u,c,d=(r=e("SheetClip"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("helpers/data"),i&&i.__esModule&&i||{"default":i}).cellMethodLookupFactory,f=(s=e("helpers/setting"),s&&s.__esModule&&s||{"default":s}).columnFactory,p=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),g=p.duckSchema,m=p.deepExtend,v=(l=e("helpers/array"),l&&l.__esModule&&l||{"default":l}),w=v.extendArray,y=v.to2dArray,b=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,C=(c=e("multiMap"),c&&c.__esModule&&c||{"default":c}).MultiMap;o.prototype.DESTINATION_RENDERER=1,o.prototype.DESTINATION_CLIPBOARD_GENERATOR=2,o.prototype.recursiveDuckSchema=function(e){return g(e)},o.prototype.recursiveDuckColumns=function(e,t,n){var o,r;if("undefined"==typeof t&&(t=0,n=""),"object"==typeof e&&!Array.isArray(e))for(r in e)e.hasOwnProperty(r)&&(null===e[r]?(o=n+r,this.colToPropCache.push(o),this.propToColCache.set(o,t),t++):t=this.recursiveDuckColumns(e[r],t,r+"."));return t},o.prototype.createMap=function(){var e,t,n=this.getSchema();if("undefined"==typeof n)throw new Error("trying to create `columns` definition but you didnt' provide `schema` nor `data`");this.colToPropCache=[],this.propToColCache=new C;var o=this.instance.getSettings().columns;if(o)for(e=0,t=o.length;t>e;e++)"undefined"!=typeof o[e].data&&(this.colToPropCache[e]=o[e].data,this.propToColCache.set(o[e].data,e));else this.recursiveDuckColumns(n)},o.prototype.colToProp=function(e){return e=Handsontable.hooks.run(this.instance,"modifyCol",e),this.colToPropCache&&"undefined"!=typeof this.colToPropCache[e]?this.colToPropCache[e]:e},o.prototype.propToCol=function(e){var t;return t="undefined"==typeof this.propToColCache.get(e)?e:this.propToColCache.get(e),t=Handsontable.hooks.run(this.instance,"modifyCol",t)},o.prototype.getSchema=function(){var e=this.instance.getSettings().dataSchema;return e?"function"==typeof e?e():e:this.duckSchema},o.prototype.createRow=function(e,t,n){var o,r,i=this.instance.countCols(),s=0;t||(t=1),("number"!=typeof e||e>=this.instance.countSourceRows())&&(e=this.instance.countSourceRows()),r=e;for(var a=this.instance.getSettings().maxRows;t>s&&this.instance.countSourceRows()l;l++)o.push(null)}else"function"===this.instance.dataType?o=this.instance.getSettings().dataSchema(e):(o={},m(o,this.getSchema()));e===this.instance.countSourceRows()?this.dataSource.push(o):this.dataSource.splice(e,0,o),s++,r++}return Handsontable.hooks.run(this.instance,"afterCreateRow",e,s,n),this.instance.forceFullRender=!0,s},o.prototype.createCol=function(e,t,n){if(!this.instance.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");var o,r,i=this.instance.countSourceRows(),s=this.dataSource,a=0; +t||(t=1),r=e;for(var l=this.instance.getSettings().maxCols;t>a&&this.instance.countCols()=this.instance.countCols()){for(var u=0;i>u;u++)"undefined"==typeof s[u]&&(s[u]=[]),s[u].push(null);this.priv.columnSettings.push(o)}else{for(var u=0;i>u;u++)s[u].splice(r,0,null);this.priv.columnSettings.splice(r,0,o)}a++,r++}return Handsontable.hooks.run(this.instance,"afterCreateCol",e,a,n),this.instance.forceFullRender=!0,a},o.prototype.removeRow=function(e,t){t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countSourceRows()+e)%this.instance.countSourceRows();var n=this.physicalRowsToLogical(e,t),o=Handsontable.hooks.run(this.instance,"beforeRemoveRow",e,t,n);if(o!==!1){var r=this.dataSource,i=r.filter(function(e,t){return-1==n.indexOf(t)});r.length=0,Array.prototype.push.apply(r,i),Handsontable.hooks.run(this.instance,"afterRemoveRow",e,t,n),this.instance.forceFullRender=!0}},o.prototype.removeCol=function(e,t){if("object"===this.instance.dataType||this.instance.getSettings().columns)throw new Error("cannot remove column with object data source or columns option specified");t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countCols()+e)%this.instance.countCols();var n=Handsontable.hooks.run(this.instance,"beforeRemoveCol",e,t);if(n!==!1){for(var o=this.dataSource,r=0,i=this.instance.countSourceRows();i>r;r++)o[r].splice(e,t);this.priv.columnSettings.splice(e,t),Handsontable.hooks.run(this.instance,"afterRemoveCol",e,t),this.instance.forceFullRender=!0}},o.prototype.spliceCol=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getDataAtCol(e),i=r.slice(t,t+n),s=r.slice(t+n);w(o,s);for(var a=0;n>a;)o.push(null),a++;return y(o),this.instance.populateFromArray(t,e,o,null,null,"spliceCol"),i},o.prototype.spliceRow=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getSourceDataAtRow(e),i=r.slice(t,t+n),s=r.slice(t+n);w(o,s);for(var a=0;n>a;)o.push(null),a++;return this.instance.populateFromArray(e,t,[o],null,null,"spliceRow"),i},o.prototype.get=function(e,t){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e),"string"==typeof t&&t.indexOf(".")>-1){var n=t.split("."),o=this.dataSource[e];if(!o)return null;for(var r=0,i=n.length;i>r;r++)if(o=o[n[r]],"undefined"==typeof o)return null;return o}return"function"==typeof t?t(this.dataSource.slice(e,e+1)[0]):this.dataSource[e]&&this.dataSource[e].hasOwnProperty&&this.dataSource[e].hasOwnProperty(t)?this.dataSource[e][t]:null};var R=h("copyable",!1);o.prototype.getCopyable=function(e,t){return R.call(this.instance,e,this.propToCol(t))?this.get(e,t):""},o.prototype.set=function(e,t,n,o){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e,o||"datamapGet"),"string"==typeof t&&t.indexOf(".")>-1){for(var r=t.split("."),i=this.dataSource[e],s=0,a=r.length-1;a>s;s++)"undefined"==typeof i[r[s]]&&(i[r[s]]={}),i=i[r[s]];i[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(e,e+1)[0],n):this.dataSource[e][t]=n},o.prototype.physicalRowsToLogical=function(e,t){for(var n,o=this.instance.countSourceRows(),r=(o+e)%o,i=[],s=t;o>r&&s;)n=Handsontable.hooks.run(this.instance,"modifyRow",r),i.push(n),s--,r++;return i},o.prototype.clear=function(){for(var e=0;e=o;o++){a=[];var c=Handsontable.hooks.run(this.instance,"modifyRow",o);for(i=Math.min(e.col,t.col);s>=i;i++){if(null===c)break;a.push(u.call(this,o,this.colToProp(i)))}null!==c&&l.push(a)}return l},o.prototype.getText=function(e,t){return d.stringify(this.getRange(e,t,this.DESTINATION_RENDERER))},o.prototype.getCopyableText=function(e,t){return d.stringify(this.getRange(e,t,this.DESTINATION_CLIPBOARD_GENERATOR))},Handsontable.DataMap=o},{SheetClip:"SheetClip","helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51,multiMap:55}],27:[function(e,t,n){"use strict";Object.defineProperties(n,{DataSource:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,a,l=((o=e("helpers/data"),o&&o.__esModule&&o||{"default":o}).cellMethodLookupFactory,(r=e("helpers/setting"),r&&r.__esModule&&r||{"default":r}).columnFactory,i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}),u=(l.duckSchema,l.deepExtend,l.getProperty),c=(s=e("helpers/array"),s&&s.__esModule&&s||{"default":s}),d=(c.extendArray,c.arrayEach),h=(a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).rangeEach,f=function(e,t){this.hot=e,this.data=t,this.dataType="array",this.colToProp=function(){},this.propToCol=function(){}};$traceurRuntime.createClass(f,{getData:function(){return this.data},getAtColumn:function(e){var t=this,n=[];return d(this.data,function(o){var r=t.colToProp(e);o="string"==typeof r?u(o,r):o[r],n.push(o)}),n},getAtRow:function(e){return this.data[e]},getAtCell:function(e,t){return this.data[e][this.colToProp(t)]},getByRange:function(e,t){var n=this,o=Math.min(e.row,t.row),r=Math.min(e.col,t.col),i=Math.max(e.row,t.row),s=Math.max(e.col,t.col),a=[];return h(o,i,function(e){var t,o=n.getAtRow(e);"array"===n.dataType?t=o.slice(r,s):"object"===n.dataType&&(t={},h(r,s,function(e){var r=n.colToProp(e);t[r]=o[r]})),a.push(t)}),a},destroy:function(){this.data=null,this.hot=null}},{})},{"helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51}],28:[function(e,t,n){"use strict";function o(e,t,n){function o(e){var o="function"==typeof t.settings.enterMoves?t.settings.enterMoves(event):t.settings.enterMoves;e?n.transformStart(-o.row,-o.col):n.transformStart(o.row,o.col,!0)}function r(e){e?n.transformEnd(-1,0):n.transformStart(-1,0)}function i(e){e?n.transformEnd(1,0):n.transformStart(1,0)}function s(e){e?n.transformEnd(0,1):n.transformStart(0,1)}function a(e){e?n.transformEnd(0,-1):n.transformStart(0,-1)}function l(l){var c,p;if(e.isListening()&&(Handsontable.hooks.run(e,"beforeKeyDown",l),!C&&!v(l)&&(t.lastKeyCode=l.keyCode,n.isSelected()))){if(c=(l.ctrlKey||l.metaKey)&&!l.altKey,y&&!y.isWaiting()&&!(h(l.keyCode)||f(l.keyCode)||c||b.isEditorOpened()))return void b.openEditor("",l);switch(p=l.shiftKey?n.setRangeEnd:n.setRangeStart,l.keyCode){case d.A:!b.isEditorOpened()&&c&&(n.selectAll(),l.preventDefault(),g(l));break;case d.ARROW_UP:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),r(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_DOWN:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),i(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_RIGHT:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),s(l.shiftKey),l.preventDefault(),g(l);break;case d.ARROW_LEFT:b.isEditorOpened()&&!y.isWaiting()&&b.closeEditorAndSaveChanges(c),a(l.shiftKey),l.preventDefault(),g(l);break;case d.TAB:var w="function"==typeof t.settings.tabMoves?t.settings.tabMoves(l):t.settings.tabMoves;l.shiftKey?n.transformStart(-w.row,-w.col):n.transformStart(w.row,w.col,!0),l.preventDefault(),g(l);break;case d.BACKSPACE:case d.DELETE:n.empty(l),b.prepareEditor(),l.preventDefault();break;case d.F2:b.openEditor(null,l),y&&y.enableFullEditMode(),l.preventDefault();break;case d.ENTER:b.isEditorOpened()?(y&&y.state!==Handsontable.EditorState.WAITING&&b.closeEditorAndSaveChanges(c),o(l.shiftKey)):e.getSettings().enterBeginsEditing?(b.openEditor(null,l),y&&y.enableFullEditMode()):o(l.shiftKey),l.preventDefault(),m(l);break;case d.ESCAPE:b.isEditorOpened()&&b.closeEditorAndRestoreOriginalValue(c),l.preventDefault();break;case d.HOME:p(l.ctrlKey||l.metaKey?new u(0,t.selRange.from.col):new u(t.selRange.from.row,0)),l.preventDefault(),g(l);break;case d.END:p(l.ctrlKey||l.metaKey?new u(e.countRows()-1,t.selRange.from.col):new u(t.selRange.from.row,e.countCols()-1)),l.preventDefault(),g(l);break;case d.PAGE_UP:n.transformStart(-e.countVisibleRows(),0),l.preventDefault(),g(l);break;case d.PAGE_DOWN:n.transformStart(e.countVisibleRows(),0),l.preventDefault(),g(l)}}}function c(){function t(e,t,n){"TD"==n.nodeName&&(b.openEditor(),y&&y.enableFullEditMode())}e.addHook("afterDocumentKeyDown",l),p.addEventListener(document.documentElement,"keydown",function(t){e.runHooks("afterDocumentKeyDown",t)}),e.view.wt.update("onCellDblClick",t),e.addHook("afterDestroy",function(){C=!0})}var p,y,b=this,C=!1;p=w(e),this.destroyEditor=function(e){this.closeEditor(e)},this.getActiveEditor=function(){return y},this.prepareEditor=function(){var n,o,r,i,s,a,l;return y&&y.isWaiting()?void this.closeEditor(!1,!1,function(e){e&&b.prepareEditor()}):(n=t.selRange.highlight.row,o=t.selRange.highlight.col,r=e.colToProp(o),i=e.getCell(n,o),s=e.getDataAtCell(n,o),a=e.getCellMeta(n,o),l=e.getCellEditor(a),void(l?(y=Handsontable.editors.getEditor(l,e),y.prepare(n,o,r,i,s,a)):y=void 0))},this.isEditorOpened=function(){return y&&y.isOpened()},this.openEditor=function(e,t){y&&!y.cellProperties.readOnly?y.beginEditing(e,t):y&&y.cellProperties.readOnly&&t&&t.keyCode===d.ENTER&&o()},this.closeEditor=function(e,t,n){y?y.finishEditing(e,t,n):n&&n(!1)},this.closeEditorAndSaveChanges=function(e){return this.closeEditor(!1,e)},this.closeEditorAndRestoreOriginalValue=function(e){return this.closeEditor(!0,e)},c()}Object.defineProperties(n,{EditorManager:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u=(r=e("3rdparty/walkontable/src/cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords,c=(i=e("helpers/unicode"),i&&i.__esModule&&i||{"default":i}),d=c.KEY_CODES,h=c.isMetaKey,f=c.isCtrlKey,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=p.stopPropagation,m=p.stopImmediatePropagation,v=p.isImmediatePropagationStopped,w=((a=e("editors"),a&&a.__esModule&&a||{"default":a}).getEditor,(l=e("eventManager"),l&&l.__esModule&&l||{"default":l}).eventManager);Handsontable.EditorManager=o},{"3rdparty/walkontable/src/cell/coords":5,editors:29,eventManager:41,"helpers/dom/event":46,"helpers/unicode":53}],29:[function(e,t,n){"use strict";function o(e){var t,n;n={},t=e,this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in n||(n[e.guid]=new t(e)),n[e.guid]}}function r(e,t){var n=new o(t);"string"==typeof e&&(c[e]=n,Handsontable.editors[u(e)+"Editor"]=t),d.set(t,n)}function i(e,t){var n;if("function"==typeof e)d.get(e)||r(null,e),n=d.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');n=c[e]}if(!n)throw Error('No editor registered under name "'+e+'"');return n.getInstance(t)}function s(e){var t;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');if(t=c[e],!t)throw Error('No editor registered under name "'+e+'"');return t.getConstructor()}function a(e){return c[e]?!0:!1}Object.defineProperties(n,{registerEditor:{get:function(){return r}},getEditor:{get:function(){return i}},hasEditor:{get:function(){return a}},getEditorConstructor:{get:function(){return s}},__esModule:{value:!0}});var l,u=(l=e("helpers/string"),l&&l.__esModule&&l||{"default":l}).toUpperCaseFirst,c={},d=new WeakMap;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.registerEditor=r,Handsontable.editors.getEditor=i},{"helpers/string":52}],30:[function(e,t,n){"use strict";function o(e){this.instance=e,this.state=Handsontable.EditorState.VIRGIN,this._opened=!1,this._fullEditMode=!1,this._closeCallback=null,this.init()}Object.defineProperties(n,{BaseEditor:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify,a=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.BaseEditor=o,Handsontable.EditorState={VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"},o.prototype._fireCallbacks=function(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)},o.prototype.init=function(){},o.prototype.getValue=function(){throw Error("Editor getValue() method unimplemented")},o.prototype.setValue=function(e){throw Error("Editor setValue() method unimplemented")},o.prototype.open=function(){throw Error("Editor open() method unimplemented")},o.prototype.close=function(){throw Error("Editor close() method unimplemented")},o.prototype.prepare=function(e,t,n,o,r,i){this.TD=o,this.row=e,this.col=t,this.prop=n,this.originalValue=r,this.cellProperties=i,this.state=Handsontable.EditorState.VIRGIN},o.prototype.extend=function(){function e(){n.apply(this,arguments)}function t(e,t){function n(){}return n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e,e}var n=this.constructor;return t(e,n)},o.prototype.saveValue=function(e,t){var n,o;t?(n=this.instance.getSelected(),n[0]>n[2]&&(o=n[0],n[0]=n[2],n[2]=o),n[1]>n[3]&&(o=n[1],n[1]=n[3],n[3]=o),this.instance.populateFromArray(n[0],n[1],e,n[2],n[3],"edit")):this.instance.populateFromArray(this.row,this.col,e,null,null,"edit")},o.prototype.beginEditing=function(e,t){this.state==Handsontable.EditorState.VIRGIN&&(this.instance.view.scrollViewport(new a(this.row,this.col)),this.instance.view.render(),this.state=Handsontable.EditorState.EDITING,e="string"==typeof e?e:this.originalValue,this.setValue(s(e)),this.open(t),this._opened=!0,this.focus(),this.instance.view.render())},o.prototype.finishEditing=function(e,t,n){var o,r=this;if(n){var i=this._closeCallback;this._closeCallback=function(e){i&&i(e),n(e)}}if(!this.isWaiting()){if(this.state==Handsontable.EditorState.VIRGIN)return void this.instance._registerTimeout(setTimeout(function(){r._fireCallbacks(!0)},0));if(this.state==Handsontable.EditorState.EDITING){if(e)return this.cancelChanges(),void this.instance.view.render();o=this.instance.getSettings().trimWhitespace?[["string"==typeof this.getValue()?String.prototype.trim.call(this.getValue()||""):this.getValue()]]:[[this.getValue()]],this.state=Handsontable.EditorState.WAITING,this.saveValue(o,t),this.instance.getCellValidator(this.cellProperties)?this.instance.addHookOnce("postAfterValidate",function(e){r.state=Handsontable.EditorState.FINISHED,r.discardEditor(e)}):(this.state=Handsontable.EditorState.FINISHED,this.discardEditor(!0))}}},o.prototype.cancelChanges=function(){this.state=Handsontable.EditorState.FINISHED,this.discardEditor()},o.prototype.discardEditor=function(e){this.state===Handsontable.EditorState.FINISHED&&(e===!1&&this.cellProperties.allowInvalid!==!0?(this.instance.selectCell(this.row,this.col),this.focus(),this.state=Handsontable.EditorState.EDITING,this._fireCallbacks(!1)):(this.close(),this._opened=!1,this._fullEditMode=!1,this.state=Handsontable.EditorState.VIRGIN,this._fireCallbacks(!0)))},o.prototype.enableFullEditMode=function(){this._fullEditMode=!0},o.prototype.isInFullEditMode=function(){return this._fullEditMode},o.prototype.isOpened=function(){return this._opened},o.prototype.isWaiting=function(){return this.state===Handsontable.EditorState.WAITING},o.prototype.checkEditorSection=function(){var e=this.instance.countRows(),t="";return this.row=e-this.instance.getSettings().fixedRowsBottom?t=this.col"+a+"")))},autoColumnSize:!0,modifyColWidth:function(e,t){var o=this.getPlugin("autoColumnSize").widths;return o[t]&&(e=o[t]),n?e:e+15}}),this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"]=w()+2+"px",T&&(T=!1),t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value)},0))},E.prototype.close=function(){S.prototype.close.apply(this,arguments)},E.prototype.queryChoices=function(e){if(this.query=e,"function"==typeof this.cellProperties.source){var t=this;this.cellProperties.source(e,function(e){t.updateChoicesList(e)})}else if(Array.isArray(this.cellProperties.source)){var n;if(e&&this.cellProperties.filter!==!1){var o=this.cellProperties.filteringCaseSensitive===!0,r=e.toLowerCase();n=this.cellProperties.source.filter(function(t){return o?-1!=t.indexOf(e):-1!=t.toLowerCase().indexOf(r)})}else n=this.cellProperties.source;this.updateChoicesList(n)}else this.updateChoicesList([])},E.prototype.updateChoicesList=function(e){var t,n=v(this.TEXTAREA),o=y(this.TEXTAREA),r=E.sortByRelevance(this.getValue(),e,this.cellProperties.filteringCaseSensitive);if(0==this.cellProperties.filter)t=r[0];else{for(var i=[],s=0,a=r.length;a>s;s++)i.push(e[r[s]]);t=0,e=i}this.choices=e,this.htEditor.loadData(p([e])),this.updateDropdownHeight(),this.cellProperties.strict===!0&&this.highlightBestMatchingChoice(t),this.instance.listen(),this.TEXTAREA.focus(),C(this.TEXTAREA,n,n==o?void 0:o)},E.prototype.updateDropdownHeight=function(){var e=this.htEditor.getColWidth(0)+w()+2,t=void 0===this.cellProperties.trimDropdown?!0:this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()},E.prototype.finishEditing=function(e){e||this.instance.removeHook("beforeKeyDown",o),S.prototype.finishEditing.apply(this,arguments)},E.prototype.highlightBestMatchingChoice=function(e){"number"==typeof e?this.htEditor.selectCell(e,0):this.htEditor.deselectCell()},E.sortByRelevance=function(e,t,n){var o,r,i,s,a,l=[],u=e.length,c=[];if(0===u){for(s=0,a=t.length;a>s;s++)c.push(s);return c}for(s=0,a=t.length;a>s;s++)o=f(t[s]),r=n?o.indexOf(e):o.toLowerCase().indexOf(e.toLowerCase()),-1!=r&&(i=o.length-r-u,l.push({baseIndex:s,index:r,charsLeft:i,value:o}));for(l.sort(function(e,t){return-1===t.index?-1:-1===e.index?1:e.indext.charsLeft?1:0:void 0}),s=0,a=l.length;a>s;s++)c.push(l[s].baseIndex);return c},E.prototype.getDropdownHeight=function(){var e=this.htEditor.getInstance().getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.choices.length>=t?t*e:this.choices.length*e+8},E.prototype.allowKeyEventPropagation=function(e){var t={row:this.htEditor.getSelectedRange()?this.htEditor.getSelectedRange().from.row:-1},n=!1;return e===d.ARROW_DOWN&&t.row-1&&(n=!0),n},_("autocomplete",E)},{editors:29,handsontableEditor:35,"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/unicode":53}],32:[function(e,t,n){"use strict";Object.defineProperties(n,{CheckboxEditor:{get:function(){return u}},__esModule:{value:!0}});var o,r,i,s=(o=e("editors"),o&&o.__esModule&&o||{"default":o}).registerEditor,a=(r=e("_baseEditor"),r&&r.__esModule&&r||{"default":r}).BaseEditor,l=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).hasClass,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(){var e=this.TD.querySelector('input[type="checkbox"]');l(e,"htBadValue")||e.click()},finishEditing:function(){},init:function(){},open:function(){},close:function(){},getValue:function(){},setValue:function(){},focus:function(){}},{},a),s("checkbox",u)},{_baseEditor:30,editors:29,"helpers/dom/element":45}],33:[function(e,t,n){"use strict";Object.defineProperties(n,{DateEditor:{get:function(){return S}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),f=h.addClass,p=h.outerHeight,g=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).deepExtend,m=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,v=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),w=(v.getEditor,v.registerEditor),y=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}).isMetaKey,b=(l=e("helpers/dom/event"),l&&l.__esModule&&l||{"default":l}).stopPropagation,C=(u=e("textEditor"),u&&u.__esModule&&u||{"default":u}).TextEditor,R=(c=e("moment"),c&&c.__esModule&&c||{"default":c})["default"],_=(d=e("pikaday"),d&&d.__esModule&&d||{"default":d})["default"];Handsontable.editors=Handsontable.editors||{},Handsontable.editors.DateEditor=S;var S=function(e){this.$datePicker=null,this.datePicker=null,this.datePickerStyle=null,this.defaultDateFormat="DD/MM/YYYY",this.isCellEdited=!1,this.parentDestroyed=!1,$traceurRuntime.superConstructor(E).call(this,e)},E=S;$traceurRuntime.createClass(S,{init:function(){var e=this;if("function"!=typeof R)throw new Error("You need to include moment.js to your project.");if("function"!=typeof _)throw new Error("You need to include Pikaday to your project.");$traceurRuntime.superGet(this,E.prototype,"init").call(this),this.instance.addHook("afterDestroy",function(){e.parentDestroyed=!0,e.destroyElements()})},createElements:function(){$traceurRuntime.superGet(this,E.prototype,"createElements").call(this),this.datePicker=document.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,f(this.datePicker,"htDatepickerHolder"),document.body.appendChild(this.datePicker),this.$datePicker=new _(this.getDatePickerConfig());var e=new m(this);e.addEventListener(this.datePicker,"mousedown",function(e){return b(e)}),this.hideDatepicker()},destroyElements:function(){this.$datePicker.destroy()},prepare:function(e,t,n,o,r,i){this._opened=!1,$traceurRuntime.superGet(this,E.prototype,"prepare").call(this,e,t,n,o,r,i)},open:function(){var e=void 0!==arguments[0]?arguments[0]:null;$traceurRuntime.superGet(this,E.prototype,"open").call(this),this.showDatepicker(e)},close:function(){var e=this;this._opened=!1,this.instance._registerTimeout(setTimeout(function(){e.instance.selection.refreshBorders()},0)),$traceurRuntime.superGet(this,E.prototype,"close").call(this)},finishEditing:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=void 0!==arguments[1]?arguments[1]:!1;if(e){var n=this.originalValue;void 0!==n&&this.setValue(n)}this.hideDatepicker(),$traceurRuntime.superGet(this,E.prototype,"finishEditing").call(this,e,t)},showDatepicker:function(e){this.$datePicker.config(this.getDatePickerConfig());var t,n=this.TD.getBoundingClientRect(),o=this.cellProperties.dateFormat||this.defaultDateFormat,r=this.$datePicker.config(),i=this.instance.view.isMouseDown(),s=e?y(e.keyCode):!1;this.datePickerStyle.top=window.pageYOffset+n.top+p(this.TD)+"px",this.datePickerStyle.left=window.pageXOffset+n.left+"px",this.$datePicker._onInputFocus=function(){},r.format=o,this.originalValue?(t=this.originalValue,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.cellProperties.defaultDate?(t=this.cellProperties.defaultDate,r.defaultDate=t,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.$datePicker.gotoToday(),this.datePickerStyle.display="block",this.$datePicker.show()},hideDatepicker:function(){this.datePickerStyle.display="none",this.$datePicker.hide()},getDatePickerConfig:function(){var e=this,t=this.TEXTAREA,n={};this.cellProperties&&this.cellProperties.datePickerConfig&&g(n,this.cellProperties.datePickerConfig);var o=n.onSelect,r=n.onClose;return n.field=t,n.trigger=t,n.container=this.datePicker,n.bound=!1,n.format=n.format||this.defaultDateFormat,n.reposition=n.reposition||!1,n.onSelect=function(t){isNaN(t.getTime())||(t=R(t).format(e.cellProperties.dateFormat||e.defaultDateFormat)),e.setValue(t),e.hideDatepicker(),o&&o()},n.onClose=function(){e.parentDestroyed||e.finishEditing(!1),r&&r()},n}},{},C),w("date",S)},{editors:29,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,moment:"moment",pikaday:"pikaday",textEditor:40}],34:[function(e,t,n){"use strict";Object.defineProperties(n,{DropdownEditor:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("editors"),o&&o.__esModule&&o||{"default":o}),s=(i.getEditor,i.registerEditor),a=(r=e("autocompleteEditor"),r&&r.__esModule&&r||{"default":r}).AutocompleteEditor,l=function(){$traceurRuntime.superConstructor(u).apply(this,arguments)},u=l;$traceurRuntime.createClass(l,{prepare:function(e,t,n,o,r,i){$traceurRuntime.superGet(this,u.prototype,"prepare").call(this,e,t,n,o,r,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}},{},a),Handsontable.hooks.add("beforeValidate",function(e,t,n,o){var r=this.getCellMeta(t,n);r.editor===Handsontable.editors.DropdownEditor&&void 0===r.strict&&(r.filter=!1,r.strict=!0)}),s("dropdown",l)},{autocompleteEditor:31,editors:29}],35:[function(e,t,n){"use strict";Object.defineProperties(n,{HandsontableEditor:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).extend,d=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).setCaretPosition,h=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),f=h.stopImmediatePropagation,p=h.isImmediatePropagationStopped,g=(a=e("editors"),a&&a.__esModule&&a||{"default":a}),m=(g.getEditor,g.registerEditor),v=(l=e("textEditor"),l&&l.__esModule&&l||{"default":l}).TextEditor,w=v.prototype.extend();w.prototype.createElements=function(){v.prototype.createElements.apply(this,arguments);var e=document.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()},w.prototype.prepare=function(e,t,n,o,r,i){v.prototype.prepare.apply(this,arguments);var s=this,a={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,afterOnCellMouseDown:function(){var e=this.getValue();void 0!==e&&s.setValue(e),s.instance.destroyEditor()}};this.cellProperties.handsontable&&c(a,i.handsontable),this.htOptions=a};var y=function(e){if(!p(e)){var t,n=this.getActiveEditor(),o=n.htEditor.getInstance();if(e.keyCode==u.ARROW_DOWN)if(o.getSelected()){var r=o.getSelected()[0],i=o.countRows()-1;t=Math.min(i,r+1)}else t=0;else if(e.keyCode==u.ARROW_UP&&o.getSelected()){var r=o.getSelected()[0];t=r-1}void 0!==t&&(0>t?o.deselectCell():o.selectCell(t,0),o.getData().length&&(e.preventDefault(),f(e),n.instance.listen(),n.TEXTAREA.focus()))}};w.prototype.open=function(){this.instance.addHook("beforeKeyDown",y),v.prototype.open.apply(this,arguments),this.htEditor&&this.htEditor.destroy(),this.htEditor=new Handsontable(this.htContainer,this.htOptions),this.cellProperties.strict?(this.htEditor.selectCell(0,0),this.TEXTAREA.style.visibility="hidden"):(this.htEditor.deselectCell(),this.TEXTAREA.style.visibility="visible"),d(this.TEXTAREA,0,this.TEXTAREA.value.length)},w.prototype.close=function(){this.instance.removeHook("beforeKeyDown",y),this.instance.listen(),v.prototype.close.apply(this,arguments)},w.prototype.focus=function(){this.instance.listen(),v.prototype.focus.apply(this,arguments)},w.prototype.beginEditing=function(e){var t=this.instance.getSettings().onBeginEditing;t&&t()===!1||v.prototype.beginEditing.apply(this,arguments)},w.prototype.finishEditing=function(e,t){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor&&this.htEditor.getSelected()){var n=this.htEditor.getInstance().getValue();void 0!==n&&this.setValue(n)}return v.prototype.finishEditing.apply(this,arguments)},w.prototype.assignHooks=function(){var e=this;this.instance.addHook("afterDestroy",function(){e.htEditor&&e.htEditor.destroy()})},m("handsontable",w)},{editors:29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,textEditor:40}],36:[function(e,t,n){"use strict";Object.defineProperties(n,{MobileTextEditor:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),d=c.stopImmediatePropagation,h=c.isImmediatePropagationStopped,f=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),p=f.addClass,g=f.getScrollLeft,m=f.getScrollTop,v=f.hasClass,w=f.isChildOf,y=f.offset,b=f.outerHeight,C=f.outerWidth,R=f.removeClass,_=f.setCaretPosition,S=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),E=(S.getEditor,S.registerEditor),T=(a=e("_baseEditor"),a&&a.__esModule&&a||{"default":a}).BaseEditor,O=(l=e("eventManager"),l&&l.__esModule&&l||{"default":l}).eventManager,M=T.prototype.extend(),k={},H=function(){this.controls={},this.controls.leftButton=document.createElement("DIV"),this.controls.leftButton.className="leftButton",this.controls.rightButton=document.createElement("DIV"),this.controls.rightButton.className="rightButton",this.controls.upButton=document.createElement("DIV"),this.controls.upButton.className="upButton",this.controls.downButton=document.createElement("DIV"), +this.controls.downButton.className="downButton";for(var e in this.controls)this.controls.hasOwnProperty(e)&&this.positionControls.appendChild(this.controls[e])};M.prototype.valueChanged=function(){return this.initValue!=this.getValue()},M.prototype.init=function(){var e=this;this.eventManager=O(this.instance),this.createElements(),this.bindEvents(),this.instance.addHook("afterDestroy",function(){e.destroy()})},M.prototype.getValue=function(){return this.TEXTAREA.value},M.prototype.setValue=function(e){this.initValue=e,this.TEXTAREA.value=e},M.prototype.createElements=function(){this.editorContainer=document.createElement("DIV"),this.editorContainer.className="htMobileEditorContainer",this.cellPointer=document.createElement("DIV"),this.cellPointer.className="cellPointer",this.moveHandle=document.createElement("DIV"),this.moveHandle.className="moveHandle",this.inputPane=document.createElement("DIV"),this.inputPane.className="inputs",this.positionControls=document.createElement("DIV"),this.positionControls.className="positionControls",this.TEXTAREA=document.createElement("TEXTAREA"),p(this.TEXTAREA,"handsontableInput"),this.inputPane.appendChild(this.TEXTAREA),this.editorContainer.appendChild(this.cellPointer),this.editorContainer.appendChild(this.moveHandle),this.editorContainer.appendChild(this.inputPane),this.editorContainer.appendChild(this.positionControls),H.call(this),document.body.appendChild(this.editorContainer)},M.prototype.onBeforeKeyDown=function(e){var t=this,n=t.getActiveEditor();if(e.target===n.TEXTAREA&&!h(e))switch(e.keyCode){case u.ENTER:n.close(),e.preventDefault();break;case u.BACKSPACE:d(e)}},M.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),p(this.editorContainer,"active"),R(this.cellPointer,"hidden"),this.updateEditorPosition()},M.prototype.focus=function(){this.TEXTAREA.focus(),_(this.TEXTAREA,this.TEXTAREA.value.length)},M.prototype.close=function(){this.TEXTAREA.blur(),this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),R(this.editorContainer,"active")},M.prototype.scrollToView=function(){var e=this.instance.getSelectedRange().highlight;this.instance.view.scrollViewport(e)},M.prototype.hideCellPointer=function(){v(this.cellPointer,"hidden")||p(this.cellPointer,"hidden")},M.prototype.updateEditorPosition=function(e,t){if(e&&t)e=parseInt(e,10),t=parseInt(t,10),this.editorContainer.style.top=t+"px",this.editorContainer.style.left=e+"px";else{var n=this.instance.getSelected(),o=this.instance.getCell(n[0],n[1]);if(k.cellPointer||(k.cellPointer={height:b(this.cellPointer),width:C(this.cellPointer)}),k.editorContainer||(k.editorContainer={width:C(this.editorContainer)}),void 0!==o){var r=this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer==window?0:g(this.instance.view.wt.wtOverlays.leftOverlay.holder),i=this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer==window?0:m(this.instance.view.wt.wtOverlays.topOverlay.holder),s=y(o),a=C(o),l={x:r,y:i};this.editorContainer.style.top=parseInt(s.top+b(o)-l.y+k.cellPointer.height,10)+"px",this.editorContainer.style.left=parseInt(window.innerWidth/2-k.editorContainer.width/2,10)+"px",s.left+a/2>parseInt(this.editorContainer.style.left,10)+k.editorContainer.width?this.editorContainer.style.left=window.innerWidth-k.editorContainer.width+"px":s.left+a/2n;n++)t[e[n]]=e[n];else"object"==typeof e&&(t=e);return t},S.prototype.getValue=function(){return this.select.value},S.prototype.setValue=function(e){this.select.value=e};var E=function(e){var t=this,n=t.getActiveEditor();switch(e.keyCode){case b.ARROW_UP:var o=n.select.selectedIndex-1;o>=0&&(n.select[o].selected=!0),y(e),e.preventDefault();break;case b.ARROW_DOWN:var r=n.select.selectedIndex+1;r<=n.select.length-1&&(n.select[r].selected=!0),y(e),e.preventDefault()}};S.prototype.open=function(){this._opened=!0,this.refreshDimensions(),this.select.style.display="",this.instance.addHook("beforeKeyDown",E)},S.prototype.close=function(){this._opened=!1,this.select.style.display="none",this.instance.removeHook("beforeKeyDown",E)},S.prototype.focus=function(){this.select.focus()},S.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close();var e,t=v(this.TD)+1,n=m(this.TD)+1,o=g(this.TD),r=g(this.instance.rootElement),i=p(this.TD),s=o.top-r.top-1-(i.scrollTop||0),a=o.left-r.left-1-(i.scrollLeft||0),l=this.checkEditorSection(),u=this.instance.getSettings();u.rowHeaders?1:0,u.colHeaders?1:0;switch(l){case"top":e=f(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=f(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=f(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=f(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=f(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}0===this.instance.getSelected()[0]&&(s+=1),0===this.instance.getSelected()[1]&&(a+=1);var c=this.select.style;e&&-1!=e?c[e[0]]=e[1]:w(this.select);var d=h(this.TD);parseInt(d.borderTopWidth,10)>0&&(n-=1),parseInt(d.borderLeftWidth,10)>0&&(t-=1),c.height=n+"px",c.minWidth=t+"px",c.top=s+"px",c.left=a+"px",c.margin="0px"}},S.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=101;break;case"corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.select.style.zIndex=""}return-1!=e&&-2!=e?e:void 0},R("select",S)},{_baseEditor:30,editors:29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],40:[function(e,t,n){"use strict";Object.defineProperties(n,{TextEditor:{get:function(){return H}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),d=c.addClass,h=c.getCaretPosition,f=c.getComputedStyle,p=c.getCssTransform,g=c.getScrollableElement,m=c.innerWidth,v=c.offset,w=c.resetCssTransform,y=c.setCaretPosition,b=(r=e("autoResize"),r&&r.__esModule&&r||{"default":r})["default"],C=(i=e("_baseEditor"),i&&i.__esModule&&i||{"default":i}).BaseEditor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,_=(a=e("editors"),a&&a.__esModule&&a||{"default":a}),S=(_.getEditor,_.registerEditor),E=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}).KEY_CODES,T=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}),O=T.stopPropagation,M=T.stopImmediatePropagation,k=T.isImmediatePropagationStopped,H=C.prototype.extend();H.prototype.init=function(){var e=this;this.createElements(),this.eventManager=R(this),this.bindEvents(),this.autoResize=b(),this.instance.addHook("afterDestroy",function(){e.destroy()})},H.prototype.getValue=function(){return this.TEXTAREA.value},H.prototype.setValue=function(e){this.TEXTAREA.value=e};var D=function(e){var t,n=this,o=n.getActiveEditor();if(t=(e.ctrlKey||e.metaKey)&&!e.altKey,e.target===o.TEXTAREA&&!k(e)){if(17===e.keyCode||224===e.keyCode||91===e.keyCode||93===e.keyCode)return void M(e);switch(e.keyCode){case E.ARROW_RIGHT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case E.ARROW_LEFT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case E.ARROW_UP:case E.ARROW_DOWN:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case E.ENTER:var r=o.instance.getSelected(),i=!(r[0]===r[2]&&r[1]===r[3]);if(t&&!i||e.altKey){if(o.isOpened()){var s=h(o.TEXTAREA),a=o.getValue(),l=a.slice(0,s)+"\n"+a.slice(s);o.setValue(l),y(o.TEXTAREA,s+1)}else o.beginEditing(o.originalValue+"\n");M(e)}e.preventDefault();break;case E.A:case E.X:case E.C:case E.V:t&&M(e);break;case E.BACKSPACE:case E.DELETE:case E.HOME:case E.END:M(e)}-1===[E.ARROW_UP,E.ARROW_RIGHT,E.ARROW_DOWN,E.ARROW_LEFT].indexOf(e.keyCode)&&o.autoResize.resize(String.fromCharCode(e.keyCode))}};H.prototype.open=function(){this.refreshDimensions(),this.instance.addHook("beforeKeyDown",D)},H.prototype.close=function(e){this.textareaParentStyle.display="none",this.autoResize.unObserve(),document.activeElement===this.TEXTAREA&&this.instance.listen(),this.instance.removeHook("beforeKeyDown",D)},H.prototype.focus=function(){this.TEXTAREA.focus(),y(this.TEXTAREA,this.TEXTAREA.value.length)},H.prototype.createElements=function(){this.TEXTAREA=document.createElement("TEXTAREA"),d(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.TEXTAREA_PARENT=document.createElement("DIV"),d(this.TEXTAREA_PARENT,"handsontableInputHolder"),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.textareaParentStyle.top=0,this.textareaParentStyle.left=0,this.textareaParentStyle.display="none",this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);var e=this;this.instance._registerTimeout(setTimeout(function(){e.refreshDimensions()},0))},H.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=101;break;case"top-left-corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"bottom-left-corner":e=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;case"bottom":e=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.textareaParentStyle.zIndex=""}return-1!=e&&-2!=e?e:void 0},H.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close(!0);var e,t=v(this.TD),n=v(this.instance.rootElement),o=g(this.TD),r=this.instance.countRows(),i=t.top-n.top-1-(o.scrollTop||0),s=t.left-n.left-1-(o.scrollLeft||0),a=this.instance.getSettings(),l=(a.rowHeaders?1:0,a.colHeaders?1:0),u=this.checkEditorSection(),c=this.TD.style.backgroundColor;switch(u){case"top":e=p(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=p(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=p(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=p(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=p(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(l&&0===this.instance.getSelected()[0]||a.fixedRowsBottom&&this.instance.getSelected()[0]===r-a.fixedRowsBottom)&&(i+=1),0===this.instance.getSelected()[1]&&(s+=1),e&&-1!=e?this.textareaParentStyle[e[0]]=e[1]:w(this.textareaParentStyle),this.textareaParentStyle.top=i+"px",this.textareaParentStyle.left=s+"px";var d=this.TD.offsetTop-this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition(),h=this.TD.offsetLeft-this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),y=m(this.TD)-8,b=this.instance.view.maximumVisibleElementWidth(h)-9,C=this.TD.scrollHeight+1,R=Math.max(this.instance.view.maximumVisibleElementHeight(d)-2,23),_=f(this.TD);this.TEXTAREA.style.fontSize=_.fontSize,this.TEXTAREA.style.fontFamily=_.fontFamily,this.TEXTAREA.style.backgroundColor="",this.TEXTAREA.style.backgroundColor=c?c:f(this.TEXTAREA).backgroundColor,this.autoResize.init(this.TEXTAREA,{minHeight:Math.min(C,R),maxHeight:R,minWidth:Math.min(y,b),maxWidth:b},!0),this.textareaParentStyle.display="block"}},H.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.TEXTAREA,"cut",function(e){O(e)}),this.eventManager.addEventListener(this.TEXTAREA,"paste",function(e){O(e)}),this.instance.addHook("afterScrollVertically",function(){e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterRowResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterDestroy",function(){e.eventManager.destroy()})},H.prototype.destroy=function(){this.eventManager.destroy()},S("text",H)},{_baseEditor:30,autoResize:"autoResize",editors:29,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],41:[function(e,t,n){"use strict";function o(e,t){var n,o,r,i,s,a="HOT-TABLE";if(t.isTargetWebComponent=!1,t.realTarget=t.target,!Handsontable.eventManager.isHotTableEnv)return t;for(t=l(t),s=t.path?t.path.length:0;s--;){if(t.path[s].nodeName===a)n=!0;else if(n&&t.path[s].shadowRoot){i=t.path[s];break}0!==s||i||(i=t.path[s])}return i||(i=t.target),t.isTargetWebComponent=!0,c()?t.realTarget=t.srcElement||t.toElement:(e instanceof Handsontable.Core||e instanceof Walkontable)&&(e instanceof Handsontable.Core?o=e.view?e.view.wt.wtTable.TABLE:null:e instanceof Walkontable&&(o=e.wtTable.TABLE.parentNode.parentNode),r=u(t.target,[a],o),r?t.realTarget=o.querySelector(a)||t.target:t.realTarget=t.target),Object.defineProperty(t,"target",{get:function(){return l(i)},enumerable:!0,configurable:!0}),t}function r(e){return new d(e)}Object.defineProperties(n,{EventManager:{get:function(){return d}},eventManager:{get:function(){return r}},__esModule:{value:!0}});var i,s,a=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),l=a.polymerWrap,u=a.closest,c=(s=e("helpers/browser"),s&&s.__esModule&&s||{"default":s}).isWebComponentSupportedNatively,d=function(){var e=void 0!==arguments[0]?arguments[0]:null;this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])};$traceurRuntime.createClass(d,{addEventListener:function(e,t,n){function r(e){void 0==e.target&&void 0!=e.srcElement&&(e.definePoperty?e.definePoperty("target",{value:e.srcElement}):e.target=e.srcElement),void 0==e.preventDefault&&(e.definePoperty?e.definePoperty("preventDefault",{value:function(){this.returnValue=!1}}):e.preventDefault=function(){this.returnValue=!1}),e=o(s,e),n.call(this,e)}var i=this,s=this.context;return this.context.eventListeners.push({element:e,event:t,callback:n,callbackProxy:r}),window.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r),Handsontable.countEventManagerListeners++,function(){i.removeEventListener(e,t,n)}},removeEventListener:function(e,t,n){for(var o,r=this.context.eventListeners.length;r--;)if(o=this.context.eventListeners[r],o.event==t&&o.element==e){if(n&&n!=o.callback)continue;this.context.eventListeners.splice(r,1),o.element.removeEventListener?o.element.removeEventListener(o.event,o.callbackProxy,!1):o.element.detachEvent("on"+o.event,o.callbackProxy),Handsontable.countEventManagerListeners--}},clearEvents:function(){if(this.context)for(var e=this.context.eventListeners.length;e--;){var t=this.context.eventListeners[e];t&&this.removeEventListener(t.element,t.event,t.callback)}},clear:function(){this.clearEvents()},destroy:function(){this.clearEvents(),this.context=null},fireEvent:function(e,t){var n,o={bubbles:!0,cancelable:"mousemove"!==t,view:window,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};document.createEvent?(n=document.createEvent("MouseEvents"),n.initMouseEvent(t,o.bubbles,o.cancelable,o.view,o.detail,o.screenX,o.screenY,o.clientX,o.clientY,o.ctrlKey,o.altKey,o.shiftKey,o.metaKey,o.button,o.relatedTarget||document.body.parentNode)):n=document.createEventObject(),e.dispatchEvent?e.dispatchEvent(n):e.fireEvent("on"+t,n)}},{}),window.Handsontable=window.Handsontable||{},Handsontable.countEventManagerListeners=0,Handsontable.eventManager=r},{"helpers/browser":43,"helpers/dom/element":45}],42:[function(e,t,n){"use strict";function o(e){for(var t=0,n=e.length;n>t;)e[t]=[e[t]],t++}function r(e,t){for(var n=0,o=t.length;o>n;)e.push(t[n]),n++}function i(e){var t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;for(var n=e.length,o=e[0].length,r=0;n>r;r++)for(var i=0;o>i;i++)t[i]||(t[i]=[]),t[i][r]=e[r][i];return t}function s(e,t,n,o){var r=-1,i=e.length;for(o&&i&&(n=e[++r]);++rt?e:t},Array.isArray(e)?e[0]:void 0)}function h(e){return s(e,function(e,t){return t>e?e:t},Array.isArray(e)?e[0]:void 0)}function f(e){return e.length?c(e)/e.length:0}function p(e){return s(e,function(e,t){return e.concat(Array.isArray(t)?p(t):t)},[])}function g(e){var t=[];return u(e,function(e){-1===t.indexOf(e)&&t.push(e)}),t}Object.defineProperties(n,{to2dArray:{get:function(){return o}},extendArray:{get:function(){return r}},pivot:{get:function(){return i}},arrayReduce:{get:function(){return s}},arrayFilter:{get:function(){return a}},arrayMap:{get:function(){return l}},arrayEach:{get:function(){return u}},arraySum:{get:function(){return c}},arrayMax:{get:function(){return d}},arrayMin:{get:function(){return h}},arrayAvg:{get:function(){return f}},arrayFlatten:{get:function(){return p}},arrayUnique:{get:function(){return g}},__esModule:{value:!0}})},{}],43:[function(e,t,n){"use strict";function o(){return f}function r(){return p}function i(){return g}function s(){return m}function a(e){return e||(e=navigator.userAgent),/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e)}function l(){return"ontouchstart"in window}function u(){var e=document.createElement("div");return e.createShadowRoot&&e.createShadowRoot.toString().match(/\[native code\]/)?!0:!1}function c(){var e=document.createElement("TABLE");e.style.borderSpacing=0,e.style.borderWidth=0,e.style.padding=0;var t=document.createElement("TBODY");e.appendChild(t),t.appendChild(document.createElement("TR")),t.firstChild.appendChild(document.createElement("TD")),t.firstChild.firstChild.innerHTML="t
t";var n=document.createElement("CAPTION");n.innerHTML="c
c
c
c",n.style.padding=0,n.style.margin=0,e.insertBefore(n,t),document.body.appendChild(e),h=e.offsetHeight<2*e.lastChild.offsetHeight,document.body.removeChild(e)}function d(){return void 0===h&&c(),h}Object.defineProperties(n,{isIE8:{get:function(){return o}},isIE9:{get:function(){return r}},isSafari:{get:function(){return i}},isChrome:{get:function(){return s}},isMobileBrowser:{get:function(){return a}},isTouchSupported:{get:function(){return l}},isWebComponentSupportedNatively:{get:function(){return u}},hasCaptionProblem:{get:function(){return d}},__esModule:{value:!0}});var h,f=!document.createTextNode("test").textContent,p=!!document.documentMode,g=/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),m=/Chrome/.test(navigator.userAgent)&&/Google/.test(navigator.vendor)},{}],44:[function(e,t,n){"use strict";function o(e){for(var t,n=e+1,o="";n>0;)t=(n-1)%26,o=String.fromCharCode(65+t)+o,n=parseInt((n-t)/26,10);return o}function r(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s=[];for(r=0;t>r;r++)s.push(o(r)+(n+1));i.push(s)}return i}function i(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s={};for(r=0;t>r;r++)s["prop"+r]=o(r)+(n+1);i.push(s)}return i}function s(e,t){for(var n,o=[],r=0;e>r;r++){n=[];for(var i=0;t>i;i++)n.push("");o.push(n)}return o}function a(e){var t,n,o,r,i=[],s=0;for(t=0,n=e.length;n>t;t++)for(o=0,r=e[t].length;r>o;o++)o==s&&(i.push([]),s++),i[o].push(e[t][o]);return i}function l(e,t){function n(e){var t=Handsontable.cellTypes[e];if("undefined"==typeof t)throw new Error('You declared cell type "'+e+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');return t}return t="undefined"==typeof t?!0:t,function(o,r){return function i(o){if(o){if(o.hasOwnProperty(e)&&void 0!==o[e])return o[e];if(o.hasOwnProperty("type")&&o.type){var r;if("string"!=typeof o.type)throw new Error("Cell type must be a string ");if(r=n(o.type),r.hasOwnProperty(e))return r[e];if(t)return}return i(c(o))}}("number"==typeof o?this.getCellMeta(o,r):o)}}Object.defineProperties(n,{spreadsheetColumnLabel:{get:function(){return o}},createSpreadsheetData:{get:function(){return r}},createSpreadsheetObjectData:{get:function(){return i}},createEmptySpreadsheetData:{get:function(){return s}},translateRowsToColumns:{get:function(){return a}},cellMethodLookupFactory:{get:function(){return l}},__esModule:{value:!0}});var u,c=(u=e("object"),u&&u.__esModule&&u||{"default":u}).getPrototypeOf},{object:50}],45:[function(e,t,n){"use strict";function o(e,t,n){for(;null!=e&&e!==n;){if(e.nodeType===Node.ELEMENT_NODE&&(t.indexOf(e.nodeName)>-1||t.indexOf(e)>-1))return e;e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode}return null}function r(e,t){var n=e.parentNode,o=[];for("string"==typeof t?o=Array.prototype.slice.call(document.querySelectorAll(t),0):o.push(t);null!=n;){if(o.indexOf(n)>-1)return!0;n=n.parentNode}return!1}function i(e){function t(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName===o.toUpperCase()}var n,o="hot-table",r=!1;for(n=s(e);null!=n;){if(t(n)){r=!0;break}if(n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(r=t(n.host))break;n=n.host}n=n.parentNode}return r}function s(e){return"undefined"!=typeof Polymer&&"function"==typeof wrap?wrap(e):e}function a(e){return"undefined"!=typeof Polymer&&"function"==typeof unwrap?unwrap(e):e}function l(e){var t=0;if(e.previousSibling)for(;e=e.previousSibling;)++t;return t}function u(e,t){var n=document.querySelector(".ht_clone_"+e);return n?n.contains(t):null}function c(e){var t=0,n=[];if(!e||!e.length)return n;for(;e[t];)n.push(e[t]),t++;return n}function d(e,t){return K(e,t)}function h(e,t){return X(e,t)}function f(e,t){return q(e,t)}function p(e,t){if(3===e.nodeType)t.removeChild(e);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(e.nodeName)>-1)for(var n=e.childNodes,o=n.length-1;o>=0;o--)p(n[o],e)}function g(e){for(var t;t=e.lastChild;)e.removeChild(t)}function m(e,t){se.test(t)?e.innerHTML=t:v(e,t)}function v(e,t){var n=e.firstChild;n&&3===n.nodeType&&null===n.nextSibling?ae?n.textContent=t:n.data=t:(g(e),e.appendChild(document.createTextNode(t)))}function w(e){for(var t=e;a(t)!==document.documentElement;){if(null===t)return!1;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(t.host){if(t.host.impl)return w(t.host.impl);if(t.host)return w(t.host);throw new Error("Lost in Web Components world")}return!1}if("none"===t.style.display)return!1;t=t.parentNode}return!0}function y(e){var t,n,o,r,i;if(r=document.documentElement,te()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName)return i=e.getBoundingClientRect(),{top:i.top+(window.pageYOffset||r.scrollTop)-(r.clientTop||0),left:i.left+(window.pageXOffset||r.scrollLeft)-(r.clientLeft||0)};for(t=e.offsetLeft,n=e.offsetTop,o=e;(e=e.offsetParent)&&e!==document.body;)t+=e.offsetLeft,n+=e.offsetTop,o=e;return o&&"fixed"===o.style.position&&(t+=window.pageXOffset||r.scrollLeft,n+=window.pageYOffset||r.scrollTop),{left:t,top:n}}function b(){var e=window.scrollY;return void 0===e&&(e=document.documentElement.scrollTop),e}function C(){var e=window.scrollX;return void 0===e&&(e=document.documentElement.scrollLeft),e}function R(e){return e===window?b():e.scrollTop}function _(e){return e===window?C():e.scrollLeft}function S(e){for(var t,n,o,r=e.parentNode,i=["auto","scroll"],s="",a="",l="",u="";r&&r.style&&document.body!==r;){if(t=r.style.overflow,n=r.style.overflowX,o=r.style.overflowY,"scroll"==t||"scroll"==n||"scroll"==o)return r;if(window.getComputedStyle&&(s=window.getComputedStyle(r),a=s.getPropertyValue("overflow"),l=s.getPropertyValue("overflow-y"),u=s.getPropertyValue("overflow-x"),"scroll"===a||"scroll"===u||"scroll"===l))return r;if(r.clientHeight<=r.scrollHeight&&(-1!==i.indexOf(o)||-1!==i.indexOf(t)||-1!==i.indexOf(a)||-1!==i.indexOf(l)))return r;if(r.clientWidth<=r.scrollWidth&&(-1!==i.indexOf(n)||-1!==i.indexOf(t)||-1!==i.indexOf(a)||-1!==i.indexOf(u)))return r;r=r.parentNode}return window}function E(e){for(var t=e.parentNode;t&&t.style&&document.body!==t;){if("visible"!==t.style.overflow&&""!==t.style.overflow)return t;if(window.getComputedStyle){var n=window.getComputedStyle(t);if("visible"!==n.getPropertyValue("overflow")&&""!==n.getPropertyValue("overflow"))return t}t=t.parentNode}return window}function T(e,t){if(e){if(e!==window){var n,o=e.style[t];return""!==o&&void 0!==o?o:(n=O(e),""!==n[t]&&void 0!==n[t]?n[t]:void 0)}if("width"===t)return window.innerWidth+"px";if("height"===t)return window.innerHeight+"px"; +}}function O(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}function M(e){return e.offsetWidth}function k(e){return te()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName?e.offsetHeight+e.firstChild.offsetHeight:e.offsetHeight}function H(e){return e.clientHeight||e.innerHeight}function D(e){return e.clientWidth||e.innerWidth}function x(e,t,n){window.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function A(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function P(e){if(e.selectionStart)return e.selectionStart;if(document.selection){e.focus();var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange(),o=n.duplicate();return n.moveToBookmark(t.getBookmark()),o.setEndPoint("EndToStart",n),o.text.length}return 0}function N(e){if(e.selectionEnd)return e.selectionEnd;if(document.selection){var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange();return n.text.indexOf(t.text)+t.text.length}}function L(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e}function W(e,t,n){if(void 0===n&&(n=t),e.setSelectionRange){e.focus();try{e.setSelectionRange(t,n)}catch(o){var r=e.parentNode,i=r.style.display;r.style.display="block",e.setSelectionRange(t,n),r.style.display=i}}else if(e.createTextRange){var s=e.createTextRange();s.collapse(!0),s.moveEnd("character",n),s.moveStart("character",t),s.select()}}function I(){var e=document.createElement("p");e.style.width="100%",e.style.height="200px";var t=document.createElement("div");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.visibility="hidden",t.style.width="200px",t.style.height="150px",t.style.overflow="hidden",t.appendChild(e),(document.body||document.documentElement).appendChild(t);var n=e.offsetWidth;t.style.overflow="scroll";var o=e.offsetWidth;return n==o&&(o=t.clientWidth),(document.body||document.documentElement).removeChild(t),n-o}function j(){return void 0===ie&&(ie=I()),ie}function B(e,t,n){J()||Q()?(e.style.top=n,e.style.left=t):ee()?e.style["-webkit-transform"]="translate3d("+t+","+n+",0)":e.style.transform="translate3d("+t+","+n+",0)"}function F(e){var t;return e.style.transform&&""!==(t=e.style.transform)?["transform",t]:e.style["-webkit-transform"]&&""!==(t=e.style["-webkit-transform"])?["-webkit-transform",t]:-1}function V(e){e.transform&&""!==e.transform?e.transform="":e["-webkit-transform"]&&""!==e["-webkit-transform"]&&(e["-webkit-transform"]="")}function z(e){var t=["INPUT","SELECT","TEXTAREA"];return t.indexOf(e.nodeName)>-1||"true"===e.contentEditable}function Y(e){return z(e)&&-1==e.className.indexOf("handsontableInput")&&-1==e.className.indexOf("copyPaste")}function U(e){return ce.call(window,e)}function G(e){de.call(window,e)}Object.defineProperties(n,{closest:{get:function(){return o}},isChildOf:{get:function(){return r}},isChildOfWebComponentTable:{get:function(){return i}},polymerWrap:{get:function(){return s}},polymerUnwrap:{get:function(){return a}},index:{get:function(){return l}},overlayContainsElement:{get:function(){return u}},hasClass:{get:function(){return d}},addClass:{get:function(){return h}},removeClass:{get:function(){return f}},removeTextNodes:{get:function(){return p}},empty:{get:function(){return g}},HTML_CHARACTERS:{get:function(){return se}},fastInnerHTML:{get:function(){return m}},fastInnerText:{get:function(){return v}},isVisible:{get:function(){return w}},offset:{get:function(){return y}},getWindowScrollTop:{get:function(){return b}},getWindowScrollLeft:{get:function(){return C}},getScrollTop:{get:function(){return R}},getScrollLeft:{get:function(){return _}},getScrollableElement:{get:function(){return S}},getTrimmingContainer:{get:function(){return E}},getStyle:{get:function(){return T}},getComputedStyle:{get:function(){return O}},outerWidth:{get:function(){return M}},outerHeight:{get:function(){return k}},innerHeight:{get:function(){return H}},innerWidth:{get:function(){return D}},addEvent:{get:function(){return x}},removeEvent:{get:function(){return A}},getCaretPosition:{get:function(){return P}},getSelectionEndPosition:{get:function(){return N}},getSelectionText:{get:function(){return L}},setCaretPosition:{get:function(){return W}},getScrollbarWidth:{get:function(){return j}},setOverlayPosition:{get:function(){return B}},getCssTransform:{get:function(){return F}},resetCssTransform:{get:function(){return V}},isInput:{get:function(){return z}},isOutsideInput:{get:function(){return Y}},requestAnimationFrame:{get:function(){return U}},cancelAnimationFrame:{get:function(){return G}},__esModule:{value:!0}});var $,K,X,q,Z=($=e("../browser"),$&&$.__esModule&&$||{"default":$}),J=Z.isIE8,Q=Z.isIE9,ee=Z.isSafari,te=Z.hasCaptionProblem,ne=document.documentElement.classList?!0:!1;if(ne){var oe=function(){var e=document.createElement("div");return e.classList.add("test","test2"),e.classList.contains("test2")}();K=function(e,t){return""===t?!1:e.classList.contains(t)},X=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),oe)e.classList.add.apply(e.classList,t);else for(;t&&t[n];)e.classList.add(t[n]),n++},q=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),oe)e.classList.remove.apply(e.classList,t);else for(;t&&t[n];)e.classList.remove(t[n]),n++}}else{var re=function(e){return new RegExp("(\\s|^)"+e+"(\\s|$)")};K=function(e,t){return e.className.match(re(t))?!0:!1},X=function(e,t){var n=0,o=e.className;if("string"==typeof t&&(t=t.split(" ")),""===o)o=t.join(" ");else for(;t&&t[n];)re(t[n]).test(o)||(o+=" "+t[n]),n++;e.className=o},q=function(e,t){var n=0,o=e.className;for("string"==typeof t&&(t=t.split(" "));t&&t[n];)o=o.replace(re(t[n])," ").trim(),n++;e.className!==o&&(e.className=o)}}for(var ie,se=/(<(.*)>|&(.*);)/,ae=document.createTextNode("test").textContent?!0:!1,le=0,ue=["ms","moz","webkit","o"],ce=window.requestAnimationFrame,de=window.cancelAnimationFrame,he=0;he=t&&n(o)!==!1;);}function s(e,t){return t=parseInt(t.toString().replace("%",""),10),t=parseInt(e*t/100)}Object.defineProperties(n,{isNumeric:{get:function(){return o}},rangeEach:{get:function(){return r}},rangeEachReverse:{get:function(){return i}},valueAccordingPercent:{get:function(){return s}},__esModule:{value:!0}})},{}],50:[function(e,t,n){"use strict";function o(e){var t;return Array.isArray(e)?t=[]:(t={},p(e,function(e,n){e&&"object"==typeof e&&!Array.isArray(e)?t[n]=o(e):Array.isArray(e)?e.length&&"object"==typeof e[0]&&!Array.isArray(e[0])?t[n]=[o(e[0])]:t[n]=[]:t[n]=null})),t}function r(e,t){return t.prototype.constructor=t,e.prototype=new t,e.prototype.constructor=e,e}function i(e,t){return p(t,function(t,n){e[n]=t}),e}function s(e,t){p(t,function(n,o){t[o]&&"object"==typeof t[o]?(e[o]||(Array.isArray(t[o])?e[o]=[]:e[o]={}),s(e[o],t[o])):e[o]=t[o]})}function a(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}function l(e){var t={};return p(e,function(e,n){return t[n]=e}),t}function u(e){for(var t=[],n=1;no;o++)n.prototype[t[o]]=void 0;return n}Object.defineProperties(n,{columnFactory:{get:function(){return o}},__esModule:{value:!0}});var r,i=(r=e("object"),r&&r.__esModule&&r||{"default":r}).inherit},{object:50}],52:[function(e,t,n){"use strict";function o(e){return e[0].toUpperCase()+e.substr(1)}function r(e,t){var n=!0;return h(t.length-1,function(o){return e.charAt(o)!==t.charAt(o)?(n=!1,!1):void 0}),n}function i(e,t){var n=!0,o=t.length-1,r=e.length-1;return h(o,function(i){var s=r-i,a=o-i;return e.charAt(s)!==t.charAt(a)?(n=!1,!1):void 0}),n}function s(){for(var e=[],t=0;t=48&&57>=e||e>=96&&111>=e||e>=186&&192>=e||e>=219&&222>=e||e>=226||e>=65&&90>=e}function r(e){var t=[u.ARROW_DOWN,u.ARROW_UP,u.ARROW_LEFT,u.ARROW_RIGHT,u.HOME,u.END,u.DELETE,u.BACKSPACE,u.F1,u.F2,u.F3,u.F4,u.F5,u.F6,u.F7,u.F8,u.F9,u.F10,u.F11,u.F12,u.TAB,u.PAGE_DOWN,u.PAGE_UP,u.ENTER,u.ESCAPE,u.SHIFT,u.CAPS_LOCK,u.ALT];return-1!==t.indexOf(e)}function i(e){return-1!==[u.CONTROL_LEFT,224,u.COMMAND_LEFT,u.COMMAND_RIGHT].indexOf(e)}function s(e,t){var n=t.split("|"),o=!1;return l(n,function(t){return e===u[t]?(o=!0,!1):void 0}),o}Object.defineProperties(n,{KEY_CODES:{get:function(){return u}},isPrintableChar:{get:function(){return o}},isMetaKey:{get:function(){return r}},isCtrlKey:{get:function(){return i}},isKey:{get:function(){return s}},__esModule:{value:!0}});var a,l=(a=e("array"),a&&a.__esModule&&a||{"default":a}).arrayEach,u={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL_LEFT:91,COMMAND_LEFT:17,COMMAND_RIGHT:93,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86}},{array:42}],54:[function(e,t,n){"use strict";Object.defineProperties(n,{localHooks:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/array"),o&&o.__esModule&&o||{"default":o}).arrayEach,s=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,a="localHooks",l={_localHooks:Object.create(null),addLocalHook:function(e,t){this._localHooks[e]||(this._localHooks[e]=[]),this._localHooks[e].push(t)},runLocalHooks:function(e){for(var t=[],n=1;n=0?(t.skip=!0,!0):!1},has:function(e){var t=void 0!==arguments[1]?arguments[1]:null,n=this.getBucket(t);return void 0!==n[e]&&n[e].length?!0:!1},run:function(e,t,n,o,r,i,s,a){var l=this.globalBucket[t],u=-1,c=l?l.length:0;if(c)for(;++u=0},getRegistered:function(){return i}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.Hooks=l},{"helpers/array":42,"helpers/object":50}],57:[function(e,t,n){"use strict";function o(e,t){e=c(e),Handsontable.plugins[e]=t,Handsontable.hooks.add("construct",function(){var n;d.has(this)||d.set(this,{}),n=d.get(this),n[e]||(n[e]=new t(this))}),Handsontable.hooks.add("afterDestroy",function(){if(d.has(this)){var e=d.get(this);u(e,function(e){return e.destroy()}),d["delete"](this)}})}function r(e,t){if("string"!=typeof t)throw Error('Only strings can be passed as "plugin" parameter');var n=c(t);return d.has(e)&&d.get(e)[n]?d.get(e)[n]:void 0}function i(e){return d.has(e)?Object.keys(d.get(e)):[]}function s(e,t){var n=null;return d.has(e)&&u(d.get(e),function(e,o){e===t&&(n=o)}),n}Object.defineProperties(n,{registerPlugin:{get:function(){return o}},getPlugin:{get:function(){return r}},getRegistredPluginNames:{get:function(){return i}},getPluginName:{get:function(){return s}},__esModule:{value:!0}});var a,l,u=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}).objectEach,c=(l=e("helpers/string"),l&&l.__esModule&&l||{"default":l}).toUpperCaseFirst,d=new WeakMap;Handsontable.plugins=Handsontable.plugins||{},Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.registerPlugin=o},{"helpers/object":50,"helpers/string":52}],58:[function(e,t,n){"use strict";Object.defineProperties(n,{"default":{get:function(){return m}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/object"),o&&o.__esModule&&o||{"default":o}),a=s.defineGetter,l=s.objectEach,u=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}),d=c.getRegistredPluginNames,h=c.getPluginName,f=new WeakMap,p=null,g=function(e){var t=this;a(this,"hot",e,{writable:!1}),f.set(this,{hooks:{}}),p=null,this.pluginName=null,this.pluginsInitializedCallbacks=[],this.isPluginsReady=!1,this.enabled=!1,this.initialized=!1,this.hot.addHook("afterPluginsInitialized",function(){return t.onAfterPluginsInitialized()}),this.hot.addHook("afterUpdateSettings",function(){return t.onUpdateSettings()}),this.hot.addHook("beforeInit",function(){return t.init()})};$traceurRuntime.createClass(g,{init:function(){this.pluginName=h(this.hot,this),this.isEnabled&&this.isEnabled()&&this.enablePlugin(),p||(p=d(this.hot)),p.indexOf(this.pluginName)>=0&&p.splice(p.indexOf(this.pluginName),1),p.length||this.hot.runHooks("afterPluginsInitialized"),this.initialized=!0},enablePlugin:function(){this.enabled=!0},disablePlugin:function(){this.eventManager&&this.eventManager.clear(),this.clearHooks(),this.enabled=!1},addHook:function(e,t){var n=f.get(this).hooks[e]=f.get(this).hooks[e]||[];this.hot.addHook(e,t),n.push(t),f.get(this).hooks[e]=n},removeHooks:function(e){var t=this;u(f.get(this).hooks[e]||[],function(n){t.hot.removeHook(e,n)})},clearHooks:function(){var e=this,t=f.get(this).hooks;l(t,function(t,n){return e.removeHooks(n)}),t.length=0},callOnPluginsReady:function(e){this.isPluginsReady?e():this.pluginsInitializedCallbacks.push(e)},onAfterPluginsInitialized:function(){u(this.pluginsInitializedCallbacks,function(e){return e()}),this.pluginsInitializedCallbacks.length=0,this.isPluginsReady=!0},onUpdateSettings:function(){this.isEnabled&&(this.enabled&&!this.isEnabled()&&this.disablePlugin(),!this.enabled&&this.isEnabled()&&this.enablePlugin(),this.enabled&&this.isEnabled()&&this.updatePlugin())},updatePlugin:function(){},destroy:function(){var e=this;this.eventManager&&this.eventManager.destroy(),this.clearHooks(),l(this,function(t,n){"hot"!==n&&(e[n]=null)}),delete this.hot}},{});var m=g;Handsontable.plugins.BasePlugin=g},{"helpers/array":42,"helpers/object":50,plugins:57}],59:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoColumnSize:{get:function(){return D}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],p=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),g=p.arrayEach,m=p.arrayFilter,v=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),w=v.cancelAnimationFrame,y=v.requestAnimationFrame,b=v.isVisible,C=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,R=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),_=R.isObject,S=(R.objectEach,l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}),E=S.valueAccordingPercent,T=S.rangeEach,O=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,M=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,k=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,H=(h=e("3rdparty/walkontable/src/calculator/viewportColumns"),h&&h.__esModule&&h||{"default":h}).WalkontableViewportColumnsCalculator,D=function(e){var t=this;$traceurRuntime.superConstructor(x).call(this,e),this.widths=[],this.ghostTable=new C(this.hot),this.samplesGenerator=new M(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeColumnResize",function(e,n,o){return t.onBeforeColumnResize(e,n,o)})},x=D;$traceurRuntime.createClass(D,{isEnabled:function(){return this.hot.getSettings().autoColumnSize!==!1&&!this.hot.getSettings().colWidths},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("modifyColWidth",function(t,n){return e.getColumnWidth(n,t)}),$traceurRuntime.superGet(this,x.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,x.prototype,"disablePlugin").call(this)},calculateColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countRows()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),T(e.from,e.to,function(e){if(n||void 0===o.widths[e]&&!o.hot._getColWidthFromSettings(e)){var r=o.samplesGenerator.generateColumnSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addColumn(t,e)})}}),this.ghostTable.columns.length&&(this.ghostTable.getWidths(function(e,t){return o.widths[e]=t}),this.ghostTable.clean())},calculateAllColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=this,n=0,o=this.hot.countCols()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateColumnsWidth({from:n,to:Math.min(n+x.CALCULATION_STEP,o)},e),n=n+x.CALCULATION_STEP+1,void(o>n?r=y(i):(w(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(w(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateColumnsWidth({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllColumnsWidth:function(){this.hot.view&&b(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllColumnsWidth())},getSyncCalculationLimit:function(){var e=x.SYNC_CALCULATION_LIMIT,t=this.hot.countCols()-1;return _(this.hot.getSettings().autoColumnSize)&&(e=this.hot.getSettings().autoColumnSize.syncLimit,k(e)?e=E(t,e):e>>=0),Math.min(e,t)},getColumnWidth:function(e){var t=arguments[1],n=void 0!==arguments[2]?arguments[2]:!0,o=t;return void 0===o&&(o=this.widths[e],n&&"number"==typeof o&&(o=Math.max(o,H.DEFAULT_WIDTH))),o},getFirstVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getFirstVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getFirstRenderedColumn():-1},getLastVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getLastVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getLastRenderedColumn():-1},clearCache:function(){this.widths.length=0},isNeedRecalculate:function(){return m(this.widths,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateColumnsWidth({from:this.getFirstVisibleColumn(),to:this.getLastVisibleColumn()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllColumnsWidth()},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllColumnsWidth():setTimeout(function(){e.hot&&e.recalculateAllColumnsWidth()},0)},onBeforeChange:function(e){var t=this;g(e,function(e){return t.widths[e[1]]=void 0})},onBeforeColumnResize:function(e,t,n){return n&&(this.calculateColumnsWidth(e,void 0,!0),t=this.getColumnWidth(e,void 0,!1)),t},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,x.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 50}},f),O("autoColumnSize",D)},{"3rdparty/walkontable/src/calculator/viewportColumns":3,_base:58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,plugins:57,"utils/ghostTable":98,"utils/samplesGenerator":99}],60:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoRowSize:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],f=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),p=(f.arrayEach,f.arrayFilter),g=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),m=g.cancelAnimationFrame,v=g.requestAnimationFrame,w=g.isVisible,y=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,b=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),C=b.isObject,R=(b.objectEach,l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}),_=R.valueAccordingPercent,S=R.rangeEach,E=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,T=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,O=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,M=function(e){var t=this;$traceurRuntime.superConstructor(k).call(this,e),this.heights=[],this.ghostTable=new y(this.hot),this.samplesGenerator=new T(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeRowResize",function(e,n,o){return t.onBeforeRowResize(e,n,o)})},k=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().autoRowSize===!0||C(this.hot.getSettings().autoRowSize)},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeColumnMove",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnResize",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnSort",function(){return e.clearCache()}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("beforeRowMove",function(t,n){return e.onBeforeRowMove(t,n)}),this.addHook("modifyRowHeight",function(t,n){return e.getRowHeight(n,t)}),$traceurRuntime.superGet(this,k.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,k.prototype,"disablePlugin").call(this)},calculateRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countCols()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),S(e.from,e.to,function(e){if(n||void 0===o.heights[e]){var r=o.samplesGenerator.generateRowSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addRow(t,e)})}}),this.ghostTable.rows.length&&(this.ghostTable.getHeights(function(e,t){return o.heights[e]=t}),this.ghostTable.clean())},calculateAllRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=this,n=0,o=this.hot.countRows()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateRowsHeight({from:n,to:Math.min(n+k.CALCULATION_STEP,o)},e),n=n+k.CALCULATION_STEP+1,void(o>n?r=v(i):(m(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(m(r), +void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateRowsHeight({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllRowsHeight:function(){w(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllRowsHeight())},getSyncCalculationLimit:function(){var e=k.SYNC_CALCULATION_LIMIT,t=this.hot.countRows()-1;return C(this.hot.getSettings().autoRowSize)&&(e=this.hot.getSettings().autoRowSize.syncLimit,O(e)?e=_(t,e):e>>=0),Math.min(e,t)},getRowHeight:function(e){var t=arguments[1],n=t;return void 0!==this.heights[e]&&this.heights[e]>(t||0)&&(n=this.heights[e]),n},getFirstVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getFirstVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getFirstRenderedRow():-1},getLastVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getLastVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getLastRenderedRow():-1},clearCache:function(){this.heights.length=0},clearCacheByRange:function(e){var t=this;"number"==typeof e&&(e={from:e,to:e}),S(Math.min(e.from,e.to),Math.max(e.from,e.to),function(e){return t.heights[e]=void 0})},isNeedRecalculate:function(){return p(this.heights,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateRowsHeight({from:this.getFirstVisibleRow(),to:this.getLastVisibleRow()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllRowsHeight()},onBeforeRowMove:function(e,t){this.clearCacheByRange({from:e,to:t}),this.calculateAllRowsHeight()},onBeforeRowResize:function(e,t,n){return n&&(this.calculateRowsHeight(e,void 0,!0),t=this.getRowHeight(e)),t},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllRowsHeight():setTimeout(function(){e.hot&&e.recalculateAllRowsHeight()},0)},onBeforeChange:function(e){var t=null;1===e.length?t=e[0][0]:e.length>1&&(t={from:e[0][0],to:e[e.length-1][0]}),null!==t&&this.clearCacheByRange(t)},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,k.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 500}},h),E("autoRowSize",M)},{_base:58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,plugins:57,"utils/ghostTable":98,"utils/samplesGenerator":99}],61:[function(e,t,n){"use strict";function o(e,t,n,o){var r,i,s,a,l,u=n.length,c=n?n[0].length:0,d=[],h=[];if(r=t.row-e.row,i=t.col-e.col,-1!==["down","up"].indexOf(o)){for(var f=0;i>=f;f++)s=parseInt(n[0][f],10),a=parseInt(n[u-1][f],10),l=("down"===o?a-s:s-a)/(u-1)||0,h.push(l);d.push(h)}if(-1!==["right","left"].indexOf(o))for(var p=0;r>=p;p++)s=parseInt(n[p][0],10),a=parseInt(n[p][c-1],10),l=("right"===o?a-s:s-a)/(c-1)||0,h=[],h.push(l),d.push(h);return d}function r(e){function t(t){return e.autofill?void(e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged>1&&e.autofill.apply(),e.autofill.handle.isDragged=0,a=!1)):!0}function n(e){var t,n;return s.instance.autofill?(t=c(s.instance.table).top-(window.pageYOffset||document.documentElement.scrollTop)+d(s.instance.table),n=c(s.instance.table).left-(window.pageXOffset||document.documentElement.scrollLeft)+h(s.instance.table),s.addingStarted===!1&&s.instance.autofill.handle.isDragged>0&&e.clientY>t&&e.clientX<=n?(s.instance.mouseDragOutside=!0,s.addingStarted=!0):s.instance.mouseDragOutside=!1,void(s.instance.mouseDragOutside&&setTimeout(function(){s.addingStarted=!1,s.instance.alter("insert_row")},200))):!1}var o,r,i,s=this,a=!1;this.instance=e,this.addingStarted=!1,i=f(e),i.addEventListener(document,"mouseup",t),i.addEventListener(document,"mousemove",n),o=this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown,this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown=function(t){e.autofill.handle.isDragged=1,a=!0,o(t)},r=this.instance.view.wt.wtSettings.settings.onCellMouseOver,this.instance.view.wt.wtSettings.settings.onCellMouseOver=function(t,n,o,i){e.autofill&&a&&!e.view.isMouseDown()&&e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged++,e.autofill.showBorder(n),e.autofill.checkIfNewRowNeeded()),r(t,n,o,i)},this.instance.view.wt.wtSettings.settings.onCellCornerDblClick=function(){e.autofill.selectAdjacent()}}Object.defineProperties(n,{Autofill:{get:function(){return r}},__esModule:{value:!0}});var i,s,a,l,u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),c=u.offset,d=u.outerHeight,h=u.outerWidth,f=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,p=((a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords);r.prototype.init=function(){this.handle={}},r.prototype.disable=function(){this.handle.disabled=!0},r.prototype.selectAdjacent=function(){var e,t,n,o,r;e=this.instance.selection.isMultiple()?this.instance.view.wt.selections.area.getCorners():this.instance.view.wt.selections.current.getCorners(),t=this.instance.getData();e:for(n=e[2]+1;nt[3]?(s="right",n=new p(e[0],t[3]+1),r=new p(e[2],e[3])):e[0]t[2]&&e[1]===t[1]&&(s="down",n=new p(t[2]+1,e[1]),r=new p(e[2],e[3])),n&&n.row>-1&&n.col>-1?(l={from:this.instance.getSelectedRange().from,to:this.instance.getSelectedRange().to},i=this.instance.getData(l.from.row,l.from.col,l.to.row,l.to.col),a=o(n,r,i,s),Handsontable.hooks.run(this.instance,"beforeAutofill",n,r,i),this.instance.populateFromArray(n.row,n.col,i,r.row,r.col,"autofill",null,s,a),this.instance.selection.setRangeStart(new p(e[0],e[1])),this.instance.selection.setRangeEnd(new p(e[2],e[3]))):this.instance.selection.refreshBorders())},r.prototype.showBorder=function(e){var t=this.instance.getSelectedRange().getTopLeftCorner(),n=this.instance.getSelectedRange().getBottomRightCorner();if("horizontal"!==this.instance.getSettings().fillHandle&&(n.rowe.row))e=new p(e.row,n.col);else{if("vertical"===this.instance.getSettings().fillHandle)return;e=new p(n.row,e.col)}this.instance.view.wt.selections.fill.clear(),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().from),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().to),this.instance.view.wt.selections.fill.add(e),this.instance.view.render()},r.prototype.checkIfNewRowNeeded=function(){var e,t,n=this.instance.countRows(),o=this;this.instance.view.wt.selections.fill.cellRange&&this.addingStarted===!1&&(t=this.instance.getSelected(),e=this.instance.view.wt.selections.fill.getCorners(),t[2]n[1]?e?1:-1:0}},dateSort:function(e){return function(t,n){if(t[1]===n[1])return 0;if(null===t[1]||""===t[1])return 1;if(null===n[1]||""===n[1])return-1;var o=new Date(t[1]),r=new Date(n[1]);return r>o?e?-1:1:o>r?e?1:-1:0}},sort:function(){if("undefined"==typeof this.hot.sortOrder)return void(this.hot.sortIndex.length=0);var e,t;this.hot.sortingEnabled=!1,this.hot.sortIndex.length=0;for(var n=this.hot.colOffset(),o=0,r=this.hot.countRows()-this.hot.getSettings().minSpareRows;r>o;o++)this.hot.sortIndex.push([o,this.hot.getDataAtCell(o,this.hot.sortColumn+n)]);switch(e=this.hot.getCellMeta(0,this.hot.sortColumn),this.sortIndicators[this.hot.sortColumn]=e.sortIndicator,e.type){case"date":t=this.dateSort;break;default:t=this.defaultSort}this.hot.sortIndex.sort(t(this.hot.sortOrder));for(var o=this.hot.sortIndex.length;o=0&&-1===r&&u(n,"columnSorting"),f(n,"descending"),f(n,"ascending"),this.sortIndicators[e]&&e===this.hot.sortColumn&&("ascending"===this.sortOrderClass?u(n,"ascending"):"descending"===this.sortOrderClass&&u(n,"descending")))},isSorted:function(){return"undefined"!=typeof this.hot.sortColumn},afterCreateRow:function(e,t){if(this.isSorted()){for(var n=0;n=e&&(this.hot.sortIndex[n][0]+=t);for(var n=0;t>n;n++)this.hot.sortIndex.splice(e+n,0,[e+n,this.hot.getSourceData()[e+n][this.hot.sortColumn+this.hot.colOffset()]]);this.saveSortingState()}},afterRemoveRow:function(e,t){function n(e){return m(o,function(t,n){return e>n&&t++,t},0)}if(this.isSorted()){var o=this.hot.sortIndex.splice(e,t);o=g(o,function(e){return e[0]}),this.hot.sortIndex=g(this.hot.sortIndex,function(e,t){var o=n(e[0]);return o&&(e[0]-=o),e}),this.saveSortingState()}}},{},w),y("columnSorting",b)},{_base:58,eventManager:41,"helpers/array":42,"helpers/dom/element":45,plugins:57}],63:[function(e,t,n){"use strict";Object.defineProperties(n,{CommentEditor:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,i=function(){this.editor=this.createEditor(),this.editorStyle=this.editor.style,this.editorStyle.position="absolute",this.editorStyle.zIndex=100,this.hide()},s=i;$traceurRuntime.createClass(i,{setPosition:function(e,t){this.editorStyle.left=e+"px",this.editorStyle.top=t+"px"},show:function(){this.editorStyle.display="block"},hide:function(){this.editorStyle.display="none"},isVisible:function(){return"block"===this.editorStyle.display},setValue:function(){var e=void 0!==arguments[0]?arguments[0]:"";e=e||"",this.getInputElement().value=e},getValue:function(){return this.getInputElement().value},isFocused:function(){return document.activeElement===this.getInputElement()},focus:function(){this.getInputElement().focus()},createEditor:function(){var e,t,n=document.querySelector("."+s.CLASS_EDITOR_CONTAINER);return n||(n=document.createElement("div"),r(n,s.CLASS_EDITOR_CONTAINER),document.body.appendChild(n)),e=document.createElement("div"),r(e,s.CLASS_EDITOR),t=document.createElement("textarea"),r(t,s.CLASS_INPUT),e.appendChild(t),n.appendChild(e),e},getInputElement:function(){return this.editor.querySelector("."+s.CLASS_INPUT)},destroy:function(){this.editor.parentNode.removeChild(this.editor),this.editor=null,this.editorStyle=null}},{get CLASS_EDITOR_CONTAINER(){return"htCommentsContainer"},get CLASS_EDITOR(){return"htComments"},get CLASS_INPUT(){return"htCommentTextArea"},get CLASS_CELL(){return"htCommentCell"}})},{"helpers/dom/element":45}],64:[function(e,t,n){"use strict";Object.defineProperties(n,{Comments:{get:function(){return R}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.addClass,d=u.closest,h=u.getWindowScrollLeft,f=u.getWindowScrollTop,p=u.hasClass,g=u.offset,m=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,v=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords,w=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}),y=w.registerPlugin,b=(w.getPlugin,(a=e("_base"),a&&a.__esModule&&a||{"default":a})["default"]),C=(l=e("commentEditor"),l&&l.__esModule&&l||{"default":l}).CommentEditor,R=function(e){$traceurRuntime.superConstructor(_).call(this,e),this.editor=null,this.eventManager=null,this.range={},this.mouseDown=!1,this.contextMenuEvent=!1,this.timer=null},_=R;$traceurRuntime.createClass(R,{isEnabled:function(){return this.hot.getSettings().comments},enablePlugin:function(){var e=this;this.enabled||(this.editor||(this.editor=new C),this.eventManager||(this.eventManager=new m(this)),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addToContextMenu(t)}),this.addHook("afterRenderer",function(t,n,o,r,i,s){return e.onAfterRenderer(t,s)}),this.addHook("afterScrollVertically",function(){return e.refreshEditorPosition()}),this.addHook("afterColumnResize",function(){return e.refreshEditorPosition()}),this.addHook("afterRowResize",function(){return e.refreshEditorPosition()}),this.registerListeners(),$traceurRuntime.superGet(this,_.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,_.prototype,"disablePlugin").call(this)},registerListeners:function(){var e=this;this.eventManager.addEventListener(document,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(document,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(document,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document,"mouseup",function(t){return e.onMouseUp(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"blur",function(t){return e.onEditorBlur(t)})},setRange:function(e){this.range=e},clearRange:function(){this.range={}},targetIsCellWithComment:function(e){return p(e.target,"htCommentCell")&&d(e.target,[this.hot.rootElement])?!0:!1},targetIsCommentTextArea:function(e){return this.editor.getInputElement()===e.target},saveComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.editor.getValue(),t=this.range.from.row,n=this.range.from.col;this.hot.setCellMeta(t,n,"comment",e),this.hot.render()},saveCommentAtCell:function(e,t){this.setRange({from:new v(e,t)}),this.saveComment()},removeComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');this.hot.removeCellMeta(this.range.from.row,this.range.from.col,"comment"),this.hot.render(),this.hide()},removeCommentAtCell:function(e,t){this.setRange({from:new v(e,t)}),this.removeComment()},show:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.hot.getCellMeta(this.range.from.row,this.range.from.col);return this.refreshEditorPosition(!0),this.editor.setValue(e.comment||""),this.editor.show(),!0},showAtCell:function(e,t){return this.setRange({from:new v(e,t)}),this.show()},hide:function(){this.editor.hide()},refreshEditorPosition:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e||this.range.from&&this.editor.isVisible()){var t=this.hot.view.wt.wtTable.getCell(this.range.from),n=g(t),o=this.hot.getColWidth(this.range.from.col),r=n.top,i=n.left,s=0,a=0;this.hot.view.wt.wtViewport.hasVerticalScroll()&&(r-=this.hot.view.wt.wtOverlays.topOverlay.getScrollPosition(),s=20),this.hot.view.wt.wtViewport.hasHorizontalScroll()&&(i-=this.hot.view.wt.wtOverlays.leftOverlay.getScrollPosition(),a=20);var l=i+o,u=r,c=this.hot.view.wt.wtTable.holder.getBoundingClientRect(),d={left:c.left+h()+a,right:c.right+h()-15,top:c.top+f()+s,bottom:c.bottom+f()};l<=d.left||l>d.right||u<=d.top||u>d.bottom?this.hide():this.editor.setPosition(l,u)}},onMouseDown:function(e){this.mouseDown=!0,this.hot.view&&this.hot.view.wt&&(this.contextMenuEvent||this.targetIsCommentTextArea(e)||this.targetIsCellWithComment(e)||this.hide(),this.contextMenuEvent=!1)},onMouseOver:function(e){if(!this.mouseDown&&!this.editor.isFocused())if(this.targetIsCellWithComment(e)){var t=this.hot.view.wt.wtTable.getCoords(e.target),n={from:new v(t.row,t.col)};this.setRange(n),this.show()}else this.targetIsCommentTextArea(e)||this.editor.isFocused()||this.hide()},onMouseMove:function(e){var t=this;this.targetIsCommentTextArea(e)&&(this.mouseDown=!0,clearTimeout(this.timer),this.timer=setTimeout(function(){t.mouseDown=!1},200))},onMouseUp:function(e){this.mouseDown=!1},onAfterRenderer:function(e,t){t.comment&&c(e,t.commentedCellClassName)},onEditorBlur:function(e){this.saveComment()},checkSelectionCommentsConsistency:function(){var e=this.hot.getSelectedRange();if(!e)return!1;var t=!1,n=e.from;return this.hot.getCellMeta(n.row,n.col).comment&&(t=!0),t},onContextMenuAddComment:function(){var e=this,t=this.hot.getSelectedRange();this.contextMenuEvent=!0,this.setRange({from:t.from}),this.show(),setTimeout(function(){e.hot&&(e.hot.deselectCell(),e.editor.focus())},10)},onContextMenuRemoveComment:function(e,t){this.contextMenuEvent=!0,this.removeCommentAtCell(t.start.row,t.start.col)},addToContextMenu:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"commentsAddEdit",name:function(){return t.checkSelectionCommentsConsistency()?"Edit Comment":"Add Comment"},callback:function(){return t.onContextMenuAddComment()},disabled:function(){return this.getSelected()?!1:!0}},{key:"commentsRemove",name:function(){return"Delete Comment"},callback:function(e,n){return t.onContextMenuRemoveComment(e,n)},disabled:function(){return!t.checkSelectionCommentsConsistency()}})},destroy:function(){this.editor&&this.editor.destroy(),$traceurRuntime.superGet(this,_.prototype,"destroy").call(this)}},{},b),y("comments",R)},{"3rdparty/walkontable/src/cell/coords":5,_base:58,commentEditor:63,eventManager:41,"helpers/dom/element":45,plugins:57}],65:[function(e,t,n){"use strict";function o(e,t){var n;return i(t,function(t){var o=t.key?t.key.split(":"):null;return Array.isArray(o)&&o[1]===e?(n=t,!1):void 0}),n}Object.defineProperties(n,{CommandExecutor:{get:function(){return s}},__esModule:{value:!0}});var r,i=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,s=function(e){this.hot=e,this.commands={},this.commonCallback=null};$traceurRuntime.createClass(s,{registerCommand:function(e,t){this.commands[e]=t},setCommonCallback:function(e){this.commonCallback=e},execute:function(e){for(var t=[],n=1;n0;if(s)return}}else if(!(t(i)||w(i,"current")&&w(i,"wtBorder")))return;this.open(e)},onMenuAfterOpen:function(){this.hot.runHooks("afterContextMenuShow",this)},onMenuAfterClose:function(){this.hot.listen(),this.hot.runHooks("afterContextMenuHide",this)},destroy:function(){this.close(),this.menu&&this.menu.destroy(),$traceurRuntime.superGet(this,W.prototype,"destroy").call(this)}},{get DEFAULT_ITEMS(){return[E,T,N,O,M,N,k,H,N,D,x,N,A,N,P]}},p),L.SEPARATOR={name:N},Handsontable.hooks.register("afterContextMenuDefaultOptions"),Handsontable.hooks.register("afterContextMenuShow"),Handsontable.hooks.register("afterContextMenuHide"),Handsontable.hooks.register("afterContextMenuExecute"),R("contextMenu",L)},{_base:58,commandExecutor:65,eventManager:41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,itemsFactory:68,menu:69,plugins:57,predefinedItems:70}],67:[function(e,t,n){"use strict";Object.defineProperties(n,{Cursor:{get:function(){return d}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.getWindowScrollLeft,a=i.getWindowScrollTop,l=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),u=l.pageX,c=l.pageY,d=function(e){var t,n,o,r,i,l,d,h,f=a(),p=s();this.type=this.getSourceType(e),"literal"===this.type?(t=parseInt(e.top,10),o=parseInt(e.left,10),d=e.height,h=e.width):"event"===this.type&&(t=parseInt(c(e),10),o=parseInt(u(e),10),d=e.target.clientHeight,h=e.target.clientWidth),n=t-f,r=o-p,i=f,l=p,this.top=t,this.topRelative=n,this.left=o,this.leftRelative=r,this.scrollTop=i,this.scrollLeft=l,this.cellHeight=d,this.cellWidth=h};$traceurRuntime.createClass(d,{getSourceType:function(e){var t="literal";return e instanceof Event&&(t="event"),t},fitsAbove:function(e){return this.topRelative>=e.offsetHeight},fitsBelow:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerHeight;return this.topRelative+e.offsetHeight<=t},fitsOnRight:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerWidth;return this.leftRelative+this.cellWidth+e.offsetWidth<=t},fitsOnLeft:function(e){return this.leftRelative>=e.offsetWidth}},{}),Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.utils.Cursor=d},{"helpers/dom/element":45,"helpers/dom/event":46}],68:[function(e,t,n){"use strict";function o(){var e=void 0!==arguments[0]?arguments[0]:null,t=void 0!==arguments[1]?arguments[1]:[],n=void 0!==arguments[2]?arguments[2]:{},o=[];return e&&e.items?e=e.items:Array.isArray(e)||(e=t),u(e)?l(e,function(e,t){var r=n["string"==typeof e?e:t];r||(r=e),u(e)?c(r,e):"string"==typeof r&&(r={name:r}),void 0===r.key&&(r.key=t),o.push(r)}):d(e,function(e,t){var r=n[e];!r&&p.indexOf(e)>=0||(r||(r={name:e,key:t+""}),u(e)&&c(r,e),void 0===r.key&&(r.key=t),o.push(r))}),o[0].name===f&&o.shift(),o}Object.defineProperties(n,{ItemsFactory:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,a=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}),l=a.objectEach,u=a.isObject,c=a.extend,d=(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,h=(s=e("predefinedItems"),s&&s.__esModule&&s||{"default":s}),f=h.SEPARATOR,p=h.ITEMS,g=h.predefinedItems,m=function(e){var t=void 0!==arguments[1]?arguments[1]:null;this.hot=e,this.predefinedItems=g(),this.defaultOrderPattern=t};$traceurRuntime.createClass(m,{setPredefinedItems:function(e){var t=this,n={};this.defaultOrderPattern.length=0,l(e,function(e,o){var r="";e.name===f?(n[f]=e,r=f):isNaN(parseInt(o,10))?(e.key=void 0===e.key?o:e.key,n[o]=e,r=e.key):(n[e.key]=e,r=e.key),t.defaultOrderPattern.push(r)}),this.predefinedItems=n},getVisibleItems:function(){var e=void 0!==arguments[0]?arguments[0]:null,t=this,n={};return l(this.predefinedItems,function(e,o){(!e.hidden||e.hidden&&!e.hidden.apply(t.hot))&&(n[o]=e)}),o(e,this.defaultOrderPattern,n)},getItems:function(){var e=void 0!==arguments[0]?arguments[0]:null;return o(e,this.defaultOrderPattern,this.predefinedItems)}},{})},{"helpers/array":42,"helpers/object":50,predefinedItems:70}],69:[function(e,t,n){"use strict";Object.defineProperties(n,{Menu:{get:function(){ +return W}},__esModule:{value:!0}});var o,r,i,s,a,l,u,c,d,h,f=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),p=f.addClass,g=f.empty,m=f.fastInnerHTML,v=(f.getComputedStyle,f.getScrollbarWidth),w=(f.getWindowScrollLeft,f.getWindowScrollTop,f.hasClass,f.isChildOf),y=f.removeClass,b=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,C=(i=e("cursor"),i&&i.__esModule&&i||{"default":i}).Cursor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).EventManager,_=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),S=(_.extend,_.isObject,_.objectEach,_.mixin),E=(l=e("utils"),l&&l.__esModule&&l||{"default":l}),T=E.isSeparator,O=E.isDisabled,M=E.isSelectionDisabled,k=E.hasSubMenu,H=E.normalizeSelection,D=(u=e("helpers/unicode"),u&&u.__esModule&&u||{"default":u}).KEY_CODES,x=(c=e("mixins/localHooks"),c&&c.__esModule&&c||{"default":c}).localHooks,A=(d=e("predefinedItems"),d&&d.__esModule&&d||{"default":d}),P=A.SEPARATOR,N=(A.predefinedItems,h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),L=(N.stopPropagation,N.stopImmediatePropagation),W=(N.pageX,N.pageY,function(e){var t=void 0!==arguments[1]?arguments[1]:{parent:null,name:null,className:"",keepInViewport:!0};this.hot=e,this.options=t,this.eventManager=new R(this),this.container=this.createContainer(this.options.name),this.hotMenu=null,this.hotSubMenus={},this.parentMenu=this.options.parent||null,this.menuItems=null,this.origOutsideClickDeselects=null,this._afterScrollCallback=null,this.registerEvents()}),I=W;$traceurRuntime.createClass(W,{registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){return e.onDocumentMouseDown(t)})},setMenuItems:function(e){this.menuItems=e},isSubMenu:function(){return null!==this.parentMenu},open:function(){var e=this;this.container.removeAttribute("style"),this.container.style.display="block";var t={data:this.menuItems,colHeaders:!1,colWidths:[200],autoRowSize:!1,readOnly:!0,copyPaste:!1,columns:[{data:"name",renderer:function(t,n,o,r,i,s){return e.menuItemRenderer(t,n,o,r,i,s)}}],renderAllRows:!0,fragmentSelection:"cell",beforeKeyDown:function(t){return e.onBeforeKeyDown(t)},afterOnCellMouseOver:function(t,n,o){return e.openSubMenu(n.row)}};this.origOutsideClickDeselects=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1,this.hotMenu=new Handsontable.Core(this.container,t),this.hotMenu.addHook("afterInit",function(){return e.onAfterInit()}),this.hotMenu.init(),this.hotMenu.listen(),this.blockMainTableCallbacks(),this.runLocalHooks("afterOpen")},close:function(){var e=void 0!==arguments[0]?arguments[0]:!1;this.isOpened()&&(e&&this.parentMenu?this.parentMenu.close():(this.closeAllSubMenus(),this.container.style.display="none",this.releaseMainTableCallbacks(),this.hotMenu.destroy(),this.hotMenu=null,this.hot.getSettings().outsideClickDeselects=this.origOutsideClickDeselects,this.runLocalHooks("afterClose")))},openSubMenu:function(e){var t=this.hotMenu.getCell(e,0);if(this.closeAllSubMenus(),!t||!k(t))return!1;var n=this.hotMenu.getSourceDataAtRow(e),o=new I(this.hot,{parent:this,name:n.name,className:this.options.className});return o.setMenuItems(n.submenu.items),o.open(),o.setPosition(t.getBoundingClientRect()),this.hotSubMenus[n.key]=o,o},closeSubMenu:function(e){var t=this.hotMenu.getSourceDataAtRow(e),n=this.hotSubMenus[t.key];n&&(n.destroy(),delete this.hotSubMenus[t.key])},closeAllSubMenus:function(){var e=this;b(this.hotMenu.getData(),function(t,n){return e.closeSubMenu(n)})},isAllSubMenusClosed:function(){return 0===Object.keys(this.hotSubMenus).length},destroy:function(){this.clearLocalHooks(),this.close(),this.parentMenu=null,this.eventManager.destroy()},isOpened:function(){return null!==this.hotMenu},executeCommand:function(e){if(this.isOpened()&&this.hotMenu.getSelected()){var t=this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelected()[0]);if(this.runLocalHooks("select",t,e),t.isCommand!==!1){var n=this.hot.getSelectedRange(),o=n?H(n):{};this.runLocalHooks("executeCommand",t.key,o,e),this.isSubMenu()&&this.parentMenu.runLocalHooks("executeCommand",t.key,o,e),this.close(!0)}}},setPosition:function(e){var t=new C(e);this.options.keepInViewport?(t.fitsBelow(this.container)?this.setPositionBelowCursor(t):t.fitsAbove(this.container)?this.setPositionAboveCursor(t):this.setPositionBelowCursor(t),t.fitsOnRight(this.container)?this.setPositionOnRightOfCursor(t):this.setPositionOnLeftOfCursor(t)):(this.setPositionBelowCursor(t),this.setPositionOnRightOfCursor(t))},setPositionAboveCursor:function(e){var t=e.top-this.container.offsetHeight;this.isSubMenu()&&(t=window.scrollY+e.top+e.cellHeight-this.container.offsetHeight+3),this.container.style.top=t+"px"},setPositionBelowCursor:function(e){var t=e.top-1;this.isSubMenu()&&(t=e.top+window.scrollY-1),this.container.style.top=t+"px"},setPositionOnRightOfCursor:function(e){var t;t=this.isSubMenu()?window.scrollX+1+e.left+e.cellWidth:1+e.left,this.container.style.left=t+"px"},setPositionOnLeftOfCursor:function(e){this.container.style.left=e.left-this.container.offsetWidth+v()+4+"px"},selectFirstCell:function(){var e=this.hotMenu.getCell(0,0);T(e)||O(e)||M(e)?this.selectNextCell(0,0):this.hotMenu.selectCell(0,0)},selectLastCell:function(){var e=this.hotMenu.countRows()-1,t=this.hotMenu.getCell(e,0);T(t)||O(t)||M(t)?this.selectPrevCell(e,0):this.hotMenu.selectCell(e,0)},selectNextCell:function(e,t){var n=e+1,o=n=0?this.hotMenu.getCell(n,t):null;o&&(T(o)||O(o)||M(o)?this.selectPrevCell(n,t):this.hotMenu.selectCell(n,t))},menuItemRenderer:function(e,t,n,o,r,i){var s=this,a=e.getSourceDataAtRow(n),l=document.createElement("div"),u=function(e){return e.hasOwnProperty("submenu")},c=function(e){return new RegExp(P,"i").test(e.name)},d=function(e){return e.disabled===!0||"function"==typeof e.disabled&&e.disabled.call(s.hot)===!0},h=function(e){return"function"==typeof e.hidden&&e.hidden.call(s.hot)===!0},f=function(e){return e.disableSelection},v=h(a);"function"==typeof i&&(i=i.call(this.hot)),g(t),p(l,"htItemWrapper"),t.appendChild(l),c(a)?p(t,"htSeparator"):v||"function"!=typeof a.renderer?m(l,i):(p(t,"htCustomMenuRenderer"),t.appendChild(a.renderer(e,l,n,o,r,i))),v?t.parentNode&&p(t.parentNode,"htHidden"):d(a)?(p(t,"htDisabled"),this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()})):f(a)?(p(t,"htSelectionDisabled"),this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()})):u(a)?(p(t,"htSubmenu"),f(a)?this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(l,"mouseenter",function(){return e.selectCell(n,o,void 0,void 0,void 0,!1)})):(y(t,"htSubmenu"),y(t,"htDisabled"),f(a)?this.eventManager.addEventListener(l,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(l,"mouseenter",function(){return e.selectCell(n,o,void 0,void 0,void 0,!1)}))},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:null;e&&(e=e.replace(/ /g,"_"),e=this.options.className+"Sub_"+e);var t;return t=e?document.querySelector("."+this.options.className+"."+e):document.querySelector("."+this.options.className),t||(t=document.createElement("div"),p(t,"htMenu "+this.options.className),e&&p(t,e),document.getElementsByTagName("body")[0].appendChild(t)),t},blockMainTableCallbacks:function(){this._afterScrollCallback=function(){},this.hot.addHook("afterScrollVertically",this._afterScrollCallback),this.hot.addHook("afterScrollHorizontally",this._afterScrollCallback)},releaseMainTableCallbacks:function(){this._afterScrollCallback&&(this.hot.removeHook("afterScrollVertically",this._afterScrollCallback),this.hot.removeHook("afterScrollHorizontally",this._afterScrollCallback),this._afterScrollCallback=null)},onBeforeKeyDown:function(e){var t=this.hotMenu.getSelected(),n=!1;switch(e.keyCode){case D.ESCAPE:this.close(),n=!0;break;case D.ENTER:t&&(this.hotMenu.getSourceDataAtRow(t[0]).submenu?n=!0:(this.executeCommand(e),this.close(!0)));break;case D.ARROW_DOWN:t?this.selectNextCell(t[0],t[1]):this.selectFirstCell(),n=!0;break;case D.ARROW_UP:t?this.selectPrevCell(t[0],t[1]):this.selectLastCell(),n=!0;break;case D.ARROW_RIGHT:if(t){var o=this.openSubMenu(t[0]);o&&o.selectFirstCell()}n=!0;break;case D.ARROW_LEFT:t&&this.isSubMenu()&&(this.close(),this.parentMenu&&this.parentMenu.hotMenu.listen(),n=!0)}n&&(e.preventDefault(),L(e))},onAfterInit:function(){var e=this.hotMenu.getSettings().data,t=this.hotMenu.view.wt.wtTable.hider.style,n=this.hotMenu.view.wt.wtTable.holder.style,o=parseInt(t.width,10),r=0;b(e,function(e){return r+=e.name===P?1:26}),n.width=o+22+"px",n.height=r+4+"px"},onDocumentMouseDown:function(e){this.isOpened()&&(this.container&&w(e.target,this.container)&&this.executeCommand(e),(this.isAllSubMenusClosed()||this.isSubMenu())&&!w(e.target,".htMenu")&&w(e.target,document)&&this.close(!0))}},{}),S(W,x)},{cursor:67,eventManager:41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"mixins/localHooks":54,predefinedItems:70,utils:71}],70:[function(e,t,n){"use strict";function o(){var e={};return c(D,function(t,n){return e[n]=d(t)}),e}function r(e,t){-1===H.indexOf(e)&&(D[e]=t)}var i;Object.defineProperties(n,{ROW_ABOVE:{get:function(){return w}},ROW_BELOW:{get:function(){return y}},COLUMN_LEFT:{get:function(){return b}},COLUMN_RIGHT:{get:function(){return C}},CLEAR_COLUMN:{get:function(){return R}},REMOVE_ROW:{get:function(){return _}},REMOVE_COLUMN:{get:function(){return S}},UNDO:{get:function(){return E}},REDO:{get:function(){return T}},READ_ONLY:{get:function(){return O}},ALIGNMENT:{get:function(){return M}},SEPARATOR:{get:function(){return k}},ITEMS:{get:function(){return H}},predefinedItems:{get:function(){return o}},addItem:{get:function(){return r}},__esModule:{value:!0}});var s,a,l,u=(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}),c=u.objectEach,d=u.clone,h=((a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).rangeEach,l=e("utils"),l&&l.__esModule&&l||{"default":l}),f=h.align,p=h.getAlignmentClasses,g=h.getValidSelection,m=h.checkSelectionConsistency,v=h.markLabelAsSelected,w="row_above",y="row_below",b="col_left",C="col_right",R="clear_column",_="remove_row",S="remove_col",E="undo",T="redo",O="make_read_only",M="alignment",k="---------",H=[w,y,b,C,R,_,S,E,T,O,M,k],D=(i={},Object.defineProperty(i,k,{value:{name:k},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,w,{value:{key:w,name:"Insert row above",callback:function(e,t){this.alter("insert_row",t.start.row)},disabled:function(){var e=g(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,y,{value:{key:y,name:"Insert row below",callback:function(e,t){this.alter("insert_row",t.end.row+1)},disabled:function(){var e=g(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,b,{value:{key:b,name:"Insert column on the left",callback:function(e,t){this.alter("insert_col",t.start.col)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,C,{value:{key:C,name:"Insert column on the right",callback:function(e,t){this.alter("insert_col",t.end.col+1)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,R,{value:{key:R,name:"Clear column",callback:function(e,t){var n=t.start.col;this.countRows()&&this.populateFromArray(0,n,[[null]],Math.max(t.start.row,t.end.row),n)},disabled:function(){var e=g(this);if(!e)return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,_,{value:{key:_,name:"Remove row",callback:function(e,t){var n=t.end.row-t.start.row+1;this.alter("remove_row",t.start.row,n)},disabled:function(){var e=g(this);if(!e)return!0;var t=[0,e[1],this.countRows()-1,e[1]];return t.join(",")===e.join(",")},hidden:function(){return!this.getSettings().allowRemoveRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,S,{value:{key:S,name:"Remove column",callback:function(e,t){var n=t.end.col-t.start.col+1;this.alter("remove_col",t.start.col,n)},disabled:function(){var e=g(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||n},hidden:function(){return!this.getSettings().allowRemoveColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,E,{value:{key:E,name:"Undo",callback:function(){this.undo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isUndoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,T,{value:{key:T,name:"Redo",callback:function(){this.redo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isRedoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,O,{value:{key:O,name:function(){var e=this,t="Read only",n=m(this.getSelectedRange(),function(t,n){return e.getCellMeta(t,n).readOnly});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=m(t,function(t,n){return e.getCellMeta(t,n).readOnly});t.forAll(function(t,o){e.getCellMeta(t,o).readOnly=n?!1:!0}),this.render()},disabled:function(){return this.getSelectedRange()?!1:!0}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,M,{value:{key:M,name:"Alignment",disabled:function(){return this.getSelectedRange()?!1:!0},submenu:{items:[{key:M+":left",name:function(){var e=this,t="Left",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htLeft")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htLeft";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":center",name:function(){var e=this,t="Center",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htCenter")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htCenter";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":right",name:function(){var e=this,t="Right",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htRight")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htRight";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":justify",name:function(){var e=this,t="Justify",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htJustify")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htJustify";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{name:k},{key:M+":top",name:function(){var e=this,t="Top",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htTop")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htTop";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":middle",name:function(){var e=this,t="Middle",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htMiddle")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htMiddle";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":bottom",name:function(){var e=this,t="Bottom",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htBottom")?!0:void 0});return n&&(t=v(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=p(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htBottom";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1}]}},configurable:!0,enumerable:!0,writable:!0}),i)},{"helpers/number":49,"helpers/object":50,utils:71}],71:[function(e,t,n){"use strict";function o(e){return{start:e.getTopLeftCorner(),end:e.getBottomRightCorner()}}function r(e){return v(e,"htSeparator")}function i(e){return v(e,"htSubmenu")}function s(e){return v(e,"htDisabled")}function a(e){return v(e,"htSelectionDisabled")}function l(e){var t=e.getSelected();return t?t[0]<0?null:e.countRows()>=e.getSettings().maxRows?null:t:null}function u(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htTop","").replace("htMiddle","").replace("htBottom","").replace(" ",""),e+=" "+t)}function c(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htLeft","").replace("htCenter","").replace("htRight","").replace("htJustify","").replace(" ",""),e+=" "+t)}function d(e,t){for(var n={},o=e.from.row;o<=e.to.row;o++)for(var r=e.from.col;r<=e.to.col;r++)n[o]||(n[o]=[]),n[o][r]=t(o,r);return n}function h(e,t,n,o){if(e.from.row==e.to.row&&e.from.col==e.to.col)f(e.from.row,e.from.col,t,n,o);else for(var r=e.from.row;r<=e.to.row;r++)for(var i=e.from.col;i<=e.to.col;i++)f(r,i,t,n,o)}function f(e,t,n,o,r){var i=r(e,t),s=o;i.className&&(s="vertical"===n?u(i.className,o):c(i.className,o)),i.className=s}function p(e,t){var n=!1;return e&&e.forAll(function(e,o){return t(e,o)?(n=!0,!1):void 0}),n}function g(e){return''+String.fromCharCode(10003)+""+e}Object.defineProperties(n,{normalizeSelection:{get:function(){return o}},isSeparator:{get:function(){return r}},hasSubMenu:{get:function(){return i}},isDisabled:{get:function(){return s}},isSelectionDisabled:{get:function(){return a}},getValidSelection:{get:function(){return l}},prepareVerticalAlignClass:{get:function(){return u}},prepareHorizontalAlignClass:{get:function(){return c}},getAlignmentClasses:{get:function(){return d}},align:{get:function(){return h}},checkSelectionConsistency:{get:function(){return p}},markLabelAsSelected:{get:function(){return g}},__esModule:{value:!0}});var m,v=(m=e("helpers/dom/element"),m&&m.__esModule&&m||{"default":m}).hasClass},{"helpers/dom/element":45}],72:[function(e,t,n){"use strict";Object.defineProperties(n,{ContextMenuCopyPaste:{get:function(){return g}},__esModule:{value:!0}});var o,r,i,s,a,l,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).removeClass,c=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,d=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,h=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,f=(a=e("_base"),a&&a.__esModule&&a||{"default":a})["default"],p=(l=e("zeroclipboard"),l&&l.__esModule&&l||{"default":l})["default"],g=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.eventManager=new d(this),this.swfPath=null,this.outsideClickDeselectsCache=null},m=g;$traceurRuntime.createClass(g,{isEnabled:function(){return this.hot.getSettings().contextMenuCopyPaste},enablePlugin:function(){var e=this;if(!this.enabled){"object"==typeof this.hot.getSettings().contextMenuCopyPaste&&(this.swfPath=this.hot.getSettings().contextMenuCopyPaste.swfPath),"undefined"==typeof p&&console.error("To be able to use the Copy/Paste feature from the context menu, you need to manually include ZeroClipboard.js file to your website.");try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(t){"undefined"==typeof navigator.mimeTypes["application/x-shockwave-flash"]&&console.error("To be able to use the Copy/Paste feature from the context menu, your browser needs to have Flash Plugin installed.")}this.swfPath&&p.config({swfPath:this.swfPath}),this.hot.addHook("afterContextMenuShow",function(){return e.onAfterContextMenuShow()}),this.hot.addHook("afterContextMenuDefaultOptions",function(t){return e.onAfterContextMenuDefaultOptions(t)}),this.registerEvents(),$traceurRuntime.superGet(this,m.prototype,"enablePlugin").call(this)}},disablePlugin:function(){$traceurRuntime.superGet(this,m.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(document,"mouseenter",function(){return e.removeCurrentClass()}),this.eventManager.addEventListener(document,"mouseleave",function(){return e.removeZeroClipboardClass()})},getCopyValue:function(){return this.hot.copyPaste.setCopyableText(),this.hot.copyPaste.copyPasteInstance.elTextarea.value},onAfterContextMenuDefaultOptions:function(e){e.items.unshift({key:"copy",name:"Copy"},{key:"paste",name:"Paste",callback:function(){this.copyPaste.triggerPaste()}},Handsontable.plugins.ContextMenu.SEPARATOR)},onAfterContextMenuShow:function(){var e=this,t=this.hot.getPlugin("contextMenu"),n=t.menu.hotMenu.getSourceData();c(n,function(n,o){if("copy"===n.key){var r=new p(t.menu.hotMenu.getCell(o,0));return r.off(),r.on("copy",function(t){var n=t.clipboardData;n.setData("text/plain",e.getCopyValue()),e.hot.getSettings().outsideClickDeselects=e.outsideClickDeselectsCache}),!1}})},removeCurrentClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.current");t&&u(t,"current")}this.outsideClickDeselectsCache=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1},removeZeroClipboardClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.zeroclipboard-is-hover");t&&u(t,"zeroclipboard-is-hover")}this.hot.getSettings().outsideClickDeselects=this.outsideClickDeselectsCache}},{},f),h("contextMenuCopyPaste",g)},{_base:58,eventManager:41,"helpers/array":42,"helpers/dom/element":45,plugins:57,zeroclipboard:"zeroclipboard"}],73:[function(e,t,n){"use strict";function o(e){function t(){e.isListening()&&e.selection.empty()}function n(t){var n,o,r,i,s,a,l,u,c,d;if(e.isListening()&&e.selection.isSelected()){n=t,o=v.parse(n),r=e.getSelected(),i=new M(r[0],r[1]),s=new M(r[2],r[3]),a=new k(i,i,s),l=a.getTopLeftCorner(),u=a.getBottomRightCorner(),c=l,d=new M(Math.max(u.row,o.length-1+l.row),Math.max(u.col,o[0].length-1+l.col));var h=s.row-i.row>=o.length-1,f=s.col-i.col>=o[0].length-1;e.addHookOnce("afterChange",function(t,n){var o=t?t.length:0;if(o){var r={row:0,col:0},i=-1;C(t,function(e,n){var s=o>n+1?t[n+1]:null;s&&(h||(r.row=r.row+Math.max(s[0]-e[0]-1,0)),!f&&e[1]>i&&(i=e[1],r.col=r.col+Math.max(s[1]-e[1]-1,0)))}),e.selectCell(c.row,c.col,d.row+r.row,d.col+r.col)}}),e.populateFromArray(c.row,c.col,o,d.row,d.col,"paste",e.getSettings().pasteMode)}}function o(t){if(e.getSelected()&&!(e.getActiveEditor()&&e.getActiveEditor().isOpened()||E(t))){if(b(t.keyCode)){if(e.getSettings().fragmentSelection&&T())return;return r.setCopyableText(),void S(t)}var n=(t.ctrlKey||t.metaKey)&&!t.altKey;t.keyCode==y.A&&n&&e._registerTimeout(setTimeout(O(r.setCopyableText,r),0))}}var r=this;this.copyPasteInstance=m(),this.copyPasteInstance.onCut(t),this.copyPasteInstance.onPaste(n),this.onPaste=n,e.addHook("beforeKeyDown",o),this.destroy=function(){this.copyPasteInstance&&(this.copyPasteInstance.removeCallback(t),this.copyPasteInstance.removeCallback(n),this.copyPasteInstance.destroy(),this.copyPasteInstance=null),e.removeHook("beforeKeyDown",o)},e.addHook("afterDestroy",O(this.destroy,this)),this.triggerPaste=O(this.copyPasteInstance.triggerPaste,this.copyPasteInstance),this.triggerCut=O(this.copyPasteInstance.triggerCut,this.copyPasteInstance),this.setCopyableText=function(){var t=e.getSettings(),n=t.copyRowsLimit,o=t.copyColsLimit,r=e.getSelectedRange(),i=r.getTopLeftCorner(),s=r.getBottomRightCorner(),a=i.row,l=i.col,u=s.row,c=s.col,d=Math.min(u,a+n-1),h=Math.min(c,l+o-1),f=[];f.push({startRow:a,startCol:l,endRow:d,endCol:h}),f=Handsontable.hooks.run(e,"modifyCopyableRange",f);var p=this.getRangedCopyableData(f);e.copyPaste.copyPasteInstance.copyable(p),(u!==d||c!==h)&&Handsontable.hooks.run(e,"afterCopyLimit",u-a+1,c-l+1,n,o)},this.getRangedCopyableData=function(t){var n=[],o=[],r=[];return C(t,function(e){R(e.startRow,e.endRow,function(e){-1===o.indexOf(e)&&o.push(e)}),R(e.startCol,e.endCol,function(e){-1===r.indexOf(e)&&r.push(e)})}),C(o,function(t){var o=[];C(r,function(n){o.push(e.getCopyableData(t,n))}),n.push(o)}),v.stringify(n)}}function r(){var e=this,t=e.getSettings().copyPaste!==!1;t&&!e.copyPaste?e.copyPaste=new o(e):!t&&e.copyPaste&&(e.copyPaste.destroy(),e.copyPaste=null)}Object.defineProperties(n,{CopyPastePlugin:{get:function(){return o}},__esModule:{value:!0}});var i,s,a,l,u,c,d,h,f,p,g,m=(i=e("copyPaste"),i&&i.__esModule&&i||{"default":i})["default"],v=(s=e("SheetClip"),s&&s.__esModule&&s||{"default":s})["default"],w=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}),y=w.KEY_CODES,b=w.isCtrlKey,C=(l=e("helpers/array"),l&&l.__esModule&&l||{"default":l}).arrayEach,R=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,_=(c=e("helpers/dom/event"),c&&c.__esModule&&c||{"default":c}),S=_.stopImmediatePropagation,E=_.isImmediatePropagationStopped,T=(d=e("helpers/dom/element"),d&&d.__esModule&&d||{"default":d}).getSelectionText,O=(h=e("helpers/function"),h&&h.__esModule&&h||{"default":h}).proxy,M=((f=e("plugins"),f&&f.__esModule&&f||{"default":f}).registerPlugin,(p=e("3rdparty/walkontable/src/cell/coords"),p&&p.__esModule&&p||{"default":p}).WalkontableCellCoords),k=(g=e("3rdparty/walkontable/src/cell/range"),g&&g.__esModule&&g||{"default":g}).WalkontableCellRange;Handsontable.hooks.add("afterInit",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterCopyLimit"),Handsontable.hooks.register("modifyCopyableRange")},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,SheetClip:"SheetClip",copyPaste:"copyPaste","helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/number":49,"helpers/unicode":53,plugins:57}],74:[function(e,t,n){"use strict";function o(){}var r,i,s,a,l=((r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,(i=e("3rdparty/walkontable/src/cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange),u=(s=e("3rdparty/walkontable/src/selection"),s&&s.__esModule&&s||{"default":s}).WalkontableSelection,c=function(e){return"boolean"==typeof e&&e===!0?!0:"object"==typeof e&&e.length>0?!0:!1},d=function(){c(this.getSettings().customBorders)&&(this.customBorders||(a=this,this.customBorders=new o))},h=function(e){for(var t=0;t=0?a.view.wt.selections[o]=n:a.view.wt.selections.push(n)},p=function(e,t,n){var o=b(e,t);o=C(o,n),this.setCellMeta(e,t,"borders",o),f(o)},g=function(e){for(var t=e.range,n=t.from.row;n<=t.to.row;n++)for(var o=t.from.col;o<=t.to.col;o++){var r=b(n,o),i=0;n==t.from.row&&(i++,e.hasOwnProperty("top")&&(r.top=e.top)),n==t.to.row&&(i++,e.hasOwnProperty("bottom")&&(r.bottom=e.bottom)),o==t.from.col&&(i++,e.hasOwnProperty("left")&&(r.left=e.left)),o==t.to.col&&(i++,e.hasOwnProperty("right")&&(r.right=e.right)),i>0&&(this.setCellMeta(n,o,"borders",r),f(r))}},m=function(e,t){return"border_row"+e+"col"+t},v=function(){return{width:1,color:"#000"}},w=function(){return{hide:!0}},y=function(){return{width:1,color:"#000",cornerVisible:!1}},b=function(e,t){return{className:m(e,t),border:y(),row:e,col:t,top:w(),right:w(),bottom:w(),left:w()}},C=function(e,t){return t.hasOwnProperty("border")&&(e.border=t.border),t.hasOwnProperty("top")&&(e.top=t.top),t.hasOwnProperty("right")&&(e.right=t.right),t.hasOwnProperty("bottom")&&(e.bottom=t.bottom),t.hasOwnProperty("left")&&(e.left=t.left),e},R=function(e){for(var t=document.querySelectorAll("."+e),n=0;n'+String.fromCharCode(10003)+""+e},M=function(e){this.getSettings().customBorders&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"borders",name:"Borders",submenu:{items:[{key:"borders:top",name:function(){var e="Top",t=T(this,"top");return t&&(e=O(e)),e},callback:function(){var e=T(this,"top");E.call(this,this.getSelectedRange(),"top",e)},disabled:!1},{key:"borders:right",name:function(){var e="Right",t=T(this,"right");return t&&(e=O(e)),e},callback:function(){var e=T(this,"right");E.call(this,this.getSelectedRange(),"right",e)},disabled:!1},{key:"borders:bottom",name:function(){var e="Bottom",t=T(this,"bottom");return t&&(e=O(e)),e},callback:function(){var e=T(this,"bottom");E.call(this,this.getSelectedRange(),"bottom",e)},disabled:!1},{key:"borders:left",name:function(){var e="Left",t=T(this,"left");return t&&(e=O(e)),e},callback:function(){var e=T(this,"left");E.call(this,this.getSelectedRange(),"left",e)},disabled:!1},{key:"borders:no_borders",name:"Remove border(s)",callback:function(){E.call(this,this.getSelectedRange(),"noBorders")},disabled:function(){return!T(this)}}]}}))};Handsontable.hooks.add("beforeInit",d),Handsontable.hooks.add("afterContextMenuDefaultOptions",M), +Handsontable.hooks.add("afterInit",function(){var e=this.getSettings().customBorders;if(e){for(var t=0;tthis.boundaries.bottom&&(o=t-this.boundaries.bottom),ethis.boundaries.right&&(n=e-this.boundaries.right),this.callback(n,o)};var a,l=function(e){e.dragToScrollListening=!1;var t=e.view.wt.wtTable.holder;a=new o,t!==window&&(a.setBoundaries(t.getBoundingClientRect()),a.setCallback(function(e,n){0>e?t.scrollLeft-=50:e>0&&(t.scrollLeft+=50),0>n?t.scrollTop-=20:n>0&&(t.scrollTop+=20)}),e.dragToScrollListening=!0)};Handsontable.hooks.add("afterInit",function(){var e=this,t=s(this);t.addEventListener(document,"mouseup",function(){e.dragToScrollListening=!1}),t.addEventListener(document,"mousemove",function(t){e.dragToScrollListening&&a.check(t.clientX,t.clientY)})}),Handsontable.hooks.add("afterDestroy",function(){s(this).clear()}),Handsontable.hooks.add("afterOnCellMouseDown",function(){l(this)}),Handsontable.hooks.add("afterOnCellCornerMouseDown",function(){l(this)}),Handsontable.plugins.DragToScroll=o},{eventManager:41,plugins:57}],76:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnFreeze:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,a=function(e){$traceurRuntime.superConstructor(l).call(this,e)},l=a;$traceurRuntime.createClass(a,{isEnabled:function(){return!!this.hot.getSettings().manualColumnFreeze},enablePlugin:function(){var e=this;this.enabled||(this.addHook("modifyCol",function(t){return e.onModifyCol(t)}),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addContextMenuEntry(t)}),$traceurRuntime.superGet(this,l.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,l.prototype,"disablePlugin").call(this)},init:function(){$traceurRuntime.superGet(this,l.prototype,"init").call(this),"undefined"==typeof this.hot.manualColumnPositionsPluginUsages?this.hot.manualColumnPositionsPluginUsages=["manualColumnFreeze"]:this.hot.manualColumnPositionsPluginUsages.push("manualColumnFreeze"),this.fixedColumnsCount=this.hot.getSettings().fixedColumnsLeft},onModifyCol:function(e){return this.hot.manualColumnPositionsPluginUsages.length>1?e:this.getModifiedColumnIndex(e)},getModifiedColumnIndex:function(e){return this.hot.manualColumnPositions[e]},addContextMenuEntry:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"freeze_column",name:function(){var e=t.hot.getSelected()[1];return e>t.fixedColumnsCount-1?"Freeze this column":"Unfreeze this column"},disabled:function(){var e=t.hot.getSelected();return e[1]!==e[3]},callback:function(){var e=t.hot.getSelected()[1];e>t.fixedColumnsCount-1?t.freezeColumn(e):t.unfreezeColumn(e)}})},freezeColumn:function(e){if(!(e<=this.fixedColumnsCount-1)){var t=this.getModifiedColumnIndex(e)||e;this.checkPositionData(t),this.modifyColumnOrder(t,e,null,"freeze"),this.addFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},unfreezeColumn:function(e){if(!(e>this.fixedColumnsCount-1)){var t=this.getBestColumnReturnPosition(e),n=this.getModifiedColumnIndex(e)||e;this.checkPositionData(n),this.modifyColumnOrder(n,e,t,"unfreeze"),this.removeFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},addFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount+1}),this.fixedColumnsCount++},removeFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount-1}),this.fixedColumnsCount--},checkPositionData:function(e){this.hot.manualColumnPositions&&0!==this.hot.manualColumnPositions.length||this.hot.manualColumnPositions||(this.hot.manualColumnPositions=[]),e?this.hot.manualColumnPositions[e]||this.createPositionData(e+1):this.createPositionData(this.hot.countCols())},createPositionData:function(e){if(this.hot.manualColumnPositions.lengtht;t++)this.hot.manualColumnPositions[t]=t},modifyColumnOrder:function(e,t,n,o){null==n&&(n=e),"freeze"===o?this.hot.manualColumnPositions.splice(this.fixedColumnsCount,0,this.hot.manualColumnPositions.splice(t,1)[0]):"unfreeze"===o&&this.hot.manualColumnPositions.splice(n,0,this.hot.manualColumnPositions.splice(t,1)[0])},getBestColumnReturnPosition:function(e){for(var t=this.fixedColumnsCount,n=this.getModifiedColumnIndex(t),o=this.getModifiedColumnIndex(e);o>n;)t++,n=this.getModifiedColumnIndex(t);return t-1}},{},i),s("manualColumnFreeze",a)},{_base:58,plugins:57}],77:[function(e,t,n){"use strict";function o(){function e(e){g=this,m=e;var t=this.view.wt.wtTable.getCoords(e).col;if(t>=0){f=t;var n=m.getBoundingClientRect();l=n.left,v.style.top=n.top+"px",v.style.left=l+"px",g.rootElement.appendChild(v)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?v.style.left=n.left+n.width-o+"px":v.style.left=n.left+"px"}function n(){var e=this;u(v,"active"),u(w,"active");var t=m.getBoundingClientRect();w.style.width=t.width+"px",w.style.height=e.view.maximumVisibleElementHeight(0)+"px",w.style.top=v.style.top,w.style.left=l+"px",e.rootElement.appendChild(w)}function o(e){w.style.left=l+e+"px"}function r(){d(v,"active"),d(w,"active")}var i,s,a,l,f,g,m,v=document.createElement("DIV"),w=document.createElement("DIV"),y=h(this);v.className="manualColumnMover",w.className="manualColumnMoverGuide";var b=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualColumnPositions",e.manualColumnPositions)},C=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualColumnPositions",t),t.value},R=function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,R(e)):!1},_=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:_(e.parentNode):null},S=function(){var l,u=this;y.addEventListener(u.rootElement,"mouseover",function(n){if(R(n.target)){var o=_(n.target);if(o)if(l){var r=u.view.wt.wtTable.getCoords(o).col;r>=0&&(s=r,t(n.target,s-i))}else e.call(u,o)}}),y.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualColumnMover")&&(a=p(e),n.call(u),l=u,i=f,s=f)}),y.addEventListener(window,"mousemove",function(e){l&&o(p(e)-a)}),y.addEventListener(window,"mouseup",function(t){l&&(r(),l=!1,T(u.manualColumnPositions,u.countCols()),u.manualColumnPositions.splice(s,0,u.manualColumnPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeColumnMove",i,s),u.forceFullRender=!0,u.view.render(),b.call(u),Handsontable.hooks.run(u,"afterColumnMove",i,s),e.call(u,m))}),u.addHook("afterDestroy",E)},E=function(){y.clear()},T=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualColumnPositions=[]},this.init=function(e){var t=this,n=!!this.getSettings().manualColumnMove;if(n){var o=this.getSettings().manualColumnMove,r=C.call(t);"undefined"!=typeof r?this.manualColumnPositions=r:Array.isArray(o)?this.manualColumnPositions=o:this.manualColumnPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===y.context.eventListeners.length)&&("undefined"==typeof t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages=["manualColumnMove"]:t.manualColumnPositionsPluginUsages.push("manualColumnMove"),S.call(this),this.manualColumnPositions.length>0&&(this.forceFullRender=!0,this.render()))}else{var i=t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(E.call(this),this.manualColumnPositions=[],t.manualColumnPositionsPluginUsages[i]=void 0)}},this.modifyCol=function(e){return this.getSettings().manualColumnMove?("undefined"==typeof this.manualColumnPositions[e]&&T(this.manualColumnPositions,e+1),this.manualColumnPositions[e]):e},this.afterRemoveCol=function(e,t){if(this.getSettings().manualColumnMove){var n,o=this.manualColumnPositions;n=o.splice(e,t),o=o.map(function(e){var t,o=e;for(t=0;tn[t]&&o--;return o}),this.manualColumnPositions=o}},this.afterCreateCol=function(e,t){if(this.getSettings().manualColumnMove){var n=this.manualColumnPositions;if(n.length){for(var o=[],r=0;t>r;r++)o.push(e+r);e>=n.length?n.concat(o):(n=n.map(function(n){return n>=e?n+t:n}),n.splice.apply(n,[e,0].concat(o))),this.manualColumnPositions=n}}}}Object.defineProperties(n,{ManualColumnMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=l.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=f.pageX,g=(f.pageY,(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",g.beforeInit),Handsontable.hooks.add("afterInit",function(){g.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){g.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyCol",g.modifyCol),Handsontable.hooks.add("afterRemoveCol",g.afterRemoveCol),Handsontable.hooks.add("afterCreateCol",g.afterCreateCol),Handsontable.hooks.register("beforeColumnMove"),Handsontable.hooks.register("afterColumnMove")},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],78:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnResize:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=p.pageX,m=(p.pageY,(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin),v=function(e){$traceurRuntime.superConstructor(w).call(this,e),this.currentTH=null,this.currentCol=null,this.currentWidth=null,this.newSize=null,this.startY=null,this.startWidth=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualColumnWidths=[],c(this.handle,"manualColumnResizer"),c(this.guide,"manualColumnResizerGuide")},w=v;$traceurRuntime.createClass(v,{isEnabled:function(){return this.hot.getSettings().manualColumnResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualColumnWidths=[];var t=this.hot.getSettings().manualColumnResize,n=this.loadManualColumnWidths();this.addHook("modifyColWidth",function(t,n){return e.onModifyColWidth(t,n)}),"undefined"!=typeof n?this.manualColumnWidths=n:Array.isArray(t)?this.manualColumnWidths=t:this.manualColumnWidths=[],Handsontable.hooks.register("beforeColumnResize"),Handsontable.hooks.register("afterColumnResize"),this.bindEvents(),$traceurRuntime.superGet(this,w.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualColumnResize;Array.isArray(e)?this.manualColumnWidths=e:this.manualColumnWidths=[]},disablePlugin:function(){$traceurRuntime.superGet(this,w.prototype,"disablePlugin").call(this)},saveManualColumnWidths:function(){this.hot.runHooks("persistentStateSave","manualColumnWidths",this.manualColumnWidths)},loadManualColumnWidths:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualColumnWidths",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).col;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentCol=t,this.startOffset=n.left-6,this.startWidth=parseInt(n.width,10),this.handle.style.top=n.top+"px",this.handle.style.left=this.startOffset+this.startWidth+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.left=this.startOffset+this.currentWidth+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.height=this.hot.view.maximumVisibleElementHeight(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.left=this.handle.style.left},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfColumnHeader:function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfColumnHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfColumnHeader(e.target)){var t=this.getTHFromTargetElement(e.target);if(!t)return;var n=t.getAttribute("colspan");!t||null!==n&&1!==n||this.pressed||this.setupHandlePosition(t)}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualColumnResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null===this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startX=g(e),this.newSize=this.startWidth)},onMouseMove:function(e){this.pressed&&(this.currentWidth=this.startWidth+(g(e)-this.startX),this.newSize=this.setManualSize(this.currentCol,this.currentWidth),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startWidth&&(this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return t=Math.max(t,20),e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=t,t},onModifyColWidth:function(e,t){return this.enabled&&(t=this.hot.runHooks("modifyCol",t),this.hot.getSettings().manualColumnResize&&this.manualColumnWidths[t])?this.manualColumnWidths[t]:e}},{},l),m("manualColumnResize",v)},{"_base.js":58,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],79:[function(e,t,n){"use strict";function o(){function e(e){var t=this;g=e;var n=this.view.wt.wtTable.getCoords(e).row;if(n>=0){f=n;var o=g.getBoundingClientRect();l=o.top,m.style.top=l+"px",m.style.left=o.left+"px",t.rootElement.appendChild(m)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?m.style.top=n.top+n.height-o+"px":m.style.top=n.top+"px"}function n(){var e=this;u(m,"active"),u(v,"active");var t=g.getBoundingClientRect();v.style.width=e.view.maximumVisibleElementWidth(0)+"px",v.style.height=t.height+"px",v.style.top=l+"px",v.style.left=m.style.left,e.rootElement.appendChild(v)}function o(e){v.style.top=l+e+"px"}function r(){d(m,"active"),d(v,"active")}var i,s,a,l,f,g,m=document.createElement("DIV"),v=document.createElement("DIV"),w=h(this);m.className="manualRowMover",v.className="manualRowMoverGuide";var y=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualRowPositions",e.manualRowPositions)},b=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualRowPositions",t),t.value},C=function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,C(e)):!1},R=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:R(e.parentNode):null},_=function(){var l,u=this;w.addEventListener(u.rootElement,"mouseover",function(n){if(C(n.target)){var o=R(n.target);o&&(l?(s=u.view.wt.wtTable.getCoords(o).row,t(o,s-i)):e.call(u,o))}}),w.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualRowMover")&&(a=p(e),n.call(u),l=u,i=f,s=f)}),w.addEventListener(window,"mousemove",function(e){l&&o(p(e)-a)}),w.addEventListener(window,"mouseup",function(t){l&&(r(),l=!1,E(u.manualRowPositions,u.countRows()),u.manualRowPositions.splice(s,0,u.manualRowPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeRowMove",i,s),u.forceFullRender=!0,u.view.render(),y.call(u),Handsontable.hooks.run(u,"afterRowMove",i,s),e.call(u,g))}),u.addHook("afterDestroy",S)},S=function(){w.clear()},E=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualRowPositions=[]},this.init=function(e){var t=this,n=!!t.getSettings().manualRowMove;if(n){var o=t.getSettings().manualRowMove,r=b.call(t);"undefined"==typeof t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages=["manualColumnMove"]:t.manualRowPositionsPluginUsages.push("manualColumnMove"),"undefined"!=typeof r?this.manualRowPositions=r:Array.isArray(o)?this.manualRowPositions=o:this.manualRowPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===w.context.eventListeners.length)&&(_.call(this),this.manualRowPositions.length>0&&(t.forceFullRender=!0,t.render()))}else{var i=t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(S.call(this),t.manualRowPositions=[],t.manualRowPositionsPluginUsages[i]=void 0)}},this.modifyRow=function(e){var t=this;return t.getSettings().manualRowMove?("undefined"==typeof t.manualRowPositions[e]&&E(this.manualRowPositions,e+1),t.manualRowPositions[e]):e}}Object.defineProperties(n,{ManualRowMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=l.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=(f.pageX,f.pageY),g=((a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",g.beforeInit),Handsontable.hooks.add("afterInit",function(){g.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){g.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyRow",g.modifyRow),Handsontable.hooks.register("beforeRowMove"),Handsontable.hooks.register("afterRowMove")},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],80:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualRowResize:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,p=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=(p.pageX,p.pageY),m=(a=e("plugins"),a&&a.__esModule&&a||{"default":a}).registerPlugin,v=function(e){$traceurRuntime.superConstructor(w).call(this,e),this.currentTH=null,this.currentRow=null,this.currentHeight=null,this.newSize=null,this.startY=null,this.startHeight=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualRowHeights=[],c(this.handle,"manualRowResizer"),c(this.guide,"manualRowResizerGuide")},w=v;$traceurRuntime.createClass(v,{isEnabled:function(){return this.hot.getSettings().manualRowResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualRowHeights=[];var t=this.hot.getSettings().manualRowResize,n=this.loadManualRowHeights();"undefined"!=typeof n?this.manualRowHeights=n:Array.isArray(t)?this.manualRowHeights=t:this.manualRowHeights=[],this.addHook("modifyRowHeight",function(t,n){return e.onModifyRowHeight(t,n)}),Handsontable.hooks.register("beforeRowResize"),Handsontable.hooks.register("afterRowResize"),this.bindEvents(),$traceurRuntime.superGet(this,w.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualRowResize;Array.isArray(e)?this.manualRowHeights=e:this.manualRowHeights=[]},disablePlugin:function(){$traceurRuntime.superGet(this,w.prototype,"disablePlugin").call(this)},saveManualRowHeights:function(){this.hot.runHooks("persistentStateSave","manualRowHeights",this.manualRowHeights)},loadManualRowHeights:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualRowHeights",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).row;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentRow=t,this.startOffset=n.top-6,this.startHeight=parseInt(n.height,10),this.handle.style.left=n.left+"px",this.handle.style.top=this.startOffset+this.startHeight+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.top=this.startOffset+this.currentHeight+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.width=this.hot.view.maximumVisibleElementWidth(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.top=this.handle.style.top},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfRowHeader:function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfRowHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfRowHeader(e.target)){var t=this.getTHFromTargetElement(e.target);t&&(this.pressed||this.setupHandlePosition(t))}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualRowResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null==this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startY=g(e),this.newSize=this.startHeight)},onMouseMove:function(e){this.pressed&&(this.currentHeight=this.startHeight+(g(e)-this.startY),this.newSize=this.setManualSize(this.currentRow,this.currentHeight),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startHeight&&(this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualRowHeights(),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return e=this.hot.runHooks("modifyRow",e),this.manualRowHeights[e]=t,t},onModifyRowHeight:function(e,t){if(this.enabled){var n=this.hot.getPlugin("autoRowSize"),o=n?n.heights[t]:null;t=this.hot.runHooks("modifyRow",t);var r=this.manualRowHeights[t];if(void 0!==r&&(r===o||r>(e||0)))return r}return e}},{},l),m("manualRowResize",v)},{"_base.js":58,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],81:[function(e,t,n){"use strict";function o(){var e=[];return e.getInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row<=e&&this[n].row+this[n].rowspan-1>=e&&this[n].col<=t&&this[n].col+this[n].colspan-1>=t)return this[n]},e.setInfo=function(e){for(var t=0,n=this.length;n>t;t++)if(this[t].row===e.row&&this[t].col===e.col)return void(this[t]=e);this.push(e)},e.removeInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row===e&&this[n].col===t){this.splice(n,1);break}},e}function r(e){if(this.mergedCellInfoCollection=new o,Array.isArray(e))for(var t=0,n=e.length;n>t;t++)this.mergedCellInfoCollection.setInfo(e[t])}function i(e,t){var n=this.getSettings().mergeCells;if(n&&!this.selection.isMultiple()){var o=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);o&&(e[0]=o.row,e[1]=o.col,e[2]=o.row+o.rowspan-1,e[3]=o.col+o.colspan-1)}}function s(e,t){this.mergeCells&&this.mergeCells.shiftCollection("right",e,t)}function a(e,t){this.mergeCells&&this.mergeCells.shiftCollection("left",e,t)}function l(e,t){this.mergeCells&&this.mergeCells.shiftCollection("down",e,t)}function u(e,t){this.mergeCells&&this.mergeCells.shiftCollection("up",e,t)}Object.defineProperties(n,{MergeCells:{get:function(){return r}},__esModule:{value:!0}});var c,d,h,f,p,g=((c=e("plugins"),c&&c.__esModule&&c||{"default":c}).registerPlugin,(d=e("helpers/dom/event"),d&&d.__esModule&&d||{"default":d}).stopImmediatePropagation),m=(h=e("3rdparty/walkontable/src/cell/coords"),h&&h.__esModule&&h||{"default":h}).WalkontableCellCoords,v=(f=e("3rdparty/walkontable/src/cell/range"),f&&f.__esModule&&f||{"default":f}).WalkontableCellRange,w=(p=e("3rdparty/walkontable/src/table"),p&&p.__esModule&&p||{"default":p}).WalkontableTable;r.prototype.canMergeRange=function(e){return!e.isSingle()},r.prototype.mergeRange=function(e){if(this.canMergeRange(e)){var t=e.getTopLeftCorner(),n=e.getBottomRightCorner(),o={};o.row=t.row,o.col=t.col,o.rowspan=n.row-t.row+1,o.colspan=n.col-t.col+1,this.mergedCellInfoCollection.setInfo(o)}},r.prototype.mergeOrUnmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.from.row,e.from.col);t?this.unmergeSelection(e.from):this.mergeSelection(e)},r.prototype.mergeSelection=function(e){this.mergeRange(e)},r.prototype.unmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.row,e.col);this.mergedCellInfoCollection.removeInfo(t.row,t.col)},r.prototype.applySpanProperties=function(e,t,n){var o=this.mergedCellInfoCollection.getInfo(t,n);o?o.row===t&&o.col===n?(e.setAttribute("rowspan",o.rowspan),e.setAttribute("colspan",o.colspan)):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="none"):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"))},r.prototype.modifyTransform=function(e,t,n){var o=function(e,t){return t.row>=e.row&&t.row<=e.row+e.rowspan-1?!0:!1},r=function(e,t){return t.col>=e.col&&t.col<=e.col+e.colspan-1?!0:!1},i=function(e){return new m(t.to.row+e.row,t.to.col+e.col)},s={row:n.row,col:n.col};if("modifyTransformStart"==e){this.lastDesiredCoords||(this.lastDesiredCoords=new m(null,null));for(var a,l=new m(t.highlight.row,t.highlight.col),u=this.mergedCellInfoCollection.getInfo(l.row,l.col),c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var h=this.mergedCellInfoCollection[c];if(h=new m(h.row+h.rowspan-1,h.col+h.colspan-1),t.includes(h)){a=!0;break}}if(u){var f=new m(u.row,u.col),p=new m(u.row+u.rowspan-1,u.col+u.colspan-1),g=new v(f,f,p);g.includes(this.lastDesiredCoords)||(this.lastDesiredCoords=new m(null,null)),s.row=this.lastDesiredCoords.row?this.lastDesiredCoords.row-l.row:s.row,s.col=this.lastDesiredCoords.col?this.lastDesiredCoords.col-l.col:s.col,n.row>0?s.row=u.row+u.rowspan-1-l.row+n.row:n.row<0&&(s.row=l.row-u.row+n.row),n.col>0?s.col=u.col+u.colspan-1-l.col+n.col:n.col<0&&(s.col=l.col-u.col+n.col)}var w=new m(t.highlight.row+s.row,t.highlight.col+s.col),y=this.mergedCellInfoCollection.getInfo(w.row,w.col);y&&(this.lastDesiredCoords=w,s={row:y.row-l.row,col:y.col-l.col})}else if("modifyTransformEnd"==e)for(var c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var b=this.mergedCellInfoCollection[c],f=new m(b.row,b.col),p=new m(b.row+b.rowspan-1,b.col+b.colspan-1),C=new v(f,f,p),R=t.getBordersSharedWith(C);if(C.isEqual(t))t.setDirection("NW-SE");else if(R.length>0){var _=t.highlight.isEqual(C.from);R.indexOf("top")>-1?t.to.isSouthEastOf(C.from)&&_?t.setDirection("NW-SE"):t.to.isSouthWestOf(C.from)&&_&&t.setDirection("NE-SW"):R.indexOf("bottom")>-1&&(t.to.isNorthEastOf(C.from)&&_?t.setDirection("SW-NE"):t.to.isNorthWestOf(C.from)&&_&&t.setDirection("SE-NW"))}var w=i(s),S=o(b,w),E=r(b,w);t.includesRange(C)&&(C.includes(w)||S||E)&&(S&&(s.row<0?s.row-=b.rowspan-1:s.row>0&&(s.row+=b.rowspan-1)),E&&(s.col<0?s.col-=b.colspan-1:s.col>0&&(s.col+=b.colspan-1)))}0!==s.row&&(n.row=s.row),0!==s.col&&(n.col=s.col)},r.prototype.shiftCollection=function(e,t,n){var o=[0,0];switch(e){case"right":o[0]+=1;break;case"left":o[0]-=1;break;case"down":o[1]+=1;break;case"up":o[1]-=1}for(var r=0;rn;n++)e.mergeCells.mergedCellInfoCollection.setInfo(t[n])}else e.mergeCells=new r(t);else e.mergeCells&&(e.mergeCells.mergedCellInfoCollection=new o)},R=function(e){if(this.mergeCells){var t=(e.ctrlKey||e.metaKey)&&!e.altKey;t&&77===e.keyCode&&(this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render(),g(e))}},_=function(e){this.getSettings().mergeCells&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"mergeCells",name:function(){var e=this.getSelected(),t=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);return t?"Unmerge cells":"Merge cells"; +},callback:function(){this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render()},disabled:function(){return!1}}))},S=function(e,t,n,o,r,i){this.mergeCells&&this.mergeCells.applySpanProperties(e,t,n)},E=function(e){return function(t){var n=this.getSettings().mergeCells;if(n){var o=this.getSelectedRange();if(this.mergeCells.modifyTransform(e,o,t),"modifyTransformEnd"===e){var r=this.countRows(),i=this.countCols();o.from.row<0?o.from.row=0:o.from.row>0&&o.from.row>=r&&(o.from.row=o.from-1),o.from.col<0?o.from.col=0:o.from.col>0&&o.from.col>=i&&(o.from.col=i-1)}}}},T=function(e){this.lastDesiredCoords=null;var t=this.getSettings().mergeCells;if(t){var n=this.getSelectedRange();n.highlight=new m(n.highlight.row,n.highlight.col),n.to=e;var o=!1;do{o=!1;for(var r=0,i=this.mergeCells.mergedCellInfoCollection.length;i>r;r++){var s=this.mergeCells.mergedCellInfoCollection[r],a=new m(s.row,s.col),l=new m(s.row+s.rowspan-1,s.col+s.colspan-1),u=new v(a,a,l);n.expandByRange(u)&&(e.row=n.to.row,e.col=n.to.col,o=!0)}}while(o)}},O=function(e,t){if(t&&"area"==t){var n=this.getSettings().mergeCells;if(n)for(var o=this.getSelectedRange(),r=new v(o.from,o.from,o.from),i=new v(o.to,o.to,o.to),s=0,a=this.mergeCells.mergedCellInfoCollection.length;a>s;s++){var l=this.mergeCells.mergedCellInfoCollection[s],u=new m(l.row,l.col),c=new m(l.row+l.rowspan-1,l.col+l.colspan-1),d=new v(u,u,c);r.expandByRange(d)&&(e[0]=r.from.row,e[1]=r.from.col),i.expandByRange(d)&&(e[2]=i.from.row,e[3]=i.from.col)}}},M=function(e,t,n){var o=this.getSettings().mergeCells;if(o){var r=this.mergeCells.mergedCellInfoCollection.getInfo(e,t);!r||r.row==e&&r.col==t||(n.copyable=!1)}},k=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countCols(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(e.startRow,r),n&&n.rowe.endRow)return e.endRow=i,k.call(this,e)}}},H=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countRows(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(r,e.startColumn),n&&n.cole.endColumn)return e.endColumn=i,H.call(this,e)}}},D=function(e){if(e&&this.mergeCells){var t=this.mergeCells.mergedCellInfoCollection,n=this.getSelectedRange();for(var o in t)if(n.highlight.row==t[o].row&&n.highlight.col==t[o].col&&n.to.row==t[o].row+t[o].rowspan-1&&n.to.col==t[o].col+t[o].colspan-1)return!1}return e};Handsontable.hooks.add("beforeInit",y),Handsontable.hooks.add("afterInit",b),Handsontable.hooks.add("afterUpdateSettings",C),Handsontable.hooks.add("beforeKeyDown",R),Handsontable.hooks.add("modifyTransformStart",E("modifyTransformStart")),Handsontable.hooks.add("modifyTransformEnd",E("modifyTransformEnd")),Handsontable.hooks.add("beforeSetRangeEnd",T),Handsontable.hooks.add("beforeDrawBorders",O),Handsontable.hooks.add("afterIsMultipleSelection",D),Handsontable.hooks.add("afterRenderer",S),Handsontable.hooks.add("afterContextMenuDefaultOptions",_),Handsontable.hooks.add("afterGetCellMeta",M),Handsontable.hooks.add("afterViewportRowCalculatorOverride",k),Handsontable.hooks.add("afterViewportColumnCalculatorOverride",H),Handsontable.hooks.add("afterAutofillApplyValues",i),Handsontable.hooks.add("afterCreateCol",s),Handsontable.hooks.add("afterRemoveCol",a),Handsontable.hooks.add("afterCreateRow",l),Handsontable.hooks.add("afterRemoveRow",u),Handsontable.MergeCells=r},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":46,plugins:57}],82:[function(e,t,n){"use strict";Object.defineProperties(n,{MultipleSelectionHandles:{get:function(){return p}},__esModule:{value:!0}});var o,r,i,s,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=a.getWindowScrollTop,u=a.hasClass,c=a.getWindowScrollLeft,d=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,p=function(e){$traceurRuntime.superConstructor(g).call(this,e),this.dragged=[],this.eventManager=null,this.lastSetCell=null},g=p;$traceurRuntime.createClass(p,{isEnabled:function(){return Handsontable.mobileBrowser},enablePlugin:function(){this.enabled||(this.eventManager||(this.eventManager=new h(this)),this.registerListeners(),$traceurRuntime.superGet(this,g.prototype,"enablePlugin").call(this))},registerListeners:function(){function e(e){if(1===t.dragged.length)return t.dragged.splice(0,t.dragged.length),!0;var n=t.dragged.indexOf(e);return-1==n?!1:void(0===n?t.dragged=t.dragged.slice(0,1):1==n&&(t.dragged=t.dragged.slice(-1)))}var t=this;this.eventManager.addEventListener(this.hot.rootElement,"touchstart",function(e){var n;return u(e.target,"topLeftSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("topLeft"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):u(e.target,"bottomRightSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("bottomRight"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchend",function(n){return u(n.target,"topLeftSelectionHandle-HitArea")?(e.call(t,"topLeft"),t.touchStartRange=void 0,n.preventDefault(),!1):u(n.target,"bottomRightSelectionHandle-HitArea")?(e.call(t,"bottomRight"),t.touchStartRange=void 0,n.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchmove",function(e){var n,o,r,i,s,a,u,d=l(),h=c();0!==t.dragged.length&&(n=document.elementFromPoint(e.touches[0].screenX-h,e.touches[0].screenY-d),n&&n!==t.lastSetCell&&(("TD"==n.nodeName||"TH"==n.nodeName)&&(o=t.hot.getCoords(n),-1==o.col&&(o.col=0),r=t.hot.getSelectedRange(),i=r.getWidth(),s=r.getHeight(),a=r.getDirection(),1==i&&1==s&&t.hot.selection.setRangeEnd(o),u=t.getCurrentRangeCoords(r,o,t.touchStartRange.direction,a,t.dragged[0]),null!==u.start&&t.hot.selection.setRangeStart(u.start),t.hot.selection.setRangeEnd(u.end),t.lastSetCell=n),e.preventDefault()))})},getCurrentRangeCoords:function(e,t,n,o,r){var i=e.getTopLeftCorner(),s=e.getBottomRightCorner(),a=e.getBottomLeftCorner(),l=e.getTopRightCorner(),u={start:null,end:null};switch(n){case"NE-SW":switch(o){case"NE-SW":case"NW-SE":u="topLeft"==r?{start:new WalkontableCellCoords(t.row,e.highlight.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,i.col)};break;case"SE-NW":"bottomRight"==r&&(u={start:new WalkontableCellCoords(s.row,t.col),end:new WalkontableCellCoords(t.row,i.col)})}break;case"NW-SE":switch(o){case"NE-SW":"topLeft"==r?u={start:t,end:a}:u.end=t;break;case"NW-SE":"topLeft"==r?u={start:t,end:s}:u.end=t;break;case"SE-NW":"topLeft"==r?u={start:t,end:i}:u.end=t;break;case"SW-NE":"topLeft"==r?u={start:t,end:l}:u.end=t}break;case"SW-NE":switch(o){case"NW-SE":u="bottomRight"==r?{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(a.row,t.col)}:{start:new WalkontableCellCoords(i.row,t.col),end:new WalkontableCellCoords(t.row,s.col)};break;case"SW-NE":u="topLeft"==r?{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,s.col)}:{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(i.row,t.col)};break;case"SE-NW":"bottomRight"==r?u={start:new WalkontableCellCoords(t.row,l.col),end:new WalkontableCellCoords(i.row,t.col)}:"topLeft"==r&&(u={start:a,end:t})}break;case"SE-NW":switch(o){case"NW-SE":case"NE-SW":case"SW-NE":"topLeft"==r&&(u.end=t);break;case"SE-NW":"topLeft"==r?u.end=t:u={start:t,end:i}}}return u},isDragged:function(){return this.dragged.length>0}},{},d),f("multipleSelectionHandles",p)},{_base:58,eventManager:41,"helpers/dom/element":45,plugins:57}],83:[function(e,t,n){"use strict";function o(){}function r(){var e=this,t=e.getSettings().observeChanges;t?(e.observer&&a.call(e),i.call(e),u.call(e)):t||a.call(e)}function i(){var e=this;e.observeChangesActive=!0,e.pauseObservingChanges=function(){e.observeChangesActive=!1},e.resumeObservingChanges=function(){e.observeChangesActive=!0},e.observedData=e.getSourceData(),e.observer=p.observe(e.observedData,function(t){e.observeChangesActive&&(s.call(e,t),e.render()),e.runHooks("afterChangesObserved")})}function s(e){function t(e){var t;return t=o(e),t=n(t)}function n(e){var t=[];return e.filter(function(e){var n=r(e.path);if(-1!=["add","remove"].indexOf(e.op)&&!isNaN(n.col)){if(-1!=t.indexOf(n.col))return!1;t.push(n.col)}return!0})}function o(e){return e.filter(function(e){return!/[\/]length/gi.test(e.path)})}function r(e){var t=e.match(/^\/(\d+)\/?(.*)?$/);return{row:parseInt(t[1],10),col:/^\d*$/.test(t[2])?parseInt(t[2],10):t[2]}}for(var i=this,s=t(e),a=0,l=s.length;l>a;a++){var u=s[a],c=r(u.path);switch(u.op){case"add":isNaN(c.col)?i.runHooks("afterCreateRow",c.row):i.runHooks("afterCreateCol",c.col);break;case"remove":isNaN(c.col)?i.runHooks("afterRemoveRow",c.row,1):i.runHooks("afterRemoveCol",c.col,1);break;case"replace":i.runHooks("afterChange",[c.row,c.col,null,u.value],"external")}}}function a(){var e=this;e.observer&&(l.call(e),c.call(e))}function l(){var e=this;p.unobserve(e.observedData,e.observer),delete e.observedData,delete e.observeChangesActive,delete e.pauseObservingChanges,delete e.resumeObservingChanges}function u(){var e=this;e.addHook("afterDestroy",a),e.addHook("afterCreateRow",d),e.addHook("afterRemoveRow",d),e.addHook("afterCreateCol",d),e.addHook("afterRemoveCol",d),e.addHook("afterChange",function(e,t){"loadData"!=t&&d.call(this)})}function c(){var e=this;e.removeHook("afterDestroy",a),e.removeHook("afterCreateRow",d),e.removeHook("afterRemoveRow",d),e.removeHook("afterCreateCol",d),e.removeHook("afterRemoveCol",d),e.removeHook("afterChange",d)}function d(){var e=this;e.pauseObservingChanges(),e.addHookOnce("afterChangesObserved",function(){e.resumeObservingChanges()})}Object.defineProperties(n,{ObserveChanges:{get:function(){return o}},__esModule:{value:!0}});var h,f,p=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("jsonpatch"),f&&f.__esModule&&f||{"default":f})["default"]);Handsontable.hooks.add("afterLoadData",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterChangesObserved")},{jsonpatch:"jsonpatch",plugins:57}],84:[function(e,t,n){"use strict";function o(e){var t,n=function(){window.localStorage[e+"__persistentStateKeys"]=JSON.stringify(t)},o=function(){var n=window.localStorage[e+"__persistentStateKeys"],o="string"==typeof n?JSON.parse(n):void 0;t=o?o:[]},r=function(){t=[],n()};o(),this.saveValue=function(o,r){window.localStorage[e+"_"+o]=JSON.stringify(r),-1==t.indexOf(o)&&(t.push(o),n())},this.loadValue=function(t,n){t="undefined"==typeof t?n:t;var o=window.localStorage[e+"_"+t];return"undefined"==typeof o?void 0:JSON.parse(o)},this.reset=function(t){window.localStorage.removeItem(e+"_"+t)},this.resetAll=function(){for(var n=0;na;a++)for(var l=0;i>l;l++){var u=e.getDataAtCell(a,l),c=e.getCellMeta(a,l),d=c.search.callback||n,h=c.search.queryMethod||o,f=h(t,u);if(f){var p={row:a,col:l,data:u};s.push(p)}d&&d(e,a,l,u,f)}return s}},Handsontable.Search.DEFAULT_CALLBACK=function(e,t,n,o,r){e.getCellMeta(t,n).isSearchResult=r},Handsontable.Search.DEFAULT_QUERY_METHOD=function(e,t){return"undefined"!=typeof e&&null!=e&&e.toLowerCase&&0!==e.length?"undefined"==typeof t||null==t?!1:-1!=t.toString().toLowerCase().indexOf(e.toLowerCase()):!1},Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS="htSearchResult",Handsontable.Search.global=function(){var e=Handsontable.Search.DEFAULT_CALLBACK,t=Handsontable.Search.DEFAULT_QUERY_METHOD,n=Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS;return{getDefaultCallback:function(){return e},setDefaultCallback:function(t){e=t},getDefaultQueryMethod:function(){return t},setDefaultQueryMethod:function(e){t=e},getDefaultSearchResultClass:function(){return n},setDefaultSearchResultClass:function(e){n=e}}}(),Handsontable.SearchCellDecorator=function(e,t,n,o,r,i,s){var u=null!==s.search&&"object"==typeof s.search&&s.search.searchResultClass||Handsontable.Search.global.getDefaultSearchResultClass();s.isSearchResult?a(t,u):l(t,u)};var h=d("base");c("base",function(e,t,n,o,r,i,s){h.apply(this,arguments),Handsontable.SearchCellDecorator.apply(this,arguments)}),Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/element":45,renderers:88}],86:[function(e,t,n){"use strict";Object.defineProperties(n,{TouchScroll:{get:function(){return d}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=s.addClass,l=s.removeClass,u=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}).registerPlugin,d=function(e){var t=this;$traceurRuntime.superConstructor(h).call(this,e),this.hot.addHook("afterInit",function(){return t.afterInit()}),this.hot.addHook("afterUpdateSettings",function(){return t.onAfterUpdateSettings()}),this.scrollbars=[],this.clones=[]},h=d;$traceurRuntime.createClass(d,{afterInit:function(){this.registerEvents(),this.onAfterUpdateSettings()},onAfterUpdateSettings:function(){var e=this;this.hot.addHookOnce("afterRender",function(){var t=e.hot.view.wt.wtOverlays;e.scrollbars=[],e.scrollbars.push(t.topOverlay),t.bottomOverlay.clone&&e.scrollbars.push(t.bottomOverlay),e.scrollbars.push(t.leftOverlay),t.topLeftCornerOverlay&&e.scrollbars.push(t.topLeftCornerOverlay),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.scrollbars.push(t.bottomLeftCornerOverlay),e.clones=[],t.topOverlay.needFullRender&&e.clones.push(t.topOverlay.clone.wtTable.holder.parentNode),t.bottomOverlay.needFullRender&&e.clones.push(t.bottomOverlay.clone.wtTable.holder.parentNode),t.leftOverlay.needFullRender&&e.clones.push(t.leftOverlay.clone.wtTable.holder.parentNode),t.topLeftCornerOverlay&&e.clones.push(t.topLeftCornerOverlay.clone.wtTable.holder.parentNode),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.clones.push(t.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode)})},registerEvents:function(){var e=this;this.hot.addHook("beforeTouchScroll",function(){return e.onBeforeTouchScroll()}),this.hot.addHook("afterMomentumScroll",function(){return e.onAfterMomentumScroll()})},onBeforeTouchScroll:function(){Handsontable.freezeOverlays=!0;for(var e=0,t=this.clones.length;t>e;e++)a(this.clones[e],"hide-tween")},onAfterMomentumScroll:function(){Handsontable.freezeOverlays=!1;for(var e=this,t=0,n=this.clones.length;n>t;t++)l(this.clones[t],"hide-tween");for(var o=0,r=this.clones.length;r>o;o++)a(this.clones[o],"show-tween");setTimeout(function(){for(var t=0,n=e.clones.length;n>t;t++)l(e.clones[t],"show-tween")},400);for(var i=0,s=this.scrollbars.length;s>i;i++)this.scrollbars[i].refresh(),this.scrollbars[i].resetFixedPosition();this.hot.view.wt.wtOverlays.syncScrollWithMaster()}},{},u),c("touchScroll",d)},{_base:58,"helpers/dom/element":45,plugins:57}],87:[function(e,t,n){"use strict";function o(){var e=this,t="undefined"==typeof e.getSettings().undo||e.getSettings().undo;t?e.undoRedo||(e.undoRedo=new Handsontable.UndoRedo(e),s(e),e.addHook("beforeKeyDown",r),e.addHook("afterChange",i)):e.undoRedo&&(delete e.undoRedo,a(e),e.removeHook("beforeKeyDown",r),e.removeHook("afterChange",i))}function r(e){var t=this,n=(e.ctrlKey||e.metaKey)&&!e.altKey;n&&(89===e.keyCode||e.shiftKey&&90===e.keyCode?(t.undoRedo.redo(),f(e)):90===e.keyCode&&(t.undoRedo.undo(),f(e)))}function i(e,t){var n=this;return"loadData"==t?n.undoRedo.clear():void 0}function s(e){e.undo=function(){return e.undoRedo.undo()},e.redo=function(){return e.undoRedo.redo()},e.isUndoAvailable=function(){return e.undoRedo.isUndoAvailable()},e.isRedoAvailable=function(){return e.undoRedo.isRedoAvailable()},e.clearUndo=function(){return e.undoRedo.clear()}}function a(e){delete e.undo,delete e.redo,delete e.isUndoAvailable,delete e.isRedoAvailable,delete e.clearUndo}var l,u,c=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),d=c.inherit,h=c.deepClone,f=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}).stopImmediatePropagation;Handsontable.UndoRedo=function(e){var t=this;this.instance=e,this.doneActions=[],this.undoneActions=[],this.ignoreNewActions=!1,e.addHook("afterChange",function(e,n){if(e){var o=new Handsontable.UndoRedo.ChangeAction(e);t.done(o)}}),e.addHook("afterCreateRow",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateRowAction(e,n);t.done(r)}}),e.addHook("beforeRemoveRow",function(e,n){var o=t.instance.getSourceData();e=(o.length+e)%o.length;var r=o.slice(e,e+n),i=new Handsontable.UndoRedo.RemoveRowAction(e,r);t.done(i)}),e.addHook("afterCreateCol",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateColumnAction(e,n);t.done(r)}}),e.addHook("beforeRemoveCol",function(n,o){var r=t.instance.getSourceData();n=(t.instance.countCols()+n)%t.instance.countCols();for(var i=[],s=0,a=r.length;a>s;s++)i[s]=r[s].slice(n,n+o);var l;Array.isArray(e.getSettings().colHeaders)&&(l=e.getSettings().colHeaders.slice(n,n+i.length));var u=new Handsontable.UndoRedo.RemoveColumnAction(n,i,l);t.done(u)}),e.addHook("beforeCellAlignment",function(e,n,o,r){var i=new Handsontable.UndoRedo.CellAlignmentAction(e,n,o,r);t.done(i)})},Handsontable.UndoRedo.prototype.done=function(e){this.ignoreNewActions||(this.doneActions.push(e),this.undoneActions.length=0)},Handsontable.UndoRedo.prototype.undo=function(){if(this.isUndoAvailable()){var e=this.doneActions.pop();this.ignoreNewActions=!0;var t=this;e.undo(this.instance,function(){t.ignoreNewActions=!1,t.undoneActions.push(e)})}},Handsontable.UndoRedo.prototype.redo=function(){if(this.isRedoAvailable()){var e=this.undoneActions.pop();this.ignoreNewActions=!0;var t=this;e.redo(this.instance,function(){t.ignoreNewActions=!1,t.doneActions.push(e)})}},Handsontable.UndoRedo.prototype.isUndoAvailable=function(){return this.doneActions.length>0},Handsontable.UndoRedo.prototype.isRedoAvailable=function(){return this.undoneActions.length>0},Handsontable.UndoRedo.prototype.clear=function(){this.doneActions.length=0,this.undoneActions.length=0},Handsontable.UndoRedo.Action=function(){},Handsontable.UndoRedo.Action.prototype.undo=function(){},Handsontable.UndoRedo.Action.prototype.redo=function(){},Handsontable.UndoRedo.ChangeAction=function(e){this.changes=e},d(Handsontable.UndoRedo.ChangeAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.ChangeAction.prototype.undo=function(e,t){for(var n=h(this.changes),o=e.countEmptyRows(!0),r=e.countEmptyCols(!0),i=0,s=n.length;s>i;i++)n[i].splice(3,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"undo");for(var i=0,s=n.length;s>i;i++)e.getSettings().minSpareRows&&n[i][0]+1+e.getSettings().minSpareRows===e.countRows()&&o==e.getSettings().minSpareRows&&(e.alter("remove_row",parseInt(n[i][0]+1,10),e.getSettings().minSpareRows),e.undoRedo.doneActions.pop()),e.getSettings().minSpareCols&&n[i][1]+1+e.getSettings().minSpareCols===e.countCols()&&r==e.getSettings().minSpareCols&&(e.alter("remove_col",parseInt(n[i][1]+1,10),e.getSettings().minSpareCols),e.undoRedo.doneActions.pop())},Handsontable.UndoRedo.ChangeAction.prototype.redo=function(e,t){for(var n=h(this.changes),o=0,r=n.length;r>o;o++)n[o].splice(2,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"redo")},Handsontable.UndoRedo.CreateRowAction=function(e,t){this.index=e,this.amount=t},d(Handsontable.UndoRedo.CreateRowAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.CreateRowAction.prototype.undo=function(e,t){var n=e.countRows(),o=e.getSettings().minSpareRows;this.index>=n&&this.index-or;r++)n=e.getSourceDataAtRow(r),o=[this.index,0],Array.prototype.push.apply(o,this.data[r]),Array.prototype.splice.apply(n,o);"undefined"!=typeof this.headers&&(o=[this.index,0],Array.prototype.push.apply(o,this.headers),Array.prototype.splice.apply(e.getSettings().colHeaders,o)),e.addHookOnce("afterRender",t),e.render()},Handsontable.UndoRedo.RemoveColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount)},Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/event":46,"helpers/object":50}],88:[function(e,t,n){"use strict";function o(e,t){var n;l[e]=t,n=a(e)+"Renderer",Handsontable.renderers[n]=t,Handsontable[n]=t}function r(e){if("function"==typeof e)return e;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "renderer" parameter');if(!(e in l))throw Error('No editor registered under name "'+e+'"');return l[e]}function i(e){return e in l}Object.defineProperties(n,{registerRenderer:{get:function(){return o}},getRenderer:{get:function(){return r}},hasRenderer:{get:function(){return i}},__esModule:{value:!0}});var s,a=(s=e("helpers/string"),s&&s.__esModule&&s||{"default":s}).toUpperCaseFirst,l={};Handsontable.renderers=Handsontable.renderers||{},Handsontable.renderers.registerRenderer=o,Handsontable.renderers.getRenderer=r},{"helpers/string":52}],89:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){s.className&&(t.className?t.className=t.className+" "+s.className:t.className=s.className),s.readOnly&&a(t,s.readOnlyCellClassName),s.valid===!1&&s.invalidCellClassName?a(t,s.invalidCellClassName):l(t,s.invalidCellClassName),s.wordWrap===!1&&s.noWordWrapClassName&&a(t,s.noWordWrapClassName),!i&&s.placeholder&&a(t,s.placeholderCellClassName)}Object.defineProperties(n,{cellDecorator:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),a=s.addClass,l=s.removeClass,u=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}).registerRenderer;u("base",o),Handsontable.renderers.cellDecorator=o},{"helpers/dom/element":45,renderers:88}],90:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){var a=(m.cloneNode(!0),v.cloneNode(!0));if(f("text")(e,t,n,o,r,i,s),t.appendChild(a),u(t,"htAutocomplete"),t.firstChild||t.appendChild(document.createTextNode(String.fromCharCode(160))),!e.acArrowListener){var l=d(e);e.acArrowListener=function(r){c(r.target,"htAutocompleteArrow")&&e.view.wt.getSetting("onCellDblClick",null,new g(n,o),t)},l.addEventListener(e.rootElement,"mousedown",e.acArrowListener),e.addHookOnce("afterDestroy",function(){l.destroy()})}}Object.defineProperties(n,{autocompleteRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=l.addClass,c=l.hasClass,d=(l.empty,(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager),h=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),f=h.getRenderer,p=h.registerRenderer,g=(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords,m=document.createElement("DIV");m.className="htAutocompleteWrapper";var v=document.createElement("DIV");v.className="htAutocompleteArrow",v.appendChild(document.createTextNode(String.fromCharCode(9660)));p("autocomplete",o)},{"3rdparty/walkontable/src/cell/coords":5,eventManager:41,"helpers/dom/element":45,renderers:88}],91:[function(e,t,n){"use strict";function o(e,t,n,o,a,l,u){function c(e){var t=[C.SPACE,C.ENTER,C.DELETE,C.BACKSPACE];-1===t.indexOf(e.keyCode)||E(e)||f(function(){S(e),e.preventDefault()}),(e.keyCode==C.SPACE||e.keyCode==C.ENTER)&&d(),(e.keyCode==C.DELETE||e.keyCode==C.BACKSPACE)&&d(!1)}function d(){var e=void 0!==arguments[0]?arguments[0]:null;f(function(t){for(var n=0,o=t.length;o>n;n++){if(m(t[n],O)&&null===e)return;h(t[n],e)}})}function h(e){var t=void 0!==arguments[1]?arguments[1]:null;null===t?e.checked=!e.checked:e.checked=t,y.fireEvent(e,"change")}function f(t){for(var n=e.getSelectedRange(),o=n.getTopLeftCorner(),r=n.getBottomRightCorner(),i=o.row;i<=r.row;i++)for(var s=o.col;s<=r.col;s++){var a=e.getCell(i,s),l=e.getCellMeta(i,s),u=a.querySelectorAll("input[type=checkbox]");u.length>0&&!l.readOnly&&t(u)}}var y=new w(e),b=r(),R=u.label,M=!1;if("undefined"==typeof u.checkedTemplate&&(u.checkedTemplate=!0),"undefined"==typeof u.uncheckedTemplate&&(u.uncheckedTemplate=!1),p(t),l===u.checkedTemplate||v(l,u.checkedTemplate)?b.checked=!0:l===u.uncheckedTemplate||v(l,u.uncheckedTemplate)?b.checked=!1:null===l?g(b,"noValue"):(b.style.display="none",g(b,O),M=!0),!M&&R){var k="";R.value?k="function"==typeof R.value?R.value.call(this,n,o,a,l):R.value:R.property&&(k=e.getDataAtRowProp(n,R.property));var H=i(k);"before"===R.position?H.appendChild(b):H.insertBefore(b,H.firstChild),b=H}t.appendChild(b),M&&t.appendChild(document.createTextNode("#bad-value#")),u.readOnly?y.addEventListener(b,"click",s):(y.addEventListener(b,"mousedown",_),y.addEventListener(b,"mouseup",_),y.addEventListener(b,"change",function(t){e.setDataAtRowProp(n,a,t.target.checked?u.checkedTemplate:u.uncheckedTemplate)})),T.has(e)||(T.set(e,!0),e.addHook("beforeKeyDown",c))}function r(){var e=document.createElement("input");return e.className="htCheckboxRendererInput",e.type="checkbox",e.setAttribute("autocomplete","off"),e.cloneNode(!1)}function i(e){var t=document.createElement("label");return t.className="htCheckboxRendererLabel",t.appendChild(document.createTextNode(e)),t.cloneNode(!0)}function s(e){e.preventDefault()}Object.defineProperties(n,{checkboxRenderer:{get:function(){return o}},__esModule:{value:!0}});var a,l,u,c,d,h,f=(a=e("helpers/dom/element"),a&&a.__esModule&&a||{"default":a}),p=f.empty,g=f.addClass,m=f.hasClass,v=(l=e("helpers/string"),l&&l.__esModule&&l||{"default":l}).equalsIgnoreCase,w=(u=e("eventManager"),u&&u.__esModule&&u||{"default":u}).EventManager,y=(c=e("renderers"),c&&c.__esModule&&c||{"default":c}),b=(y.getRenderer,y.registerRenderer),C=(d=e("helpers/unicode"),d&&d.__esModule&&d||{"default":d}).KEY_CODES,R=(h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),_=R.stopPropagation,S=R.stopImmediatePropagation,E=R.isImmediatePropagationStopped,T=new WeakMap,O="htBadValue";b("checkbox",o)},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/string":52,"helpers/unicode":53,renderers:88}],92:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,a){l("base").apply(this,arguments),s(t,i)}Object.defineProperties(n,{htmlRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}).fastInnerHTML,a=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}),l=a.getRenderer,u=a.registerRenderer;u("html",o)},{"helpers/dom/element":45,renderers:88}],93:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){f(i)&&("undefined"!=typeof s.language&&l.language(s.language),i=l(i).format(s.format||"0"),u(t,"htNumeric")),d("text")(e,t,n,o,r,i,s)}Object.defineProperties(n,{numericRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l=(r=e("numeral"),r&&r.__esModule&&r||{"default":r})["default"],u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).addClass,c=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),d=c.getRenderer,h=c.registerRenderer,f=(a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).isNumeric;h("numeric",o)},{"helpers/dom/element":45,"helpers/number":49,numeral:"numeral",renderers:88}],94:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,a){l("text").apply(this,arguments),i=t.innerHTML;var u,c=a.hashLength||i.length,d=a.hashSymbol||"*";for(u="";u.split(d).length-13?("function"==typeof o&&(e.__proto__=o),e.prototype=d(a(o),i(t))):e.prototype=t,f(e,"prototype",{configurable:!1,writable:!1}),h(e,i(n))}function a(e){if("function"==typeof e){var t=e.prototype;if(u(t)===t||null===t)return e.prototype;throw new c("super prototype must be an Object or null")}if(null===e)return null;throw new c("Super expression must either be null or a function, not "+typeof e+".")}function l(e,t,o){null!==g(t)&&n(e,t,"constructor",o)}var u=Object,c=TypeError,d=u.create,h=$traceurRuntime.defineProperties,f=$traceurRuntime.defineProperty,p=$traceurRuntime.getOwnPropertyDescriptor,g=Object.getPrototypeOf,m=$traceurRuntime.toProperty,v=Object,w=v.getOwnPropertyNames,y=v.getOwnPropertySymbols;$traceurRuntime.createClass=s,$traceurRuntime.defaultSuperCall=l,$traceurRuntime.superCall=n,$traceurRuntime.superConstructor=t,$traceurRuntime.superGet=o,$traceurRuntime.superSet=r}()},{}],97:[function(e,t,n){"use strict";function o(e){var t=this;this.eventManager=b(e),this.instance=e,this.settings=e.getSettings(),this.selectionMouseDown=!1;var n=e.rootElement.getAttribute("style");n&&e.rootElement.setAttribute("data-originalstyle",n),d(e.rootElement,"handsontable");var o=document.createElement("TABLE");d(o,"htCore"),e.getSettings().tableClassName&&d(o,e.getSettings().tableClassName),this.THEAD=document.createElement("THEAD"),o.appendChild(this.THEAD),this.TBODY=document.createElement("TBODY"),o.appendChild(this.TBODY),e.table=o,e.container.insertBefore(o,e.container.firstChild),this.eventManager.addEventListener(e.rootElement,"mousedown",function(e){this.selectionMouseDown=!0,t.isTextSelectionAllowed(e.target)||(i(),e.preventDefault(),window.focus())}),this.eventManager.addEventListener(e.rootElement,"mouseup",function(e){this.selectionMouseDown=!1}),this.eventManager.addEventListener(e.rootElement,"mousemove",function(e){this.selectionMouseDown&&!t.isTextSelectionAllowed(e.target)&&(i(),e.preventDefault())}),this.eventManager.addEventListener(document.documentElement,"keyup",function(t){e.selection.isInProgress()&&!t.shiftKey&&e.selection.finish()});var r;this.isMouseDown=function(){return r},this.eventManager.addEventListener(document.documentElement,"mouseup",function(t){e.selection.isInProgress()&&1===t.which&&e.selection.finish(),r=!1,y(document.activeElement)&&e.unlisten()}),this.eventManager.addEventListener(document.documentElement,"mousedown",function(n){var o=n.target,i=n.x||n.clientX,s=n.y||n.clientY;if(!r&&e.rootElement){if(o===e.view.wt.wtTable.holder){var a=g();if(document.elementFromPoint(i+a,s)!==e.view.wt.wtTable.holder||document.elementFromPoint(i,s+a)!==e.view.wt.wtTable.holder)return}else for(;o!==document.documentElement;){if(null===o){if(n.isTargetWebComponent)break;return}if(o===e.rootElement)return;o=o.parentNode}t.settings.outsideClickDeselects?e.deselectCell():e.destroyEditor()}}),this.eventManager.addEventListener(o,"selectstart",function(e){t.settings.fragmentSelection||w(e.target)||e.preventDefault()});var i=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},s=[new E({className:"current",border:{width:2,color:"#5292F7",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&!e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&!e.selection.isMultiple()}}}),new E({className:"area",border:{width:1,color:"#89AFF9",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&e.selection.isMultiple()}}}),new E({className:"highlight",highlightRowClassName:t.settings.currentRowClassName,highlightColumnClassName:t.settings.currentColClassName}),new E({className:"fill",border:{width:1,color:"red"}})];s.current=s[0],s.area=s[1],s.highlight=s[2],s.fill=s[3];var a={debug:function(){return t.settings.debug},externalRowCalculator:this.instance.getPlugin("autoRowSize")&&this.instance.getPlugin("autoRowSize").isEnabled(),table:o,stretchH:this.settings.stretchH,data:e.getDataAtCell,totalRows:function(){return e.countRows()},totalColumns:function(){return e.countCols()},fixedColumnsLeft:function(){return t.settings.fixedColumnsLeft},fixedRowsTop:function(){return t.settings.fixedRowsTop},fixedRowsBottom:function(){return t.settings.fixedRowsBottom},minSpareRows:function(){return t.settings.minSpareRows},renderAllRows:t.settings.renderAllRows,rowHeaders:function(){var n=[];return e.hasRowHeaders()&&n.push(function(e,n){t.appendRowHeader(e,n)}),Handsontable.hooks.run(e,"afterGetRowHeaderRenderers",n),n},columnHeaders:function(){var n=[];return e.hasColHeaders()&&n.push(function(e,n){t.appendColHeader(e,n)}),Handsontable.hooks.run(e,"afterGetColumnHeaderRenderers",n),n},columnWidth:e.getColWidth,rowHeight:e.getRowHeight,cellRenderer:function(e,n,o){var r=t.instance.colToProp(n),i=t.instance.getCellMeta(e,n),s=t.instance.getCellRenderer(i),a=t.instance.getDataAtRowProp(e,r);s(t.instance,o,e,n,r,a,i),Handsontable.hooks.run(t.instance,"afterRenderer",o,e,n,r,a,i)},selections:s,hideBorderOnMouseDownOver:function(){return t.settings.fragmentSelection},onCellMouseDown:function(n,o,i,s){var a,l,u=i.parentNode,c=u.parentNode;if(e.listen(),t.activeWt=s,r=!0,Handsontable.hooks.run(e,"beforeOnCellMouseDown",n,o,i),e.selection.setSelectedHeaders(!1,!1),!_(n)){if(2===n.button&&e.selection.inInSelection(o));else n.shiftKey?o.row>=0&&o.col>=0&&e.selection.setRangeEnd(o):(o.row<0||o.col<0)&&(o.row>=0||o.col>=0)?(o.row<0&&(a=c.childNodes.length-Array.prototype.indexOf.call(c.childNodes,u)-1,l=e.getHeaderColspan(o.col,a),e.selection.setSelectedHeaders(!1,!0),e.selectCell(0,o.col,e.countRows()-1,o.col+Math.max(0,l-1))),o.col<0&&(e.selection.setSelectedHeaders(!0,!1),e.selectCell(o.row,0,o.row,e.countCols()-1))):(o.row=o.row<0?0:o.row,o.col=o.col<0?0:o.col,e.selection.setRangeStart(o));Handsontable.hooks.run(e,"afterOnCellMouseDown",n,o,i),t.activeWt=t.wt}},onCellMouseOver:function(n,o,i,s){t.activeWt=s,o.row>=0&&o.col>=0?r&&e.selection.setRangeEnd(o):r&&(o.row<0&&(e.selection.selectedHeader.cols?(e.selection.setRangeEnd(new S(e.countRows()-1,o.col)),e.selection.setSelectedHeaders(!1,!0)):e.selection.setRangeEnd(new S(o.row,o.col))),o.col<0&&(e.selection.selectedHeader.rows?(e.selection.setRangeEnd(new S(o.row,e.countCols()-1)),e.selection.setSelectedHeaders(!0,!1)):e.selection.setRangeEnd(new S(o.row,o.col)))),Handsontable.hooks.run(e,"afterOnCellMouseOver",n,o,i),t.activeWt=t.wt},onCellCornerMouseDown:function(t){t.preventDefault(),Handsontable.hooks.run(e,"afterOnCellCornerMouseDown",t)},beforeDraw:function(e){t.beforeRender(e)},onDraw:function(e){t.onDraw(e)},onScrollVertically:function(){e.runHooks("afterScrollVertically")},onScrollHorizontally:function(){e.runHooks("afterScrollHorizontally")},onBeforeDrawBorders:function(t,n){e.runHooks("beforeDrawBorders",t,n)},onBeforeTouchScroll:function(){e.runHooks("beforeTouchScroll")},onAfterMomentumScroll:function(){e.runHooks("afterMomentumScroll")},viewportRowCalculatorOverride:function(n){var o=e.countRows(),r=t.settings.viewportRowRenderingOffset;if("auto"===r&&t.settings.fixedRowsTop&&(r=10),"number"==typeof r&&(n.startRow=Math.max(n.startRow-r,0),n.endRow=Math.min(n.endRow+r,o-1)),"auto"===r){var i=n.startRow+n.endRow-n.startRow,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startRow-s,0),n.endRow=Math.min(n.endRow+s,o-1)}e.runHooks("afterViewportRowCalculatorOverride",n)},viewportColumnCalculatorOverride:function(n){var o=e.countCols(),r=t.settings.viewportColumnRenderingOffset;if("auto"===r&&t.settings.fixedColumnsLeft&&(r=10),"number"==typeof r&&(n.startColumn=Math.max(n.startColumn-r,0),n.endColumn=Math.min(n.endColumn+r,o-1)),"auto"===r){var i=n.startColumn+n.endColumn-n.startColumn,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startColumn-s,0),n.endColumn=Math.min(n.endColumn+s,o-1)}e.runHooks("afterViewportColumnCalculatorOverride",n)}};Handsontable.hooks.run(e,"beforeInitWalkontable",a),this.wt=new T(a),this.activeWt=this.wt,this.eventManager.addEventListener(t.wt.wtTable.spreader,"mousedown",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(t.wt.wtTable.spreader,"contextmenu",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(document.documentElement,"click",function(){t.settings.observeDOMVisibility&&t.wt.drawInterrupted&&(t.instance.forceFullRender=!0,t.render())})}Object.defineProperties(n,{TableView:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,a,l,u,c=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),d=c.addClass,h=c.empty,f=c.fastInnerHTML,p=c.fastInnerText,g=c.getScrollbarWidth,m=c.hasClass,v=c.isChildOf,w=c.isInput,y=c.isOutsideInput,b=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,C=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),R=C.stopPropagation,_=C.isImmediatePropagationStopped,S=(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords,E=(l=e("3rdparty/walkontable/src/selection"),l&&l.__esModule&&l||{"default":l}).WalkontableSelection,T=(u=e("3rdparty/walkontable/src/core"),u&&u.__esModule&&u||{"default":u}).Walkontable;Handsontable.TableView=o,o.prototype.isTextSelectionAllowed=function(e){if(w(e))return!0;var t=v(e,this.instance.view.wt.wtTable.spreader);return this.settings.fragmentSelection===!0&&t?!0:"cell"===this.settings.fragmentSelection&&this.isSelectedOnlyCell()&&t?!0:!1},o.prototype.isSelectedOnlyCell=function(){var e=this.instance.getSelected()||[],t=e[0],n=e[1],o=e[2],r=e[3];return void 0!==t&&t===o&&n===r},o.prototype.isCellEdited=function(){var e=this.instance.getActiveEditor();return e&&e.isOpened()},o.prototype.beforeRender=function(e){e&&Handsontable.hooks.run(this.instance,"beforeRender",this.instance.forceFullRender)},o.prototype.onDraw=function(e){e&&Handsontable.hooks.run(this.instance,"afterRender",this.instance.forceFullRender)},o.prototype.render=function(){this.wt.draw(!this.instance.forceFullRender),this.instance.forceFullRender=!1,this.instance.renderCall=!1},o.prototype.getCellAtCoords=function(e,t){var n=this.wt.getCell(e,t);return 0>n?null:n},o.prototype.scrollViewport=function(e){this.wt.scrollViewport(e)},o.prototype.appendRowHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".rowHeader"),e,this.instance.getRowHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="rowHeader",this.updateCellHeader(r,e,this.instance.getRowHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetRowHeader",e,t)},o.prototype.appendColHeader=function(e,t){if(t.firstChild){var n=t.firstChild;m(n,"relative")?this.updateCellHeader(n.querySelector(".colHeader"),e,this.instance.getColHeader):(h(t),this.appendColHeader(e,t))}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="colHeader",this.updateCellHeader(r,e,this.instance.getColHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetColHeader",e,t)},o.prototype.updateCellHeader=function(e,t,n){t>-1?f(e,n(t)):(p(e,String.fromCharCode(160)),d(e,"cornerHeader"))},o.prototype.maximumVisibleElementWidth=function(e){var t=this.wt.wtViewport.getWorkspaceWidth(),n=t-e;return n>0?n:0},o.prototype.maximumVisibleElementHeight=function(e){var t=this.wt.wtViewport.getWorkspaceHeight(),n=t-e;return n>0?n:0},o.prototype.mainViewIsActive=function(){return this.wt===this.activeWt},o.prototype.destroy=function(){this.wt.destroy(),this.eventManager.destroy()}},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46}],98:[function(e,t,n){"use strict";Object.defineProperties(n,{GhostTable:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,a,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=l.addClass,c=l.outerHeight,d=l.outerWidth,h=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,f=((i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}).objectEach,(s=e("helpers/number"),s&&s.__esModule&&s||{"default":s}).rangeEach,(a=e("helpers/mixed"),a&&a.__esModule&&a||{"default":a}).stringify,function(e){this.hot=e,this.container=null,this.injected=!1,this.rows=[],this.columns=[],this.samples=null});$traceurRuntime.createClass(f,{addRow:function(e,t){if(this.columns.length)throw new Error("Doesn't support multi-dimensional table");this.rows.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={row:e};this.rows.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tr.appendChild(this.createRow(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},addColumn:function(e,t){if(this.rows.length)throw new Error("Doesn't support multi-dimensional table");this.columns.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={col:e};this.columns.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),null!==this.hot.getColHeader(e)&&this.hot.view.appendColHeader(e,this.table.th),this.table.tBody.appendChild(this.createCol(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},getHeights:function(e){this.injected||this.injectTable(),h(this.rows,function(t){e(t.row,c(t.table)-1)})},getWidths:function(e){this.injected||this.injectTable(),h(this.columns,function(t){e(t.col,d(t.table))})},createColGroupsCol:function(){var e=this,t=document,n=t.createDocumentFragment();return n.appendChild(this.createColElement(-1)),this.samples.forEach(function(t){h(t.strings,function(t){n.appendChild(e.createColElement(t.col))})}),n},createRow:function(e){var t=this,n=document,o=n.createDocumentFragment(),r=n.createElement("th");return null!==this.hot.getRowHeader(e)&&this.hot.view.appendRowHeader(e,r),o.appendChild(r),this.samples.forEach(function(r){h(r.strings,function(r){var i=r.col,s=t.hot.getCellMeta(e,i);s.col=i,s.row=e;var a=t.hot.getCellRenderer(s),l=n.createElement("td");a(t.hot,l,e,i,t.hot.colToProp(i),r.value,s),o.appendChild(l)})}),o},createCol:function(e){var t=this,n=document,o=n.createDocumentFragment();return this.samples.forEach(function(r){h(r.strings,function(r){var i=r.row,s=t.hot.getCellMeta(i,e);s.col=e,s.row=i;var a=t.hot.getCellRenderer(s),l=n.createElement("td"),u=n.createElement("tr");a(t.hot,l,i,e,t.hot.colToProp(i),r.value,s),u.appendChild(l),o.appendChild(u)})}),o},clean:function(){this.rows.length=0,this.columns.length=0,this.samples&&this.samples.clear(),this.samples=null,this.removeTable()},injectTable:function(){var e=void 0!==arguments[0]?arguments[0]:null;this.injected||((e||this.hot.rootElement).appendChild(this.container.fragment),this.injected=!0)},removeTable:function(){this.injected&&this.container.container.parentNode&&(this.container.container.parentNode.removeChild(this.container.container),this.container=null,this.injected=!1)},createColElement:function(e){var t=document,n=t.createElement("col");return n.style.width=this.hot.view.wt.wtTable.getStretchedColumnWidth(e)+"px",n},createTable:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("table"),r=t.createElement("thead"),i=t.createElement("tbody"),s=t.createElement("colgroup"),a=t.createElement("tr"),l=t.createElement("th");return this.isVertical()&&o.appendChild(s),this.isHorizontal()&&(a.appendChild(l),r.appendChild(a),o.style.tableLayout="auto",o.style.width="auto"),o.appendChild(r),this.isVertical()&&i.appendChild(a),o.appendChild(i),u(o,e),n.appendChild(o),{fragment:n,table:o,tHead:r,tBody:i,colGroup:s,tr:a,th:l}},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("div");return e="htGhostTable htAutoSize "+e.trim(),u(o,e),n.appendChild(o),{fragment:n,container:o}},isVertical:function(){return this.rows.length&&!this.columns.length?!0:!1},isHorizontal:function(){return this.columns.length&&!this.rows.length?!0:!1}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.GhostTable=f},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],99:[function(e,t,n){"use strict";var o;Object.defineProperties(n,{SamplesGenerator:{get:function(){return h}},__esModule:{value:!0}});var r,i,s,a,l,u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=(u.addClass,u.outerHeight,u.outerWidth,(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}).objectEach,(a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}).rangeEach),d=(l=e("helpers/mixed"),l&&l.__esModule&&l||{"default":l}).stringify,h=function(e){this.samples=null,this.dataFactory=e},f=h;$traceurRuntime.createClass(h,(o={},Object.defineProperty(o,"generateRowSamples",{value:function(e,t){return this.generateSamples("row",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateColumnSamples",{value:function(e,t){return this.generateSamples("col",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSamples",{value:function(e,t,n){var o=this,r=new Map;return"number"==typeof n&&(n={from:n,to:n}),c(n.from,n.to,function(n){var i=o.generateSample(e,t,n);r.set(n,i)}),r},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSample",{value:function(e,t,n){var o=this,r=new Map;return c(t.from,t.to,function(t){var i,s;if("row"===e)s=o.dataFactory(n,t);else{if("col"!==e)throw new Error("Unsupported sample type");s=o.dataFactory(t,n)}Array.isArray(s)||(s=d(s));var a=s.length;r.has(a)||r.set(a,{needed:f.SAMPLE_COUNT,strings:[]});var l=r.get(a);if(l.needed){var u="row"===e?"col":"row";l.strings.push((i={},Object.defineProperty(i,"value",{value:s,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,u,{value:t,configurable:!0,enumerable:!0,writable:!0}),i)),l.needed--}}),r},configurable:!0,enumerable:!0,writable:!0}),o),{get SAMPLE_COUNT(){return 3}}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.SamplesGenerator=h},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],100:[function(e,t,n){"use strict";function o(e,t){var n=e,o="string"==typeof n?n.toLowerCase():null;return function(e){for(var r=!1,s=0,a=e.length;a>s;s++){if(n===e[s]){r=!0;break}if(o===i(e[s]).toLowerCase()){r=!0;break}}t(r)}}var r,i=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify;Handsontable.AutocompleteValidator=function(e,t){this.strict&&this.source?"function"==typeof this.source?this.source(e,o(e,t)):o(e,t)(this.source):t(!0)}},{"helpers/mixed":48}],101:[function(e,t,n){"use strict";var o,r,i=(o=e("moment"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("editors"),r&&r.__esModule&&r||{"default":r}).getEditor;Handsontable.DateValidator=function(e,t){var n=!0,o=s("date",this.instance);null===e&&(e="");var r=i(new Date(e)).isValid(),l=i(e,this.dateFormat||o.defaultDateFormat,!0).isValid();if(r||(n=!1),!r&&l&&(n=!0),r&&!l)if(this.correctFormat===!0){var u=a(e,this.dateFormat);this.instance.setDataAtCell(this.row,this.col,u,"dateValidator"),n=!0}else n=!1;t(n)};var a=function(e,t){var n=i(new Date(e)),o=n.format("YYYY"),r=i().format("YYYY");return o.substr(0,2)!==r.substr(0,2)?e.match(new RegExp(o))||n.year(o.replace(o.substr(0,2),r.substr(0,2))):o.length>4&&n.year((n.year()+"").substr(0,4)),n.format(t)}},{editors:29,moment:"moment"}],102:[function(e,t,n){"use strict";Handsontable.NumericValidator=function(e,t){null===e&&(e=""),t(/^-?\d*(\.|\,)?\d*$/.test(e))}},{}],SheetClip:[function(e,t,n){"use strict";!function(e){function t(e){return e.split('"').length-1}var o={parse:function(e){var n,o,r,i,s,a,l,u=[],c=0;for(r=e.split("\n"),r.length>1&&""===r[r.length-1]&&r.pop(),n=0,o=r.length;o>n;n+=1){for(r[n]=r[n].split(" "),i=0,s=r[n].length;s>i;i+=1)u[c]||(u[c]=[]),a&&0===i?(l=u[c].length-1,u[c][l]=u[c][l]+"\n"+r[n][0],a&&1&t(r[n][0])&&(a=!1,u[c][l]=u[c][l].substring(0,u[c][l].length-1).replace(/""/g,'"'))):i===s-1&&0===r[n][i].indexOf('"')&&1&t(r[n][i])?(u[c].push(r[n][i].substring(1).replace(/""/g,'"')),a=!0):(u[c].push(r[n][i].replace(/""/g,'"')),a=!1);a||(c+=1)}return u},stringify:function(e){var t,n,o,r,i,s="";for(t=0,n=e.length;n>t;t+=1){for(r=e[t].length,o=0;r>o;o+=1)o>0&&(s+=" "),i=e[t][o],s+="string"==typeof i?i.indexOf("\n")>-1?'"'+i.replace(/"/g,'""')+'"':i:null===i||void 0===i?"":i;s+="\n"}return s}};"undefined"!=typeof n?(n.parse=o.parse,n.stringify=o.stringify):e.SheetClip=o}(window)},{}],autoResize:[function(e,t,n){"use strict";function o(){var e,t={minHeight:200,maxHeight:300,minWidth:100,maxWidth:300},n=document.body,o=document.createTextNode(""),r=document.createElement("SPAN"),i=function(e,t,n){window.attachEvent?e.attachEvent("on"+t,n):e.addEventListener(t,n,!1)},s=function(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)},a=function(i){var s,a;i?/^[a-zA-Z \.,\\\/\|0-9]$/.test(i)||(i="."):i="",void 0!==o.textContent?o.textContent=e.value+i:o.data=e.value+i,r.style.fontSize=Handsontable.Dom.getComputedStyle(e).fontSize,r.style.fontFamily=Handsontable.Dom.getComputedStyle(e).fontFamily,r.style.whiteSpace="pre",n.appendChild(r),s=r.clientWidth+2,n.removeChild(r),e.style.height=t.minHeight+"px",t.minWidth>s?e.style.width=t.minWidth+"px":s>t.maxWidth?e.style.width=t.maxWidth+"px":e.style.width=s+"px",a=e.scrollHeight?e.scrollHeight-1:0,t.minHeight>a?e.style.height=t.minHeight+"px":t.maxHeight-1||"true"===e.contentEditable}var n=this,o=!1;if(e.metaKey?o=!0:e.ctrlKey&&-1===navigator.userAgent.indexOf("Mac")&&(o=!0),o){if(document.activeElement!==this.elTextarea&&(""!==this.getSelectionText()||t()))return;this.selectNodeText(this.elTextarea),setTimeout(function(){document.activeElement!==n.elTextarea&&n.selectNodeText(n.elTextarea)},0)}!o||67!==e.keyCode&&86!==e.keyCode&&88!==e.keyCode||(88===e.keyCode?setTimeout(function(){n.triggerCut(e)},0):86===e.keyCode&&setTimeout(function(){n.triggerPaste(e)},0))},r.prototype.selectNodeText=function(e){e&&e.select()},r.prototype.getSelectionText=function(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e},r.prototype.copyable=function(e){if("string"!=typeof e&&void 0===e.toString)throw new Error("copyable requires string parameter");this.elTextarea.value=e,this.selectNodeText(this.elTextarea)},r.prototype.onCut=function(e){this.cutCallbacks.push(e)},r.prototype.onPaste=function(e){this.pasteCallbacks.push(e)},r.prototype.removeCallback=function(e){var t,n;for(t=0,n=this.copyCallbacks.length;n>t;t++)if(this.copyCallbacks[t]===e)return this.copyCallbacks.splice(t,1),!0;for(t=0,n=this.cutCallbacks.length;n>t;t++)if(this.cutCallbacks[t]===e)return this.cutCallbacks.splice(t,1),!0;for(t=0,n=this.pasteCallbacks.length;n>t;t++)if(this.pasteCallbacks[t]===e)return this.pasteCallbacks.splice(t,1),!0;return!1},r.prototype.triggerCut=function(e){var t=this;t.cutCallbacks&&setTimeout(function(){ +for(var n=0,o=t.cutCallbacks.length;o>n;n++)t.cutCallbacks[n](e)},50)},r.prototype.triggerPaste=function(e,t){var n=this;n.pasteCallbacks&&setTimeout(function(){for(var o=t||n.elTextarea.value,r=0,i=n.pasteCallbacks.length;i>r;r++)n.pasteCallbacks[r](o,e)},50)},r.prototype.destroy=function(){this.hasBeenDestroyed()||0!==--this.refCounter||(this.elDiv&&this.elDiv.parentNode&&(this.elDiv.parentNode.removeChild(this.elDiv),this.elDiv=null,this.elTextarea=null),document.documentElement.removeEventListener("keydown",this.onKeyDownRef),this.onKeyDownRef=null)},r.prototype.hasBeenDestroyed=function(){return!this.refCounter}},{}],es6collections:[function(e,t,n){"use strict";!function(e){function t(e,t){function o(e){return this&&this.constructor===o?(this._keys=[],this._values=[],this._itp=[],this.objectOnly=t,void(e&&n.call(this,e))):new o(e)}return t||y(e,"size",{get:m}),e.constructor=o,o.prototype=e,o}function n(e){this.add?e.forEach(this.add,this):e.forEach(function(e){this.set(e[0],e[1])},this)}function o(e){return this.has(e)&&(this._keys.splice(w,1),this._values.splice(w,1),this._itp.forEach(function(e){w-1}function r(e){return this.has(e)?this._values[w]:void 0}function i(e,t){if(this.objectOnly&&t!==Object(t))throw new TypeError("Invalid value used as weak collection key");if(t!=t||0===t)for(w=e.length;w--&&!b(e[w],t););else w=e.indexOf(t);return w>-1}function s(e){return i.call(this,this._values,e)}function a(e){return i.call(this,this._keys,e)}function l(e,t){return this.has(e)?this._values[w]=t:this._values[this._keys.push(e)-1]=t,this}function u(e){return this.has(e)||this._values.push(e),this}function c(){this._values.length=0}function d(){return g(this._itp,this._keys)}function h(){return g(this._itp,this._values)}function f(){return g(this._itp,this._keys,this._values)}function p(){return g(this._itp,this._values,this._values)}function g(e,t,n){var o=[0],r=!1;return e.push(o),{next:function(){var i,s=o[0];return!r&&st;t++)if(w[t].obj===e)return w[t]}function i(e){for(var t=0,n=w.length;n>t;t++)w[t]===e&&w.splice(t,1)}function s(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].callback===t)return e.observers[n].observer}function a(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].observer===t)return e.observers.splice(n,1),void(e.observers.length||i(e))}function l(e,t){h(t),Object.observe?d(t,e):clearTimeout(t.next);var n=r(e);a(n,t)}function u(e,t){var n,i=[],a=e,l=r(e);if(l?n=s(l,t):(l=new y(e),w.push(l)),n)return n;if(Object.observe)n=function(r){d(n,e),c(n,e);for(var s=0,l=r.length;l>s;){if(("length"!==r[s].name||!R(r[s].object))&&"__Jasmine_been_here_before__"!==r[s].name){var u=r[s].type;switch(u){case"new":u="add";break;case"deleted":u="delete";break;case"updated":u="update"}v[u].call(r[s],i,o(a,r[s].object))}s++}i&&t&&t(i),n.patches=i,i=[]};else if(n={},l.value=JSON.parse(JSON.stringify(e)),t){n.callback=t,n.next=null;var u=this.intervals||[100,1e3,1e4,6e4],f=0,p=function(){h(n)},g=function(){clearTimeout(n.next),n.next=setTimeout(function(){p(),f=0,n.next=setTimeout(m,u[f++])},0)},m=function(){p(),f==u.length&&(f=u.length-1),n.next=setTimeout(m,u[f++])};"undefined"!=typeof window&&(window.addEventListener?(window.addEventListener("mousedown",g),window.addEventListener("mouseup",g),window.addEventListener("keydown",g)):(window.attachEvent("onmousedown",g),window.attachEvent("onmouseup",g),window.attachEvent("onkeydown",g))),n.next=setTimeout(m,u[f++])}return n.patches=i,n.object=e,l.observers.push(new b(t,n)),c(n,e)}function c(e,t){if(Object.observe){Object.observe(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&c(e,o)}}return e}function d(e,t){if(Object.observe){Object.unobserve(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&d(e,o)}}return e}function h(e){if(Object.observe)Object.deliverChangeRecords(e);else{for(var t,n=0,o=w.length;o>n;n++)if(w[n].obj===e.object){t=w[n];break}t&&f(t.value,e.object,e.patches,"")}var r=e.patches;return r.length>0&&(e.patches=[],e.callback&&e.callback(r)),r}function f(e,n,o,r){for(var i=C(n),s=C(e),a=!1,l=!1,u=s.length-1;u>=0;u--){var c=s[u],d=e[c];if(n.hasOwnProperty(c)){var h=n[c];d instanceof Object?f(d,h,o,r+"/"+t(c)):d!=h&&(a=!0,o.push({op:"replace",path:r+"/"+t(c),value:h}),e[c]=h)}else o.push({op:"remove",path:r+"/"+t(c)}),delete e[c],l=!0}if(l||i.length!=s.length)for(var u=0;ur;){n=t[r];for(var s=n.path.split("/"),a=e,l=1,u=s.length;;)if(R(a)){var c=parseInt(s[l],10);if(l++,l>=u){o=m[n.op].call(n,a,c,e);break}a=a[c]}else{var d=s[l];if(-1!=d.indexOf("~")&&(d=d.replace(/~1/g,"/").replace(/~0/g,"~")),l++,l>=u){o=g[n.op].call(n,a,d,e);break}a=a[d]}r++}return o}var g={add:function(e,t){return e[t]=this.value,!0},remove:function(e,t){return delete e[t],!0},replace:function(e,t){return e[t]=this.value,!0},move:function(e,t,n){var o={op:"_get",path:this.from};return p(n,[o]),p(n,[{op:"remove",path:this.from}]),p(n,[{op:"add",path:this.path,value:o.value}]),!0},copy:function(e,t,n){var o={op:"_get",path:this.from};return p(n,[o]),p(n,[{op:"add",path:this.path,value:o.value}]),!0},test:function(e,t){return JSON.stringify(e[t])===JSON.stringify(this.value)},_get:function(e,t){this.value=e[t]}},m={add:function(e,t){return e.splice(t,0,this.value),!0},remove:function(e,t){return e.splice(t,1),!0},replace:function(e,t){return e[t]=this.value,!0},move:g.move,copy:g.copy,test:g.test,_get:g._get},v={add:function(e,n){var o={op:"add",path:n+t(this.name),value:this.object[this.name]};e.push(o)},"delete":function(e,n){var o={op:"remove",path:n+t(this.name)};e.push(o)},update:function(e,n){var o={op:"replace",path:n+t(this.name),value:this.object[this.name]};e.push(o)}},w=[];e.intervals;var y=function(){function e(e){this.observers=[],this.obj=e}return e}(),b=function(){function e(e,t){this.callback=e,this.observer=t}return e}();e.unobserve=l,e.observe=u,e.generate=h;var C;C=Object.keys?Object.keys:function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t};var R;R=Array.isArray?Array.isArray:function(e){return e.push&&"number"==typeof e.length},e.apply=p}(o||(o={})),"undefined"!=typeof n&&(n.apply=o.apply,n.observe=o.observe,n.unobserve=o.unobserve,n.generate=o.generate)},{}],moment:[function(t,n,o){ //! moment.js //! version : 2.10.6 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com -!function(t,r){"object"==typeof o&&"undefined"!=typeof n?n.exports=r():"function"==typeof e&&e.amd?e(r):t.moment=r()}(this,function(){"use strict";function e(){return Ln.apply(null,arguments)}function o(e){Ln=e}function r(e){return"[object Array]"===Object.prototype.toString.call(e)}function i(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function s(e,t){var n,o=[];for(n=0;n0)for(n in In)o=In[n],r=t[o],"undefined"!=typeof r&&(e[o]=r);return e}function g(t){p(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),jn===!1&&(jn=!0,e.updateOffset(this),jn=!1)}function m(e){return e instanceof g||null!=e&&null!=e._isAMomentObject}function v(e){return 0>e?Math.ceil(e):Math.floor(e)}function w(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=v(t)),n}function y(e,t,n){var o,r=Math.min(e.length,t.length),i=Math.abs(e.length-t.length),s=0;for(o=0;r>o;o++)(n&&e[o]!==t[o]||!n&&w(e[o])!==w(t[o]))&&s++;return s+i}function b(){}function C(e){return e?e.toLowerCase().replace("_","-"):e}function R(e){for(var t,n,o,r,i=0;i0;){if(o=_(r.slice(0,t).join("-")))return o;if(n&&n.length>=t&&y(r,n,!0)>=t-1)break;t--}i++}return null}function _(e){var o=null;if(!Bn[e]&&"undefined"!=typeof n&&n&&n.exports)try{o=Wn._abbr,t("./locale/"+e),E(o)}catch(r){}return Bn[e]}function E(e,t){var n;return e&&(n="undefined"==typeof t?T(e):S(e,t),n&&(Wn=n)),Wn._abbr}function S(e,t){return null!==t?(t.abbr=e,Bn[e]=Bn[e]||new b,Bn[e].set(t),E(e),Bn[e]):(delete Bn[e],null)}function T(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Wn;if(!r(e)){if(t=_(e))return t;e=[e]}return R(e)}function O(e,t){var n=e.toLowerCase();Fn[n]=Fn[n+"s"]=Fn[t]=e}function M(e){return"string"==typeof e?Fn[e]||Fn[e.toLowerCase()]:void 0}function k(e){var t,n,o={};for(n in e)a(e,n)&&(t=M(n),t&&(o[t]=e[n]));return o}function H(t,n){return function(o){return null!=o?(x(this,t,o),e.updateOffset(this,n),this):D(this,t)}}function D(e,t){return e._d["get"+(e._isUTC?"UTC":"")+t]()}function x(e,t,n){return e._d["set"+(e._isUTC?"UTC":"")+t](n)}function A(e,t){var n;if("object"==typeof e)for(n in e)this.set(n,e[n]);else if(e=M(e),"function"==typeof this[e])return this[e](t);return this}function P(e,t,n){var o=""+Math.abs(e),r=t-o.length,i=e>=0;return(i?n?"+":"":"-")+Math.pow(10,Math.max(0,r)).toString().substr(1)+o}function N(e,t,n,o){var r=o;"string"==typeof o&&(r=function(){return this[o]()}),e&&(Un[e]=r),t&&(Un[t[0]]=function(){return P(r.apply(this,arguments),t[1],t[2])}),n&&(Un[n]=function(){return this.localeData().ordinal(r.apply(this,arguments),e)})}function L(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function W(e){var t,n,o=e.match(Vn);for(t=0,n=o.length;n>t;t++)Un[o[t]]?o[t]=Un[o[t]]:o[t]=L(o[t]);return function(r){var i="";for(t=0;n>t;t++)i+=o[t]instanceof Function?o[t].call(r,e):o[t];return i}}function I(e,t){return e.isValid()?(t=j(t,e.localeData()),Yn[t]=Yn[t]||W(t),Yn[t](e)):e.localeData().invalidDate()}function j(e,t){function n(e){return t.longDateFormat(e)||e}var o=5;for(zn.lastIndex=0;o>=0&&zn.test(e);)e=e.replace(zn,n),zn.lastIndex=0,o-=1;return e}function B(e){return"function"==typeof e&&"[object Function]"===Object.prototype.toString.call(e)}function F(e,t,n){so[e]=B(t)?t:function(e){return e&&n?n:t}}function V(e,t){return a(so,e)?so[e](t._strict,t._locale):new RegExp(z(e))}function z(e){return e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,o,r){return t||n||o||r}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Y(e,t){var n,o=t;for("string"==typeof e&&(e=[e]),"number"==typeof t&&(o=function(e,n){n[t]=w(e)}),n=0;no;o++){if(r=u([2e3,o]),n&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(r,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(r,"").replace(".","")+"$","i")),n||this._monthsParse[o]||(i="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[o]=new RegExp(i.replace(".",""),"i")),n&&"MMMM"===t&&this._longMonthsParse[o].test(e))return o;if(n&&"MMM"===t&&this._shortMonthsParse[o].test(e))return o;if(!n&&this._monthsParse[o].test(e))return o}}function Z(e,t){var n;return"string"==typeof t&&(t=e.localeData().monthsParse(t),"number"!=typeof t)?e:(n=Math.min(e.date(),$(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,n),e)}function J(t){return null!=t?(Z(this,t),e.updateOffset(this,!0),this):D(this,"Month")}function Q(){return $(this.year(),this.month())}function ee(e){var t,n=e._a;return n&&-2===d(e).overflow&&(t=n[uo]<0||n[uo]>11?uo:n[co]<1||n[co]>$(n[lo],n[uo])?co:n[ho]<0||n[ho]>24||24===n[ho]&&(0!==n[fo]||0!==n[po]||0!==n[go])?ho:n[fo]<0||n[fo]>59?fo:n[po]<0||n[po]>59?po:n[go]<0||n[go]>999?go:-1,d(e)._overflowDayOfYear&&(lo>t||t>co)&&(t=co),d(e).overflow=t),e}function te(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function ne(e,t){var n=!0;return l(function(){return n&&(te(e+"\n"+(new Error).stack),n=!1),t.apply(this,arguments)},t)}function oe(e,t){wo[e]||(te(t),wo[e]=!0)}function re(e){var t,n,o=e._i,r=yo.exec(o);if(r){for(d(e).iso=!0,t=0,n=bo.length;n>t;t++)if(bo[t][1].exec(o)){e._f=bo[t][0];break}for(t=0,n=Co.length;n>t;t++)if(Co[t][1].exec(o)){e._f+=(r[6]||" ")+Co[t][0];break}o.match(oo)&&(e._f+="Z"),_e(e)}else e._isValid=!1}function ie(t){var n=Ro.exec(t._i);return null!==n?void(t._d=new Date(+n[1])):(re(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function se(e,t,n,o,r,i,s){var a=new Date(e,t,n,o,r,i,s);return 1970>e&&a.setFullYear(e),a}function ae(e){var t=new Date(Date.UTC.apply(null,arguments));return 1970>e&&t.setUTCFullYear(e),t}function le(e){return ue(e)?366:365}function ue(e){return e%4===0&&e%100!==0||e%400===0}function ce(){return ue(this.year())}function de(e,t,n){var o,r=n-t,i=n-e.day();return i>r&&(i-=7),r-7>i&&(i+=7),o=De(e).add(i,"d"),{week:Math.ceil(o.dayOfYear()/7),year:o.year()}}function he(e){return de(e,this._week.dow,this._week.doy).week}function fe(){return this._week.dow}function pe(){return this._week.doy}function ge(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function me(e){var t=de(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function ve(e,t,n,o,r){var i,s=6+r-o,a=ae(e,0,1+s),l=a.getUTCDay();return r>l&&(l+=7),n=null!=n?1*n:r,i=1+s+7*(t-1)-l+n,{year:i>0?e:e-1,dayOfYear:i>0?i:le(e-1)+i}}function we(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function ye(e,t,n){return null!=e?e:null!=t?t:n}function be(e){var t=new Date;return e._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function Ce(e){var t,n,o,r,i=[];if(!e._d){for(o=be(e),e._w&&null==e._a[co]&&null==e._a[uo]&&Re(e),e._dayOfYear&&(r=ye(e._a[lo],o[lo]),e._dayOfYear>le(r)&&(d(e)._overflowDayOfYear=!0),n=ae(r,0,e._dayOfYear),e._a[uo]=n.getUTCMonth(),e._a[co]=n.getUTCDate()),t=0;3>t&&null==e._a[t];++t)e._a[t]=i[t]=o[t];for(;7>t;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ho]&&0===e._a[fo]&&0===e._a[po]&&0===e._a[go]&&(e._nextDay=!0,e._a[ho]=0),e._d=(e._useUTC?ae:se).apply(null,i),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ho]=24)}}function Re(e){var t,n,o,r,i,s,a;t=e._w,null!=t.GG||null!=t.W||null!=t.E?(i=1,s=4,n=ye(t.GG,e._a[lo],de(De(),1,4).year),o=ye(t.W,1),r=ye(t.E,1)):(i=e._locale._week.dow,s=e._locale._week.doy,n=ye(t.gg,e._a[lo],de(De(),i,s).year),o=ye(t.w,1),null!=t.d?(r=t.d,i>r&&++o):r=null!=t.e?t.e+i:i),a=ve(n,o,r,s,i),e._a[lo]=a.year,e._dayOfYear=a.dayOfYear}function _e(t){if(t._f===e.ISO_8601)return void re(t);t._a=[],d(t).empty=!0;var n,o,r,i,s,a=""+t._i,l=a.length,u=0;for(r=j(t._f,t._locale).match(Vn)||[],n=0;n0&&d(t).unusedInput.push(s),a=a.slice(a.indexOf(o)+o.length),u+=o.length),Un[i]?(o?d(t).empty=!1:d(t).unusedTokens.push(i),G(i,o,t)):t._strict&&!o&&d(t).unusedTokens.push(i);d(t).charsLeftOver=l-u,a.length>0&&d(t).unusedInput.push(a),d(t).bigHour===!0&&t._a[ho]<=12&&t._a[ho]>0&&(d(t).bigHour=void 0),t._a[ho]=Ee(t._locale,t._a[ho],t._meridiem),Ce(t),ee(t)}function Ee(e,t,n){var o;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(o=e.isPM(n),o&&12>t&&(t+=12),o||12!==t||(t=0),t):t}function Se(e){var t,n,o,r,i;if(0===e._f.length)return d(e).invalidFormat=!0,void(e._d=new Date(NaN));for(r=0;ri)&&(o=i,n=t));l(e,n||t)}function Te(e){if(!e._d){var t=k(e._i);e._a=[t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],Ce(e)}}function Oe(e){var t=new g(ee(Me(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function Me(e){var t=e._i,n=e._f;return e._locale=e._locale||T(e._l),null===t||void 0===n&&""===t?f({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),m(t)?new g(ee(t)):(r(n)?Se(e):n?_e(e):i(t)?e._d=t:ke(e),e))}function ke(t){var n=t._i;void 0===n?t._d=new Date:i(n)?t._d=new Date(+n):"string"==typeof n?ie(t):r(n)?(t._a=s(n.slice(0),function(e){return parseInt(e,10)}),Ce(t)):"object"==typeof n?Te(t):"number"==typeof n?t._d=new Date(n):e.createFromInputFallback(t)}function He(e,t,n,o,r){var i={};return"boolean"==typeof n&&(o=n,n=void 0),i._isAMomentObject=!0,i._useUTC=i._isUTC=r,i._l=n,i._i=e,i._f=t,i._strict=o,Oe(i)}function De(e,t,n,o){return He(e,t,n,o,!1)}function xe(e,t){var n,o;if(1===t.length&&r(t[0])&&(t=t[0]),!t.length)return De();for(n=t[0],o=1;oe&&(e=-e,n="-"),n+P(~~(e/60),2)+t+P(~~e%60,2)})}function Ie(e){var t=(e||"").match(oo)||[],n=t[t.length-1]||[],o=(n+"").match(Oo)||["-",0,0],r=+(60*o[1])+w(o[2]);return"+"===o[0]?r:-r}function je(t,n){var o,r;return n._isUTC?(o=n.clone(),r=(m(t)||i(t)?+t:+De(t))-+o,o._d.setTime(+o._d+r),e.updateOffset(o,!1),o):De(t).local()}function Be(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Fe(t,n){var o,r=this._offset||0;return null!=t?("string"==typeof t&&(t=Ie(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&n&&(o=Be(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),r!==t&&(!n||this._changeInProgress?ot(this,Je(t-r,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?r:Be(this)}function Ve(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function ze(e){return this.utcOffset(0,e)}function Ye(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Be(this),"m")),this}function Ue(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Ie(this._i)),this}function Ge(e){return e=e?De(e).utcOffset():0,(this.utcOffset()-e)%60===0}function $e(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ke(){if("undefined"!=typeof this._isDSTShifted)return this._isDSTShifted;var e={};if(p(e,this),e=Me(e),e._a){var t=e._isUTC?u(e._a):De(e._a);this._isDSTShifted=this.isValid()&&y(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Xe(){return!this._isUTC}function qe(){return this._isUTC}function Ze(){return this._isUTC&&0===this._offset}function Je(e,t){var n,o,r,i=e,s=null;return Le(e)?i={ms:e._milliseconds,d:e._days,M:e._months}:"number"==typeof e?(i={},t?i[t]=e:i.milliseconds=e):(s=Mo.exec(e))?(n="-"===s[1]?-1:1,i={y:0,d:w(s[co])*n,h:w(s[ho])*n,m:w(s[fo])*n,s:w(s[po])*n,ms:w(s[go])*n}):(s=ko.exec(e))?(n="-"===s[1]?-1:1,i={y:Qe(s[2],n),M:Qe(s[3],n),d:Qe(s[4],n),h:Qe(s[5],n),m:Qe(s[6],n),s:Qe(s[7],n),w:Qe(s[8],n)}):null==i?i={}:"object"==typeof i&&("from"in i||"to"in i)&&(r=tt(De(i.from),De(i.to)),i={},i.ms=r.milliseconds,i.M=r.months),o=new Ne(i),Le(e)&&a(e,"_locale")&&(o._locale=e._locale),o}function Qe(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function et(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function tt(e,t){var n;return t=je(t,e),e.isBefore(t)?n=et(e,t):(n=et(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n}function nt(e,t){return function(n,o){var r,i;return null===o||isNaN(+o)||(oe(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period)."),i=n,n=o,o=i),n="string"==typeof n?+n:n,r=Je(n,o),ot(this,r,e),this}}function ot(t,n,o,r){var i=n._milliseconds,s=n._days,a=n._months;r=null==r?!0:r,i&&t._d.setTime(+t._d+i*o),s&&x(t,"Date",D(t,"Date")+s*o),a&&Z(t,D(t,"Month")+a*o),r&&e.updateOffset(t,s||a)}function rt(e,t){var n=e||De(),o=je(n,this).startOf("day"),r=this.diff(o,"days",!0),i=-6>r?"sameElse":-1>r?"lastWeek":0>r?"lastDay":1>r?"sameDay":2>r?"nextDay":7>r?"nextWeek":"sameElse";return this.format(t&&t[i]||this.localeData().calendar(i,this,De(n)))}function it(){return new g(this)}function st(e,t){var n;return t=M("undefined"!=typeof t?t:"millisecond"),"millisecond"===t?(e=m(e)?e:De(e),+this>+e):(n=m(e)?+e:+De(e),n<+this.clone().startOf(t))}function at(e,t){var n;return t=M("undefined"!=typeof t?t:"millisecond"),"millisecond"===t?(e=m(e)?e:De(e),+e>+this):(n=m(e)?+e:+De(e),+this.clone().endOf(t)t-i?(n=e.clone().add(r-1,"months"),o=(t-i)/(i-n)):(n=e.clone().add(r+1,"months"),o=(t-i)/(n-i)),-(r+o)}function ht(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function ft(){var e=this.clone().utc();return 0t;t++)if(this._weekdaysParse[t]||(n=De([2e3,1]).day(t),o="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[t]=new RegExp(o.replace(".",""),"i")),this._weekdaysParse[t].test(e))return t}function zt(e){var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=It(e,this.localeData()),this.add(e-t,"d")):t}function Yt(e){var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Ut(e){return null==e?this.day()||7:this.day(this.day()%7?e:e-7)}function Gt(e,t){N(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function $t(e,t){return t._meridiemParse}function Kt(e){return"p"===(e+"").toLowerCase().charAt(0)}function Xt(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}function qt(e,t){t[go]=w(1e3*("0."+e))}function Zt(){return this._isUTC?"UTC":""}function Jt(){return this._isUTC?"Coordinated Universal Time":""}function Qt(e){return De(1e3*e)}function en(){return De.apply(null,arguments).parseZone()}function tn(e,t,n){var o=this._calendar[e];return"function"==typeof o?o.call(t,n):o}function nn(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function on(){return this._invalidDate}function rn(e){return this._ordinal.replace("%d",e)}function sn(e){return e}function an(e,t,n,o){var r=this._relativeTime[n];return"function"==typeof r?r(e,t,n,o):r.replace(/%d/i,e)}function ln(e,t){var n=this._relativeTime[e>0?"future":"past"];return"function"==typeof n?n(t):n.replace(/%s/i,t)}function un(e){var t,n;for(n in e)t=e[n],"function"==typeof t?this[n]=t:this["_"+n]=t;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function cn(e,t,n,o){var r=T(),i=u().set(o,t);return r[n](i,e)}function dn(e,t,n,o,r){if("number"==typeof e&&(t=e,e=void 0),e=e||"",null!=t)return cn(e,t,n,r);var i,s=[];for(i=0;o>i;i++)s[i]=cn(e,i,n,r);return s}function hn(e,t){return dn(e,t,"months",12,"month")}function fn(e,t){return dn(e,t,"monthsShort",12,"month")}function pn(e,t){return dn(e,t,"weekdays",7,"day")}function gn(e,t){return dn(e,t,"weekdaysShort",7,"day")}function mn(e,t){return dn(e,t,"weekdaysMin",7,"day")}function vn(){var e=this._data;return this._milliseconds=Jo(this._milliseconds),this._days=Jo(this._days),this._months=Jo(this._months),e.milliseconds=Jo(e.milliseconds),e.seconds=Jo(e.seconds),e.minutes=Jo(e.minutes),e.hours=Jo(e.hours),e.months=Jo(e.months),e.years=Jo(e.years),this}function wn(e,t,n,o){var r=Je(t,n);return e._milliseconds+=o*r._milliseconds,e._days+=o*r._days,e._months+=o*r._months,e._bubble()}function yn(e,t){return wn(this,e,t,1)}function bn(e,t){return wn(this,e,t,-1)}function Cn(e){return 0>e?Math.floor(e):Math.ceil(e)}function Rn(){var e,t,n,o,r,i=this._milliseconds,s=this._days,a=this._months,l=this._data;return i>=0&&s>=0&&a>=0||0>=i&&0>=s&&0>=a||(i+=864e5*Cn(En(a)+s),s=0,a=0),l.milliseconds=i%1e3,e=v(i/1e3),l.seconds=e%60,t=v(e/60),l.minutes=t%60,n=v(t/60),l.hours=n%24,s+=v(n/24),r=v(_n(s)),a+=r,s-=Cn(En(r)),o=v(a/12),a%=12,l.days=s,l.months=a,l.years=o,this}function _n(e){return 4800*e/146097}function En(e){return 146097*e/4800}function Sn(e){var t,n,o=this._milliseconds;if(e=M(e),"month"===e||"year"===e)return t=this._days+o/864e5,n=this._months+_n(t),"month"===e?n:n/12;switch(t=this._days+Math.round(En(this._months)),e){case"week":return t/7+o/6048e5;case"day":return t+o/864e5;case"hour":return 24*t+o/36e5;case"minute":return 1440*t+o/6e4;case"second":return 86400*t+o/1e3;case"millisecond":return Math.floor(864e5*t)+o;default:throw new Error("Unknown unit "+e)}}function Tn(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12)}function On(e){return function(){return this.as(e)}}function Mn(e){return e=M(e),this[e+"s"]()}function kn(e){return function(){return this._data[e]}}function Hn(){return v(this.days()/7)}function Dn(e,t,n,o,r){return r.relativeTime(t||1,!!n,e,o)}function xn(e,t,n){var o=Je(e).abs(),r=pr(o.as("s")),i=pr(o.as("m")),s=pr(o.as("h")),a=pr(o.as("d")),l=pr(o.as("M")),u=pr(o.as("y")),c=r0,c[4]=n,Dn.apply(null,c)}function An(e,t){return void 0===gr[e]?!1:void 0===t?gr[e]:(gr[e]=t,!0)}function Pn(e){var t=this.localeData(),n=xn(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function Nn(){var e,t,n,o=mr(this._milliseconds)/1e3,r=mr(this._days),i=mr(this._months);e=v(o/60),t=v(e/60),o%=60,e%=60,n=v(i/12),i%=12;var s=n,a=i,l=r,u=t,c=e,d=o,h=this.asSeconds();return h?(0>h?"-":"")+"P"+(s?s+"Y":"")+(a?a+"M":"")+(l?l+"D":"")+(u||c||d?"T":"")+(u?u+"H":"")+(c?c+"M":"")+(d?d+"S":""):"P0D"}var Ln,Wn,In=e.momentProperties=[],jn=!1,Bn={},Fn={},Vn=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,zn=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Yn={},Un={},Gn=/\d/,$n=/\d\d/,Kn=/\d{3}/,Xn=/\d{4}/,qn=/[+-]?\d{6}/,Zn=/\d\d?/,Jn=/\d{1,3}/,Qn=/\d{1,4}/,eo=/[+-]?\d{1,6}/,to=/\d+/,no=/[+-]?\d+/,oo=/Z|[+-]\d\d:?\d\d/gi,ro=/[+-]?\d+(\.\d{1,3})?/,io=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,so={},ao={},lo=0,uo=1,co=2,ho=3,fo=4,po=5,go=6;N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),N("MMMM",0,0,function(e){return this.localeData().months(this,e)}),O("month","M"),F("M",Zn),F("MM",Zn,$n),F("MMM",io),F("MMMM",io),Y(["M","MM"],function(e,t){t[uo]=w(e)-1}),Y(["MMM","MMMM"],function(e,t,n,o){var r=n._locale.monthsParse(e,o,n._strict);null!=r?t[uo]=r:d(n).invalidMonth=e});var mo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),vo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),wo={};e.suppressDeprecationWarnings=!1;var yo=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bo=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],Co=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],Ro=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=ne("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),F("Y",no),F("YY",Zn,$n),F("YYYY",Qn,Xn),F("YYYYY",eo,qn),F("YYYYYY",eo,qn),Y(["YYYYY","YYYYYY"],lo),Y("YYYY",function(t,n){n[lo]=2===t.length?e.parseTwoDigitYear(t):w(t)}),Y("YY",function(t,n){n[lo]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(e){return w(e)+(w(e)>68?1900:2e3)};var _o=H("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),F("w",Zn),F("ww",Zn,$n),F("W",Zn),F("WW",Zn,$n),U(["w","ww","W","WW"],function(e,t,n,o){t[o.substr(0,1)]=w(e)});var Eo={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),F("DDD",Jn),F("DDDD",Kn),Y(["DDD","DDDD"],function(e,t,n){n._dayOfYear=w(e)}),e.ISO_8601=function(){};var So=ne("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var e=De.apply(null,arguments);return this>e?this:e}),To=ne("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var e=De.apply(null,arguments);return e>this?this:e});We("Z",":"),We("ZZ",""),F("Z",oo),F("ZZ",oo),Y(["Z","ZZ"],function(e,t,n){n._useUTC=!0,n._tzm=Ie(e)});var Oo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Mo=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Je.fn=Ne.prototype;var Ho=nt(1,"add"),Do=nt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var xo=ne("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Dt("gggg","weekYear"),Dt("ggggg","weekYear"),Dt("GGGG","isoWeekYear"),Dt("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),F("G",no),F("g",no),F("GG",Zn,$n),F("gg",Zn,$n),F("GGGG",Qn,Xn),F("gggg",Qn,Xn),F("GGGGG",eo,qn),F("ggggg",eo,qn),U(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,o){t[o.substr(0,2)]=w(e)}),U(["gg","GG"],function(t,n,o,r){n[r]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),F("Q",Gn),Y("Q",function(e,t){t[uo]=3*(w(e)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),F("D",Zn),F("DD",Zn,$n),F("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),Y(["D","DD"],co),Y("Do",function(e,t){t[co]=w(e.match(Zn)[0],10)});var Ao=H("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),N("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),N("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),F("d",Zn),F("e",Zn),F("E",Zn),F("dd",io),F("ddd",io),F("dddd",io),U(["dd","ddd","dddd"],function(e,t,n){var o=n._locale.weekdaysParse(e);null!=o?t.d=o:d(n).invalidWeekday=e}),U(["d","e","E"],function(e,t,n,o){t[o]=w(e)});var Po="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),No="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Lo="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("H",["HH",2],0,"hour"),N("h",["hh",2],0,function(){return this.hours()%12||12}),Gt("a",!0),Gt("A",!1),O("hour","h"),F("a",$t),F("A",$t),F("H",Zn),F("h",Zn),F("HH",Zn,$n),F("hh",Zn,$n),Y(["H","HH"],ho),Y(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),Y(["h","hh"],function(e,t,n){t[ho]=w(e),d(n).bigHour=!0});var Wo=/[ap]\.?m?\.?/i,Io=H("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),F("m",Zn),F("mm",Zn,$n),Y(["m","mm"],fo);var jo=H("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),F("s",Zn),F("ss",Zn,$n),Y(["s","ss"],po);var Bo=H("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),N(0,["SSS",3],0,"millisecond"),N(0,["SSSS",4],0,function(){return 10*this.millisecond()}),N(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),N(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),N(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),N(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),N(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),O("millisecond","ms"),F("S",Jn,Gn),F("SS",Jn,$n),F("SSS",Jn,Kn);var Fo;for(Fo="SSSS";Fo.length<=9;Fo+="S")F(Fo,to);for(Fo="S";Fo.length<=9;Fo+="S")Y(Fo,qt);var Vo=H("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var zo=g.prototype;zo.add=Ho,zo.calendar=rt,zo.clone=it,zo.diff=ct,zo.endOf=Rt,zo.format=pt,zo.from=gt,zo.fromNow=mt,zo.to=vt,zo.toNow=wt,zo.get=A,zo.invalidAt=Ht,zo.isAfter=st,zo.isBefore=at,zo.isBetween=lt,zo.isSame=ut,zo.isValid=Mt,zo.lang=xo,zo.locale=yt,zo.localeData=bt,zo.max=To,zo.min=So,zo.parsingFlags=kt,zo.set=A,zo.startOf=Ct,zo.subtract=Do,zo.toArray=Tt,zo.toObject=Ot,zo.toDate=St,zo.toISOString=ft,zo.toJSON=ft,zo.toString=ht,zo.unix=Et,zo.valueOf=_t,zo.year=_o,zo.isLeapYear=ce,zo.weekYear=At,zo.isoWeekYear=Pt,zo.quarter=zo.quarters=Wt,zo.month=J,zo.daysInMonth=Q,zo.week=zo.weeks=ge,zo.isoWeek=zo.isoWeeks=me,zo.weeksInYear=Lt,zo.isoWeeksInYear=Nt,zo.date=Ao,zo.day=zo.days=zt,zo.weekday=Yt,zo.isoWeekday=Ut,zo.dayOfYear=we,zo.hour=zo.hours=Io,zo.minute=zo.minutes=jo,zo.second=zo.seconds=Bo,zo.millisecond=zo.milliseconds=Vo,zo.utcOffset=Fe, -zo.utc=ze,zo.local=Ye,zo.parseZone=Ue,zo.hasAlignedHourOffset=Ge,zo.isDST=$e,zo.isDSTShifted=Ke,zo.isLocal=Xe,zo.isUtcOffset=qe,zo.isUtc=Ze,zo.isUTC=Ze,zo.zoneAbbr=Zt,zo.zoneName=Jt,zo.dates=ne("dates accessor is deprecated. Use date instead.",Ao),zo.months=ne("months accessor is deprecated. Use month instead",J),zo.years=ne("years accessor is deprecated. Use year instead",_o),zo.zone=ne("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ve);var Yo=zo,Uo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Go={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},$o="Invalid date",Ko="%d",Xo=/\d{1,2}/,qo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},Zo=b.prototype;Zo._calendar=Uo,Zo.calendar=tn,Zo._longDateFormat=Go,Zo.longDateFormat=nn,Zo._invalidDate=$o,Zo.invalidDate=on,Zo._ordinal=Ko,Zo.ordinal=rn,Zo._ordinalParse=Xo,Zo.preparse=sn,Zo.postformat=sn,Zo._relativeTime=qo,Zo.relativeTime=an,Zo.pastFuture=ln,Zo.set=un,Zo.months=K,Zo._months=mo,Zo.monthsShort=X,Zo._monthsShort=vo,Zo.monthsParse=q,Zo.week=he,Zo._week=Eo,Zo.firstDayOfYear=pe,Zo.firstDayOfWeek=fe,Zo.weekdays=jt,Zo._weekdays=Po,Zo.weekdaysMin=Ft,Zo._weekdaysMin=Lo,Zo.weekdaysShort=Bt,Zo._weekdaysShort=No,Zo.weekdaysParse=Vt,Zo.isPM=Kt,Zo._meridiemParse=Wo,Zo.meridiem=Xt,E("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,n=1===w(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}}),e.lang=ne("moment.lang is deprecated. Use moment.locale instead.",E),e.langData=ne("moment.langData is deprecated. Use moment.localeData instead.",T);var Jo=Math.abs,Qo=On("ms"),er=On("s"),tr=On("m"),nr=On("h"),or=On("d"),rr=On("w"),ir=On("M"),sr=On("y"),ar=kn("milliseconds"),lr=kn("seconds"),ur=kn("minutes"),cr=kn("hours"),dr=kn("days"),hr=kn("months"),fr=kn("years"),pr=Math.round,gr={s:45,m:45,h:22,d:26,M:11},mr=Math.abs,vr=Ne.prototype;vr.abs=vn,vr.add=yn,vr.subtract=bn,vr.as=Sn,vr.asMilliseconds=Qo,vr.asSeconds=er,vr.asMinutes=tr,vr.asHours=nr,vr.asDays=or,vr.asWeeks=rr,vr.asMonths=ir,vr.asYears=sr,vr.valueOf=Tn,vr._bubble=Rn,vr.get=Mn,vr.milliseconds=ar,vr.seconds=lr,vr.minutes=ur,vr.hours=cr,vr.days=dr,vr.weeks=Hn,vr.months=hr,vr.years=fr,vr.humanize=Pn,vr.toISOString=Nn,vr.toString=Nn,vr.toJSON=Nn,vr.locale=yt,vr.localeData=bt,vr.toIsoString=ne("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Nn),vr.lang=xo,N("X",0,0,"unix"),N("x",0,0,"valueOf"),F("x",no),F("X",ro),Y("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),Y("x",function(e,t,n){n._d=new Date(w(e))}),e.version="2.10.6",o(De),e.fn=Yo,e.min=Ae,e.max=Pe,e.utc=u,e.unix=Qt,e.months=hn,e.isDate=i,e.locale=E,e.invalid=f,e.duration=Je,e.isMoment=m,e.weekdays=pn,e.parseZone=en,e.localeData=T,e.isDuration=Le,e.monthsShort=fn,e.weekdaysMin=mn,e.defineLocale=S,e.weekdaysShort=gn,e.normalizeUnits=M,e.relativeTimeThreshold=An;var wr=e;return wr})},{}],numeral:[function(t,n,o){"use strict";(function(){function t(e){this._value=e}function o(e,t,n,o){var r,i,s=Math.pow(10,t);return i=(n(e*s)/s).toFixed(t),o&&(r=new RegExp("0{1,"+o+"}$"),i=i.replace(r,"")),i}function r(e,t,n){var o;return o=t.indexOf("$")>-1?s(e,t,n):t.indexOf("%")>-1?a(e,t,n):t.indexOf(":")>-1?l(e,t):c(e._value,t,n)}function i(e,t){var n,o,r,i,s,a=t,l=["KB","MB","GB","TB","PB","EB","ZB","YB"],c=!1;if(t.indexOf(":")>-1)e._value=u(t);else if(t===w)e._value=0;else{for("."!==m[v].delimiters.decimal&&(t=t.replace(/\./g,"").replace(m[v].delimiters.decimal,".")),n=new RegExp("[^a-zA-Z]"+m[v].abbreviations.thousand+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),o=new RegExp("[^a-zA-Z]"+m[v].abbreviations.million+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),r=new RegExp("[^a-zA-Z]"+m[v].abbreviations.billion+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),i=new RegExp("[^a-zA-Z]"+m[v].abbreviations.trillion+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),s=0;s<=l.length&&!(c=t.indexOf(l[s])>-1?Math.pow(1024,s+1):!1);s++);e._value=(c?c:1)*(a.match(n)?Math.pow(10,3):1)*(a.match(o)?Math.pow(10,6):1)*(a.match(r)?Math.pow(10,9):1)*(a.match(i)?Math.pow(10,12):1)*(t.indexOf("%")>-1?.01:1)*((t.split("-").length+Math.min(t.split("(").length-1,t.split(")").length-1))%2?1:-1)*Number(t.replace(/[^0-9\.]+/g,"")),e._value=c?Math.ceil(e._value):e._value}return e._value}function s(e,t,n){var o,r,i=t.indexOf("$"),s=t.indexOf("("),a=t.indexOf("-"),l="";return t.indexOf(" $")>-1?(l=" ",t=t.replace(" $","")):t.indexOf("$ ")>-1?(l=" ",t=t.replace("$ ","")):t=t.replace("$",""),r=c(e._value,t,n),1>=i?r.indexOf("(")>-1||r.indexOf("-")>-1?(r=r.split(""),o=1,(s>i||a>i)&&(o=0),r.splice(o,0,m[v].currency.symbol+l),r=r.join("")):r=m[v].currency.symbol+l+r:r.indexOf(")")>-1?(r=r.split(""),r.splice(-1,0,l+m[v].currency.symbol),r=r.join("")):r=r+l+m[v].currency.symbol,r}function a(e,t,n){var o,r="",i=100*e._value;return t.indexOf(" %")>-1?(r=" ",t=t.replace(" %","")):t=t.replace("%",""),o=c(i,t,n),o.indexOf(")")>-1?(o=o.split(""),o.splice(-1,0,r+"%"),o=o.join("")):o=o+r+"%",o}function l(e){var t=Math.floor(e._value/60/60),n=Math.floor((e._value-60*t*60)/60),o=Math.round(e._value-60*t*60-60*n);return t+":"+(10>n?"0"+n:n)+":"+(10>o?"0"+o:o)}function u(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}function c(e,t,n){var r,i,s,a,l,u,c=!1,d=!1,h=!1,f="",p=!1,g=!1,y=!1,b=!1,C=!1,R="",_="",E=Math.abs(e),S=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],T="",O=!1;if(0===e&&null!==w)return w;if(t.indexOf("(")>-1?(c=!0,t=t.slice(1,-1)):t.indexOf("+")>-1&&(d=!0,t=t.replace(/\+/g,"")),t.indexOf("a")>-1&&(p=t.indexOf("aK")>=0,g=t.indexOf("aM")>=0,y=t.indexOf("aB")>=0,b=t.indexOf("aT")>=0,C=p||g||y||b,t.indexOf(" a")>-1?(f=" ",t=t.replace(" a","")):t=t.replace("a",""),E>=Math.pow(10,12)&&!C||b?(f+=m[v].abbreviations.trillion,e/=Math.pow(10,12)):E=Math.pow(10,9)&&!C||y?(f+=m[v].abbreviations.billion,e/=Math.pow(10,9)):E=Math.pow(10,6)&&!C||g?(f+=m[v].abbreviations.million,e/=Math.pow(10,6)):(E=Math.pow(10,3)&&!C||p)&&(f+=m[v].abbreviations.thousand,e/=Math.pow(10,3))),t.indexOf("b")>-1)for(t.indexOf(" b")>-1?(R=" ",t=t.replace(" b","")):t=t.replace("b",""),s=0;s<=S.length;s++)if(r=Math.pow(1024,s),i=Math.pow(1024,s+1),e>=r&&i>e){R+=S[s],r>0&&(e/=r);break}return t.indexOf("o")>-1&&(t.indexOf(" o")>-1?(_=" ",t=t.replace(" o","")):t=t.replace("o",""),_+=m[v].ordinal(e)),t.indexOf("[.]")>-1&&(h=!0,t=t.replace("[.]",".")),a=e.toString().split(".")[0],l=t.split(".")[1],u=t.indexOf(","),l?(l.indexOf("[")>-1?(l=l.replace("]",""),l=l.split("["),T=o(e,l[0].length+l[1].length,n,l[1].length)):T=o(e,l.length,n),a=T.split(".")[0],T=T.split(".")[1].length?m[v].delimiters.decimal+T.split(".")[1]:"",h&&0===Number(T.slice(1))&&(T="")):a=o(e,null,n),a.indexOf("-")>-1&&(a=a.slice(1),O=!0),u>-1&&(a=a.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+m[v].delimiters.thousands)),0===t.indexOf(".")&&(a=""),(c&&O?"(":"")+(!c&&O?"-":"")+(!O&&d?"+":"")+a+T+(_?_:"")+(f?f:"")+(R?R:"")+(c&&O?")":"")}function d(e,t){m[e]=t}function h(e){var t=e.toString().split(".");return t.length<2?1:Math.pow(10,t[1].length)}function f(){var e=Array.prototype.slice.call(arguments);return e.reduce(function(e,t){var n=h(e),o=h(t);return n>o?n:o},-(1/0))}var p,g="1.5.3",m={},v="en",w=null,y="0,0",b="undefined"!=typeof n&&n.exports;p=function(e){return p.isNumeral(e)?e=e.value():0===e||"undefined"==typeof e?e=0:Number(e)||(e=p.fn.unformat(e)),new t(Number(e))},p.version=g,p.isNumeral=function(e){return e instanceof t},p.language=function(e,t){if(!e)return v;if(e&&!t){if(!m[e])throw new Error("Unknown language : "+e);v=e}return(t||!m[e])&&d(e,t),p},p.languageData=function(e){if(!e)return m[v];if(!m[e])throw new Error("Unknown language : "+e);return m[e]},p.language("en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),p.zeroFormat=function(e){w="string"==typeof e?e:null},p.defaultFormat=function(e){y="string"==typeof e?e:"0.0"},p.validate=function(e,t){var n,o,r,i,s,a,l,u;if("string"!=typeof e&&(e+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",e)),e=e.trim(),""===e)return!1;e=e.replace(/^[+-]?/,"");try{l=p.languageData(t)}catch(c){l=p.languageData(p.language())}return r=l.currency.symbol,s=l.abbreviations,n=l.delimiters.decimal,o="."===l.delimiters.thousands?"\\.":l.delimiters.thousands,u=e.match(/^[^\d\.\,]+/),null!==u&&(e=e.substr(1),u[0]!==r)?!1:(u=e.match(/[^\d]+$/),null!==u&&(e=e.slice(0,-1),u[0]!==s.thousand&&u[0]!==s.million&&u[0]!==s.billion&&u[0]!==s.trillion)?!1:e.match(/^\d+$/)?!0:(a=new RegExp(o+"{2}"),e.match(/[^\d.,]/g)?!1:(i=e.split(n),i.length>2?!1:i.length<2?!!i[0].match(/^\d+.*\d$/)&&!i[0].match(a):""===i[0]?!i[0].match(a)&&!!i[1].match(/^\d+$/):1===i[0].length?!!i[0].match(/^\d+$/)&&!i[0].match(a)&&!!i[1].match(/^\d+$/):!!i[0].match(/^\d+.*\d$/)&&!i[0].match(a)&&!!i[1].match(/^\d+$/))))},"function"!=typeof Array.prototype.reduce&&(Array.prototype.reduce=function(e,t){if(null===this||"undefined"==typeof this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!=typeof e)throw new TypeError(e+" is not a function");var n,o,r=this.length>>>0,i=!1;for(1n;++n)this.hasOwnProperty(n)&&(i?o=e(o,this[n],n,this):(o=this[n],i=!0));if(!i)throw new TypeError("Reduce of empty array with no initial value");return o}),p.fn=t.prototype={clone:function(){return p(this)},format:function(e,t){return r(this,e?e:y,void 0!==t?t:Math.round)},unformat:function(e){return"[object Number]"===Object.prototype.toString.call(e)?e:i(this,e?e:y)},value:function(){return this._value},valueOf:function(){return this._value},set:function(e){return this._value=Number(e),this},add:function(e){function t(e,t,o,r){return e+n*t}var n=f.call(null,this._value,e);return this._value=[this._value,e].reduce(t,0)/n,this},subtract:function(e){function t(e,t,o,r){return e-n*t}var n=f.call(null,this._value,e);return this._value=[e].reduce(t,this._value*n)/n,this},multiply:function(e){function t(e,t,n,o){var r=f(e,t);return e*r*(t*r)/(r*r)}return this._value=[this._value,e].reduce(t,1),this},divide:function(e){function t(e,t,n,o){var r=f(e,t);return e*r/(t*r)}return this._value=[this._value,e].reduce(t),this},difference:function(e){return Math.abs(p(this._value).subtract(e).value())}},b&&(n.exports=p),"undefined"==typeof ender&&(this.numeral=p),"function"==typeof e&&e.amd&&e([],function(){return p})}).call(window)},{}],pikaday:[function(t,n,o){/*! +!function(t,r){"object"==typeof o&&"undefined"!=typeof n?n.exports=r():"function"==typeof e&&e.amd?e(r):t.moment=r()}(this,function(){"use strict";function e(){return Ln.apply(null,arguments)}function o(e){Ln=e}function r(e){return"[object Array]"===Object.prototype.toString.call(e)}function i(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function s(e,t){var n,o=[];for(n=0;n0)for(n in In)o=In[n],r=t[o],"undefined"!=typeof r&&(e[o]=r);return e}function g(t){p(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),jn===!1&&(jn=!0,e.updateOffset(this),jn=!1)}function m(e){return e instanceof g||null!=e&&null!=e._isAMomentObject}function v(e){return 0>e?Math.ceil(e):Math.floor(e)}function w(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=v(t)),n}function y(e,t,n){var o,r=Math.min(e.length,t.length),i=Math.abs(e.length-t.length),s=0;for(o=0;r>o;o++)(n&&e[o]!==t[o]||!n&&w(e[o])!==w(t[o]))&&s++;return s+i}function b(){}function C(e){return e?e.toLowerCase().replace("_","-"):e}function R(e){for(var t,n,o,r,i=0;i0;){if(o=_(r.slice(0,t).join("-")))return o;if(n&&n.length>=t&&y(r,n,!0)>=t-1)break;t--}i++}return null}function _(e){var o=null;if(!Bn[e]&&"undefined"!=typeof n&&n&&n.exports)try{o=Wn._abbr,t("./locale/"+e),S(o)}catch(r){}return Bn[e]}function S(e,t){var n;return e&&(n="undefined"==typeof t?T(e):E(e,t),n&&(Wn=n)),Wn._abbr}function E(e,t){return null!==t?(t.abbr=e,Bn[e]=Bn[e]||new b,Bn[e].set(t),S(e),Bn[e]):(delete Bn[e],null)}function T(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Wn;if(!r(e)){if(t=_(e))return t;e=[e]}return R(e)}function O(e,t){var n=e.toLowerCase();Fn[n]=Fn[n+"s"]=Fn[t]=e}function M(e){return"string"==typeof e?Fn[e]||Fn[e.toLowerCase()]:void 0}function k(e){var t,n,o={};for(n in e)a(e,n)&&(t=M(n),t&&(o[t]=e[n]));return o}function H(t,n){return function(o){return null!=o?(x(this,t,o),e.updateOffset(this,n),this):D(this,t)}}function D(e,t){return e._d["get"+(e._isUTC?"UTC":"")+t]()}function x(e,t,n){return e._d["set"+(e._isUTC?"UTC":"")+t](n)}function A(e,t){var n;if("object"==typeof e)for(n in e)this.set(n,e[n]);else if(e=M(e),"function"==typeof this[e])return this[e](t);return this}function P(e,t,n){var o=""+Math.abs(e),r=t-o.length,i=e>=0;return(i?n?"+":"":"-")+Math.pow(10,Math.max(0,r)).toString().substr(1)+o}function N(e,t,n,o){var r=o;"string"==typeof o&&(r=function(){return this[o]()}),e&&(Un[e]=r),t&&(Un[t[0]]=function(){return P(r.apply(this,arguments),t[1],t[2])}),n&&(Un[n]=function(){return this.localeData().ordinal(r.apply(this,arguments),e)})}function L(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function W(e){var t,n,o=e.match(Vn);for(t=0,n=o.length;n>t;t++)Un[o[t]]?o[t]=Un[o[t]]:o[t]=L(o[t]);return function(r){var i="";for(t=0;n>t;t++)i+=o[t]instanceof Function?o[t].call(r,e):o[t];return i}}function I(e,t){return e.isValid()?(t=j(t,e.localeData()),Yn[t]=Yn[t]||W(t),Yn[t](e)):e.localeData().invalidDate()}function j(e,t){function n(e){return t.longDateFormat(e)||e}var o=5;for(zn.lastIndex=0;o>=0&&zn.test(e);)e=e.replace(zn,n),zn.lastIndex=0,o-=1;return e}function B(e){return"function"==typeof e&&"[object Function]"===Object.prototype.toString.call(e)}function F(e,t,n){so[e]=B(t)?t:function(e){return e&&n?n:t}}function V(e,t){return a(so,e)?so[e](t._strict,t._locale):new RegExp(z(e))}function z(e){return e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,o,r){return t||n||o||r}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Y(e,t){var n,o=t;for("string"==typeof e&&(e=[e]),"number"==typeof t&&(o=function(e,n){n[t]=w(e)}),n=0;no;o++){if(r=u([2e3,o]),n&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(r,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(r,"").replace(".","")+"$","i")),n||this._monthsParse[o]||(i="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[o]=new RegExp(i.replace(".",""),"i")),n&&"MMMM"===t&&this._longMonthsParse[o].test(e))return o;if(n&&"MMM"===t&&this._shortMonthsParse[o].test(e))return o;if(!n&&this._monthsParse[o].test(e))return o}}function Z(e,t){var n;return"string"==typeof t&&(t=e.localeData().monthsParse(t),"number"!=typeof t)?e:(n=Math.min(e.date(),$(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,n),e)}function J(t){return null!=t?(Z(this,t),e.updateOffset(this,!0),this):D(this,"Month")}function Q(){return $(this.year(),this.month())}function ee(e){var t,n=e._a;return n&&-2===d(e).overflow&&(t=n[uo]<0||n[uo]>11?uo:n[co]<1||n[co]>$(n[lo],n[uo])?co:n[ho]<0||n[ho]>24||24===n[ho]&&(0!==n[fo]||0!==n[po]||0!==n[go])?ho:n[fo]<0||n[fo]>59?fo:n[po]<0||n[po]>59?po:n[go]<0||n[go]>999?go:-1,d(e)._overflowDayOfYear&&(lo>t||t>co)&&(t=co),d(e).overflow=t),e}function te(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function ne(e,t){var n=!0;return l(function(){return n&&(te(e+"\n"+(new Error).stack),n=!1),t.apply(this,arguments)},t)}function oe(e,t){wo[e]||(te(t),wo[e]=!0)}function re(e){var t,n,o=e._i,r=yo.exec(o);if(r){for(d(e).iso=!0,t=0,n=bo.length;n>t;t++)if(bo[t][1].exec(o)){e._f=bo[t][0];break}for(t=0,n=Co.length;n>t;t++)if(Co[t][1].exec(o)){e._f+=(r[6]||" ")+Co[t][0];break}o.match(oo)&&(e._f+="Z"),_e(e)}else e._isValid=!1}function ie(t){var n=Ro.exec(t._i);return null!==n?void(t._d=new Date(+n[1])):(re(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function se(e,t,n,o,r,i,s){var a=new Date(e,t,n,o,r,i,s);return 1970>e&&a.setFullYear(e),a}function ae(e){var t=new Date(Date.UTC.apply(null,arguments));return 1970>e&&t.setUTCFullYear(e),t}function le(e){return ue(e)?366:365}function ue(e){return e%4===0&&e%100!==0||e%400===0}function ce(){return ue(this.year())}function de(e,t,n){var o,r=n-t,i=n-e.day();return i>r&&(i-=7),r-7>i&&(i+=7),o=De(e).add(i,"d"),{week:Math.ceil(o.dayOfYear()/7),year:o.year()}}function he(e){return de(e,this._week.dow,this._week.doy).week}function fe(){return this._week.dow}function pe(){return this._week.doy}function ge(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function me(e){var t=de(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function ve(e,t,n,o,r){var i,s=6+r-o,a=ae(e,0,1+s),l=a.getUTCDay();return r>l&&(l+=7),n=null!=n?1*n:r,i=1+s+7*(t-1)-l+n,{year:i>0?e:e-1,dayOfYear:i>0?i:le(e-1)+i}}function we(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function ye(e,t,n){return null!=e?e:null!=t?t:n}function be(e){var t=new Date;return e._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function Ce(e){var t,n,o,r,i=[];if(!e._d){for(o=be(e),e._w&&null==e._a[co]&&null==e._a[uo]&&Re(e),e._dayOfYear&&(r=ye(e._a[lo],o[lo]),e._dayOfYear>le(r)&&(d(e)._overflowDayOfYear=!0),n=ae(r,0,e._dayOfYear),e._a[uo]=n.getUTCMonth(),e._a[co]=n.getUTCDate()),t=0;3>t&&null==e._a[t];++t)e._a[t]=i[t]=o[t];for(;7>t;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ho]&&0===e._a[fo]&&0===e._a[po]&&0===e._a[go]&&(e._nextDay=!0,e._a[ho]=0),e._d=(e._useUTC?ae:se).apply(null,i),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ho]=24)}}function Re(e){var t,n,o,r,i,s,a;t=e._w,null!=t.GG||null!=t.W||null!=t.E?(i=1,s=4,n=ye(t.GG,e._a[lo],de(De(),1,4).year),o=ye(t.W,1),r=ye(t.E,1)):(i=e._locale._week.dow,s=e._locale._week.doy,n=ye(t.gg,e._a[lo],de(De(),i,s).year),o=ye(t.w,1),null!=t.d?(r=t.d,i>r&&++o):r=null!=t.e?t.e+i:i),a=ve(n,o,r,s,i),e._a[lo]=a.year,e._dayOfYear=a.dayOfYear}function _e(t){if(t._f===e.ISO_8601)return void re(t);t._a=[],d(t).empty=!0;var n,o,r,i,s,a=""+t._i,l=a.length,u=0;for(r=j(t._f,t._locale).match(Vn)||[],n=0;n0&&d(t).unusedInput.push(s),a=a.slice(a.indexOf(o)+o.length),u+=o.length),Un[i]?(o?d(t).empty=!1:d(t).unusedTokens.push(i),G(i,o,t)):t._strict&&!o&&d(t).unusedTokens.push(i);d(t).charsLeftOver=l-u,a.length>0&&d(t).unusedInput.push(a),d(t).bigHour===!0&&t._a[ho]<=12&&t._a[ho]>0&&(d(t).bigHour=void 0),t._a[ho]=Se(t._locale,t._a[ho],t._meridiem),Ce(t),ee(t)}function Se(e,t,n){var o;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(o=e.isPM(n),o&&12>t&&(t+=12),o||12!==t||(t=0),t):t}function Ee(e){var t,n,o,r,i;if(0===e._f.length)return d(e).invalidFormat=!0,void(e._d=new Date(NaN));for(r=0;ri)&&(o=i,n=t));l(e,n||t)}function Te(e){if(!e._d){var t=k(e._i);e._a=[t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],Ce(e)}}function Oe(e){var t=new g(ee(Me(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function Me(e){var t=e._i,n=e._f;return e._locale=e._locale||T(e._l),null===t||void 0===n&&""===t?f({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),m(t)?new g(ee(t)):(r(n)?Ee(e):n?_e(e):i(t)?e._d=t:ke(e),e))}function ke(t){var n=t._i;void 0===n?t._d=new Date:i(n)?t._d=new Date(+n):"string"==typeof n?ie(t):r(n)?(t._a=s(n.slice(0),function(e){return parseInt(e,10)}),Ce(t)):"object"==typeof n?Te(t):"number"==typeof n?t._d=new Date(n):e.createFromInputFallback(t)}function He(e,t,n,o,r){var i={};return"boolean"==typeof n&&(o=n,n=void 0),i._isAMomentObject=!0,i._useUTC=i._isUTC=r,i._l=n,i._i=e,i._f=t,i._strict=o,Oe(i)}function De(e,t,n,o){return He(e,t,n,o,!1)}function xe(e,t){var n,o;if(1===t.length&&r(t[0])&&(t=t[0]),!t.length)return De();for(n=t[0],o=1;oe&&(e=-e,n="-"),n+P(~~(e/60),2)+t+P(~~e%60,2)})}function Ie(e){var t=(e||"").match(oo)||[],n=t[t.length-1]||[],o=(n+"").match(Oo)||["-",0,0],r=+(60*o[1])+w(o[2]);return"+"===o[0]?r:-r}function je(t,n){var o,r;return n._isUTC?(o=n.clone(),r=(m(t)||i(t)?+t:+De(t))-+o,o._d.setTime(+o._d+r),e.updateOffset(o,!1),o):De(t).local()}function Be(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Fe(t,n){var o,r=this._offset||0;return null!=t?("string"==typeof t&&(t=Ie(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&n&&(o=Be(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),r!==t&&(!n||this._changeInProgress?ot(this,Je(t-r,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?r:Be(this)}function Ve(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function ze(e){return this.utcOffset(0,e)}function Ye(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Be(this),"m")),this}function Ue(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Ie(this._i)),this}function Ge(e){return e=e?De(e).utcOffset():0,(this.utcOffset()-e)%60===0}function $e(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ke(){if("undefined"!=typeof this._isDSTShifted)return this._isDSTShifted;var e={};if(p(e,this),e=Me(e),e._a){var t=e._isUTC?u(e._a):De(e._a);this._isDSTShifted=this.isValid()&&y(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Xe(){return!this._isUTC}function qe(){return this._isUTC}function Ze(){return this._isUTC&&0===this._offset}function Je(e,t){var n,o,r,i=e,s=null;return Le(e)?i={ms:e._milliseconds,d:e._days,M:e._months}:"number"==typeof e?(i={},t?i[t]=e:i.milliseconds=e):(s=Mo.exec(e))?(n="-"===s[1]?-1:1,i={y:0,d:w(s[co])*n,h:w(s[ho])*n,m:w(s[fo])*n,s:w(s[po])*n,ms:w(s[go])*n}):(s=ko.exec(e))?(n="-"===s[1]?-1:1,i={y:Qe(s[2],n),M:Qe(s[3],n),d:Qe(s[4],n),h:Qe(s[5],n),m:Qe(s[6],n),s:Qe(s[7],n),w:Qe(s[8],n)}):null==i?i={}:"object"==typeof i&&("from"in i||"to"in i)&&(r=tt(De(i.from),De(i.to)),i={},i.ms=r.milliseconds,i.M=r.months),o=new Ne(i),Le(e)&&a(e,"_locale")&&(o._locale=e._locale),o}function Qe(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function et(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function tt(e,t){var n;return t=je(t,e),e.isBefore(t)?n=et(e,t):(n=et(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n}function nt(e,t){return function(n,o){var r,i;return null===o||isNaN(+o)||(oe(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period)."),i=n,n=o,o=i),n="string"==typeof n?+n:n,r=Je(n,o),ot(this,r,e),this}}function ot(t,n,o,r){var i=n._milliseconds,s=n._days,a=n._months;r=null==r?!0:r,i&&t._d.setTime(+t._d+i*o),s&&x(t,"Date",D(t,"Date")+s*o),a&&Z(t,D(t,"Month")+a*o),r&&e.updateOffset(t,s||a)}function rt(e,t){var n=e||De(),o=je(n,this).startOf("day"),r=this.diff(o,"days",!0),i=-6>r?"sameElse":-1>r?"lastWeek":0>r?"lastDay":1>r?"sameDay":2>r?"nextDay":7>r?"nextWeek":"sameElse";return this.format(t&&t[i]||this.localeData().calendar(i,this,De(n)))}function it(){return new g(this)}function st(e,t){var n;return t=M("undefined"!=typeof t?t:"millisecond"),"millisecond"===t?(e=m(e)?e:De(e),+this>+e):(n=m(e)?+e:+De(e),n<+this.clone().startOf(t))}function at(e,t){var n;return t=M("undefined"!=typeof t?t:"millisecond"),"millisecond"===t?(e=m(e)?e:De(e),+e>+this):(n=m(e)?+e:+De(e),+this.clone().endOf(t)t-i?(n=e.clone().add(r-1,"months"),o=(t-i)/(i-n)):(n=e.clone().add(r+1,"months"),o=(t-i)/(n-i)),-(r+o)}function ht(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function ft(){var e=this.clone().utc();return 0t;t++)if(this._weekdaysParse[t]||(n=De([2e3,1]).day(t),o="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[t]=new RegExp(o.replace(".",""),"i")),this._weekdaysParse[t].test(e))return t}function zt(e){var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=It(e,this.localeData()),this.add(e-t,"d")):t}function Yt(e){var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Ut(e){return null==e?this.day()||7:this.day(this.day()%7?e:e-7)}function Gt(e,t){N(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function $t(e,t){return t._meridiemParse}function Kt(e){return"p"===(e+"").toLowerCase().charAt(0)}function Xt(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}function qt(e,t){t[go]=w(1e3*("0."+e))}function Zt(){return this._isUTC?"UTC":""}function Jt(){return this._isUTC?"Coordinated Universal Time":""}function Qt(e){return De(1e3*e)}function en(){return De.apply(null,arguments).parseZone()}function tn(e,t,n){var o=this._calendar[e];return"function"==typeof o?o.call(t,n):o}function nn(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function on(){return this._invalidDate}function rn(e){return this._ordinal.replace("%d",e)}function sn(e){return e}function an(e,t,n,o){var r=this._relativeTime[n];return"function"==typeof r?r(e,t,n,o):r.replace(/%d/i,e)}function ln(e,t){var n=this._relativeTime[e>0?"future":"past"];return"function"==typeof n?n(t):n.replace(/%s/i,t)}function un(e){var t,n;for(n in e)t=e[n],"function"==typeof t?this[n]=t:this["_"+n]=t;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function cn(e,t,n,o){var r=T(),i=u().set(o,t);return r[n](i,e)}function dn(e,t,n,o,r){if("number"==typeof e&&(t=e,e=void 0),e=e||"",null!=t)return cn(e,t,n,r);var i,s=[];for(i=0;o>i;i++)s[i]=cn(e,i,n,r);return s}function hn(e,t){return dn(e,t,"months",12,"month")}function fn(e,t){return dn(e,t,"monthsShort",12,"month")}function pn(e,t){return dn(e,t,"weekdays",7,"day")}function gn(e,t){return dn(e,t,"weekdaysShort",7,"day")}function mn(e,t){return dn(e,t,"weekdaysMin",7,"day")}function vn(){var e=this._data;return this._milliseconds=Jo(this._milliseconds),this._days=Jo(this._days),this._months=Jo(this._months),e.milliseconds=Jo(e.milliseconds),e.seconds=Jo(e.seconds),e.minutes=Jo(e.minutes),e.hours=Jo(e.hours),e.months=Jo(e.months),e.years=Jo(e.years),this}function wn(e,t,n,o){var r=Je(t,n);return e._milliseconds+=o*r._milliseconds,e._days+=o*r._days,e._months+=o*r._months,e._bubble()}function yn(e,t){return wn(this,e,t,1)}function bn(e,t){return wn(this,e,t,-1)}function Cn(e){return 0>e?Math.floor(e):Math.ceil(e)}function Rn(){var e,t,n,o,r,i=this._milliseconds,s=this._days,a=this._months,l=this._data;return i>=0&&s>=0&&a>=0||0>=i&&0>=s&&0>=a||(i+=864e5*Cn(Sn(a)+s),s=0,a=0),l.milliseconds=i%1e3,e=v(i/1e3),l.seconds=e%60,t=v(e/60),l.minutes=t%60,n=v(t/60),l.hours=n%24,s+=v(n/24),r=v(_n(s)),a+=r,s-=Cn(Sn(r)),o=v(a/12),a%=12,l.days=s,l.months=a,l.years=o,this}function _n(e){return 4800*e/146097}function Sn(e){return 146097*e/4800}function En(e){var t,n,o=this._milliseconds;if(e=M(e),"month"===e||"year"===e)return t=this._days+o/864e5,n=this._months+_n(t),"month"===e?n:n/12;switch(t=this._days+Math.round(Sn(this._months)),e){case"week":return t/7+o/6048e5;case"day":return t+o/864e5;case"hour":return 24*t+o/36e5;case"minute":return 1440*t+o/6e4;case"second":return 86400*t+o/1e3;case"millisecond":return Math.floor(864e5*t)+o;default:throw new Error("Unknown unit "+e)}}function Tn(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12)}function On(e){return function(){return this.as(e)}}function Mn(e){return e=M(e),this[e+"s"]()}function kn(e){return function(){return this._data[e]}}function Hn(){return v(this.days()/7)}function Dn(e,t,n,o,r){return r.relativeTime(t||1,!!n,e,o)}function xn(e,t,n){var o=Je(e).abs(),r=pr(o.as("s")),i=pr(o.as("m")),s=pr(o.as("h")),a=pr(o.as("d")),l=pr(o.as("M")),u=pr(o.as("y")),c=r0,c[4]=n,Dn.apply(null,c)}function An(e,t){return void 0===gr[e]?!1:void 0===t?gr[e]:(gr[e]=t,!0)}function Pn(e){var t=this.localeData(),n=xn(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function Nn(){var e,t,n,o=mr(this._milliseconds)/1e3,r=mr(this._days),i=mr(this._months);e=v(o/60),t=v(e/60),o%=60,e%=60,n=v(i/12),i%=12;var s=n,a=i,l=r,u=t,c=e,d=o,h=this.asSeconds();return h?(0>h?"-":"")+"P"+(s?s+"Y":"")+(a?a+"M":"")+(l?l+"D":"")+(u||c||d?"T":"")+(u?u+"H":"")+(c?c+"M":"")+(d?d+"S":""):"P0D"}var Ln,Wn,In=e.momentProperties=[],jn=!1,Bn={},Fn={},Vn=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,zn=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Yn={},Un={},Gn=/\d/,$n=/\d\d/,Kn=/\d{3}/,Xn=/\d{4}/,qn=/[+-]?\d{6}/,Zn=/\d\d?/,Jn=/\d{1,3}/,Qn=/\d{1,4}/,eo=/[+-]?\d{1,6}/,to=/\d+/,no=/[+-]?\d+/,oo=/Z|[+-]\d\d:?\d\d/gi,ro=/[+-]?\d+(\.\d{1,3})?/,io=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,so={},ao={},lo=0,uo=1,co=2,ho=3,fo=4,po=5,go=6;N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),N("MMMM",0,0,function(e){return this.localeData().months(this,e)}),O("month","M"),F("M",Zn),F("MM",Zn,$n),F("MMM",io),F("MMMM",io),Y(["M","MM"],function(e,t){t[uo]=w(e)-1}),Y(["MMM","MMMM"],function(e,t,n,o){var r=n._locale.monthsParse(e,o,n._strict);null!=r?t[uo]=r:d(n).invalidMonth=e});var mo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),vo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),wo={};e.suppressDeprecationWarnings=!1;var yo=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,bo=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],Co=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],Ro=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=ne("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),F("Y",no),F("YY",Zn,$n),F("YYYY",Qn,Xn),F("YYYYY",eo,qn),F("YYYYYY",eo,qn),Y(["YYYYY","YYYYYY"],lo),Y("YYYY",function(t,n){n[lo]=2===t.length?e.parseTwoDigitYear(t):w(t)}),Y("YY",function(t,n){n[lo]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(e){return w(e)+(w(e)>68?1900:2e3)};var _o=H("FullYear",!1);N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),F("w",Zn),F("ww",Zn,$n),F("W",Zn),F("WW",Zn,$n),U(["w","ww","W","WW"],function(e,t,n,o){t[o.substr(0,1)]=w(e)});var So={dow:0,doy:6};N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),F("DDD",Jn),F("DDDD",Kn),Y(["DDD","DDDD"],function(e,t,n){n._dayOfYear=w(e)}),e.ISO_8601=function(){};var Eo=ne("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var e=De.apply(null,arguments);return this>e?this:e}),To=ne("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var e=De.apply(null,arguments);return e>this?this:e});We("Z",":"),We("ZZ",""),F("Z",oo),F("ZZ",oo),Y(["Z","ZZ"],function(e,t,n){n._useUTC=!0,n._tzm=Ie(e)});var Oo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Mo=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Je.fn=Ne.prototype;var Ho=nt(1,"add"),Do=nt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var xo=ne("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Dt("gggg","weekYear"),Dt("ggggg","weekYear"),Dt("GGGG","isoWeekYear"),Dt("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),F("G",no),F("g",no),F("GG",Zn,$n),F("gg",Zn,$n),F("GGGG",Qn,Xn),F("gggg",Qn,Xn),F("GGGGG",eo,qn),F("ggggg",eo,qn),U(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,o){t[o.substr(0,2)]=w(e)}),U(["gg","GG"],function(t,n,o,r){n[r]=e.parseTwoDigitYear(t)}),N("Q",0,0,"quarter"),O("quarter","Q"),F("Q",Gn),Y("Q",function(e,t){t[uo]=3*(w(e)-1)}),N("D",["DD",2],"Do","date"),O("date","D"),F("D",Zn),F("DD",Zn,$n),F("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),Y(["D","DD"],co),Y("Do",function(e,t){t[co]=w(e.match(Zn)[0],10)});var Ao=H("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),N("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),N("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),F("d",Zn),F("e",Zn),F("E",Zn),F("dd",io),F("ddd",io),F("dddd",io),U(["dd","ddd","dddd"],function(e,t,n){var o=n._locale.weekdaysParse(e);null!=o?t.d=o:d(n).invalidWeekday=e}),U(["d","e","E"],function(e,t,n,o){t[o]=w(e)});var Po="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),No="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Lo="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("H",["HH",2],0,"hour"),N("h",["hh",2],0,function(){return this.hours()%12||12}),Gt("a",!0),Gt("A",!1),O("hour","h"),F("a",$t),F("A",$t),F("H",Zn),F("h",Zn),F("HH",Zn,$n),F("hh",Zn,$n),Y(["H","HH"],ho),Y(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),Y(["h","hh"],function(e,t,n){t[ho]=w(e),d(n).bigHour=!0});var Wo=/[ap]\.?m?\.?/i,Io=H("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),F("m",Zn),F("mm",Zn,$n),Y(["m","mm"],fo);var jo=H("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),F("s",Zn),F("ss",Zn,$n),Y(["s","ss"],po);var Bo=H("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),N(0,["SSS",3],0,"millisecond"),N(0,["SSSS",4],0,function(){return 10*this.millisecond()}),N(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),N(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),N(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),N(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),N(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),O("millisecond","ms"),F("S",Jn,Gn),F("SS",Jn,$n),F("SSS",Jn,Kn);var Fo;for(Fo="SSSS";Fo.length<=9;Fo+="S")F(Fo,to);for(Fo="S";Fo.length<=9;Fo+="S")Y(Fo,qt);var Vo=H("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var zo=g.prototype;zo.add=Ho,zo.calendar=rt,zo.clone=it,zo.diff=ct,zo.endOf=Rt,zo.format=pt,zo.from=gt,zo.fromNow=mt,zo.to=vt,zo.toNow=wt,zo.get=A,zo.invalidAt=Ht,zo.isAfter=st,zo.isBefore=at,zo.isBetween=lt,zo.isSame=ut,zo.isValid=Mt,zo.lang=xo,zo.locale=yt,zo.localeData=bt,zo.max=To,zo.min=Eo,zo.parsingFlags=kt,zo.set=A,zo.startOf=Ct,zo.subtract=Do,zo.toArray=Tt,zo.toObject=Ot,zo.toDate=Et,zo.toISOString=ft,zo.toJSON=ft,zo.toString=ht,zo.unix=St,zo.valueOf=_t,zo.year=_o,zo.isLeapYear=ce,zo.weekYear=At,zo.isoWeekYear=Pt,zo.quarter=zo.quarters=Wt,zo.month=J,zo.daysInMonth=Q,zo.week=zo.weeks=ge,zo.isoWeek=zo.isoWeeks=me,zo.weeksInYear=Lt,zo.isoWeeksInYear=Nt,zo.date=Ao,zo.day=zo.days=zt,zo.weekday=Yt,zo.isoWeekday=Ut,zo.dayOfYear=we,zo.hour=zo.hours=Io,zo.minute=zo.minutes=jo,zo.second=zo.seconds=Bo,zo.millisecond=zo.milliseconds=Vo,zo.utcOffset=Fe, +zo.utc=ze,zo.local=Ye,zo.parseZone=Ue,zo.hasAlignedHourOffset=Ge,zo.isDST=$e,zo.isDSTShifted=Ke,zo.isLocal=Xe,zo.isUtcOffset=qe,zo.isUtc=Ze,zo.isUTC=Ze,zo.zoneAbbr=Zt,zo.zoneName=Jt,zo.dates=ne("dates accessor is deprecated. Use date instead.",Ao),zo.months=ne("months accessor is deprecated. Use month instead",J),zo.years=ne("years accessor is deprecated. Use year instead",_o),zo.zone=ne("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ve);var Yo=zo,Uo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Go={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},$o="Invalid date",Ko="%d",Xo=/\d{1,2}/,qo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},Zo=b.prototype;Zo._calendar=Uo,Zo.calendar=tn,Zo._longDateFormat=Go,Zo.longDateFormat=nn,Zo._invalidDate=$o,Zo.invalidDate=on,Zo._ordinal=Ko,Zo.ordinal=rn,Zo._ordinalParse=Xo,Zo.preparse=sn,Zo.postformat=sn,Zo._relativeTime=qo,Zo.relativeTime=an,Zo.pastFuture=ln,Zo.set=un,Zo.months=K,Zo._months=mo,Zo.monthsShort=X,Zo._monthsShort=vo,Zo.monthsParse=q,Zo.week=he,Zo._week=So,Zo.firstDayOfYear=pe,Zo.firstDayOfWeek=fe,Zo.weekdays=jt,Zo._weekdays=Po,Zo.weekdaysMin=Ft,Zo._weekdaysMin=Lo,Zo.weekdaysShort=Bt,Zo._weekdaysShort=No,Zo.weekdaysParse=Vt,Zo.isPM=Kt,Zo._meridiemParse=Wo,Zo.meridiem=Xt,S("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,n=1===w(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}}),e.lang=ne("moment.lang is deprecated. Use moment.locale instead.",S),e.langData=ne("moment.langData is deprecated. Use moment.localeData instead.",T);var Jo=Math.abs,Qo=On("ms"),er=On("s"),tr=On("m"),nr=On("h"),or=On("d"),rr=On("w"),ir=On("M"),sr=On("y"),ar=kn("milliseconds"),lr=kn("seconds"),ur=kn("minutes"),cr=kn("hours"),dr=kn("days"),hr=kn("months"),fr=kn("years"),pr=Math.round,gr={s:45,m:45,h:22,d:26,M:11},mr=Math.abs,vr=Ne.prototype;vr.abs=vn,vr.add=yn,vr.subtract=bn,vr.as=En,vr.asMilliseconds=Qo,vr.asSeconds=er,vr.asMinutes=tr,vr.asHours=nr,vr.asDays=or,vr.asWeeks=rr,vr.asMonths=ir,vr.asYears=sr,vr.valueOf=Tn,vr._bubble=Rn,vr.get=Mn,vr.milliseconds=ar,vr.seconds=lr,vr.minutes=ur,vr.hours=cr,vr.days=dr,vr.weeks=Hn,vr.months=hr,vr.years=fr,vr.humanize=Pn,vr.toISOString=Nn,vr.toString=Nn,vr.toJSON=Nn,vr.locale=yt,vr.localeData=bt,vr.toIsoString=ne("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Nn),vr.lang=xo,N("X",0,0,"unix"),N("x",0,0,"valueOf"),F("x",no),F("X",ro),Y("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),Y("x",function(e,t,n){n._d=new Date(w(e))}),e.version="2.10.6",o(De),e.fn=Yo,e.min=Ae,e.max=Pe,e.utc=u,e.unix=Qt,e.months=hn,e.isDate=i,e.locale=S,e.invalid=f,e.duration=Je,e.isMoment=m,e.weekdays=pn,e.parseZone=en,e.localeData=T,e.isDuration=Le,e.monthsShort=fn,e.weekdaysMin=mn,e.defineLocale=E,e.weekdaysShort=gn,e.normalizeUnits=M,e.relativeTimeThreshold=An;var wr=e;return wr})},{}],numeral:[function(t,n,o){"use strict";(function(){function t(e){this._value=e}function o(e,t,n,o){var r,i,s=Math.pow(10,t);return i=(n(e*s)/s).toFixed(t),o&&(r=new RegExp("0{1,"+o+"}$"),i=i.replace(r,"")),i}function r(e,t,n){var o;return o=t.indexOf("$")>-1?s(e,t,n):t.indexOf("%")>-1?a(e,t,n):t.indexOf(":")>-1?l(e,t):c(e._value,t,n)}function i(e,t){var n,o,r,i,s,a=t,l=["KB","MB","GB","TB","PB","EB","ZB","YB"],c=!1;if(t.indexOf(":")>-1)e._value=u(t);else if(t===w)e._value=0;else{for("."!==m[v].delimiters.decimal&&(t=t.replace(/\./g,"").replace(m[v].delimiters.decimal,".")),n=new RegExp("[^a-zA-Z]"+m[v].abbreviations.thousand+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),o=new RegExp("[^a-zA-Z]"+m[v].abbreviations.million+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),r=new RegExp("[^a-zA-Z]"+m[v].abbreviations.billion+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),i=new RegExp("[^a-zA-Z]"+m[v].abbreviations.trillion+"(?:\\)|(\\"+m[v].currency.symbol+")?(?:\\))?)?$"),s=0;s<=l.length&&!(c=t.indexOf(l[s])>-1?Math.pow(1024,s+1):!1);s++);e._value=(c?c:1)*(a.match(n)?Math.pow(10,3):1)*(a.match(o)?Math.pow(10,6):1)*(a.match(r)?Math.pow(10,9):1)*(a.match(i)?Math.pow(10,12):1)*(t.indexOf("%")>-1?.01:1)*((t.split("-").length+Math.min(t.split("(").length-1,t.split(")").length-1))%2?1:-1)*Number(t.replace(/[^0-9\.]+/g,"")),e._value=c?Math.ceil(e._value):e._value}return e._value}function s(e,t,n){var o,r,i=t.indexOf("$"),s=t.indexOf("("),a=t.indexOf("-"),l="";return t.indexOf(" $")>-1?(l=" ",t=t.replace(" $","")):t.indexOf("$ ")>-1?(l=" ",t=t.replace("$ ","")):t=t.replace("$",""),r=c(e._value,t,n),1>=i?r.indexOf("(")>-1||r.indexOf("-")>-1?(r=r.split(""),o=1,(s>i||a>i)&&(o=0),r.splice(o,0,m[v].currency.symbol+l),r=r.join("")):r=m[v].currency.symbol+l+r:r.indexOf(")")>-1?(r=r.split(""),r.splice(-1,0,l+m[v].currency.symbol),r=r.join("")):r=r+l+m[v].currency.symbol,r}function a(e,t,n){var o,r="",i=100*e._value;return t.indexOf(" %")>-1?(r=" ",t=t.replace(" %","")):t=t.replace("%",""),o=c(i,t,n),o.indexOf(")")>-1?(o=o.split(""),o.splice(-1,0,r+"%"),o=o.join("")):o=o+r+"%",o}function l(e){var t=Math.floor(e._value/60/60),n=Math.floor((e._value-60*t*60)/60),o=Math.round(e._value-60*t*60-60*n);return t+":"+(10>n?"0"+n:n)+":"+(10>o?"0"+o:o)}function u(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}function c(e,t,n){var r,i,s,a,l,u,c=!1,d=!1,h=!1,f="",p=!1,g=!1,y=!1,b=!1,C=!1,R="",_="",S=Math.abs(e),E=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],T="",O=!1;if(0===e&&null!==w)return w;if(t.indexOf("(")>-1?(c=!0,t=t.slice(1,-1)):t.indexOf("+")>-1&&(d=!0,t=t.replace(/\+/g,"")),t.indexOf("a")>-1&&(p=t.indexOf("aK")>=0,g=t.indexOf("aM")>=0,y=t.indexOf("aB")>=0,b=t.indexOf("aT")>=0,C=p||g||y||b,t.indexOf(" a")>-1?(f=" ",t=t.replace(" a","")):t=t.replace("a",""),S>=Math.pow(10,12)&&!C||b?(f+=m[v].abbreviations.trillion,e/=Math.pow(10,12)):S=Math.pow(10,9)&&!C||y?(f+=m[v].abbreviations.billion,e/=Math.pow(10,9)):S=Math.pow(10,6)&&!C||g?(f+=m[v].abbreviations.million,e/=Math.pow(10,6)):(S=Math.pow(10,3)&&!C||p)&&(f+=m[v].abbreviations.thousand,e/=Math.pow(10,3))),t.indexOf("b")>-1)for(t.indexOf(" b")>-1?(R=" ",t=t.replace(" b","")):t=t.replace("b",""),s=0;s<=E.length;s++)if(r=Math.pow(1024,s),i=Math.pow(1024,s+1),e>=r&&i>e){R+=E[s],r>0&&(e/=r);break}return t.indexOf("o")>-1&&(t.indexOf(" o")>-1?(_=" ",t=t.replace(" o","")):t=t.replace("o",""),_+=m[v].ordinal(e)),t.indexOf("[.]")>-1&&(h=!0,t=t.replace("[.]",".")),a=e.toString().split(".")[0],l=t.split(".")[1],u=t.indexOf(","),l?(l.indexOf("[")>-1?(l=l.replace("]",""),l=l.split("["),T=o(e,l[0].length+l[1].length,n,l[1].length)):T=o(e,l.length,n),a=T.split(".")[0],T=T.split(".")[1].length?m[v].delimiters.decimal+T.split(".")[1]:"",h&&0===Number(T.slice(1))&&(T="")):a=o(e,null,n),a.indexOf("-")>-1&&(a=a.slice(1),O=!0),u>-1&&(a=a.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+m[v].delimiters.thousands)),0===t.indexOf(".")&&(a=""),(c&&O?"(":"")+(!c&&O?"-":"")+(!O&&d?"+":"")+a+T+(_?_:"")+(f?f:"")+(R?R:"")+(c&&O?")":"")}function d(e,t){m[e]=t}function h(e){var t=e.toString().split(".");return t.length<2?1:Math.pow(10,t[1].length)}function f(){var e=Array.prototype.slice.call(arguments);return e.reduce(function(e,t){var n=h(e),o=h(t);return n>o?n:o},-(1/0))}var p,g="1.5.3",m={},v="en",w=null,y="0,0",b="undefined"!=typeof n&&n.exports;p=function(e){return p.isNumeral(e)?e=e.value():0===e||"undefined"==typeof e?e=0:Number(e)||(e=p.fn.unformat(e)),new t(Number(e))},p.version=g,p.isNumeral=function(e){return e instanceof t},p.language=function(e,t){if(!e)return v;if(e&&!t){if(!m[e])throw new Error("Unknown language : "+e);v=e}return(t||!m[e])&&d(e,t),p},p.languageData=function(e){if(!e)return m[v];if(!m[e])throw new Error("Unknown language : "+e);return m[e]},p.language("en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),p.zeroFormat=function(e){w="string"==typeof e?e:null},p.defaultFormat=function(e){y="string"==typeof e?e:"0.0"},p.validate=function(e,t){var n,o,r,i,s,a,l,u;if("string"!=typeof e&&(e+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",e)),e=e.trim(),""===e)return!1;e=e.replace(/^[+-]?/,"");try{l=p.languageData(t)}catch(c){l=p.languageData(p.language())}return r=l.currency.symbol,s=l.abbreviations,n=l.delimiters.decimal,o="."===l.delimiters.thousands?"\\.":l.delimiters.thousands,u=e.match(/^[^\d\.\,]+/),null!==u&&(e=e.substr(1),u[0]!==r)?!1:(u=e.match(/[^\d]+$/),null!==u&&(e=e.slice(0,-1),u[0]!==s.thousand&&u[0]!==s.million&&u[0]!==s.billion&&u[0]!==s.trillion)?!1:e.match(/^\d+$/)?!0:(a=new RegExp(o+"{2}"),e.match(/[^\d.,]/g)?!1:(i=e.split(n),i.length>2?!1:i.length<2?!!i[0].match(/^\d+.*\d$/)&&!i[0].match(a):""===i[0]?!i[0].match(a)&&!!i[1].match(/^\d+$/):1===i[0].length?!!i[0].match(/^\d+$/)&&!i[0].match(a)&&!!i[1].match(/^\d+$/):!!i[0].match(/^\d+.*\d$/)&&!i[0].match(a)&&!!i[1].match(/^\d+$/))))},"function"!=typeof Array.prototype.reduce&&(Array.prototype.reduce=function(e,t){if(null===this||"undefined"==typeof this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!=typeof e)throw new TypeError(e+" is not a function");var n,o,r=this.length>>>0,i=!1;for(1n;++n)this.hasOwnProperty(n)&&(i?o=e(o,this[n],n,this):(o=this[n],i=!0));if(!i)throw new TypeError("Reduce of empty array with no initial value");return o}),p.fn=t.prototype={clone:function(){return p(this)},format:function(e,t){return r(this,e?e:y,void 0!==t?t:Math.round)},unformat:function(e){return"[object Number]"===Object.prototype.toString.call(e)?e:i(this,e?e:y)},value:function(){return this._value},valueOf:function(){return this._value},set:function(e){return this._value=Number(e),this},add:function(e){function t(e,t,o,r){return e+n*t}var n=f.call(null,this._value,e);return this._value=[this._value,e].reduce(t,0)/n,this},subtract:function(e){function t(e,t,o,r){return e-n*t}var n=f.call(null,this._value,e);return this._value=[e].reduce(t,this._value*n)/n,this},multiply:function(e){function t(e,t,n,o){var r=f(e,t);return e*r*(t*r)/(r*r)}return this._value=[this._value,e].reduce(t,1),this},divide:function(e){function t(e,t,n,o){var r=f(e,t);return e*r/(t*r)}return this._value=[this._value,e].reduce(t),this},difference:function(e){return Math.abs(p(this._value).subtract(e).value())}},b&&(n.exports=p),"undefined"==typeof ender&&(this.numeral=p),"function"==typeof e&&e.amd&&e([],function(){return p})}).call(window)},{}],pikaday:[function(t,n,o){/*! * Pikaday * * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday */ -!function(r,i){"use strict";var s;if("object"==typeof o){try{s=t("moment")}catch(a){}n.exports=i(s)}else"function"==typeof e&&e.amd?e(function(e){var t="moment";try{s=e(t)}catch(n){}return i(s)}):r.Pikaday=i(r.moment)}(this,function(e){"use strict";var t="function"==typeof e,n=!!window.addEventListener,o=window.document,r=window.setTimeout,i=function(e,t,o,r){n?e.addEventListener(t,o,!!r):e.attachEvent("on"+t,o)},s=function(e,t,o,r){n?e.removeEventListener(t,o,!!r):e.detachEvent("on"+t,o)},a=function(e,t,n){var r;o.createEvent?(r=o.createEvent("HTMLEvents"),r.initEvent(t,!0,!1),r=y(r,n),e.dispatchEvent(r)):o.createEventObject&&(r=o.createEventObject(),r=y(r,n),e.fireEvent("on"+t,r))},l=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},u=function(e,t){return-1!==(" "+e.className+" ").indexOf(" "+t+" ")},c=function(e,t){u(e,t)||(e.className=""===e.className?t:e.className+" "+t)},d=function(e,t){e.className=l((" "+e.className+" ").replace(" "+t+" "," "))},h=function(e){return/Array/.test(Object.prototype.toString.call(e))},f=function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())},p=function(e){var t=e.getDay();return 0===t||6===t},g=function(e){return e%4===0&&e%100!==0||e%400===0},m=function(e,t){return[31,g(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},v=function(e){f(e)&&e.setHours(0,0,0,0)},w=function(e,t){return e.getTime()===t.getTime()},y=function(e,t,n){var o,r;for(o in t)r=void 0!==e[o],r&&"object"==typeof t[o]&&null!==t[o]&&void 0===t[o].nodeName?f(t[o])?n&&(e[o]=new Date(t[o].getTime())):h(t[o])?n&&(e[o]=t[o].slice(0)):e[o]=y({},t[o],n):(n||!r)&&(e[o]=t[o]);return e},b=function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e},C={field:null,bound:void 0,position:"bottom left",reposition:!0,format:"YYYY-MM-DD",defaultDate:null,setDefaultDate:!1,firstDay:0,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:"",showMonthAfterYear:!1,numberOfMonths:1,mainCalendar:"left",container:void 0,i18n:{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},theme:null,onSelect:null,onOpen:null,onClose:null,onDraw:null},R=function(e,t,n){for(t+=e.firstDay;t>=7;)t-=7;return n?e.i18n.weekdaysShort[t]:e.i18n.weekdays[t]},_=function(e){if(e.isEmpty)return'';var t=[];return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&t.push("is-selected"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'"},E=function(e,t,n){var o=new Date(n,0,1),r=Math.ceil(((new Date(n,t,e)-o)/864e5+o.getDay()+1)/7);return''+r+""},S=function(e,t){return""+(t?e.reverse():e).join("")+""},T=function(e){return""+e.join("")+""},O=function(e){var t,n=[];for(e.showWeekNumber&&n.push(""),t=0;7>t;t++)n.push(''+R(e,t,!0)+"");return""+(e.isRTL?n.reverse():n).join("")+""},M=function(e,t,n,o,r){var i,s,a,l,u,c=e._o,d=n===c.minYear,f=n===c.maxYear,p='
',g=!0,m=!0;for(a=[],i=0;12>i;i++)a.push('");for(l='
'+c.i18n.months[o]+'
",h(c.yearRange)?(i=c.yearRange[0],s=c.yearRange[1]+1):(i=n-c.yearRange,s=1+n+c.yearRange),a=[];s>i&&i<=c.maxYear;i++)i>=c.minYear&&a.push('");return u='
'+n+c.yearSuffix+'
",p+=c.showMonthAfterYear?u+l:l+u,d&&(0===o||c.minMonth>=o)&&(g=!1),f&&(11===o||c.maxMonth<=o)&&(m=!1),0===t&&(p+='"),t===e._o.numberOfMonths-1&&(p+='"),p+="
"},k=function(e,t){return''+O(e)+T(t)+"
"},H=function(s){var a=this,l=a.config(s);a._onMouseDown=function(e){if(a._v){e=e||window.event;var t=e.target||e.srcElement;if(t){if(!u(t.parentNode,"is-disabled")){if(u(t,"pika-button")&&!u(t,"is-empty"))return a.setDate(new Date(t.getAttribute("data-pika-year"),t.getAttribute("data-pika-month"),t.getAttribute("data-pika-day"))),void(l.bound&&r(function(){a.hide(),l.field&&l.field.blur()},100));u(t,"pika-prev")?a.prevMonth():u(t,"pika-next")&&a.nextMonth()}if(u(t,"pika-select"))a._c=!0;else{if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}}},a._onChange=function(e){e=e||window.event;var t=e.target||e.srcElement;t&&(u(t,"pika-select-month")?a.gotoMonth(t.value):u(t,"pika-select-year")&&a.gotoYear(t.value))},a._onInputChange=function(n){var o;n.firedBy!==a&&(t?(o=e(l.field.value,l.format),o=o&&o.isValid()?o.toDate():null):o=new Date(Date.parse(l.field.value)),f(o)&&a.setDate(o),a._v||a.show())},a._onInputFocus=function(){a.show()},a._onInputClick=function(){a.show()},a._onInputBlur=function(){var e=o.activeElement;do if(u(e,"pika-single"))return;while(e=e.parentNode);a._c||(a._b=r(function(){a.hide()},50)),a._c=!1},a._onClick=function(e){e=e||window.event;var t=e.target||e.srcElement,o=t;if(t){!n&&u(t,"pika-select")&&(t.onchange||(t.setAttribute("onchange","return;"),i(t,"change",a._onChange)));do if(u(o,"pika-single")||o===l.trigger)return;while(o=o.parentNode);a._v&&t!==l.trigger&&o!==l.trigger&&a.hide()}},a.el=o.createElement("div"),a.el.className="pika-single"+(l.isRTL?" is-rtl":"")+(l.theme?" "+l.theme:""),i(a.el,"ontouchend"in o?"touchend":"mousedown",a._onMouseDown,!0),i(a.el,"change",a._onChange),l.field&&(l.container?l.container.appendChild(a.el):l.bound?o.body.appendChild(a.el):l.field.parentNode.insertBefore(a.el,l.field.nextSibling),i(l.field,"change",a._onInputChange),l.defaultDate||(t&&l.field.value?l.defaultDate=e(l.field.value,l.format).toDate():l.defaultDate=new Date(Date.parse(l.field.value)),l.setDefaultDate=!0));var c=l.defaultDate;f(c)?l.setDefaultDate?a.setDate(c,!0):a.gotoDate(c):a.gotoDate(new Date),l.bound?(this.hide(),a.el.className+=" is-bound",i(l.trigger,"click",a._onInputClick),i(l.trigger,"focus",a._onInputFocus),i(l.trigger,"blur",a._onInputBlur)):this.show()};return H.prototype={config:function(e){this._o||(this._o=y({},C,!0));var t=y(this._o,e,!0);t.isRTL=!!t.isRTL,t.field=t.field&&t.field.nodeName?t.field:null,t.theme="string"==typeof t.theme&&t.theme?t.theme:null,t.bound=!!(void 0!==t.bound?t.field&&t.bound:t.field),t.trigger=t.trigger&&t.trigger.nodeName?t.trigger:t.field,t.disableWeekends=!!t.disableWeekends,t.disableDayFn="function"==typeof t.disableDayFn?t.disableDayFn:null;var n=parseInt(t.numberOfMonths,10)||1;if(t.numberOfMonths=n>4?4:n,f(t.minDate)||(t.minDate=!1),f(t.maxDate)||(t.maxDate=!1),t.minDate&&t.maxDate&&t.maxDate100&&(t.yearRange=100);return t},toString:function(n){return f(this._d)?t?e(this._d).format(n||this._o.format):this._d.toDateString():""},getMoment:function(){return t?e(this._d):null},setMoment:function(n,o){t&&e.isMoment(n)&&this.setDate(n.toDate(),o)},getDate:function(){return f(this._d)?new Date(this._d.getTime()):null},setDate:function(e,t){if(!e)return this._d=null,this._o.field&&(this._o.field.value="",a(this._o.field,"change",{firedBy:this})),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),f(e)){var n=this._o.minDate,o=this._o.maxDate;f(n)&&n>e?e=n:f(o)&&e>o&&(e=o),this._d=new Date(e.getTime()),v(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),a(this._o.field,"change",{firedBy:this})),t||"function"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(e){var t=!0;if(f(e)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),o=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=e.getTime();o.setMonth(o.getMonth()+1),o.setDate(o.getDate()-1),t=r=o&&(this._y=o,!isNaN(s)&&this._m>s&&(this._m=s));for(var l=0;l'+M(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year)+this.render(this.calendars[l].year,this.calendars[l].month)+"";if(this.el.innerHTML=a,t.bound&&"hidden"!==t.field.type&&r(function(){t.trigger.focus()},1),"function"==typeof this._o.onDraw){var u=this;r(function(){u._o.onDraw.call(u)},0)}}},adjustPosition:function(){var e,t,n,r,i,s,a,l,u,c;if(!this._o.container){if(this.el.style.position="absolute",e=this._o.trigger,t=e,n=this.el.offsetWidth,r=this.el.offsetHeight,i=window.innerWidth||o.documentElement.clientWidth,s=window.innerHeight||o.documentElement.clientHeight,a=window.pageYOffset||o.body.scrollTop||o.documentElement.scrollTop,"function"==typeof e.getBoundingClientRect)c=e.getBoundingClientRect(),l=c.left+window.pageXOffset,u=c.bottom+window.pageYOffset;else for(l=t.offsetLeft,u=t.offsetTop+t.offsetHeight;t=t.offsetParent;)l+=t.offsetLeft,u+=t.offsetTop;(this._o.reposition&&l+n>i||this._o.position.indexOf("right")>-1&&l-n+e.offsetWidth>0)&&(l=l-n+e.offsetWidth),(this._o.reposition&&u+r>s+a||this._o.position.indexOf("top")>-1&&u-r-e.offsetHeight>0)&&(u=u-r-e.offsetHeight),this.el.style.left=l+"px",this.el.style.top=u+"px"}},render:function(e,t){var n=this._o,o=new Date,r=m(e,t),i=new Date(e,t,1).getDay(),s=[],a=[];v(o),n.firstDay>0&&(i-=n.firstDay,0>i&&(i+=7));for(var l=r+i,u=l;u>7;)u-=7;l+=7-u;for(var c=0,d=0;l>c;c++){var h,g=new Date(e,t,1+(c-i)),y=f(this._d)?w(g,this._d):!1,b=w(g,o),C=i>c||c>=r+i,R=n.startRange&&w(n.startRange,g),T=n.endRange&&w(n.endRange,g),O=n.startRange&&n.endRange&&n.startRangen.maxDate||n.disableWeekends&&p(g)||n.disableDayFn&&n.disableDayFn(g),h={day:1+(c-i),month:t,year:e,isSelected:y,isToday:b,isDisabled:M,isEmpty:C,isStartRange:R,isEndRange:T,isInRange:O};a.push(_(h)),7===++d&&(n.showWeekNumber&&a.unshift(E(c-i,t,e)),s.push(S(a,n.isRTL)),a=[],d=0)}return k(n,s)},isVisible:function(){return this._v},show:function(){this._v||(d(this.el,"is-hidden"),this._v=!0,this.draw(),this._o.bound&&(i(o,"click",this._onClick),this.adjustPosition()),"function"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var e=this._v;e!==!1&&(this._o.bound&&s(o,"click",this._onClick),this.el.style.position="static",this.el.style.left="auto",this.el.style.top="auto",c(this.el,"is-hidden"),this._v=!1,void 0!==e&&"function"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){this.hide(),s(this.el,"mousedown",this._onMouseDown,!0),s(this.el,"change",this._onChange),this._o.field&&(s(this._o.field,"change",this._onInputChange),this._o.bound&&(s(this._o.trigger,"click",this._onInputClick),s(this._o.trigger,"focus",this._onInputFocus),s(this._o.trigger,"blur",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},H})},{moment:"moment"}],zeroclipboard:[function(t,n,o){/*! +!function(r,i){"use strict";var s;if("object"==typeof o){try{s=t("moment")}catch(a){}n.exports=i(s)}else"function"==typeof e&&e.amd?e(function(e){var t="moment";try{s=e(t)}catch(n){}return i(s)}):r.Pikaday=i(r.moment)}(this,function(e){"use strict";var t="function"==typeof e,n=!!window.addEventListener,o=window.document,r=window.setTimeout,i=function(e,t,o,r){n?e.addEventListener(t,o,!!r):e.attachEvent("on"+t,o)},s=function(e,t,o,r){n?e.removeEventListener(t,o,!!r):e.detachEvent("on"+t,o)},a=function(e,t,n){var r;o.createEvent?(r=o.createEvent("HTMLEvents"),r.initEvent(t,!0,!1),r=y(r,n),e.dispatchEvent(r)):o.createEventObject&&(r=o.createEventObject(),r=y(r,n),e.fireEvent("on"+t,r))},l=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},u=function(e,t){return-1!==(" "+e.className+" ").indexOf(" "+t+" ")},c=function(e,t){u(e,t)||(e.className=""===e.className?t:e.className+" "+t)},d=function(e,t){e.className=l((" "+e.className+" ").replace(" "+t+" "," "))},h=function(e){return/Array/.test(Object.prototype.toString.call(e))},f=function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())},p=function(e){var t=e.getDay();return 0===t||6===t},g=function(e){return e%4===0&&e%100!==0||e%400===0},m=function(e,t){return[31,g(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},v=function(e){f(e)&&e.setHours(0,0,0,0)},w=function(e,t){return e.getTime()===t.getTime()},y=function(e,t,n){var o,r;for(o in t)r=void 0!==e[o],r&&"object"==typeof t[o]&&null!==t[o]&&void 0===t[o].nodeName?f(t[o])?n&&(e[o]=new Date(t[o].getTime())):h(t[o])?n&&(e[o]=t[o].slice(0)):e[o]=y({},t[o],n):(n||!r)&&(e[o]=t[o]);return e},b=function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e},C={field:null,bound:void 0,position:"bottom left",reposition:!0,format:"YYYY-MM-DD",defaultDate:null,setDefaultDate:!1,firstDay:0,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:"",showMonthAfterYear:!1,numberOfMonths:1,mainCalendar:"left",container:void 0,i18n:{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},theme:null,onSelect:null,onOpen:null,onClose:null,onDraw:null},R=function(e,t,n){for(t+=e.firstDay;t>=7;)t-=7;return n?e.i18n.weekdaysShort[t]:e.i18n.weekdays[t]},_=function(e){if(e.isEmpty)return'';var t=[];return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&t.push("is-selected"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'"},S=function(e,t,n){var o=new Date(n,0,1),r=Math.ceil(((new Date(n,t,e)-o)/864e5+o.getDay()+1)/7);return''+r+""},E=function(e,t){return""+(t?e.reverse():e).join("")+""},T=function(e){return""+e.join("")+""},O=function(e){var t,n=[];for(e.showWeekNumber&&n.push(""),t=0;7>t;t++)n.push(''+R(e,t,!0)+"");return""+(e.isRTL?n.reverse():n).join("")+""},M=function(e,t,n,o,r){var i,s,a,l,u,c=e._o,d=n===c.minYear,f=n===c.maxYear,p='
',g=!0,m=!0;for(a=[],i=0;12>i;i++)a.push('");for(l='
'+c.i18n.months[o]+'
",h(c.yearRange)?(i=c.yearRange[0],s=c.yearRange[1]+1):(i=n-c.yearRange,s=1+n+c.yearRange),a=[];s>i&&i<=c.maxYear;i++)i>=c.minYear&&a.push('");return u='
'+n+c.yearSuffix+'
",p+=c.showMonthAfterYear?u+l:l+u,d&&(0===o||c.minMonth>=o)&&(g=!1),f&&(11===o||c.maxMonth<=o)&&(m=!1),0===t&&(p+='"),t===e._o.numberOfMonths-1&&(p+='"),p+="
"},k=function(e,t){return''+O(e)+T(t)+"
"},H=function(s){var a=this,l=a.config(s);a._onMouseDown=function(e){if(a._v){e=e||window.event;var t=e.target||e.srcElement;if(t){if(!u(t.parentNode,"is-disabled")){if(u(t,"pika-button")&&!u(t,"is-empty"))return a.setDate(new Date(t.getAttribute("data-pika-year"),t.getAttribute("data-pika-month"),t.getAttribute("data-pika-day"))),void(l.bound&&r(function(){a.hide(),l.field&&l.field.blur()},100));u(t,"pika-prev")?a.prevMonth():u(t,"pika-next")&&a.nextMonth()}if(u(t,"pika-select"))a._c=!0;else{if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}}},a._onChange=function(e){e=e||window.event;var t=e.target||e.srcElement;t&&(u(t,"pika-select-month")?a.gotoMonth(t.value):u(t,"pika-select-year")&&a.gotoYear(t.value))},a._onInputChange=function(n){var o;n.firedBy!==a&&(t?(o=e(l.field.value,l.format),o=o&&o.isValid()?o.toDate():null):o=new Date(Date.parse(l.field.value)),f(o)&&a.setDate(o),a._v||a.show())},a._onInputFocus=function(){a.show()},a._onInputClick=function(){a.show()},a._onInputBlur=function(){var e=o.activeElement;do if(u(e,"pika-single"))return;while(e=e.parentNode);a._c||(a._b=r(function(){a.hide()},50)),a._c=!1},a._onClick=function(e){e=e||window.event;var t=e.target||e.srcElement,o=t;if(t){!n&&u(t,"pika-select")&&(t.onchange||(t.setAttribute("onchange","return;"),i(t,"change",a._onChange)));do if(u(o,"pika-single")||o===l.trigger)return;while(o=o.parentNode);a._v&&t!==l.trigger&&o!==l.trigger&&a.hide()}},a.el=o.createElement("div"),a.el.className="pika-single"+(l.isRTL?" is-rtl":"")+(l.theme?" "+l.theme:""),i(a.el,"ontouchend"in o?"touchend":"mousedown",a._onMouseDown,!0),i(a.el,"change",a._onChange),l.field&&(l.container?l.container.appendChild(a.el):l.bound?o.body.appendChild(a.el):l.field.parentNode.insertBefore(a.el,l.field.nextSibling),i(l.field,"change",a._onInputChange),l.defaultDate||(t&&l.field.value?l.defaultDate=e(l.field.value,l.format).toDate():l.defaultDate=new Date(Date.parse(l.field.value)),l.setDefaultDate=!0));var c=l.defaultDate;f(c)?l.setDefaultDate?a.setDate(c,!0):a.gotoDate(c):a.gotoDate(new Date),l.bound?(this.hide(),a.el.className+=" is-bound",i(l.trigger,"click",a._onInputClick),i(l.trigger,"focus",a._onInputFocus),i(l.trigger,"blur",a._onInputBlur)):this.show()};return H.prototype={config:function(e){this._o||(this._o=y({},C,!0));var t=y(this._o,e,!0);t.isRTL=!!t.isRTL,t.field=t.field&&t.field.nodeName?t.field:null,t.theme="string"==typeof t.theme&&t.theme?t.theme:null,t.bound=!!(void 0!==t.bound?t.field&&t.bound:t.field),t.trigger=t.trigger&&t.trigger.nodeName?t.trigger:t.field,t.disableWeekends=!!t.disableWeekends,t.disableDayFn="function"==typeof t.disableDayFn?t.disableDayFn:null;var n=parseInt(t.numberOfMonths,10)||1;if(t.numberOfMonths=n>4?4:n,f(t.minDate)||(t.minDate=!1),f(t.maxDate)||(t.maxDate=!1),t.minDate&&t.maxDate&&t.maxDate100&&(t.yearRange=100);return t},toString:function(n){return f(this._d)?t?e(this._d).format(n||this._o.format):this._d.toDateString():""},getMoment:function(){return t?e(this._d):null},setMoment:function(n,o){t&&e.isMoment(n)&&this.setDate(n.toDate(),o)},getDate:function(){return f(this._d)?new Date(this._d.getTime()):null},setDate:function(e,t){if(!e)return this._d=null,this._o.field&&(this._o.field.value="",a(this._o.field,"change",{firedBy:this})),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),f(e)){var n=this._o.minDate,o=this._o.maxDate;f(n)&&n>e?e=n:f(o)&&e>o&&(e=o),this._d=new Date(e.getTime()),v(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),a(this._o.field,"change",{firedBy:this})),t||"function"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(e){var t=!0;if(f(e)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),o=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=e.getTime();o.setMonth(o.getMonth()+1),o.setDate(o.getDate()-1),t=r=o&&(this._y=o,!isNaN(s)&&this._m>s&&(this._m=s));for(var l=0;l'+M(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year)+this.render(this.calendars[l].year,this.calendars[l].month)+"";if(this.el.innerHTML=a,t.bound&&"hidden"!==t.field.type&&r(function(){t.trigger.focus()},1),"function"==typeof this._o.onDraw){var u=this;r(function(){u._o.onDraw.call(u)},0)}}},adjustPosition:function(){var e,t,n,r,i,s,a,l,u,c;if(!this._o.container){if(this.el.style.position="absolute",e=this._o.trigger,t=e,n=this.el.offsetWidth,r=this.el.offsetHeight,i=window.innerWidth||o.documentElement.clientWidth,s=window.innerHeight||o.documentElement.clientHeight,a=window.pageYOffset||o.body.scrollTop||o.documentElement.scrollTop,"function"==typeof e.getBoundingClientRect)c=e.getBoundingClientRect(),l=c.left+window.pageXOffset,u=c.bottom+window.pageYOffset;else for(l=t.offsetLeft,u=t.offsetTop+t.offsetHeight;t=t.offsetParent;)l+=t.offsetLeft,u+=t.offsetTop;(this._o.reposition&&l+n>i||this._o.position.indexOf("right")>-1&&l-n+e.offsetWidth>0)&&(l=l-n+e.offsetWidth),(this._o.reposition&&u+r>s+a||this._o.position.indexOf("top")>-1&&u-r-e.offsetHeight>0)&&(u=u-r-e.offsetHeight),this.el.style.left=l+"px",this.el.style.top=u+"px"}},render:function(e,t){var n=this._o,o=new Date,r=m(e,t),i=new Date(e,t,1).getDay(),s=[],a=[];v(o),n.firstDay>0&&(i-=n.firstDay,0>i&&(i+=7));for(var l=r+i,u=l;u>7;)u-=7;l+=7-u;for(var c=0,d=0;l>c;c++){var h,g=new Date(e,t,1+(c-i)),y=f(this._d)?w(g,this._d):!1,b=w(g,o),C=i>c||c>=r+i,R=n.startRange&&w(n.startRange,g),T=n.endRange&&w(n.endRange,g),O=n.startRange&&n.endRange&&n.startRangen.maxDate||n.disableWeekends&&p(g)||n.disableDayFn&&n.disableDayFn(g),h={day:1+(c-i),month:t,year:e,isSelected:y,isToday:b,isDisabled:M,isEmpty:C,isStartRange:R,isEndRange:T,isInRange:O};a.push(_(h)),7===++d&&(n.showWeekNumber&&a.unshift(S(c-i,t,e)),s.push(E(a,n.isRTL)),a=[],d=0)}return k(n,s)},isVisible:function(){return this._v},show:function(){this._v||(d(this.el,"is-hidden"),this._v=!0,this.draw(),this._o.bound&&(i(o,"click",this._onClick),this.adjustPosition()),"function"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var e=this._v;e!==!1&&(this._o.bound&&s(o,"click",this._onClick),this.el.style.position="static",this.el.style.left="auto",this.el.style.top="auto",c(this.el,"is-hidden"),this._v=!1,void 0!==e&&"function"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){this.hide(),s(this.el,"mousedown",this._onMouseDown,!0),s(this.el,"change",this._onChange),this._o.field&&(s(this._o.field,"change",this._onInputChange),this._o.bound&&(s(this._o.trigger,"click",this._onInputClick),s(this._o.trigger,"focus",this._onInputFocus),s(this._o.trigger,"blur",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},H})},{moment:"moment"}],zeroclipboard:[function(t,n,o){/*! * ZeroClipboard * The ZeroClipboard library provides an easy way to copy text to the clipboard using an invisible Adobe Flash movie and a JavaScript interface. * Copyright (c) 2009-2014 Jon Rohan, James M. Greene @@ -41,4 +41,4 @@ zo.utc=ze,zo.local=Ye,zo.parseZone=Ue,zo.hasAlignedHourOffset=Ge,zo.isDST=$e,zo. * http://zeroclipboard.org/ * v2.2.0 */ -!function(t,o){"use strict";var r,i,s,a=t,l=a.document,u=a.navigator,c=a.setTimeout,d=a.clearTimeout,h=a.setInterval,f=a.clearInterval,p=a.getComputedStyle,g=a.encodeURIComponent,m=a.ActiveXObject,v=a.Error,w=a.Number.parseInt||a.parseInt,y=a.Number.parseFloat||a.parseFloat,b=a.Number.isNaN||a.isNaN,C=a.Date.now,R=a.Object.keys,_=a.Object.defineProperty,E=a.Object.prototype.hasOwnProperty,S=a.Array.prototype.slice,T=function(){var e=function(e){return e};if("function"==typeof a.wrap&&"function"==typeof a.unwrap)try{var t=l.createElement("div"),n=a.unwrap(t);1===t.nodeType&&n&&1===n.nodeType&&(e=a.unwrap)}catch(o){}return e}(),O=function(e){return S.call(e,0)},M=function(){var e,t,n,r,i,s,a=O(arguments),l=a[0]||{};for(e=1,t=a.length;t>e;e++)if(null!=(n=a[e]))for(r in n)E.call(n,r)&&(i=l[r],s=n[r],l!==s&&s!==o&&(l[r]=s));return l},k=function(e){var t,n,o,r;if("object"!=typeof e||null==e||"number"==typeof e.nodeType)t=e;else if("number"==typeof e.length)for(t=[],n=0,o=e.length;o>n;n++)E.call(e,n)&&(t[n]=k(e[n]));else{t={};for(r in e)E.call(e,r)&&(t[r]=k(e[r]))}return t},H=function(e,t){for(var n={},o=0,r=t.length;r>o;o++)t[o]in e&&(n[t[o]]=e[t[o]]);return n},D=function(e,t){var n={};for(var o in e)-1===t.indexOf(o)&&(n[o]=e[o]);return n},x=function(e){if(e)for(var t in e)E.call(e,t)&&delete e[t];return e},A=function(e,t){if(e&&1===e.nodeType&&e.ownerDocument&&t&&(1===t.nodeType&&t.ownerDocument&&t.ownerDocument===e.ownerDocument||9===t.nodeType&&!t.ownerDocument&&t===e.ownerDocument))do{if(e===t)return!0;e=e.parentNode}while(e);return!1},P=function(e){var t;return"string"==typeof e&&e&&(t=e.split("#")[0].split("?")[0],t=e.slice(0,e.lastIndexOf("/")+1)),t},N=function(e){var t,n;return"string"==typeof e&&e&&(n=e.match(/^(?:|[^:@]*@|.+\)@(?=http[s]?|file)|.+?\s+(?: at |@)(?:[^:\(]+ )*[\(]?)((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),n&&n[1]?t=n[1]:(n=e.match(/\)@((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),n&&n[1]&&(t=n[1]))),t},L=function(){var e,t;try{throw new v}catch(n){t=n}return t&&(e=t.sourceURL||t.fileName||N(t.stack)),e},W=function(){var e,t,n;if(l.currentScript&&(e=l.currentScript.src))return e;if(t=l.getElementsByTagName("script"),1===t.length)return t[0].src||o;if("readyState"in t[0])for(n=t.length;n--;)if("interactive"===t[n].readyState&&(e=t[n].src))return e;return"loading"===l.readyState&&(e=t[t.length-1].src)?e:(e=L())?e:o},I=function(){var e,t,n,r=l.getElementsByTagName("script");for(e=r.length;e--;){if(!(n=r[e].src)){t=null;break}if(n=P(n),null==t)t=n;else if(t!==n){t=null;break}}return t||o},j=function(){var e=P(W())||I()||"";return e+"ZeroClipboard.swf"},B=function(){return null==t.opener&&(!!t.top&&t!=t.top||!!t.parent&&t!=t.parent)}(),F={bridge:null,version:"0.0.0",pluginType:"unknown",disabled:null,outdated:null,sandboxed:null,unavailable:null,degraded:null,deactivated:null,overdue:null,ready:null},V="11.0.0",z={},Y={},U=null,G=0,$=0,K={ready:"Flash communication is established",error:{"flash-disabled":"Flash is disabled or not installed. May also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-outdated":"Flash is too outdated to support ZeroClipboard","flash-sandboxed":"Attempting to run Flash in a sandboxed iframe, which is impossible","flash-unavailable":"Flash is unable to communicate bidirectionally with JavaScript","flash-degraded":"Flash is unable to preserve data fidelity when communicating with JavaScript","flash-deactivated":"Flash is too outdated for your browser and/or is configured as click-to-activate.\nThis may also mean that the ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity.\nMay also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-overdue":"Flash communication was established but NOT within the acceptable time limit","version-mismatch":"ZeroClipboard JS version number does not match ZeroClipboard SWF version number","clipboard-error":"At least one error was thrown while ZeroClipboard was attempting to inject your data into the clipboard","config-mismatch":"ZeroClipboard configuration does not match Flash's reality","swf-not-found":"The ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity"}},X=["flash-unavailable","flash-degraded","flash-overdue","version-mismatch","config-mismatch","clipboard-error"],q=["flash-disabled","flash-outdated","flash-sandboxed","flash-unavailable","flash-degraded","flash-deactivated","flash-overdue"],Z=new RegExp("^flash-("+q.map(function(e){return e.replace(/^flash-/,"")}).join("|")+")$"),J=new RegExp("^flash-("+q.slice(1).map(function(e){return e.replace(/^flash-/,"")}).join("|")+")$"),Q={swfPath:j(),trustedDomains:t.location.host?[t.location.host]:[],cacheBust:!0,forceEnhancedClipboard:!1,flashLoadTimeout:3e4,autoActivate:!0,bubbleEvents:!0,containerId:"global-zeroclipboard-html-bridge",containerClass:"global-zeroclipboard-container",swfObjectId:"global-zeroclipboard-flash-bridge",hoverClass:"zeroclipboard-is-hover",activeClass:"zeroclipboard-is-active",forceHandCursor:!1,title:null,zIndex:999999999},ee=function(e){if("object"==typeof e&&null!==e)for(var t in e)if(E.call(e,t))if(/^(?:forceHandCursor|title|zIndex|bubbleEvents)$/.test(t))Q[t]=e[t];else if(null==F.bridge)if("containerId"===t||"swfObjectId"===t){if(!ge(e[t]))throw new Error("The specified `"+t+"` value is not valid as an HTML4 Element ID");Q[t]=e[t]}else Q[t]=e[t];{if("string"!=typeof e||!e)return k(Q);if(E.call(Q,e))return Q[e]}},te=function(){return $e(),{browser:H(u,["userAgent","platform","appName"]),flash:D(F,["bridge"]),zeroclipboard:{version:Xe.version,config:Xe.config()}}},ne=function(){return!!(F.disabled||F.outdated||F.sandboxed||F.unavailable||F.degraded||F.deactivated)},oe=function(e,t){var n,i,s,a={};if("string"==typeof e&&e)s=e.toLowerCase().split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)E.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&Xe.on(n,e[n]);if(s&&s.length){for(n=0,i=s.length;i>n;n++)e=s[n].replace(/^on/,""),a[e]=!0,z[e]||(z[e]=[]),z[e].push(t);if(a.ready&&F.ready&&Xe.emit({type:"ready"}),a.error){for(n=0,i=q.length;i>n;n++)if(F[q[n].replace(/^flash-/,"")]===!0){Xe.emit({type:"error",name:q[n]});break}r!==o&&Xe.version!==r&&Xe.emit({type:"error",name:"version-mismatch",jsVersion:Xe.version,swfVersion:r})}}return Xe},re=function(e,t){var n,o,r,i,s;if(0===arguments.length)i=R(z);else if("string"==typeof e&&e)i=e.split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)E.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&Xe.off(n,e[n]);if(i&&i.length)for(n=0,o=i.length;o>n;n++)if(e=i[n].toLowerCase().replace(/^on/,""),s=z[e],s&&s.length)if(t)for(r=s.indexOf(t);-1!==r;)s.splice(r,1),r=s.indexOf(t,r);else s.length=0;return Xe},ie=function(e){var t;return t="string"==typeof e&&e?k(z[e])||null:k(z)},se=function(e){var t,n,o;return e=me(e),e&&!_e(e)?"ready"===e.type&&F.overdue===!0?Xe.emit({type:"error",name:"flash-overdue"}):(t=M({},e),Ce.call(this,t),"copy"===e.type&&(o=De(Y),n=o.data,U=o.formatMap),n):void 0},ae=function(){var e=F.sandboxed;if($e(),"boolean"!=typeof F.ready&&(F.ready=!1),F.sandboxed!==e&&F.sandboxed===!0)F.ready=!1,Xe.emit({type:"error",name:"flash-sandboxed"});else if(!Xe.isFlashUnusable()&&null===F.bridge){var t=Q.flashLoadTimeout;"number"==typeof t&&t>=0&&(G=c(function(){"boolean"!=typeof F.deactivated&&(F.deactivated=!0),F.deactivated===!0&&Xe.emit({type:"error",name:"flash-deactivated"})},t)),F.overdue=!1,ke()}},le=function(){Xe.clearData(),Xe.blur(),Xe.emit("destroy"),He(),Xe.off()},ue=function(e,t){var n;if("object"==typeof e&&e&&"undefined"==typeof t)n=e,Xe.clearData();else{if("string"!=typeof e||!e)return;n={},n[e]=t}for(var o in n)"string"==typeof o&&o&&E.call(n,o)&&"string"==typeof n[o]&&n[o]&&(Y[o]=n[o])},ce=function(e){"undefined"==typeof e?(x(Y),U=null):"string"==typeof e&&E.call(Y,e)&&delete Y[e]},de=function(e){return"undefined"==typeof e?k(Y):"string"==typeof e&&E.call(Y,e)?Y[e]:void 0},he=function(e){if(e&&1===e.nodeType){i&&(je(i,Q.activeClass),i!==e&&je(i,Q.hoverClass)),i=e,Ie(e,Q.hoverClass);var t=e.getAttribute("title")||Q.title;if("string"==typeof t&&t){var n=Me(F.bridge);n&&n.setAttribute("title",t)}var o=Q.forceHandCursor===!0||"pointer"===Be(e,"cursor");Ue(o),Ye()}},fe=function(){var e=Me(F.bridge);e&&(e.removeAttribute("title"),e.style.left="0px",e.style.top="-9999px",e.style.width="1px",e.style.height="1px"),i&&(je(i,Q.hoverClass),je(i,Q.activeClass),i=null)},pe=function(){return i||null},ge=function(e){return"string"==typeof e&&e&&/^[A-Za-z][A-Za-z0-9_:\-\.]*$/.test(e)},me=function(e){var t;if("string"==typeof e&&e?(t=e,e={}):"object"==typeof e&&e&&"string"==typeof e.type&&e.type&&(t=e.type),t){t=t.toLowerCase(),!e.target&&(/^(copy|aftercopy|_click)$/.test(t)||"error"===t&&"clipboard-error"===e.name)&&(e.target=s),M(e,{type:t,target:e.target||i||null,relatedTarget:e.relatedTarget||null,currentTarget:F&&F.bridge||null,timeStamp:e.timeStamp||C()||null});var n=K[e.type];return"error"===e.type&&e.name&&n&&(n=n[e.name]),n&&(e.message=n),"ready"===e.type&&M(e,{target:null,version:F.version}),"error"===e.type&&(Z.test(e.name)&&M(e,{target:null,minimumVersion:V}),J.test(e.name)&&M(e,{version:F.version})),"copy"===e.type&&(e.clipboardData={setData:Xe.setData,clearData:Xe.clearData}),"aftercopy"===e.type&&(e=xe(e,U)),e.target&&!e.relatedTarget&&(e.relatedTarget=ve(e.target)),we(e)}},ve=function(e){var t=e&&e.getAttribute&&e.getAttribute("data-clipboard-target");return t?l.getElementById(t):null},we=function(e){if(e&&/^_(?:click|mouse(?:over|out|down|up|move))$/.test(e.type)){var t=e.target,n="_mouseover"===e.type&&e.relatedTarget?e.relatedTarget:o,r="_mouseout"===e.type&&e.relatedTarget?e.relatedTarget:o,i=Fe(t),s=a.screenLeft||a.screenX||0,u=a.screenTop||a.screenY||0,c=l.body.scrollLeft+l.documentElement.scrollLeft,d=l.body.scrollTop+l.documentElement.scrollTop,h=i.left+("number"==typeof e._stageX?e._stageX:0),f=i.top+("number"==typeof e._stageY?e._stageY:0),p=h-c,g=f-d,m=s+p,v=u+g,w="number"==typeof e.movementX?e.movementX:0,y="number"==typeof e.movementY?e.movementY:0;delete e._stageX,delete e._stageY,M(e,{srcElement:t,fromElement:n,toElement:r,screenX:m,screenY:v,pageX:h,pageY:f,clientX:p,clientY:g,x:p,y:g,movementX:w,movementY:y,offsetX:0,offsetY:0,layerX:0,layerY:0})}return e},ye=function(e){var t=e&&"string"==typeof e.type&&e.type||"";return!/^(?:(?:before)?copy|destroy)$/.test(t)},be=function(e,t,n,o){o?c(function(){e.apply(t,n)},0):e.apply(t,n)},Ce=function(e){if("object"==typeof e&&e&&e.type){var t=ye(e),n=z["*"]||[],o=z[e.type]||[],r=n.concat(o);if(r&&r.length){var i,s,l,u,c,d=this;for(i=0,s=r.length;s>i;i++)l=r[i],u=d,"string"==typeof l&&"function"==typeof a[l]&&(l=a[l]),"object"==typeof l&&l&&"function"==typeof l.handleEvent&&(u=l,l=l.handleEvent),"function"==typeof l&&(c=M({},e),be(l,u,[c],t))}return this}},Re=function(e){var t=null;return(B===!1||e&&"error"===e.type&&e.name&&-1!==X.indexOf(e.name))&&(t=!1),t},_e=function(e){var t=e.target||i||null,n="swf"===e._source;switch(delete e._source,e.type){case"error":var o="flash-sandboxed"===e.name||Re(e);"boolean"==typeof o&&(F.sandboxed=o),-1!==q.indexOf(e.name)?M(F,{disabled:"flash-disabled"===e.name,outdated:"flash-outdated"===e.name,unavailable:"flash-unavailable"===e.name,degraded:"flash-degraded"===e.name,deactivated:"flash-deactivated"===e.name,overdue:"flash-overdue"===e.name,ready:!1}):"version-mismatch"===e.name&&(r=e.swfVersion,M(F,{disabled:!1,outdated:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:!1,ready:!1})),ze();break;case"ready":r=e.swfVersion;var a=F.deactivated===!0;M(F,{disabled:!1,outdated:!1,sandboxed:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:a,ready:!a}),ze();break;case"beforecopy":s=t;break;case"copy":var l,u,c=e.relatedTarget;!Y["text/html"]&&!Y["text/plain"]&&c&&(u=c.value||c.outerHTML||c.innerHTML)&&(l=c.value||c.textContent||c.innerText)?(e.clipboardData.clearData(),e.clipboardData.setData("text/plain",l),u!==l&&e.clipboardData.setData("text/html",u)):!Y["text/plain"]&&e.target&&(l=e.target.getAttribute("data-clipboard-text"))&&(e.clipboardData.clearData(),e.clipboardData.setData("text/plain",l));break;case"aftercopy":Ee(e),Xe.clearData(),t&&t!==We()&&t.focus&&t.focus();break;case"_mouseover":Xe.focus(t),Q.bubbleEvents===!0&&n&&(t&&t!==e.relatedTarget&&!A(e.relatedTarget,t)&&Se(M({},e,{type:"mouseenter",bubbles:!1,cancelable:!1})),Se(M({},e,{type:"mouseover"})));break;case"_mouseout":Xe.blur(),Q.bubbleEvents===!0&&n&&(t&&t!==e.relatedTarget&&!A(e.relatedTarget,t)&&Se(M({},e,{type:"mouseleave",bubbles:!1,cancelable:!1})),Se(M({},e,{type:"mouseout"})));break;case"_mousedown":Ie(t,Q.activeClass),Q.bubbleEvents===!0&&n&&Se(M({},e,{type:e.type.slice(1)}));break;case"_mouseup":je(t,Q.activeClass),Q.bubbleEvents===!0&&n&&Se(M({},e,{type:e.type.slice(1)}));break;case"_click":s=null,Q.bubbleEvents===!0&&n&&Se(M({},e,{type:e.type.slice(1)}));break;case"_mousemove":Q.bubbleEvents===!0&&n&&Se(M({},e,{type:e.type.slice(1)}))}return/^_(?:click|mouse(?:over|out|down|up|move))$/.test(e.type)?!0:void 0},Ee=function(e){if(e.errors&&e.errors.length>0){var t=k(e);M(t,{type:"error",name:"clipboard-error"}),delete t.success,c(function(){Xe.emit(t)},0)}},Se=function(e){if(e&&"string"==typeof e.type&&e){var t,n=e.target||null,o=n&&n.ownerDocument||l,r={view:o.defaultView||a,canBubble:!0,cancelable:!0,detail:"click"===e.type?1:0,button:"number"==typeof e.which?e.which-1:"number"==typeof e.button?e.button:o.createEvent?0:1},i=M(r,e);n&&o.createEvent&&n.dispatchEvent&&(i=[i.type,i.canBubble,i.cancelable,i.view,i.detail,i.screenX,i.screenY,i.clientX,i.clientY,i.ctrlKey,i.altKey,i.shiftKey,i.metaKey,i.button,i.relatedTarget],t=o.createEvent("MouseEvents"),t.initMouseEvent&&(t.initMouseEvent.apply(t,i),t._source="js",n.dispatchEvent(t)))}},Te=function(){var e=Q.flashLoadTimeout;if("number"==typeof e&&e>=0){var t=Math.min(1e3,e/10),n=Q.swfObjectId+"_fallbackContent";$=h(function(){var e=l.getElementById(n);Ve(e)&&(ze(),F.deactivated=null,Xe.emit({type:"error",name:"swf-not-found"}))},t)}},Oe=function(){var e=l.createElement("div");return e.id=Q.containerId,e.className=Q.containerClass,e.style.position="absolute",e.style.left="0px",e.style.top="-9999px",e.style.width="1px",e.style.height="1px",e.style.zIndex=""+Ge(Q.zIndex),e},Me=function(e){for(var t=e&&e.parentNode;t&&"OBJECT"===t.nodeName&&t.parentNode;)t=t.parentNode;return t||null},ke=function(){var e,t=F.bridge,n=Me(t);if(!t){var o=Le(a.location.host,Q),r="never"===o?"none":"all",i=Pe(M({jsVersion:Xe.version},Q)),s=Q.swfPath+Ae(Q.swfPath,Q);n=Oe();var u=l.createElement("div");n.appendChild(u),l.body.appendChild(n);var c=l.createElement("div"),d="activex"===F.pluginType;c.innerHTML='"+(d?'':"")+'
 
',t=c.firstChild,c=null,T(t).ZeroClipboard=Xe,n.replaceChild(t,u),Te()}return t||(t=l[Q.swfObjectId],t&&(e=t.length)&&(t=t[e-1]),!t&&n&&(t=n.firstChild)),F.bridge=t||null,t},He=function(){var e=F.bridge;if(e){var t=Me(e);t&&("activex"===F.pluginType&&"readyState"in e?(e.style.display="none",function n(){if(4===e.readyState){for(var o in e)"function"==typeof e[o]&&(e[o]=null);e.parentNode&&e.parentNode.removeChild(e),t.parentNode&&t.parentNode.removeChild(t)}else c(n,10)}()):(e.parentNode&&e.parentNode.removeChild(e),t.parentNode&&t.parentNode.removeChild(t))),ze(),F.ready=null,F.bridge=null,F.deactivated=null,r=o}},De=function(e){var t={},n={};if("object"==typeof e&&e){for(var o in e)if(o&&E.call(e,o)&&"string"==typeof e[o]&&e[o])switch(o.toLowerCase()){case"text/plain":case"text":case"air:text":case"flash:text":t.text=e[o],n.text=o;break;case"text/html":case"html":case"air:html":case"flash:html":t.html=e[o],n.html=o;break;case"application/rtf":case"text/rtf":case"rtf":case"richtext":case"air:rtf":case"flash:rtf":t.rtf=e[o],n.rtf=o}return{data:t,formatMap:n}}},xe=function(e,t){if("object"!=typeof e||!e||"object"!=typeof t||!t)return e;var n={};for(var o in e)if(E.call(e,o))if("errors"===o){n[o]=e[o]?e[o].slice():[];for(var r=0,i=n[o].length;i>r;r++)n[o][r].format=t[n[o][r].format]}else if("success"!==o&&"data"!==o)n[o]=e[o];else{n[o]={};var s=e[o];for(var a in s)a&&E.call(s,a)&&E.call(t,a)&&(n[o][t[a]]=s[a])}return n},Ae=function(e,t){var n=null==t||t&&t.cacheBust===!0;return n?(-1===e.indexOf("?")?"?":"&")+"noCache="+C():""},Pe=function(e){var t,n,o,r,i="",s=[];if(e.trustedDomains&&("string"==typeof e.trustedDomains?r=[e.trustedDomains]:"object"==typeof e.trustedDomains&&"length"in e.trustedDomains&&(r=e.trustedDomains)),r&&r.length)for(t=0,n=r.length;n>t;t++)if(E.call(r,t)&&r[t]&&"string"==typeof r[t]){if(o=Ne(r[t]),!o)continue;if("*"===o){s.length=0,s.push(o);break}s.push.apply(s,[o,"//"+o,a.location.protocol+"//"+o])}return s.length&&(i+="trustedOrigins="+g(s.join(","))),e.forceEnhancedClipboard===!0&&(i+=(i?"&":"")+"forceEnhancedClipboard=true"),"string"==typeof e.swfObjectId&&e.swfObjectId&&(i+=(i?"&":"")+"swfObjectId="+g(e.swfObjectId)),"string"==typeof e.jsVersion&&e.jsVersion&&(i+=(i?"&":"")+"jsVersion="+g(e.jsVersion)),i},Ne=function(e){if(null==e||""===e)return null;if(e=e.replace(/^\s+|\s+$/g,""),""===e)return null;var t=e.indexOf("//");e=-1===t?e:e.slice(t+2);var n=e.indexOf("/");return e=-1===n?e:-1===t||0===n?null:e.slice(0,n),e&&".swf"===e.slice(-4).toLowerCase()?null:e||null},Le=function(){var e=function(e){var t,n,o,r=[];if("string"==typeof e&&(e=[e]),"object"!=typeof e||!e||"number"!=typeof e.length)return r;for(t=0,n=e.length;n>t;t++)if(E.call(e,t)&&(o=Ne(e[t]))){if("*"===o){r.length=0,r.push("*");break}-1===r.indexOf(o)&&r.push(o)}return r};return function(t,n){var o=Ne(n.swfPath);null===o&&(o=t);var r=e(n.trustedDomains),i=r.length;if(i>0){if(1===i&&"*"===r[0])return"always";if(-1!==r.indexOf(t))return 1===i&&t===o?"sameDomain":"always"}return"never"}}(),We=function(){try{return l.activeElement}catch(e){return null}},Ie=function(e,t){var n,o,r,i=[];if("string"==typeof t&&t&&(i=t.split(/\s+/)),e&&1===e.nodeType&&i.length>0)if(e.classList)for(n=0,o=i.length;o>n;n++)e.classList.add(i[n]);else if(e.hasOwnProperty("className")){for(r=" "+e.className+" ",n=0,o=i.length;o>n;n++)-1===r.indexOf(" "+i[n]+" ")&&(r+=i[n]+" ");e.className=r.replace(/^\s+|\s+$/g,"")}return e},je=function(e,t){var n,o,r,i=[];if("string"==typeof t&&t&&(i=t.split(/\s+/)),e&&1===e.nodeType&&i.length>0)if(e.classList&&e.classList.length>0)for(n=0,o=i.length;o>n;n++)e.classList.remove(i[n]);else if(e.className){for(r=(" "+e.className+" ").replace(/[\r\n\t]/g," "),n=0,o=i.length;o>n;n++)r=r.replace(" "+i[n]+" "," ");e.className=r.replace(/^\s+|\s+$/g,"")}return e},Be=function(e,t){var n=p(e,null).getPropertyValue(t);return"cursor"!==t||n&&"auto"!==n||"A"!==e.nodeName?n:"pointer"},Fe=function(e){var t={left:0,top:0,width:0,height:0};if(e.getBoundingClientRect){var n=e.getBoundingClientRect(),o=a.pageXOffset,r=a.pageYOffset,i=l.documentElement.clientLeft||0,s=l.documentElement.clientTop||0,u=0,c=0;if("relative"===Be(l.body,"position")){var d=l.body.getBoundingClientRect(),h=l.documentElement.getBoundingClientRect();u=d.left-h.left||0,c=d.top-h.top||0}t.left=n.left+o-i-u,t.top=n.top+r-s-c,t.width="width"in n?n.width:n.right-n.left,t.height="height"in n?n.height:n.bottom-n.top}return t},Ve=function(e){if(!e)return!1;var t=p(e,null),n=y(t.height)>0,o=y(t.width)>0,r=y(t.top)>=0,i=y(t.left)>=0,s=n&&o&&r&&i,a=s?null:Fe(e),l="none"!==t.display&&"collapse"!==t.visibility&&(s||!!a&&(n||a.height>0)&&(o||a.width>0)&&(r||a.top>=0)&&(i||a.left>=0));return l},ze=function(){d(G),G=0,f($),$=0},Ye=function(){var e;if(i&&(e=Me(F.bridge))){var t=Fe(i);M(e.style,{width:t.width+"px",height:t.height+"px",top:t.top+"px",left:t.left+"px",zIndex:""+Ge(Q.zIndex)})}},Ue=function(e){F.ready===!0&&(F.bridge&&"function"==typeof F.bridge.setHandCursor?F.bridge.setHandCursor(e):F.ready=!1)},Ge=function(e){if(/^(?:auto|inherit)$/.test(e))return e;var t;return"number"!=typeof e||b(e)?"string"==typeof e&&(t=Ge(w(e,10))):t=e,"number"==typeof t?t:"auto"},$e=function(e){var n,o,r,i=F.sandboxed,s=null;if(e=e===!0,B===!1)s=!1;else{try{o=t.frameElement||null}catch(a){r={name:a.name,message:a.message}}if(o&&1===o.nodeType&&"IFRAME"===o.nodeName)try{s=o.hasAttribute("sandbox")}catch(a){s=null}else{try{n=document.domain||null}catch(a){n=null}(null===n||r&&"SecurityError"===r.name&&/(^|[\s\(\[@])sandbox(es|ed|ing|[\s\.,!\)\]@]|$)/.test(r.message.toLowerCase()))&&(s=!0)}}return F.sandboxed=s,i===s||e||Ke(m),s},Ke=function(e){function t(e){var t=e.match(/[\d]+/g);return t.length=3,t.join(".")}function n(e){return!!e&&(e=e.toLowerCase())&&(/^(pepflashplayer\.dll|libpepflashplayer\.so|pepperflashplayer\.plugin)$/.test(e)||"chrome.plugin"===e.slice(-13))}function o(e){e&&(a=!0,e.version&&(d=t(e.version)),!d&&e.description&&(d=t(e.description)),e.filename&&(c=n(e.filename)))}var r,i,s,a=!1,l=!1,c=!1,d="";if(u.plugins&&u.plugins.length)r=u.plugins["Shockwave Flash"],o(r),u.plugins["Shockwave Flash 2.0"]&&(a=!0,d="2.0.0.11");else if(u.mimeTypes&&u.mimeTypes.length)s=u.mimeTypes["application/x-shockwave-flash"],r=s&&s.enabledPlugin,o(r);else if("undefined"!=typeof e){l=!0;try{i=new e("ShockwaveFlash.ShockwaveFlash.7"),a=!0,d=t(i.GetVariable("$version"))}catch(h){try{i=new e("ShockwaveFlash.ShockwaveFlash.6"),a=!0,d="6.0.21"}catch(f){try{i=new e("ShockwaveFlash.ShockwaveFlash"),a=!0,d=t(i.GetVariable("$version"))}catch(p){l=!1}}}}F.disabled=a!==!0,F.outdated=d&&y(d)n;n++)e=s[n].replace(/^on/,""),a[e]=!0,u[e]||(u[e]=[]),u[e].push(t);if(a.ready&&F.ready&&this.emit({type:"ready",client:this}),a.error){for(n=0,i=q.length;i>n;n++)if(F[q[n].replace(/^flash-/,"")]){this.emit({type:"error",name:q[n],client:this});break}r!==o&&Xe.version!==r&&this.emit({type:"error",name:"version-mismatch",jsVersion:Xe.version,swfVersion:r})}}return this},ot=function(e,t){var n,o,r,i,s,a=Ze[this.id],l=a&&a.handlers;if(!l)return this;if(0===arguments.length)i=R(l);else if("string"==typeof e&&e)i=e.split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)E.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&this.off(n,e[n]);if(i&&i.length)for(n=0,o=i.length;o>n;n++)if(e=i[n].toLowerCase().replace(/^on/,""),s=l[e],s&&s.length)if(t)for(r=s.indexOf(t);-1!==r;)s.splice(r,1),r=s.indexOf(t,r);else s.length=0;return this},rt=function(e){var t=null,n=Ze[this.id]&&Ze[this.id].handlers;return n&&(t="string"==typeof e&&e?n[e]?n[e].slice(0):[]:k(n)),t},it=function(e){if(ct.call(this,e)){"object"==typeof e&&e&&"string"==typeof e.type&&e.type&&(e=M({},e));var t=M({},me(e),{client:this});dt.call(this,t)}return this},st=function(e){if(!Ze[this.id])throw new Error("Attempted to clip element(s) to a destroyed ZeroClipboard client instance");e=ht(e);for(var t=0;t0,r=!e.target||o&&-1!==n.indexOf(e.target),i=e.relatedTarget&&o&&-1!==n.indexOf(e.relatedTarget),s=e.client&&e.client===this;return t&&(r||i||s)?!0:!1},dt=function(e){var t=Ze[this.id];if("object"==typeof e&&e&&e.type&&t){var n=ye(e),o=t&&t.handlers["*"]||[],r=t&&t.handlers[e.type]||[],i=o.concat(r);if(i&&i.length){var s,l,u,c,d,h=this;for(s=0,l=i.length;l>s;s++)u=i[s],c=h,"string"==typeof u&&"function"==typeof a[u]&&(u=a[u]),"object"==typeof u&&u&&"function"==typeof u.handleEvent&&(c=u,u=u.handleEvent),"function"==typeof u&&(d=M({},e),be(u,c,[d],n))}}},ht=function(e){return"string"==typeof e&&(e=[]),"number"!=typeof e.length?[e]:e},ft=function(e){if(e&&1===e.nodeType){var t=function(e){(e||(e=a.event))&&("js"!==e._source&&(e.stopImmediatePropagation(),e.preventDefault()),delete e._source)},n=function(n){(n||(n=a.event))&&(t(n),Xe.focus(e))};e.addEventListener("mouseover",n,!1),e.addEventListener("mouseout",t,!1),e.addEventListener("mouseenter",t,!1),e.addEventListener("mouseleave",t,!1),e.addEventListener("mousemove",t,!1),et[e.zcClippingId]={mouseover:n,mouseout:t,mouseenter:t,mouseleave:t,mousemove:t}}},pt=function(e){if(e&&1===e.nodeType){var t=et[e.zcClippingId];if("object"==typeof t&&t){for(var n,o,r=["move","leave","enter","out","over"],i=0,s=r.length;s>i;i++)n="mouse"+r[i],o=t[n],"function"==typeof o&&e.removeEventListener(n,o,!1);delete et[e.zcClippingId]}}};Xe._createClient=function(){tt.apply(this,O(arguments))},Xe.prototype.on=function(){return nt.apply(this,O(arguments))},Xe.prototype.off=function(){return ot.apply(this,O(arguments))},Xe.prototype.handlers=function(){return rt.apply(this,O(arguments))},Xe.prototype.emit=function(){return it.apply(this,O(arguments))},Xe.prototype.clip=function(){return st.apply(this,O(arguments))},Xe.prototype.unclip=function(){return at.apply(this,O(arguments))},Xe.prototype.elements=function(){return lt.apply(this,O(arguments))},Xe.prototype.destroy=function(){return ut.apply(this,O(arguments))},Xe.prototype.setText=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("text/plain",e),this},Xe.prototype.setHtml=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("text/html",e),this},Xe.prototype.setRichText=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("application/rtf",e),this},Xe.prototype.setData=function(){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData.apply(this,O(arguments)),this},Xe.prototype.clearData=function(){if(!Ze[this.id])throw new Error("Attempted to clear pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.clearData.apply(this,O(arguments)),this},Xe.prototype.getData=function(){if(!Ze[this.id])throw new Error("Attempted to get pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.getData.apply(this,O(arguments))},"function"==typeof e&&e.amd?e(function(){return Xe}):"object"==typeof n&&n&&"object"==typeof n.exports&&n.exports?n.exports=Xe:t.ZeroClipboard=Xe}(function(){return this||window}())},{}]},{},[23,57,59,58,60,81,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,82,83,84,85,98,99,100,88,89,90,91,92,93,30,34,31,32,39,33,35,36,37,38])("zeroclipboard")}); \ No newline at end of file +!function(t,o){"use strict";var r,i,s,a=t,l=a.document,u=a.navigator,c=a.setTimeout,d=a.clearTimeout,h=a.setInterval,f=a.clearInterval,p=a.getComputedStyle,g=a.encodeURIComponent,m=a.ActiveXObject,v=a.Error,w=a.Number.parseInt||a.parseInt,y=a.Number.parseFloat||a.parseFloat,b=a.Number.isNaN||a.isNaN,C=a.Date.now,R=a.Object.keys,_=a.Object.defineProperty,S=a.Object.prototype.hasOwnProperty,E=a.Array.prototype.slice,T=function(){var e=function(e){return e};if("function"==typeof a.wrap&&"function"==typeof a.unwrap)try{var t=l.createElement("div"),n=a.unwrap(t);1===t.nodeType&&n&&1===n.nodeType&&(e=a.unwrap)}catch(o){}return e}(),O=function(e){return E.call(e,0)},M=function(){var e,t,n,r,i,s,a=O(arguments),l=a[0]||{};for(e=1,t=a.length;t>e;e++)if(null!=(n=a[e]))for(r in n)S.call(n,r)&&(i=l[r],s=n[r],l!==s&&s!==o&&(l[r]=s));return l},k=function(e){var t,n,o,r;if("object"!=typeof e||null==e||"number"==typeof e.nodeType)t=e;else if("number"==typeof e.length)for(t=[],n=0,o=e.length;o>n;n++)S.call(e,n)&&(t[n]=k(e[n]));else{t={};for(r in e)S.call(e,r)&&(t[r]=k(e[r]))}return t},H=function(e,t){for(var n={},o=0,r=t.length;r>o;o++)t[o]in e&&(n[t[o]]=e[t[o]]);return n},D=function(e,t){var n={};for(var o in e)-1===t.indexOf(o)&&(n[o]=e[o]);return n},x=function(e){if(e)for(var t in e)S.call(e,t)&&delete e[t];return e},A=function(e,t){if(e&&1===e.nodeType&&e.ownerDocument&&t&&(1===t.nodeType&&t.ownerDocument&&t.ownerDocument===e.ownerDocument||9===t.nodeType&&!t.ownerDocument&&t===e.ownerDocument))do{if(e===t)return!0;e=e.parentNode}while(e);return!1},P=function(e){var t;return"string"==typeof e&&e&&(t=e.split("#")[0].split("?")[0],t=e.slice(0,e.lastIndexOf("/")+1)),t},N=function(e){var t,n;return"string"==typeof e&&e&&(n=e.match(/^(?:|[^:@]*@|.+\)@(?=http[s]?|file)|.+?\s+(?: at |@)(?:[^:\(]+ )*[\(]?)((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),n&&n[1]?t=n[1]:(n=e.match(/\)@((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/),n&&n[1]&&(t=n[1]))),t},L=function(){var e,t;try{throw new v}catch(n){t=n}return t&&(e=t.sourceURL||t.fileName||N(t.stack)),e},W=function(){var e,t,n;if(l.currentScript&&(e=l.currentScript.src))return e;if(t=l.getElementsByTagName("script"),1===t.length)return t[0].src||o;if("readyState"in t[0])for(n=t.length;n--;)if("interactive"===t[n].readyState&&(e=t[n].src))return e;return"loading"===l.readyState&&(e=t[t.length-1].src)?e:(e=L())?e:o},I=function(){var e,t,n,r=l.getElementsByTagName("script");for(e=r.length;e--;){if(!(n=r[e].src)){t=null;break}if(n=P(n),null==t)t=n;else if(t!==n){t=null;break}}return t||o},j=function(){var e=P(W())||I()||"";return e+"ZeroClipboard.swf"},B=function(){return null==t.opener&&(!!t.top&&t!=t.top||!!t.parent&&t!=t.parent)}(),F={bridge:null,version:"0.0.0",pluginType:"unknown",disabled:null,outdated:null,sandboxed:null,unavailable:null,degraded:null,deactivated:null,overdue:null,ready:null},V="11.0.0",z={},Y={},U=null,G=0,$=0,K={ready:"Flash communication is established",error:{"flash-disabled":"Flash is disabled or not installed. May also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-outdated":"Flash is too outdated to support ZeroClipboard","flash-sandboxed":"Attempting to run Flash in a sandboxed iframe, which is impossible","flash-unavailable":"Flash is unable to communicate bidirectionally with JavaScript","flash-degraded":"Flash is unable to preserve data fidelity when communicating with JavaScript","flash-deactivated":"Flash is too outdated for your browser and/or is configured as click-to-activate.\nThis may also mean that the ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity.\nMay also be attempting to run Flash in a sandboxed iframe, which is impossible.","flash-overdue":"Flash communication was established but NOT within the acceptable time limit","version-mismatch":"ZeroClipboard JS version number does not match ZeroClipboard SWF version number","clipboard-error":"At least one error was thrown while ZeroClipboard was attempting to inject your data into the clipboard","config-mismatch":"ZeroClipboard configuration does not match Flash's reality","swf-not-found":"The ZeroClipboard SWF object could not be loaded, so please check your `swfPath` configuration and/or network connectivity"}},X=["flash-unavailable","flash-degraded","flash-overdue","version-mismatch","config-mismatch","clipboard-error"],q=["flash-disabled","flash-outdated","flash-sandboxed","flash-unavailable","flash-degraded","flash-deactivated","flash-overdue"],Z=new RegExp("^flash-("+q.map(function(e){return e.replace(/^flash-/,"")}).join("|")+")$"),J=new RegExp("^flash-("+q.slice(1).map(function(e){return e.replace(/^flash-/,"")}).join("|")+")$"),Q={swfPath:j(),trustedDomains:t.location.host?[t.location.host]:[],cacheBust:!0,forceEnhancedClipboard:!1,flashLoadTimeout:3e4,autoActivate:!0,bubbleEvents:!0,containerId:"global-zeroclipboard-html-bridge",containerClass:"global-zeroclipboard-container",swfObjectId:"global-zeroclipboard-flash-bridge",hoverClass:"zeroclipboard-is-hover",activeClass:"zeroclipboard-is-active",forceHandCursor:!1,title:null,zIndex:999999999},ee=function(e){if("object"==typeof e&&null!==e)for(var t in e)if(S.call(e,t))if(/^(?:forceHandCursor|title|zIndex|bubbleEvents)$/.test(t))Q[t]=e[t];else if(null==F.bridge)if("containerId"===t||"swfObjectId"===t){if(!ge(e[t]))throw new Error("The specified `"+t+"` value is not valid as an HTML4 Element ID");Q[t]=e[t]}else Q[t]=e[t];{if("string"!=typeof e||!e)return k(Q);if(S.call(Q,e))return Q[e]}},te=function(){return $e(),{browser:H(u,["userAgent","platform","appName"]),flash:D(F,["bridge"]),zeroclipboard:{version:Xe.version,config:Xe.config()}}},ne=function(){return!!(F.disabled||F.outdated||F.sandboxed||F.unavailable||F.degraded||F.deactivated)},oe=function(e,t){var n,i,s,a={};if("string"==typeof e&&e)s=e.toLowerCase().split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)S.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&Xe.on(n,e[n]);if(s&&s.length){for(n=0,i=s.length;i>n;n++)e=s[n].replace(/^on/,""),a[e]=!0,z[e]||(z[e]=[]),z[e].push(t);if(a.ready&&F.ready&&Xe.emit({type:"ready"}),a.error){for(n=0,i=q.length;i>n;n++)if(F[q[n].replace(/^flash-/,"")]===!0){Xe.emit({type:"error",name:q[n]});break}r!==o&&Xe.version!==r&&Xe.emit({type:"error",name:"version-mismatch",jsVersion:Xe.version,swfVersion:r})}}return Xe},re=function(e,t){var n,o,r,i,s;if(0===arguments.length)i=R(z);else if("string"==typeof e&&e)i=e.split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)S.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&Xe.off(n,e[n]);if(i&&i.length)for(n=0,o=i.length;o>n;n++)if(e=i[n].toLowerCase().replace(/^on/,""),s=z[e],s&&s.length)if(t)for(r=s.indexOf(t);-1!==r;)s.splice(r,1),r=s.indexOf(t,r);else s.length=0;return Xe},ie=function(e){var t;return t="string"==typeof e&&e?k(z[e])||null:k(z)},se=function(e){var t,n,o;return e=me(e),e&&!_e(e)?"ready"===e.type&&F.overdue===!0?Xe.emit({type:"error",name:"flash-overdue"}):(t=M({},e),Ce.call(this,t),"copy"===e.type&&(o=De(Y),n=o.data,U=o.formatMap),n):void 0},ae=function(){var e=F.sandboxed;if($e(),"boolean"!=typeof F.ready&&(F.ready=!1),F.sandboxed!==e&&F.sandboxed===!0)F.ready=!1,Xe.emit({type:"error",name:"flash-sandboxed"});else if(!Xe.isFlashUnusable()&&null===F.bridge){var t=Q.flashLoadTimeout;"number"==typeof t&&t>=0&&(G=c(function(){"boolean"!=typeof F.deactivated&&(F.deactivated=!0),F.deactivated===!0&&Xe.emit({type:"error",name:"flash-deactivated"})},t)),F.overdue=!1,ke()}},le=function(){Xe.clearData(),Xe.blur(),Xe.emit("destroy"),He(),Xe.off()},ue=function(e,t){var n;if("object"==typeof e&&e&&"undefined"==typeof t)n=e,Xe.clearData();else{if("string"!=typeof e||!e)return;n={},n[e]=t}for(var o in n)"string"==typeof o&&o&&S.call(n,o)&&"string"==typeof n[o]&&n[o]&&(Y[o]=n[o])},ce=function(e){"undefined"==typeof e?(x(Y),U=null):"string"==typeof e&&S.call(Y,e)&&delete Y[e]},de=function(e){return"undefined"==typeof e?k(Y):"string"==typeof e&&S.call(Y,e)?Y[e]:void 0},he=function(e){if(e&&1===e.nodeType){i&&(je(i,Q.activeClass),i!==e&&je(i,Q.hoverClass)),i=e,Ie(e,Q.hoverClass);var t=e.getAttribute("title")||Q.title;if("string"==typeof t&&t){var n=Me(F.bridge);n&&n.setAttribute("title",t)}var o=Q.forceHandCursor===!0||"pointer"===Be(e,"cursor");Ue(o),Ye()}},fe=function(){var e=Me(F.bridge);e&&(e.removeAttribute("title"),e.style.left="0px",e.style.top="-9999px",e.style.width="1px",e.style.height="1px"),i&&(je(i,Q.hoverClass),je(i,Q.activeClass),i=null)},pe=function(){return i||null},ge=function(e){return"string"==typeof e&&e&&/^[A-Za-z][A-Za-z0-9_:\-\.]*$/.test(e)},me=function(e){var t;if("string"==typeof e&&e?(t=e,e={}):"object"==typeof e&&e&&"string"==typeof e.type&&e.type&&(t=e.type),t){t=t.toLowerCase(),!e.target&&(/^(copy|aftercopy|_click)$/.test(t)||"error"===t&&"clipboard-error"===e.name)&&(e.target=s),M(e,{type:t,target:e.target||i||null,relatedTarget:e.relatedTarget||null,currentTarget:F&&F.bridge||null,timeStamp:e.timeStamp||C()||null});var n=K[e.type];return"error"===e.type&&e.name&&n&&(n=n[e.name]),n&&(e.message=n),"ready"===e.type&&M(e,{target:null,version:F.version}),"error"===e.type&&(Z.test(e.name)&&M(e,{target:null,minimumVersion:V}),J.test(e.name)&&M(e,{version:F.version})),"copy"===e.type&&(e.clipboardData={setData:Xe.setData,clearData:Xe.clearData}),"aftercopy"===e.type&&(e=xe(e,U)),e.target&&!e.relatedTarget&&(e.relatedTarget=ve(e.target)),we(e)}},ve=function(e){var t=e&&e.getAttribute&&e.getAttribute("data-clipboard-target");return t?l.getElementById(t):null},we=function(e){if(e&&/^_(?:click|mouse(?:over|out|down|up|move))$/.test(e.type)){var t=e.target,n="_mouseover"===e.type&&e.relatedTarget?e.relatedTarget:o,r="_mouseout"===e.type&&e.relatedTarget?e.relatedTarget:o,i=Fe(t),s=a.screenLeft||a.screenX||0,u=a.screenTop||a.screenY||0,c=l.body.scrollLeft+l.documentElement.scrollLeft,d=l.body.scrollTop+l.documentElement.scrollTop,h=i.left+("number"==typeof e._stageX?e._stageX:0),f=i.top+("number"==typeof e._stageY?e._stageY:0),p=h-c,g=f-d,m=s+p,v=u+g,w="number"==typeof e.movementX?e.movementX:0,y="number"==typeof e.movementY?e.movementY:0;delete e._stageX,delete e._stageY,M(e,{srcElement:t,fromElement:n,toElement:r,screenX:m,screenY:v,pageX:h,pageY:f,clientX:p,clientY:g,x:p,y:g,movementX:w,movementY:y,offsetX:0,offsetY:0,layerX:0,layerY:0})}return e},ye=function(e){var t=e&&"string"==typeof e.type&&e.type||"";return!/^(?:(?:before)?copy|destroy)$/.test(t)},be=function(e,t,n,o){o?c(function(){e.apply(t,n)},0):e.apply(t,n)},Ce=function(e){if("object"==typeof e&&e&&e.type){var t=ye(e),n=z["*"]||[],o=z[e.type]||[],r=n.concat(o);if(r&&r.length){var i,s,l,u,c,d=this;for(i=0,s=r.length;s>i;i++)l=r[i],u=d,"string"==typeof l&&"function"==typeof a[l]&&(l=a[l]),"object"==typeof l&&l&&"function"==typeof l.handleEvent&&(u=l,l=l.handleEvent),"function"==typeof l&&(c=M({},e),be(l,u,[c],t))}return this}},Re=function(e){var t=null;return(B===!1||e&&"error"===e.type&&e.name&&-1!==X.indexOf(e.name))&&(t=!1),t},_e=function(e){var t=e.target||i||null,n="swf"===e._source;switch(delete e._source,e.type){case"error":var o="flash-sandboxed"===e.name||Re(e);"boolean"==typeof o&&(F.sandboxed=o),-1!==q.indexOf(e.name)?M(F,{disabled:"flash-disabled"===e.name,outdated:"flash-outdated"===e.name,unavailable:"flash-unavailable"===e.name,degraded:"flash-degraded"===e.name,deactivated:"flash-deactivated"===e.name,overdue:"flash-overdue"===e.name,ready:!1}):"version-mismatch"===e.name&&(r=e.swfVersion,M(F,{disabled:!1,outdated:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:!1,ready:!1})),ze();break;case"ready":r=e.swfVersion;var a=F.deactivated===!0;M(F,{disabled:!1,outdated:!1,sandboxed:!1,unavailable:!1,degraded:!1,deactivated:!1,overdue:a,ready:!a}),ze();break;case"beforecopy":s=t;break;case"copy":var l,u,c=e.relatedTarget;!Y["text/html"]&&!Y["text/plain"]&&c&&(u=c.value||c.outerHTML||c.innerHTML)&&(l=c.value||c.textContent||c.innerText)?(e.clipboardData.clearData(),e.clipboardData.setData("text/plain",l),u!==l&&e.clipboardData.setData("text/html",u)):!Y["text/plain"]&&e.target&&(l=e.target.getAttribute("data-clipboard-text"))&&(e.clipboardData.clearData(),e.clipboardData.setData("text/plain",l));break;case"aftercopy":Se(e),Xe.clearData(),t&&t!==We()&&t.focus&&t.focus();break;case"_mouseover":Xe.focus(t),Q.bubbleEvents===!0&&n&&(t&&t!==e.relatedTarget&&!A(e.relatedTarget,t)&&Ee(M({},e,{type:"mouseenter",bubbles:!1,cancelable:!1})),Ee(M({},e,{type:"mouseover"})));break;case"_mouseout":Xe.blur(),Q.bubbleEvents===!0&&n&&(t&&t!==e.relatedTarget&&!A(e.relatedTarget,t)&&Ee(M({},e,{type:"mouseleave",bubbles:!1,cancelable:!1})),Ee(M({},e,{type:"mouseout"})));break;case"_mousedown":Ie(t,Q.activeClass),Q.bubbleEvents===!0&&n&&Ee(M({},e,{type:e.type.slice(1)}));break;case"_mouseup":je(t,Q.activeClass),Q.bubbleEvents===!0&&n&&Ee(M({},e,{type:e.type.slice(1)}));break;case"_click":s=null,Q.bubbleEvents===!0&&n&&Ee(M({},e,{type:e.type.slice(1)}));break;case"_mousemove":Q.bubbleEvents===!0&&n&&Ee(M({},e,{type:e.type.slice(1)}))}return/^_(?:click|mouse(?:over|out|down|up|move))$/.test(e.type)?!0:void 0},Se=function(e){if(e.errors&&e.errors.length>0){var t=k(e);M(t,{type:"error",name:"clipboard-error"}),delete t.success,c(function(){Xe.emit(t)},0)}},Ee=function(e){if(e&&"string"==typeof e.type&&e){var t,n=e.target||null,o=n&&n.ownerDocument||l,r={view:o.defaultView||a,canBubble:!0,cancelable:!0,detail:"click"===e.type?1:0,button:"number"==typeof e.which?e.which-1:"number"==typeof e.button?e.button:o.createEvent?0:1},i=M(r,e);n&&o.createEvent&&n.dispatchEvent&&(i=[i.type,i.canBubble,i.cancelable,i.view,i.detail,i.screenX,i.screenY,i.clientX,i.clientY,i.ctrlKey,i.altKey,i.shiftKey,i.metaKey,i.button,i.relatedTarget],t=o.createEvent("MouseEvents"),t.initMouseEvent&&(t.initMouseEvent.apply(t,i),t._source="js",n.dispatchEvent(t)))}},Te=function(){var e=Q.flashLoadTimeout;if("number"==typeof e&&e>=0){var t=Math.min(1e3,e/10),n=Q.swfObjectId+"_fallbackContent";$=h(function(){var e=l.getElementById(n);Ve(e)&&(ze(),F.deactivated=null,Xe.emit({type:"error",name:"swf-not-found"}))},t)}},Oe=function(){var e=l.createElement("div");return e.id=Q.containerId,e.className=Q.containerClass,e.style.position="absolute",e.style.left="0px",e.style.top="-9999px",e.style.width="1px",e.style.height="1px",e.style.zIndex=""+Ge(Q.zIndex),e},Me=function(e){for(var t=e&&e.parentNode;t&&"OBJECT"===t.nodeName&&t.parentNode;)t=t.parentNode;return t||null},ke=function(){var e,t=F.bridge,n=Me(t);if(!t){var o=Le(a.location.host,Q),r="never"===o?"none":"all",i=Pe(M({jsVersion:Xe.version},Q)),s=Q.swfPath+Ae(Q.swfPath,Q);n=Oe();var u=l.createElement("div");n.appendChild(u),l.body.appendChild(n);var c=l.createElement("div"),d="activex"===F.pluginType;c.innerHTML='"+(d?'':"")+'
 
',t=c.firstChild,c=null,T(t).ZeroClipboard=Xe,n.replaceChild(t,u),Te()}return t||(t=l[Q.swfObjectId],t&&(e=t.length)&&(t=t[e-1]),!t&&n&&(t=n.firstChild)),F.bridge=t||null,t},He=function(){var e=F.bridge;if(e){var t=Me(e);t&&("activex"===F.pluginType&&"readyState"in e?(e.style.display="none",function n(){if(4===e.readyState){for(var o in e)"function"==typeof e[o]&&(e[o]=null);e.parentNode&&e.parentNode.removeChild(e),t.parentNode&&t.parentNode.removeChild(t)}else c(n,10)}()):(e.parentNode&&e.parentNode.removeChild(e),t.parentNode&&t.parentNode.removeChild(t))),ze(),F.ready=null,F.bridge=null,F.deactivated=null,r=o}},De=function(e){var t={},n={};if("object"==typeof e&&e){for(var o in e)if(o&&S.call(e,o)&&"string"==typeof e[o]&&e[o])switch(o.toLowerCase()){case"text/plain":case"text":case"air:text":case"flash:text":t.text=e[o],n.text=o;break;case"text/html":case"html":case"air:html":case"flash:html":t.html=e[o],n.html=o;break;case"application/rtf":case"text/rtf":case"rtf":case"richtext":case"air:rtf":case"flash:rtf":t.rtf=e[o],n.rtf=o}return{data:t,formatMap:n}}},xe=function(e,t){if("object"!=typeof e||!e||"object"!=typeof t||!t)return e;var n={};for(var o in e)if(S.call(e,o))if("errors"===o){n[o]=e[o]?e[o].slice():[];for(var r=0,i=n[o].length;i>r;r++)n[o][r].format=t[n[o][r].format]}else if("success"!==o&&"data"!==o)n[o]=e[o];else{n[o]={};var s=e[o];for(var a in s)a&&S.call(s,a)&&S.call(t,a)&&(n[o][t[a]]=s[a])}return n},Ae=function(e,t){var n=null==t||t&&t.cacheBust===!0;return n?(-1===e.indexOf("?")?"?":"&")+"noCache="+C():""},Pe=function(e){var t,n,o,r,i="",s=[];if(e.trustedDomains&&("string"==typeof e.trustedDomains?r=[e.trustedDomains]:"object"==typeof e.trustedDomains&&"length"in e.trustedDomains&&(r=e.trustedDomains)),r&&r.length)for(t=0,n=r.length;n>t;t++)if(S.call(r,t)&&r[t]&&"string"==typeof r[t]){if(o=Ne(r[t]),!o)continue;if("*"===o){s.length=0,s.push(o);break}s.push.apply(s,[o,"//"+o,a.location.protocol+"//"+o])}return s.length&&(i+="trustedOrigins="+g(s.join(","))),e.forceEnhancedClipboard===!0&&(i+=(i?"&":"")+"forceEnhancedClipboard=true"),"string"==typeof e.swfObjectId&&e.swfObjectId&&(i+=(i?"&":"")+"swfObjectId="+g(e.swfObjectId)),"string"==typeof e.jsVersion&&e.jsVersion&&(i+=(i?"&":"")+"jsVersion="+g(e.jsVersion)),i},Ne=function(e){if(null==e||""===e)return null;if(e=e.replace(/^\s+|\s+$/g,""),""===e)return null;var t=e.indexOf("//");e=-1===t?e:e.slice(t+2);var n=e.indexOf("/");return e=-1===n?e:-1===t||0===n?null:e.slice(0,n),e&&".swf"===e.slice(-4).toLowerCase()?null:e||null},Le=function(){var e=function(e){var t,n,o,r=[];if("string"==typeof e&&(e=[e]),"object"!=typeof e||!e||"number"!=typeof e.length)return r;for(t=0,n=e.length;n>t;t++)if(S.call(e,t)&&(o=Ne(e[t]))){if("*"===o){r.length=0,r.push("*");break}-1===r.indexOf(o)&&r.push(o)}return r};return function(t,n){var o=Ne(n.swfPath);null===o&&(o=t);var r=e(n.trustedDomains),i=r.length;if(i>0){if(1===i&&"*"===r[0])return"always";if(-1!==r.indexOf(t))return 1===i&&t===o?"sameDomain":"always"}return"never"}}(),We=function(){try{return l.activeElement}catch(e){return null}},Ie=function(e,t){var n,o,r,i=[];if("string"==typeof t&&t&&(i=t.split(/\s+/)),e&&1===e.nodeType&&i.length>0)if(e.classList)for(n=0,o=i.length;o>n;n++)e.classList.add(i[n]);else if(e.hasOwnProperty("className")){for(r=" "+e.className+" ",n=0,o=i.length;o>n;n++)-1===r.indexOf(" "+i[n]+" ")&&(r+=i[n]+" ");e.className=r.replace(/^\s+|\s+$/g,"")}return e},je=function(e,t){var n,o,r,i=[];if("string"==typeof t&&t&&(i=t.split(/\s+/)),e&&1===e.nodeType&&i.length>0)if(e.classList&&e.classList.length>0)for(n=0,o=i.length;o>n;n++)e.classList.remove(i[n]);else if(e.className){for(r=(" "+e.className+" ").replace(/[\r\n\t]/g," "),n=0,o=i.length;o>n;n++)r=r.replace(" "+i[n]+" "," ");e.className=r.replace(/^\s+|\s+$/g,"")}return e},Be=function(e,t){var n=p(e,null).getPropertyValue(t);return"cursor"!==t||n&&"auto"!==n||"A"!==e.nodeName?n:"pointer"},Fe=function(e){var t={left:0,top:0,width:0,height:0};if(e.getBoundingClientRect){var n=e.getBoundingClientRect(),o=a.pageXOffset,r=a.pageYOffset,i=l.documentElement.clientLeft||0,s=l.documentElement.clientTop||0,u=0,c=0;if("relative"===Be(l.body,"position")){var d=l.body.getBoundingClientRect(),h=l.documentElement.getBoundingClientRect();u=d.left-h.left||0,c=d.top-h.top||0}t.left=n.left+o-i-u,t.top=n.top+r-s-c,t.width="width"in n?n.width:n.right-n.left,t.height="height"in n?n.height:n.bottom-n.top}return t},Ve=function(e){if(!e)return!1;var t=p(e,null),n=y(t.height)>0,o=y(t.width)>0,r=y(t.top)>=0,i=y(t.left)>=0,s=n&&o&&r&&i,a=s?null:Fe(e),l="none"!==t.display&&"collapse"!==t.visibility&&(s||!!a&&(n||a.height>0)&&(o||a.width>0)&&(r||a.top>=0)&&(i||a.left>=0));return l},ze=function(){d(G),G=0,f($),$=0},Ye=function(){var e;if(i&&(e=Me(F.bridge))){var t=Fe(i);M(e.style,{width:t.width+"px",height:t.height+"px",top:t.top+"px",left:t.left+"px",zIndex:""+Ge(Q.zIndex)})}},Ue=function(e){F.ready===!0&&(F.bridge&&"function"==typeof F.bridge.setHandCursor?F.bridge.setHandCursor(e):F.ready=!1)},Ge=function(e){if(/^(?:auto|inherit)$/.test(e))return e;var t;return"number"!=typeof e||b(e)?"string"==typeof e&&(t=Ge(w(e,10))):t=e,"number"==typeof t?t:"auto"},$e=function(e){var n,o,r,i=F.sandboxed,s=null;if(e=e===!0,B===!1)s=!1;else{try{o=t.frameElement||null}catch(a){r={name:a.name,message:a.message}}if(o&&1===o.nodeType&&"IFRAME"===o.nodeName)try{s=o.hasAttribute("sandbox")}catch(a){s=null}else{try{n=document.domain||null}catch(a){n=null}(null===n||r&&"SecurityError"===r.name&&/(^|[\s\(\[@])sandbox(es|ed|ing|[\s\.,!\)\]@]|$)/.test(r.message.toLowerCase()))&&(s=!0)}}return F.sandboxed=s,i===s||e||Ke(m),s},Ke=function(e){function t(e){var t=e.match(/[\d]+/g);return t.length=3,t.join(".")}function n(e){return!!e&&(e=e.toLowerCase())&&(/^(pepflashplayer\.dll|libpepflashplayer\.so|pepperflashplayer\.plugin)$/.test(e)||"chrome.plugin"===e.slice(-13))}function o(e){e&&(a=!0,e.version&&(d=t(e.version)),!d&&e.description&&(d=t(e.description)),e.filename&&(c=n(e.filename)))}var r,i,s,a=!1,l=!1,c=!1,d="";if(u.plugins&&u.plugins.length)r=u.plugins["Shockwave Flash"],o(r),u.plugins["Shockwave Flash 2.0"]&&(a=!0,d="2.0.0.11");else if(u.mimeTypes&&u.mimeTypes.length)s=u.mimeTypes["application/x-shockwave-flash"],r=s&&s.enabledPlugin,o(r);else if("undefined"!=typeof e){l=!0;try{i=new e("ShockwaveFlash.ShockwaveFlash.7"),a=!0,d=t(i.GetVariable("$version"))}catch(h){try{i=new e("ShockwaveFlash.ShockwaveFlash.6"),a=!0,d="6.0.21"}catch(f){try{i=new e("ShockwaveFlash.ShockwaveFlash"),a=!0,d=t(i.GetVariable("$version"))}catch(p){l=!1}}}}F.disabled=a!==!0,F.outdated=d&&y(d)n;n++)e=s[n].replace(/^on/,""),a[e]=!0,u[e]||(u[e]=[]),u[e].push(t);if(a.ready&&F.ready&&this.emit({type:"ready",client:this}),a.error){for(n=0,i=q.length;i>n;n++)if(F[q[n].replace(/^flash-/,"")]){this.emit({type:"error",name:q[n],client:this});break}r!==o&&Xe.version!==r&&this.emit({type:"error",name:"version-mismatch",jsVersion:Xe.version,swfVersion:r})}}return this},ot=function(e,t){var n,o,r,i,s,a=Ze[this.id],l=a&&a.handlers;if(!l)return this;if(0===arguments.length)i=R(l);else if("string"==typeof e&&e)i=e.split(/\s+/);else if("object"==typeof e&&e&&"undefined"==typeof t)for(n in e)S.call(e,n)&&"string"==typeof n&&n&&"function"==typeof e[n]&&this.off(n,e[n]);if(i&&i.length)for(n=0,o=i.length;o>n;n++)if(e=i[n].toLowerCase().replace(/^on/,""),s=l[e],s&&s.length)if(t)for(r=s.indexOf(t);-1!==r;)s.splice(r,1),r=s.indexOf(t,r);else s.length=0;return this},rt=function(e){var t=null,n=Ze[this.id]&&Ze[this.id].handlers;return n&&(t="string"==typeof e&&e?n[e]?n[e].slice(0):[]:k(n)),t},it=function(e){if(ct.call(this,e)){"object"==typeof e&&e&&"string"==typeof e.type&&e.type&&(e=M({},e));var t=M({},me(e),{client:this});dt.call(this,t)}return this},st=function(e){if(!Ze[this.id])throw new Error("Attempted to clip element(s) to a destroyed ZeroClipboard client instance");e=ht(e);for(var t=0;t0,r=!e.target||o&&-1!==n.indexOf(e.target),i=e.relatedTarget&&o&&-1!==n.indexOf(e.relatedTarget),s=e.client&&e.client===this;return t&&(r||i||s)?!0:!1},dt=function(e){var t=Ze[this.id];if("object"==typeof e&&e&&e.type&&t){var n=ye(e),o=t&&t.handlers["*"]||[],r=t&&t.handlers[e.type]||[],i=o.concat(r);if(i&&i.length){var s,l,u,c,d,h=this;for(s=0,l=i.length;l>s;s++)u=i[s],c=h,"string"==typeof u&&"function"==typeof a[u]&&(u=a[u]),"object"==typeof u&&u&&"function"==typeof u.handleEvent&&(c=u,u=u.handleEvent),"function"==typeof u&&(d=M({},e),be(u,c,[d],n))}}},ht=function(e){return"string"==typeof e&&(e=[]),"number"!=typeof e.length?[e]:e},ft=function(e){if(e&&1===e.nodeType){var t=function(e){(e||(e=a.event))&&("js"!==e._source&&(e.stopImmediatePropagation(),e.preventDefault()),delete e._source)},n=function(n){(n||(n=a.event))&&(t(n),Xe.focus(e))};e.addEventListener("mouseover",n,!1),e.addEventListener("mouseout",t,!1),e.addEventListener("mouseenter",t,!1),e.addEventListener("mouseleave",t,!1),e.addEventListener("mousemove",t,!1),et[e.zcClippingId]={mouseover:n,mouseout:t,mouseenter:t,mouseleave:t,mousemove:t}}},pt=function(e){if(e&&1===e.nodeType){var t=et[e.zcClippingId];if("object"==typeof t&&t){for(var n,o,r=["move","leave","enter","out","over"],i=0,s=r.length;s>i;i++)n="mouse"+r[i],o=t[n],"function"==typeof o&&e.removeEventListener(n,o,!1);delete et[e.zcClippingId]}}};Xe._createClient=function(){tt.apply(this,O(arguments))},Xe.prototype.on=function(){return nt.apply(this,O(arguments))},Xe.prototype.off=function(){return ot.apply(this,O(arguments))},Xe.prototype.handlers=function(){return rt.apply(this,O(arguments))},Xe.prototype.emit=function(){return it.apply(this,O(arguments))},Xe.prototype.clip=function(){return st.apply(this,O(arguments))},Xe.prototype.unclip=function(){return at.apply(this,O(arguments))},Xe.prototype.elements=function(){return lt.apply(this,O(arguments))},Xe.prototype.destroy=function(){return ut.apply(this,O(arguments))},Xe.prototype.setText=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("text/plain",e),this},Xe.prototype.setHtml=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("text/html",e),this},Xe.prototype.setRichText=function(e){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData("application/rtf",e),this},Xe.prototype.setData=function(){if(!Ze[this.id])throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.setData.apply(this,O(arguments)),this},Xe.prototype.clearData=function(){if(!Ze[this.id])throw new Error("Attempted to clear pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.clearData.apply(this,O(arguments)),this},Xe.prototype.getData=function(){if(!Ze[this.id])throw new Error("Attempted to get pending clipboard data from a destroyed ZeroClipboard client instance");return Xe.getData.apply(this,O(arguments))},"function"==typeof e&&e.amd?e(function(){return Xe}):"object"==typeof n&&n&&"object"==typeof n.exports&&n.exports?n.exports=Xe:t.ZeroClipboard=Xe}(function(){return this||window}())},{}]},{},[23,59,61,60,62,83,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,84,85,86,87,100,101,102,90,91,92,93,94,95,31,35,32,33,40,34,36,37,38,39])("zeroclipboard")}); \ No newline at end of file diff --git a/dist/handsontable.js b/dist/handsontable.js index 5b3974aa7f6..d7db3dfdd78 100644 --- a/dist/handsontable.js +++ b/dist/handsontable.js @@ -1,5 +1,5 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright (c) 2012-2014 Marcin Warpechowski @@ -7,13 +7,13 @@ * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ /*jslint white: true, browser: true, plusplus: true, indent: 4, maxerr: 50 */ window.Handsontable = { - version: '0.19.0', - buildDate: 'Fri Oct 02 2015 12:37:12 GMT+0200 (CEST)', + version: '0.20.0', + buildDate: 'Tue Nov 03 2015 14:30:34 GMT+0100 (CET)', }; (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Handsontable = f()}})(function(){var define,module,exports;return (function init(modules, cache, entry) { (function outer (modules, cache, entry) { @@ -175,11 +175,15 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { this.eventManager.addEventListener(document.body, 'mouseup', (function() { return $__5.onMouseUp(); })); + var $__7 = this, + $__8 = function(c, len) { + $__7.eventManager.addEventListener($__7.main.childNodes[c], 'mouseenter', (function(event) { + return $__5.onMouseEnter(event, $__5.main.childNodes[c]); + })); + }; for (var c = 0, len = this.main.childNodes.length; c < len; c++) { - this.eventManager.addEventListener(this.main.childNodes[c], 'mouseenter', (function(event) { - return $__5.onMouseEnter(event); - })); + $__8(c, len); } }, onMouseDown: function() { @@ -188,15 +192,15 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { onMouseUp: function() { this.mouseDown = false; }, - onMouseEnter: function(event) { + onMouseEnter: function(event, parentElement) { if (!this.mouseDown || !this.wot.getSetting('hideBorderOnMouseDownOver')) { return; } event.preventDefault(); stopImmediatePropagation(event); var _this = this; - var bounds = this.getBoundingClientRect(); - this.style.display = 'none'; + var bounds = parentElement.getBoundingClientRect(); + parentElement.style.display = 'none'; function isOutside(event) { if (event.clientY < Math.floor(bounds.top)) { return true; @@ -214,7 +218,7 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { function handler(event) { if (isOutside(event)) { _this.eventManager.removeEventListener(document.body, 'mousemove', handler); - _this.style.display = 'block'; + parentElement.style.display = 'block'; } } this.eventManager.addEventListener(document.body, 'mousemove', handler); @@ -303,10 +307,10 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { background: '#F5F5FF', border: '1px solid #4285c8' }; - for (var prop$__7 in handleStyle) { - if (handleStyle.hasOwnProperty(prop$__7)) { - this.selectionHandles.styles.bottomRight[prop$__7] = handleStyle[prop$__7]; - this.selectionHandles.styles.topLeft[prop$__7] = handleStyle[prop$__7]; + for (var prop$__9 in handleStyle) { + if (handleStyle.hasOwnProperty(prop$__9)) { + this.selectionHandles.styles.bottomRight[prop$__9] = handleStyle[prop$__9]; + this.selectionHandles.styles.topLeft[prop$__9] = handleStyle[prop$__9]; } } this.main.appendChild(this.selectionHandles.topLeft); @@ -394,25 +398,25 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { break; } } - for (var i$__8 = ilen - 1; i$__8 >= 0; i$__8--) { - var s$__9 = this.wot.wtTable.rowFilter.renderedToSource(i$__8); - if (s$__9 >= corners[0] && s$__9 <= corners[2]) { - toRow = s$__9; + for (var i$__10 = ilen - 1; i$__10 >= 0; i$__10--) { + var s$__11 = this.wot.wtTable.rowFilter.renderedToSource(i$__10); + if (s$__11 >= corners[0] && s$__11 <= corners[2]) { + toRow = s$__11; break; } } ilen = this.wot.wtTable.getRenderedColumnsCount(); - for (var i$__10 = 0; i$__10 < ilen; i$__10++) { - var s$__11 = this.wot.wtTable.columnFilter.renderedToSource(i$__10); - if (s$__11 >= corners[1] && s$__11 <= corners[3]) { - fromColumn = s$__11; + for (var i$__12 = 0; i$__12 < ilen; i$__12++) { + var s$__13 = this.wot.wtTable.columnFilter.renderedToSource(i$__12); + if (s$__13 >= corners[1] && s$__13 <= corners[3]) { + fromColumn = s$__13; break; } } - for (var i$__12 = ilen - 1; i$__12 >= 0; i$__12--) { - var s$__13 = this.wot.wtTable.columnFilter.renderedToSource(i$__12); - if (s$__13 >= corners[1] && s$__13 <= corners[3]) { - toColumn = s$__13; + for (var i$__14 = ilen - 1; i$__14 >= 0; i$__14--) { + var s$__15 = this.wot.wtTable.columnFilter.renderedToSource(i$__14); + if (s$__15 >= corners[1] && s$__15 <= corners[3]) { + toColumn = s$__15; break; } } @@ -508,7 +512,7 @@ var WalkontableBorder = function WalkontableBorder(wotInstance, settings) { window.WalkontableBorder = WalkontableBorder; //# -},{"cell/coords":5,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"overlay/_base.js":11}],3:[function(require,module,exports){ +},{"cell/coords":5,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"overlay/_base.js":11}],3:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableViewportColumnsCalculator: {get: function() { @@ -1236,7 +1240,7 @@ var Walkontable = function Walkontable(settings) { window.Walkontable = Walkontable; //# -},{"event":8,"helpers/dom/element":44,"helpers/object":49,"helpers/string":51,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,"overlays":16,"scroll":17,"settings":19,"table":20,"viewport":22}],8:[function(require,module,exports){ +},{"event":8,"helpers/dom/element":45,"helpers/object":50,"helpers/string":52,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,"overlays":16,"scroll":17,"settings":19,"table":20,"viewport":22}],8:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableEvent: {get: function() { @@ -1398,7 +1402,7 @@ WalkontableEvent.prototype.parentCell = function(elem) { window.WalkontableEvent = WalkontableEvent; //# -},{"eventManager":40,"helpers/dom/element":44}],9:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45}],9:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableColumnFilter: {get: function() { @@ -1594,7 +1598,7 @@ var $WalkontableOverlay = WalkontableOverlay; window.WalkontableOverlay = WalkontableOverlay; //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/object":49}],12:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/object":50}],12:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableDebugOverlay: {get: function() { @@ -1620,7 +1624,7 @@ window.WalkontableDebugOverlay = WalkontableDebugOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_DEBUG, WalkontableDebugOverlay); //# -},{"_base":11,"helpers/dom/element":44}],13:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],13:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableLeftOverlay: {get: function() { @@ -1803,7 +1807,7 @@ window.WalkontableLeftOverlay = WalkontableLeftOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_LEFT, WalkontableLeftOverlay); //# -},{"_base":11,"helpers/dom/element":44}],14:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],14:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTopOverlay: {get: function() { @@ -1874,7 +1878,8 @@ var $WalkontableTopOverlay = WalkontableTopOverlay; var sum = 0; var defaultRowHeight = this.wot.wtSettings.settings.defaultRowHeight; while (from < to) { - sum += this.wot.wtTable.getRowHeight(from) || defaultRowHeight; + var height = this.wot.wtTable.getRowHeight(from); + sum += height === void 0 ? defaultRowHeight : height; from++; } return sum; @@ -1994,7 +1999,7 @@ window.WalkontableTopOverlay = WalkontableTopOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_TOP, WalkontableTopOverlay); //# -},{"_base":11,"helpers/dom/element":44}],15:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],15:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTopLeftCornerOverlay: {get: function() { @@ -2054,7 +2059,7 @@ window.WalkontableTopLeftCornerOverlay = WalkontableTopLeftCornerOverlay; WalkontableOverlay.registerOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER, WalkontableTopLeftCornerOverlay); //# -},{"_base":11,"helpers/dom/element":44}],16:[function(require,module,exports){ +},{"_base":11,"helpers/dom/element":45}],16:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableOverlays: {get: function() { @@ -2411,7 +2416,7 @@ var WalkontableOverlays = function WalkontableOverlays(wotInstance) { window.WalkontableOverlays = WalkontableOverlays; //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/unicode":52}],17:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/unicode":53}],17:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableScroll: {get: function() { @@ -2581,7 +2586,7 @@ var WalkontableSelection = function WalkontableSelection(settings, cellRange) { window.WalkontableSelection = WalkontableSelection; //# -},{"border":2,"cell/coords":5,"cell/range":6,"helpers/dom/element":44}],19:[function(require,module,exports){ +},{"border":2,"cell/coords":5,"cell/range":6,"helpers/dom/element":45}],19:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableSettings: {get: function() { @@ -2691,7 +2696,7 @@ var WalkontableSettings = function WalkontableSettings(wotInstance, settings) { window.WalkontableSettings = WalkontableSettings; //# -},{"helpers/dom/element":44}],20:[function(require,module,exports){ +},{"helpers/dom/element":45}],20:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTable: {get: function() { @@ -3026,7 +3031,7 @@ var WalkontableTable = function WalkontableTable(wotInstance, table) { var height = this.wot.wtSettings.settings.rowHeight(sourceRow); var oversizedHeight = this.wot.wtViewport.oversizedRows[sourceRow]; if (oversizedHeight !== void 0) { - height = height ? Math.max(height, oversizedHeight) : oversizedHeight; + height = height === void 0 ? oversizedHeight : Math.max(height, oversizedHeight); } return height; }, @@ -3070,7 +3075,7 @@ var WalkontableTable = function WalkontableTable(wotInstance, table) { window.WalkontableTable = WalkontableTable; //# -},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":44,"tableRenderer":21}],21:[function(require,module,exports){ +},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":45,"tableRenderer":21}],21:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableTableRenderer: {get: function() { @@ -3176,7 +3181,7 @@ var WalkontableTableRenderer = function WalkontableTableRenderer(wtTable) { var isWorkingOnClone = this.wtTable.isWorkingOnClone(); while (sourceRowIndex < totalRows && sourceRowIndex >= 0) { if (visibleRowIndex > 1000) { - throw new Error('Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.'); + console.error('Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.'); } if (rowsToRender !== void 0 && visibleRowIndex === rowsToRender) { break; @@ -3472,7 +3477,7 @@ function replaceThWithTd(TH, TR) { window.WalkontableTableRenderer = WalkontableTableRenderer; //# -},{"helpers/dom/element":44}],22:[function(require,module,exports){ +},{"helpers/dom/element":45}],22:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { WalkontableViewport: {get: function() { @@ -3759,7 +3764,7 @@ var WalkontableViewport = function WalkontableViewport(wotInstance) { window.WalkontableViewport = WalkontableViewport; //# -},{"calculator/viewportColumns":3,"calculator/viewportRows":4,"eventManager":40,"helpers/dom/element":44}],23:[function(require,module,exports){ +},{"calculator/viewportColumns":3,"calculator/viewportRows":4,"eventManager":41,"helpers/dom/element":45}],23:[function(require,module,exports){ "use strict"; var $__shims_47_classes__, $__es6collections__, @@ -3832,7 +3837,7 @@ arrayHelpers.arrayEach([domHelpers, domEventHelpers], (function(helper) { })); //# -},{"cellTypes":24,"core":25,"es6collections":"es6collections","helpers/array":41,"helpers/browser":42,"helpers/data":43,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/function":46,"helpers/mixed":47,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,"helpers/unicode":52,"pluginHooks":54,"plugins/jqueryHandsontable":1,"renderers/_cellDecorator":87,"shims/classes":94}],24:[function(require,module,exports){ +},{"cellTypes":24,"core":25,"es6collections":"es6collections","helpers/array":42,"helpers/browser":43,"helpers/data":44,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/mixed":48,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,"helpers/unicode":53,"pluginHooks":56,"plugins/jqueryHandsontable":1,"renderers/_cellDecorator":89,"shims/classes":96}],24:[function(require,module,exports){ "use strict"; var $__helpers_47_browser__, $__editors__, @@ -3933,7 +3938,7 @@ Handsontable.cellLookup = {validator: { }}; //# -},{"editors":28,"editors/autocompleteEditor":30,"editors/checkboxEditor":31,"editors/dateEditor":32,"editors/dropdownEditor":33,"editors/handsontableEditor":34,"editors/mobileTextEditor":35,"editors/numericEditor":36,"editors/passwordEditor":37,"editors/selectEditor":38,"editors/textEditor":39,"helpers/browser":42,"renderers":86,"renderers/autocompleteRenderer":88,"renderers/checkboxRenderer":89,"renderers/htmlRenderer":90,"renderers/numericRenderer":91,"renderers/passwordRenderer":92,"renderers/textRenderer":93,"validators/autocompleteValidator":98,"validators/dateValidator":99,"validators/numericValidator":100}],25:[function(require,module,exports){ +},{"editors":29,"editors/autocompleteEditor":31,"editors/checkboxEditor":32,"editors/dateEditor":33,"editors/dropdownEditor":34,"editors/handsontableEditor":35,"editors/mobileTextEditor":36,"editors/numericEditor":37,"editors/passwordEditor":38,"editors/selectEditor":39,"editors/textEditor":40,"helpers/browser":43,"renderers":88,"renderers/autocompleteRenderer":90,"renderers/checkboxRenderer":91,"renderers/htmlRenderer":92,"renderers/numericRenderer":93,"renderers/passwordRenderer":94,"renderers/textRenderer":95,"validators/autocompleteValidator":100,"validators/dateValidator":101,"validators/numericValidator":102}],25:[function(require,module,exports){ "use strict"; var $__numeral__, $__helpers_47_dom_47_element__, @@ -3948,6 +3953,7 @@ var $__numeral__, $__helpers_47_string__, $__helpers_47_number__, $__tableView__, + $__dataSource__, $__helpers_47_data__, $__3rdparty_47_walkontable_47_src_47_cell_47_coords__, $__3rdparty_47_walkontable_47_src_47_cell_47_range__, @@ -3974,10 +3980,11 @@ var getRenderer = ($__renderers__ = require("renderers"), $__renderers__ && $__r var randomString = ($__helpers_47_string__ = require("helpers/string"), $__helpers_47_string__ && $__helpers_47_string__.__esModule && $__helpers_47_string__ || {default: $__helpers_47_string__}).randomString; var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; var TableView = ($__tableView__ = require("tableView"), $__tableView__ && $__tableView__.__esModule && $__tableView__ || {default: $__tableView__}).TableView; -var $__13 = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}), - translateRowsToColumns = $__13.translateRowsToColumns, - cellMethodLookupFactory = $__13.cellMethodLookupFactory, - spreadsheetColumnLabel = $__13.spreadsheetColumnLabel; +var DataSource = ($__dataSource__ = require("dataSource"), $__dataSource__ && $__dataSource__.__esModule && $__dataSource__ || {default: $__dataSource__}).DataSource; +var $__14 = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}), + translateRowsToColumns = $__14.translateRowsToColumns, + cellMethodLookupFactory = $__14.cellMethodLookupFactory, + spreadsheetColumnLabel = $__14.spreadsheetColumnLabel; var WalkontableCellCoords = ($__3rdparty_47_walkontable_47_src_47_cell_47_coords__ = require("3rdparty/walkontable/src/cell/coords"), $__3rdparty_47_walkontable_47_src_47_cell_47_coords__ && $__3rdparty_47_walkontable_47_src_47_cell_47_coords__.__esModule && $__3rdparty_47_walkontable_47_src_47_cell_47_coords__ || {default: $__3rdparty_47_walkontable_47_src_47_cell_47_coords__}).WalkontableCellCoords; var WalkontableCellRange = ($__3rdparty_47_walkontable_47_src_47_cell_47_range__ = require("3rdparty/walkontable/src/cell/range"), $__3rdparty_47_walkontable_47_src_47_cell_47_range__ && $__3rdparty_47_walkontable_47_src_47_cell_47_range__.__esModule && $__3rdparty_47_walkontable_47_src_47_cell_47_range__ || {default: $__3rdparty_47_walkontable_47_src_47_cell_47_range__}).WalkontableCellRange; var WalkontableSelection = ($__3rdparty_47_walkontable_47_src_47_selection__ = require("3rdparty/walkontable/src/selection"), $__3rdparty_47_walkontable_47_src_47_selection__ && $__3rdparty_47_walkontable_47_src_47_selection__.__esModule && $__3rdparty_47_walkontable_47_src_47_selection__ || {default: $__3rdparty_47_walkontable_47_src_47_selection__}).WalkontableSelection; @@ -3986,6 +3993,7 @@ Handsontable.activeGuid = null; Handsontable.Core = function Core(rootElement, userSettings) { var priv, datamap, + dataSource, grid, selection, editorManager, @@ -4021,7 +4029,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { amount = amount || 1; switch (action) { case 'insert_row': - if (instance.getSettings().maxRows === instance.countRows()) { + if (instance.getSettings().maxRows === instance.countSourceRows()) { return; } delta = datamap.createRow(index, amount); @@ -4051,7 +4059,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { } break; case 'remove_row': - index = instance.runHooks('modifyCol', index); datamap.removeRow(index, amount); priv.cellSettings.splice(index, amount); var totalRows = instance.countRows(); @@ -4563,6 +4570,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { } }; this.init = function() { + dataSource = new DataSource(instance, priv.settings.data); Handsontable.hooks.run(instance, 'beforeInit'); if (Handsontable.mobileBrowser) { addClass(instance.rootElement, 'mobile'); @@ -4694,8 +4702,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { this.validateCell = function(value, cellProperties, callback, source) { var validator = instance.getCellValidator(cellProperties); function done(valid) { - var col = cellProperties.col, - row = cellProperties.row, + var col = cellProperties.physicalCol, + row = cellProperties.physicalRow, td = instance.getCell(row, col, true); if (td) { instance.view.wt.wtSettings.settings.cellRenderer(row, col, td); @@ -4771,11 +4779,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { }; this.listen = function() { Handsontable.activeGuid = instance.guid; - if (document.activeElement && document.activeElement !== document.body) { - document.activeElement.blur(); - } else if (!document.activeElement) { - document.body.focus(); - } }; this.unlisten = function() { Handsontable.activeGuid = null; @@ -4847,9 +4850,13 @@ Handsontable.Core = function Core(rootElement, userSettings) { instance.dataType = 'object'; } datamap = new DataMap(instance, priv, GridSettings); + dataSource.data = data; + dataSource.dataType = instance.dataType; + dataSource.colToProp = datamap.colToProp.bind(datamap); + dataSource.propToCol = datamap.propToCol.bind(datamap); clearCellSettingCache(); grid.adjustRowsAndCols(); - Handsontable.hooks.run(instance, 'afterLoadData'); + Handsontable.hooks.run(instance, 'afterLoadData', priv.firstRun); if (priv.firstRun) { priv.firstRun = [null, 'loadData']; } else { @@ -5037,23 +5044,30 @@ Handsontable.Core = function Core(rootElement, userSettings) { range = datamap.getRange(new WalkontableCellCoords(0, datamap.propToCol(prop)), new WalkontableCellCoords(priv.settings.data.length - 1, datamap.propToCol(prop)), datamap.DESTINATION_RENDERER); return out.concat.apply(out, range); }; - this.getSourceDataAtCol = function(col) { - var out = [], - data = priv.settings.data; - for (var i = 0; i < data.length; i++) { - out.push(data[i][col]); + this.getSourceData = function(r, c, r2, c2) { + var data; + if (r === void 0) { + data = dataSource.getData(); + } else { + data = dataSource.getByRange(new WalkontableCellCoords(r, c), new WalkontableCellCoords(r2, c2)); } - return out; + return data; + }; + this.getSourceDataAtCol = function(column) { + return dataSource.getAtColumn(column); }; this.getSourceDataAtRow = function(row) { - return priv.settings.data[row]; + return dataSource.getAtRow(row); + }; + this.getSourceDataAtCell = function(row, column) { + return dataSource.getAtCell(row, column); }; this.getDataAtRow = function(row) { var data = datamap.getRange(new WalkontableCellCoords(row, 0), new WalkontableCellCoords(row, this.countCols() - 1), datamap.DESTINATION_RENDERER); return data[0]; }; this.getDataType = function(rowFrom, columnFrom, rowTo, columnTo) { - var $__18 = this; + var $__19 = this; var previousType = null; var currentType = null; if (rowFrom === void 0) { @@ -5072,7 +5086,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { rangeEach(Math.min(rowFrom, rowTo), Math.max(rowFrom, rowTo), (function(row) { var isTypeEqual = true; rangeEach(Math.min(columnFrom, columnTo), Math.max(columnFrom, columnTo), (function(column) { - var cellType = $__18.getCellMeta(row, column); + var cellType = $__19.getCellMeta(row, column); currentType = cellType.type; if (previousType) { isTypeEqual = previousType === currentType; @@ -5118,6 +5132,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { this.getCellMeta = function(row, col) { var prop = datamap.colToProp(col), cellProperties; + var physicalRow = row; + var physicalCol = col; row = translateRowIndex(row); col = translateColIndex(col); if (!priv.columnSettings[col]) { @@ -5132,6 +5148,8 @@ Handsontable.Core = function Core(rootElement, userSettings) { cellProperties = priv.cellSettings[row][col]; cellProperties.row = row; cellProperties.col = col; + cellProperties.physicalRow = physicalRow; + cellProperties.physicalCol = physicalCol; cellProperties.prop = prop; cellProperties.instance = instance; Handsontable.hooks.run(instance, 'beforeGetCellMeta', row, col, cellProperties); @@ -5186,22 +5204,23 @@ Handsontable.Core = function Core(rootElement, userSettings) { waitingForValidator.checkIfQueueIsEmpty(); }; this.getRowHeader = function(row) { - if (row === void 0) { - var out = []; - for (var i = 0, - ilen = instance.countRows(); i < ilen; i++) { - out.push(instance.getRowHeader(i)); - } - return out; - } else if (Array.isArray(priv.settings.rowHeaders) && priv.settings.rowHeaders[row] !== void 0) { - return priv.settings.rowHeaders[row]; - } else if (typeof priv.settings.rowHeaders === 'function') { - return priv.settings.rowHeaders(row); - } else if (priv.settings.rowHeaders && typeof priv.settings.rowHeaders !== 'string' && typeof priv.settings.rowHeaders !== 'number') { - return row + 1; - } else { - return priv.settings.rowHeaders; + var rowHeader = priv.settings.rowHeaders; + if (row !== void 0) { + row = Handsontable.hooks.run(instance, 'modifyRowHeader', row); } + if (row === void 0) { + rowHeader = []; + rangeEach(instance.countRows() - 1, (function(i) { + rowHeader.push(instance.getRowHeader(i)); + })); + } else if (Array.isArray(rowHeader) && rowHeader[row] !== void 0) { + rowHeader = rowHeader[row]; + } else if (typeof rowHeader === 'function') { + rowHeader = rowHeader(row); + } else if (rowHeader && typeof rowHeader !== 'string' && typeof rowHeader !== 'number') { + rowHeader = row + 1; + } + return rowHeader; }; this.hasRowHeaders = function() { return !!priv.settings.rowHeaders; @@ -5219,6 +5238,7 @@ Handsontable.Core = function Core(rootElement, userSettings) { return false; }; this.getColHeader = function(col) { + col = Handsontable.hooks.run(instance, 'modifyColHeader', col); if (col === void 0) { var out = []; for (var i = 0, @@ -5293,8 +5313,11 @@ Handsontable.Core = function Core(rootElement, userSettings) { height = Handsontable.hooks.run(instance, 'modifyRowHeight', height, row); return height; }; + this.countSourceRows = function() { + return instance.getSourceData() ? instance.getSourceData().length : 0; + }; this.countRows = function() { - return priv.settings.data.length; + return datamap.getLength(); }; this.countCols = function() { if (instance.dataType === 'object' || instance.dataType === 'function') { @@ -5416,9 +5439,6 @@ Handsontable.Core = function Core(rootElement, userSettings) { } coords = new WalkontableCellCoords(row, col); priv.selRange = new WalkontableCellRange(coords, coords, coords); - if (document.activeElement && document.activeElement !== document.documentElement && document.activeElement !== document.body) { - document.activeElement.blur(); - } if (changeListener) { instance.listen(); } @@ -5445,6 +5465,10 @@ Handsontable.Core = function Core(rootElement, userSettings) { if (instance.view) { instance.view.destroy(); } + if (dataSource) { + dataSource.destroy(); + } + dataSource = null; empty(instance.rootElement); eventManager.destroy(); Handsontable.hooks.run(instance, 'afterDestroy'); @@ -5642,7 +5666,7 @@ DefaultSettings.prototype = { Handsontable.DefaultSettings = DefaultSettings; //# -},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"dataMap":26,"editorManager":27,"eventManager":40,"helpers/array":41,"helpers/data":43,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,"numeral":"numeral","plugins":55,"renderers":86,"tableView":95}],26:[function(require,module,exports){ +},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"dataMap":26,"dataSource":27,"editorManager":28,"eventManager":41,"helpers/array":42,"helpers/data":44,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,"numeral":"numeral","plugins":57,"renderers":88,"tableView":97}],26:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DataMap: {get: function() { @@ -5655,6 +5679,7 @@ var $__SheetClip__, $__helpers_47_setting__, $__helpers_47_object__, $__helpers_47_array__, + $__helpers_47_number__, $__multiMap__; var SheetClip = ($__SheetClip__ = require("SheetClip"), $__SheetClip__ && $__SheetClip__.__esModule && $__SheetClip__ || {default: $__SheetClip__}).default; var cellMethodLookupFactory = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}).cellMethodLookupFactory; @@ -5665,6 +5690,7 @@ var $__3 = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_ob var $__4 = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}), extendArray = $__4.extendArray, to2dArray = $__4.to2dArray; +var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; var MultiMap = ($__multiMap__ = require("multiMap"), $__multiMap__ && $__multiMap__.__esModule && $__multiMap__ || {default: $__multiMap__}).MultiMap; function DataMap(instance, priv, GridSettings) { this.instance = instance; @@ -5762,12 +5788,12 @@ DataMap.prototype.createRow = function(index, amount, createdAutomatically) { if (!amount) { amount = 1; } - if (typeof index !== 'number' || index >= this.instance.countRows()) { - index = this.instance.countRows(); + if (typeof index !== 'number' || index >= this.instance.countSourceRows()) { + index = this.instance.countSourceRows(); } currentIndex = index; var maxRows = this.instance.getSettings().maxRows; - while (numberOfCreatedRows < amount && this.instance.countRows() < maxRows) { + while (numberOfCreatedRows < amount && this.instance.countSourceRows() < maxRows) { if (this.instance.dataType === 'array') { row = []; for (var c = 0; c < colCount; c++) { @@ -5779,7 +5805,7 @@ DataMap.prototype.createRow = function(index, amount, createdAutomatically) { row = {}; deepExtend(row, this.getSchema()); } - if (index === this.instance.countRows()) { + if (index === this.instance.countSourceRows()) { this.dataSource.push(row); } else { this.dataSource.splice(index, 0, row); @@ -5795,7 +5821,7 @@ DataMap.prototype.createCol = function(index, amount, createdAutomatically) { if (!this.instance.isColumnModificationAllowed()) { throw new Error('Cannot create new column. When data source in an object, ' + 'you can only have as much columns as defined in first data row, data schema or in the \'columns\' setting.' + 'If you want to be able to add new columns, you have to use array datasource.'); } - var rlen = this.instance.countRows(), + var rlen = this.instance.countSourceRows(), data = this.dataSource, constructor, numberOfCreatedCols = 0, @@ -5835,9 +5861,9 @@ DataMap.prototype.removeRow = function(index, amount) { if (typeof index !== 'number') { index = -amount; } - index = (this.instance.countRows() + index) % this.instance.countRows(); + index = (this.instance.countSourceRows() + index) % this.instance.countSourceRows(); var logicRows = this.physicalRowsToLogical(index, amount); - var actionWasNotCancelled = Handsontable.hooks.run(this.instance, 'beforeRemoveRow', index, amount); + var actionWasNotCancelled = Handsontable.hooks.run(this.instance, 'beforeRemoveRow', index, amount, logicRows); if (actionWasNotCancelled === false) { return; } @@ -5847,7 +5873,7 @@ DataMap.prototype.removeRow = function(index, amount) { }); data.length = 0; Array.prototype.push.apply(data, newData); - Handsontable.hooks.run(this.instance, 'afterRemoveRow', index, amount); + Handsontable.hooks.run(this.instance, 'afterRemoveRow', index, amount, logicRows); this.instance.forceFullRender = true; }; DataMap.prototype.removeCol = function(index, amount) { @@ -5867,7 +5893,7 @@ DataMap.prototype.removeCol = function(index, amount) { } var data = this.dataSource; for (var r = 0, - rlen = this.instance.countRows(); r < rlen; r++) { + rlen = this.instance.countSourceRows(); r < rlen; r++) { data[r].splice(index, amount); } this.priv.columnSettings.splice(index, amount); @@ -5921,9 +5947,11 @@ DataMap.prototype.get = function(row, prop) { return out; } else if (typeof prop === 'function') { return prop(this.dataSource.slice(row, row + 1)[0]); - } else { - return this.dataSource[row] ? this.dataSource[row][prop] : null; } + if (this.dataSource[row] && this.dataSource[row].hasOwnProperty && this.dataSource[row].hasOwnProperty(prop)) { + return this.dataSource[row][prop]; + } + return null; }; var copyableLookup = cellMethodLookupFactory('copyable', false); DataMap.prototype.getCopyable = function(row, prop) { @@ -5952,7 +5980,7 @@ DataMap.prototype.set = function(row, prop, value, source) { } }; DataMap.prototype.physicalRowsToLogical = function(index, amount) { - var totalRows = this.instance.countRows(); + var totalRows = this.instance.countSourceRows(); var physicRow = (totalRows + index) % totalRows; var logicRows = []; var rowsToRemove = amount; @@ -5966,14 +5994,38 @@ DataMap.prototype.physicalRowsToLogical = function(index, amount) { return logicRows; }; DataMap.prototype.clear = function() { - for (var r = 0; r < this.instance.countRows(); r++) { + for (var r = 0; r < this.instance.countSourceRows(); r++) { for (var c = 0; c < this.instance.countCols(); c++) { this.set(r, this.colToProp(c), ''); } } }; +DataMap.prototype.getLength = function() { + var $__7 = this; + var length = this.instance.countSourceRows(); + if (Handsontable.hooks.has('modifyRow', this.instance)) { + rangeEach(this.instance.countSourceRows() - 1, (function(row) { + row = Handsontable.hooks.run($__7.instance, 'modifyRow', row); + if (row === null) { + length--; + } + })); + } + return length; +}; DataMap.prototype.getAll = function() { - return this.dataSource; + var start = { + row: 0, + col: 0 + }; + var end = { + row: Math.max(this.instance.countSourceRows() - 1, 0), + col: Math.max(this.instance.countCols() - 1, 0) + }; + if (start.row - end.row === 0 && !this.instance.countSourceRows()) { + return []; + } + return this.getRange(start, end, DataMap.prototype.DESTINATION_RENDERER); }; DataMap.prototype.getRange = function(start, end, destination) { var r, @@ -5981,16 +6033,24 @@ DataMap.prototype.getRange = function(start, end, destination) { c, clen, output = [], - row; + row, + rowExists; var getFn = destination === this.DESTINATION_CLIPBOARD_GENERATOR ? this.getCopyable : this.get; rlen = Math.max(start.row, end.row); clen = Math.max(start.col, end.col); for (r = Math.min(start.row, end.row); r <= rlen; r++) { row = []; + var physicalRow = Handsontable.hooks.run(this.instance, 'modifyRow', r); for (c = Math.min(start.col, end.col); c <= clen; c++) { + var rowValue; + if (physicalRow === null) { + break; + } row.push(getFn.call(this, r, this.colToProp(c))); } - output.push(row); + if (physicalRow !== null) { + output.push(row); + } } return output; }; @@ -6004,7 +6064,92 @@ DataMap.prototype.getCopyableText = function(start, end) { Handsontable.DataMap = DataMap; //# -},{"SheetClip":"SheetClip","helpers/array":41,"helpers/data":43,"helpers/object":49,"helpers/setting":50,"multiMap":53}],27:[function(require,module,exports){ +},{"SheetClip":"SheetClip","helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"multiMap":55}],27:[function(require,module,exports){ +"use strict"; +Object.defineProperties(exports, { + DataSource: {get: function() { + return DataSource; + }}, + __esModule: {value: true} +}); +var $__helpers_47_data__, + $__helpers_47_setting__, + $__helpers_47_object__, + $__helpers_47_array__, + $__helpers_47_number__; +var cellMethodLookupFactory = ($__helpers_47_data__ = require("helpers/data"), $__helpers_47_data__ && $__helpers_47_data__.__esModule && $__helpers_47_data__ || {default: $__helpers_47_data__}).cellMethodLookupFactory; +var columnFactory = ($__helpers_47_setting__ = require("helpers/setting"), $__helpers_47_setting__ && $__helpers_47_setting__.__esModule && $__helpers_47_setting__ || {default: $__helpers_47_setting__}).columnFactory; +var $__2 = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_object__ && $__helpers_47_object__.__esModule && $__helpers_47_object__ || {default: $__helpers_47_object__}), + duckSchema = $__2.duckSchema, + deepExtend = $__2.deepExtend, + getProperty = $__2.getProperty; +var $__3 = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}), + extendArray = $__3.extendArray, + arrayEach = $__3.arrayEach; +var rangeEach = ($__helpers_47_number__ = require("helpers/number"), $__helpers_47_number__ && $__helpers_47_number__.__esModule && $__helpers_47_number__ || {default: $__helpers_47_number__}).rangeEach; +var DataSource = function DataSource(hotInstance, dataSource) { + this.hot = hotInstance; + this.data = dataSource; + this.dataType = 'array'; + this.colToProp = (function() {}); + this.propToCol = (function() {}); +}; +($traceurRuntime.createClass)(DataSource, { + getData: function() { + return this.data; + }, + getAtColumn: function(column) { + var $__5 = this; + var result = []; + arrayEach(this.data, (function(row) { + var property = $__5.colToProp(column); + if (typeof property === 'string') { + row = getProperty(row, property); + } else { + row = row[property]; + } + result.push(row); + })); + return result; + }, + getAtRow: function(row) { + return this.data[row]; + }, + getAtCell: function(row, column) { + return this.data[row][this.colToProp(column)]; + }, + getByRange: function(start, end) { + var $__5 = this; + var startRow = Math.min(start.row, end.row); + var startCol = Math.min(start.col, end.col); + var endRow = Math.max(start.row, end.row); + var endCol = Math.max(start.col, end.col); + var result = []; + rangeEach(startRow, endRow, (function(currentRow) { + var row = $__5.getAtRow(currentRow); + var newRow; + if ($__5.dataType === 'array') { + newRow = row.slice(startCol, endCol); + } else if ($__5.dataType === 'object') { + newRow = {}; + rangeEach(startCol, endCol, (function(column) { + var prop = $__5.colToProp(column); + newRow[prop] = row[prop]; + })); + } + result.push(newRow); + })); + return result; + }, + destroy: function() { + this.data = null; + this.hot = null; + } +}, {}); +; + +//# +},{"helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51}],28:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { EditorManager: {get: function() { @@ -6300,7 +6445,7 @@ function EditorManager(instance, priv, selection) { } //# -},{"3rdparty/walkontable/src/cell/coords":5,"editors":28,"eventManager":40,"helpers/dom/event":45,"helpers/unicode":52}],28:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"editors":29,"eventManager":41,"helpers/dom/event":46,"helpers/unicode":53}],29:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerEditor: {get: function() { @@ -6382,7 +6527,7 @@ function hasEditor(editorName) { } //# -},{"helpers/string":51}],29:[function(require,module,exports){ +},{"helpers/string":52}],30:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { BaseEditor: {get: function() { @@ -6589,7 +6734,7 @@ BaseEditor.prototype.checkEditorSection = function() { }; //# -},{"3rdparty/walkontable/src/cell/coords":5,"helpers/mixed":47}],30:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"helpers/mixed":48}],31:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutocompleteEditor: {get: function() { @@ -6853,7 +6998,7 @@ AutocompleteEditor.prototype.allowKeyEventPropagation = function(keyCode) { registerEditor('autocomplete', AutocompleteEditor); //# -},{"editors":28,"handsontableEditor":34,"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/unicode":52}],31:[function(require,module,exports){ +},{"editors":29,"handsontableEditor":35,"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/unicode":53}],32:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CheckboxEditor: {get: function() { @@ -6890,7 +7035,7 @@ var $CheckboxEditor = CheckboxEditor; registerEditor('checkbox', CheckboxEditor); //# -},{"_baseEditor":29,"editors":28,"helpers/dom/element":44}],32:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"helpers/dom/element":45}],33:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DateEditor: {get: function() { @@ -7077,7 +7222,7 @@ var $DateEditor = DateEditor; registerEditor('date', DateEditor); //# -},{"editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"moment":undefined,"pikaday":undefined,"textEditor":39}],33:[function(require,module,exports){ +},{"editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"moment":undefined,"pikaday":undefined,"textEditor":40}],34:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DropdownEditor: {get: function() { @@ -7113,7 +7258,7 @@ Handsontable.hooks.add('beforeValidate', function(value, row, col, source) { registerEditor('dropdown', DropdownEditor); //# -},{"autocompleteEditor":30,"editors":28}],34:[function(require,module,exports){ +},{"autocompleteEditor":31,"editors":29}],35:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { HandsontableEditor: {get: function() { @@ -7264,7 +7409,7 @@ HandsontableEditor.prototype.assignHooks = function() { registerEditor('handsontable', HandsontableEditor); //# -},{"editors":28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"textEditor":39}],35:[function(require,module,exports){ +},{"editors":29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"textEditor":40}],36:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MobileTextEditor: {get: function() { @@ -7523,7 +7668,7 @@ MobileTextEditor.prototype.destroy = function() { registerEditor('mobile', MobileTextEditor); //# -},{"_baseEditor":29,"editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],36:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],37:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { NumericEditor: {get: function() { @@ -7557,7 +7702,7 @@ var $NumericEditor = NumericEditor; registerEditor('numeric', NumericEditor); //# -},{"editors":28,"numeral":"numeral","textEditor":39}],37:[function(require,module,exports){ +},{"editors":29,"numeral":"numeral","textEditor":40}],38:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { PasswordEditor: {get: function() { @@ -7592,7 +7737,7 @@ var $PasswordEditor = PasswordEditor; registerEditor('password', PasswordEditor); //# -},{"editors":28,"helpers/dom/element":44,"textEditor":39}],38:[function(require,module,exports){ +},{"editors":29,"helpers/dom/element":45,"textEditor":40}],39:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { SelectEditor: {get: function() { @@ -7814,7 +7959,7 @@ SelectEditor.prototype.getEditedCell = function() { registerEditor('select', SelectEditor); //# -},{"_baseEditor":29,"editors":28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],39:[function(require,module,exports){ +},{"_baseEditor":30,"editors":29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],40:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TextEditor: {get: function() { @@ -8119,7 +8264,7 @@ TextEditor.prototype.destroy = function() { registerEditor('text', TextEditor); //# -},{"_baseEditor":29,"autoResize":"autoResize","editors":28,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],40:[function(require,module,exports){ +},{"_baseEditor":30,"autoResize":"autoResize","editors":29,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],41:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { EventManager: {get: function() { @@ -8316,7 +8461,7 @@ function eventManager(context) { } //# -},{"helpers/browser":42,"helpers/dom/element":44}],41:[function(require,module,exports){ +},{"helpers/browser":43,"helpers/dom/element":45}],42:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { to2dArray: {get: function() { @@ -8343,6 +8488,12 @@ Object.defineProperties(exports, { arraySum: {get: function() { return arraySum; }}, + arrayMax: {get: function() { + return arrayMax; + }}, + arrayMin: {get: function() { + return arrayMin; + }}, arrayAvg: {get: function() { return arrayAvg; }}, @@ -8437,6 +8588,16 @@ function arraySum(array) { return (a + b); }), 0); } +function arrayMax(array) { + return arrayReduce(array, (function(a, b) { + return (a > b ? a : b); + }), Array.isArray(array) ? array[0] : void 0); +} +function arrayMin(array) { + return arrayReduce(array, (function(a, b) { + return (a < b ? a : b); + }), Array.isArray(array) ? array[0] : void 0); +} function arrayAvg(array) { if (!array.length) { return 0; @@ -8459,7 +8620,7 @@ function arrayUnique(array) { } //# -},{}],42:[function(require,module,exports){ +},{}],43:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { isIE8: {get: function() { @@ -8545,7 +8706,7 @@ function hasCaptionProblem() { } //# -},{}],43:[function(require,module,exports){ +},{}],44:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { spreadsheetColumnLabel: {get: function() { @@ -8557,6 +8718,9 @@ Object.defineProperties(exports, { createSpreadsheetObjectData: {get: function() { return createSpreadsheetObjectData; }}, + createEmptySpreadsheetData: {get: function() { + return createEmptySpreadsheetData; + }}, translateRowsToColumns: {get: function() { return translateRowsToColumns; }}, @@ -8608,6 +8772,18 @@ function createSpreadsheetObjectData(rowCount, colCount) { } return rows; } +function createEmptySpreadsheetData(rows, columns) { + var data = []; + var row; + for (var i = 0; i < rows; i++) { + row = []; + for (var j = 0; j < columns; j++) { + row.push(''); + } + data.push(row); + } + return data; +} function translateRowsToColumns(input) { var i, ilen, @@ -8659,7 +8835,7 @@ function cellMethodLookupFactory(methodName, allowUndefined) { } //# -},{"object":49}],44:[function(require,module,exports){ +},{"object":50}],45:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { closest: {get: function() { @@ -8761,6 +8937,9 @@ Object.defineProperties(exports, { getSelectionEndPosition: {get: function() { return getSelectionEndPosition; }}, + getSelectionText: {get: function() { + return getSelectionText; + }}, setCaretPosition: {get: function() { return setCaretPosition; }}, @@ -9233,6 +9412,15 @@ function getSelectionEndPosition(el) { return re.text.indexOf(r.text) + r.text.length; } } +function getSelectionText() { + var text = ''; + if (window.getSelection) { + text = window.getSelection().toString(); + } else if (document.selection && document.selection.type !== 'Control') { + text = document.selection.createRange().text; + } + return text; +} function setCaretPosition(element, pos, endPos) { if (endPos === void 0) { endPos = pos; @@ -9351,7 +9539,7 @@ function cancelAnimationFrame(id) { } //# -},{"../browser":42}],45:[function(require,module,exports){ +},{"../browser":43}],46:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { stopImmediatePropagation: {get: function() { @@ -9403,7 +9591,7 @@ function pageY(event) { } //# -},{}],46:[function(require,module,exports){ +},{}],47:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { proxy: {get: function() { @@ -9476,7 +9664,7 @@ function throttleAfterHits(func) { } //# -},{}],47:[function(require,module,exports){ +},{}],48:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { stringify: {get: function() { @@ -9504,7 +9692,7 @@ function stringify(value) { } //# -},{}],48:[function(require,module,exports){ +},{}],49:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { isNumeric: {get: function() { @@ -9513,6 +9701,9 @@ Object.defineProperties(exports, { rangeEach: {get: function() { return rangeEach; }}, + rangeEachReverse: {get: function() { + return rangeEachReverse; + }}, valueAccordingPercent: {get: function() { return valueAccordingPercent; }}, @@ -9522,28 +9713,29 @@ function isNumeric(n) { var t = typeof n; return t == 'number' ? !isNaN(n) && isFinite(n) : t == 'string' ? !n.length ? false : n.length == 1 ? /\d/.test(n) : /^\s*[+-]?\s*(?:(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?)|(?:0x[a-f\d]+))\s*$/i.test(n) : t == 'object' ? !!n && typeof n.valueOf() == 'number' && !(n instanceof Date) : false; } -function rangeEach(rangeFrom, rangeTo, iteratee, onlyForward) { +function rangeEach(rangeFrom, rangeTo, iteratee) { var index = -1; - var _rangeTo = rangeTo; - var _rangeFrom = 0; if (typeof rangeTo === 'function') { iteratee = rangeTo; - _rangeTo = rangeFrom; + rangeTo = rangeFrom; } else { index = rangeFrom - 1; } - if (onlyForward || rangeFrom <= _rangeTo) { - while (++index <= _rangeTo) { - if (iteratee(index) === false) { - break; - } + while (++index <= rangeTo) { + if (iteratee(index) === false) { + break; } - } else { - index = rangeFrom + 1; - while (--index >= rangeTo) { - if (iteratee(index) === false) { - break; - } + } +} +function rangeEachReverse(rangeFrom, rangeTo, iteratee) { + var index = rangeFrom + 1; + if (typeof rangeTo === 'function') { + iteratee = rangeTo; + rangeTo = 0; + } + while (--index >= rangeTo) { + if (iteratee(index) === false) { + break; } } } @@ -9554,7 +9746,7 @@ function valueAccordingPercent(value, percent) { } //# -},{}],49:[function(require,module,exports){ +},{}],50:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { duckSchema: {get: function() { @@ -9593,6 +9785,9 @@ Object.defineProperties(exports, { objectEach: {get: function() { return objectEach; }}, + getProperty: {get: function() { + return getProperty; + }}, __esModule: {value: true} }); var $__array__; @@ -9664,8 +9859,15 @@ function mixin(Base) { for (var mixins = [], $__1 = 1; $__1 < arguments.length; $__1++) mixins[$__1 - 1] = arguments[$__1]; + if (!Base.MIXINS) { + Base.MIXINS = []; + } arrayEach(mixins, (function(mixin) { + Base.MIXINS.push(mixin.MIXIN_NAME); objectEach(mixin, (function(value, key) { + if (Base.prototype[key] !== void 0) { + throw new Error(("Mixin conflict. Property '" + key + "' already exist and cannot be overwritten.")); + } if (typeof value === 'function') { Base.prototype[key] = value; } else { @@ -9726,9 +9928,9 @@ function getPrototypeOf(obj) { } function defineGetter(object, property, value, options) { options.value = value; - options.writable = options.writable === false ? false : true; - options.enumerable = options.enumerable === false ? false : true; - options.configurable = options.configurable === false ? false : true; + options.writable = options.writable !== false; + options.enumerable = options.enumerable !== false; + options.configurable = options.configurable !== false; Object.defineProperty(object, property, options); } function objectEach(object, iteratee) { @@ -9741,9 +9943,21 @@ function objectEach(object, iteratee) { } return object; } +function getProperty(object, name) { + var names = name.split('.'); + var result = object; + objectEach(names, (function(name) { + result = result[name]; + if (result === void 0) { + result = void 0; + return false; + } + })); + return result; +} //# -},{"array":41}],50:[function(require,module,exports){ +},{"array":42}],51:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { columnFactory: {get: function() { @@ -9765,7 +9979,7 @@ function columnFactory(GridSettings, conflictList) { } //# -},{"object":49}],51:[function(require,module,exports){ +},{"object":50}],52:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { toUpperCaseFirst: {get: function() { @@ -9844,7 +10058,7 @@ function isPercentValue(value) { } //# -},{"mixed":47,"number":48}],52:[function(require,module,exports){ +},{"mixed":48,"number":49}],53:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { KEY_CODES: {get: function() { @@ -9933,7 +10147,52 @@ function isKey(keyCode, baseCode) { } //# -},{"array":41}],53:[function(require,module,exports){ +},{"array":42}],54:[function(require,module,exports){ +"use strict"; +Object.defineProperties(exports, { + localHooks: {get: function() { + return localHooks; + }}, + __esModule: {value: true} +}); +var $___46__46__47_helpers_47_array__, + $___46__46__47_helpers_47_object__; +var arrayEach = ($___46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47_helpers_47_array__ && $___46__46__47_helpers_47_array__.__esModule && $___46__46__47_helpers_47_array__ || {default: $___46__46__47_helpers_47_array__}).arrayEach; +var defineGetter = ($___46__46__47_helpers_47_object__ = require("helpers/object"), $___46__46__47_helpers_47_object__ && $___46__46__47_helpers_47_object__.__esModule && $___46__46__47_helpers_47_object__ || {default: $___46__46__47_helpers_47_object__}).defineGetter; +var MIXIN_NAME = 'localHooks'; +var localHooks = { + _localHooks: Object.create(null), + addLocalHook: function(key, callback) { + if (!this._localHooks[key]) { + this._localHooks[key] = []; + } + this._localHooks[key].push(callback); + }, + runLocalHooks: function(key) { + for (var params = [], + $__3 = 1; $__3 < arguments.length; $__3++) + params[$__3 - 1] = arguments[$__3]; + var $__2 = this; + if (this._localHooks[key]) { + arrayEach(this._localHooks[key], (function(callback) { + return callback.apply($__2, params); + })); + } + }, + clearLocalHooks: function() { + this._localHooks = {}; + } +}; +defineGetter(localHooks, 'MIXIN_NAME', MIXIN_NAME, { + writable: false, + enumerable: false +}); +; +Handsontable.utils = Handsontable.utils || {}; +Handsontable.utils.localHooks = localHooks; + +//# +},{"helpers/array":42,"helpers/object":50}],55:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MultiMap: {get: function() { @@ -9985,20 +10244,17 @@ function MultiMap() { } //# -},{}],54:[function(require,module,exports){ +},{}],56:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Hooks: {get: function() { return Hooks; }}, - localHooks: {get: function() { - return localHooks; - }}, __esModule: {value: true} }); var $__helpers_47_array__, $__helpers_47_object__; -var REGISTERED_HOOKS = ['afterCellMetaReset', 'afterChange', 'afterChangesObserved', 'afterColumnMove', 'afterColumnResize', 'afterContextMenuDefaultOptions', 'afterContextMenuHide', 'afterContextMenuShow', 'afterCopyLimit', 'afterCreateCol', 'afterCreateRow', 'afterDeselect', 'afterDestroy', 'afterDocumentKeyDown', 'afterGetCellMeta', 'afterGetColHeader', 'afterGetRowHeader', 'afterInit', 'afterIsMultipleSelectionCheck', 'afterLoadData', 'afterMomentumScroll', 'afterOnCellCornerMouseDown', 'afterOnCellMouseDown', 'afterOnCellMouseOver', 'afterRemoveCol', 'afterRemoveRow', 'afterRender', 'afterRenderer', 'afterScrollHorizontally', 'afterScrollVertically', 'afterSelection', 'afterSelectionByProp', 'afterSelectionEnd', 'afterSelectionEndByProp', 'afterSetCellMeta', 'afterUpdateSettings', 'afterValidate', 'beforeAutofill', 'beforeCellAlignment', 'beforeChange', 'beforeChangeRender', 'beforeDrawBorders', 'beforeGetCellMeta', 'beforeInit', 'beforeInitWalkontable', 'beforeKeyDown', 'beforeOnCellMouseDown', 'beforeRemoveCol', 'beforeRemoveRow', 'beforeRender', 'beforeSetRangeEnd', 'beforeTouchScroll', 'beforeValidate', 'construct', 'init', 'modifyCol', 'modifyColWidth', 'modifyRow', 'modifyRowHeight', 'persistentStateLoad', 'persistentStateReset', 'persistentStateSave', 'beforeColumnSort', 'afterColumnSort', 'afterAutofillApplyValues', 'modifyCopyableRange', 'beforeColumnMove', 'afterColumnMove', 'beforeRowMove', 'afterRowMove', 'beforeColumnResize', 'afterColumnResize', 'beforeRowResize', 'afterRowResize']; +var REGISTERED_HOOKS = ['afterCellMetaReset', 'afterChange', 'afterChangesObserved', 'afterColumnMove', 'afterColumnResize', 'afterContextMenuDefaultOptions', 'afterContextMenuHide', 'afterContextMenuShow', 'afterCopyLimit', 'afterCreateCol', 'afterCreateRow', 'afterDeselect', 'afterDestroy', 'afterDocumentKeyDown', 'afterGetCellMeta', 'afterGetColHeader', 'afterGetRowHeader', 'afterInit', 'afterIsMultipleSelectionCheck', 'afterLoadData', 'afterMomentumScroll', 'afterOnCellCornerMouseDown', 'afterOnCellMouseDown', 'afterOnCellMouseOver', 'afterRemoveCol', 'afterRemoveRow', 'afterRender', 'afterRenderer', 'afterScrollHorizontally', 'afterScrollVertically', 'afterSelection', 'afterSelectionByProp', 'afterSelectionEnd', 'afterSelectionEndByProp', 'afterSetCellMeta', 'afterUpdateSettings', 'afterValidate', 'beforeAutofill', 'beforeCellAlignment', 'beforeChange', 'beforeChangeRender', 'beforeDrawBorders', 'beforeGetCellMeta', 'beforeInit', 'beforeInitWalkontable', 'beforeKeyDown', 'beforeOnCellMouseDown', 'beforeRemoveCol', 'beforeRemoveRow', 'beforeRender', 'beforeSetRangeEnd', 'beforeTouchScroll', 'beforeValidate', 'construct', 'init', 'modifyCol', 'modifyColumnHeader', 'modifyColWidth', 'modifyRow', 'modifyRowHeader', 'modifyRowHeight', 'persistentStateLoad', 'persistentStateReset', 'persistentStateSave', 'beforeColumnSort', 'afterColumnSort', 'afterAutofillApplyValues', 'modifyCopyableRange', 'beforeColumnMove', 'afterColumnMove', 'beforeRowMove', 'afterRowMove', 'beforeColumnResize', 'afterColumnResize', 'beforeRowResize', 'afterRowResize']; var arrayEach = ($__helpers_47_array__ = require("helpers/array"), $__helpers_47_array__ && $__helpers_47_array__.__esModule && $__helpers_47_array__ || {default: $__helpers_47_array__}).arrayEach; var objectEach = ($__helpers_47_object__ = require("helpers/object"), $__helpers_47_object__ && $__helpers_47_object__.__esModule && $__helpers_47_object__ || {default: $__helpers_47_object__}).objectEach; var Hooks = function Hooks() { @@ -10065,6 +10321,11 @@ var Hooks = function Hooks() { } return false; }, + has: function(key) { + var context = arguments[1] !== (void 0) ? arguments[1] : null; + var bucket = this.getBucket(context); + return bucket[key] !== void 0 && bucket[key].length ? true : false; + }, run: function(context, key, p1, p2, p3, p4, p5, p6) { { var globalHandlers = this.globalBucket[key]; @@ -10087,19 +10348,19 @@ var Hooks = function Hooks() { } { var localHandlers = this.getBucket(context)[key]; - var index$__5 = -1; - var length$__6 = localHandlers ? localHandlers.length : 0; - if (length$__6) { - while (++index$__5 < length$__6) { - if (!localHandlers[index$__5] || localHandlers[index$__5].skip) { + var index$__4 = -1; + var length$__5 = localHandlers ? localHandlers.length : 0; + if (length$__5) { + while (++index$__4 < length$__5) { + if (!localHandlers[index$__4] || localHandlers[index$__4].skip) { continue; } - var res$__7 = localHandlers[index$__5].call(context, p1, p2, p3, p4, p5, p6); - if (res$__7 !== void 0) { - p1 = res$__7; + var res$__6 = localHandlers[index$__4].call(context, p1, p2, p3, p4, p5, p6); + if (res$__6 !== void 0) { + p1 = res$__6; } - if (localHandlers[index$__5] && localHandlers[index$__5].runOnce) { - this.remove(key, localHandlers[index$__5], context); + if (localHandlers[index$__4] && localHandlers[index$__4].runOnce) { + this.remove(key, localHandlers[index$__4], context); } } } @@ -10130,36 +10391,11 @@ var Hooks = function Hooks() { } }, {}); ; -var localHooks = { - _localHooks: Object.create(null), - addLocalHook: function(key, callback) { - if (!this._localHooks[key]) { - this._localHooks[key] = []; - } - this._localHooks[key].push(callback); - }, - runLocalHooks: function(key) { - for (var params = [], - $__4 = 1; $__4 < arguments.length; $__4++) - params[$__4 - 1] = arguments[$__4]; - var $__2 = this; - if (this._localHooks[key]) { - arrayEach(this._localHooks[key], (function(callback) { - return callback.apply($__2, params); - })); - } - }, - clearLocalHooks: function() { - this._localHooks = {}; - } -}; -; Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.Hooks = Hooks; -Handsontable.utils.localHooks = localHooks; //# -},{"helpers/array":41,"helpers/object":49}],55:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50}],57:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerPlugin: {get: function() { @@ -10230,9 +10466,11 @@ function getPluginName(hotInstance, plugin) { return pluginName; } ; +Handsontable.plugins.utils = Handsontable.plugins.utils || {}; +Handsontable.plugins.registerPlugin = registerPlugin; //# -},{"helpers/object":49,"helpers/string":51}],56:[function(require,module,exports){ +},{"helpers/object":50,"helpers/string":52}],58:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { default: {get: function() { @@ -10257,9 +10495,9 @@ var BasePlugin = function BasePlugin(hotInstance) { defineGetter(this, 'hot', hotInstance, {writable: false}); privatePool.set(this, {hooks: {}}); initializedPlugins = null; + this.pluginName = null; this.pluginsInitializedCallbacks = []; this.isPluginsReady = false; - this.pluginName = null; this.enabled = false; this.initialized = false; this.hot.addHook('afterPluginsInitialized', (function() { @@ -10342,25 +10580,30 @@ var BasePlugin = function BasePlugin(hotInstance) { this.enablePlugin(); } if (this.enabled && this.isEnabled()) { - if (this.updatePlugin) { - this.updatePlugin(); - } + this.updatePlugin(); } } }, updatePlugin: function() {}, destroy: function() { + var $__3 = this; if (this.eventManager) { this.eventManager.destroy(); } this.clearHooks(); + objectEach(this, (function(value, property) { + if (property !== 'hot') { + $__3[property] = null; + } + })); delete this.hot; } }, {}); var $__default = BasePlugin; +Handsontable.plugins.BasePlugin = BasePlugin; //# -},{"helpers/array":41,"helpers/object":49,"plugins":55}],57:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50,"plugins":57}],59:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutoColumnSize: {get: function() { @@ -10632,7 +10875,7 @@ var $AutoColumnSize = AutoColumnSize; registerPlugin('autoColumnSize', AutoColumnSize); //# -},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"_base":56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,"plugins":55,"utils/ghostTable":96,"utils/samplesGenerator":97}],58:[function(require,module,exports){ +},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"_base":58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,"plugins":57,"utils/ghostTable":98,"utils/samplesGenerator":99}],60:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { AutoRowSize: {get: function() { @@ -10937,7 +11180,7 @@ var $AutoRowSize = AutoRowSize; registerPlugin('autoRowSize', AutoRowSize); //# -},{"_base":56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,"plugins":55,"utils/ghostTable":96,"utils/samplesGenerator":97}],59:[function(require,module,exports){ +},{"_base":58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,"plugins":57,"utils/ghostTable":98,"utils/samplesGenerator":99}],61:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Autofill: {get: function() { @@ -11188,15 +11431,16 @@ Handsontable.hooks.add('afterInit', function() { Handsontable.Autofill = Autofill; //# -},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":40,"helpers/dom/element":44,"plugins":55}],60:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":41,"helpers/dom/element":45,"plugins":57}],62:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { - default: {get: function() { - return $__default; + ColumnSorting: {get: function() { + return ColumnSorting; }}, __esModule: {value: true} }); var $___46__46__47__46__46__47_helpers_47_dom_47_element__, + $___46__46__47__46__46__47_helpers_47_array__, $___46__46__47__46__46__47_eventManager__, $___46__46__47__95_base__, $___46__46__47__46__46__47_plugins__; @@ -11206,6 +11450,10 @@ var $__0 = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("he hasClass = $__0.hasClass, index = $__0.index, removeClass = $__0.removeClass; +var $__1 = ($___46__46__47__46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47__46__46__47_helpers_47_array__ && $___46__46__47__46__46__47_helpers_47_array__.__esModule && $___46__46__47__46__46__47_helpers_47_array__ || {default: $___46__46__47__46__46__47_helpers_47_array__}), + arrayEach = $__1.arrayEach, + arrayMap = $__1.arrayMap, + arrayReduce = $__1.arrayReduce; var eventManagerObject = ($___46__46__47__46__46__47_eventManager__ = require("eventManager"), $___46__46__47__46__46__47_eventManager__ && $___46__46__47__46__46__47_eventManager__.__esModule && $___46__46__47__46__46__47_eventManager__ || {default: $___46__46__47__46__46__47_eventManager__}).eventManager; var BasePlugin = ($___46__46__47__95_base__ = require("_base"), $___46__46__47__95_base__ && $___46__46__47__95_base__.__esModule && $___46__46__47__95_base__ || {default: $___46__46__47__95_base__}).default; var registerPlugin = ($___46__46__47__46__46__47_plugins__ = require("plugins"), $___46__46__47__46__46__47_plugins__ && $___46__46__47__46__46__47_plugins__.__esModule && $___46__46__47__46__46__47_plugins__ || {default: $___46__46__47__46__46__47_plugins__}).registerPlugin; @@ -11221,7 +11469,7 @@ var $ColumnSorting = ColumnSorting; return !!(this.hot.getSettings().columnSorting); }, enablePlugin: function() { - var $__4 = this; + var $__5 = this; if (this.enabled) { return; } @@ -11235,14 +11483,20 @@ var $ColumnSorting = ColumnSorting; this.enableObserveChangesPlugin(); } this.bindColumnSortingAfterClick(); + this.addHook('afterTrimRow', (function(row) { + return $__5.sort(); + })); + this.addHook('afterUntrimRow', (function(row) { + return $__5.sort(); + })); this.addHook('modifyRow', (function(row) { - return $__4.translateRow(row); + return $__5.translateRow(row); })); this.addHook('afterUpdateSettings', (function() { - return $__4.onAfterUpdateSettings(); + return $__5.onAfterUpdateSettings(); })); this.addHook('afterGetColHeader', (function(col, TH) { - return $__4.getColHeader(col, TH); + return $__5.getColHeader(col, TH); })); this.addHook('afterCreateRow', function() { _this.afterCreateRow.apply(_this, arguments); @@ -11251,12 +11505,12 @@ var $ColumnSorting = ColumnSorting; _this.afterRemoveRow.apply(_this, arguments); }); this.addHook('afterInit', (function() { - return $__4.sortBySettings(); + return $__5.sortBySettings(); })); this.addHook('afterLoadData', (function() { - $__4.hot.sortIndex = []; - if ($__4.hot.view) { - $__4.sortBySettings(); + $__5.hot.sortIndex = []; + if ($__5.hot.view) { + $__5.sortBySettings(); } })); if (this.hot.view) { @@ -11358,8 +11612,12 @@ var $ColumnSorting = ColumnSorting; } }); function countRowHeaders() { - var THs = _this.hot.view.TBODY.querySelector('tr').querySelectorAll('th'); - return THs.length; + var tr = _this.hot.view.TBODY.querySelector('tr'); + var length = 1; + if (tr) { + length = tr.querySelectorAll('th').length; + } + return length; } function getColumn(target) { var TH = closest(target, 'TH'); @@ -11427,6 +11685,7 @@ var $ColumnSorting = ColumnSorting; }, sort: function() { if (typeof this.hot.sortOrder == 'undefined') { + this.hot.sortIndex.length = 0; return; } var colMeta, @@ -11505,7 +11764,7 @@ var $ColumnSorting = ColumnSorting; } } for (var i = 0; i < amount; i++) { - this.hot.sortIndex.splice(index + i, 0, [index + i, this.hot.getData()[index + i][this.hot.sortColumn + this.hot.colOffset()]]); + this.hot.sortIndex.splice(index + i, 0, [index + i, this.hot.getSourceData()[index + i][this.hot.sortColumn + this.hot.colOffset()]]); } this.saveSortingState(); }, @@ -11513,21 +11772,33 @@ var $ColumnSorting = ColumnSorting; if (!this.isSorted()) { return; } - var physicalRemovedIndex = this.translateRow(index); - this.hot.sortIndex.splice(index, amount); - for (var i = 0; i < this.hot.sortIndex.length; i++) { - if (this.hot.sortIndex[i][0] > physicalRemovedIndex) { - this.hot.sortIndex[i][0] -= amount; - } + var removedRows = this.hot.sortIndex.splice(index, amount); + removedRows = arrayMap(removedRows, (function(row) { + return row[0]; + })); + function countRowShift(logicalRow) { + return arrayReduce(removedRows, (function(count, removedLogicalRow) { + if (logicalRow > removedLogicalRow) { + count++; + } + return count; + }), 0); } + this.hot.sortIndex = arrayMap(this.hot.sortIndex, (function(logicalRow, physicalRow) { + var rowShift = countRowShift(logicalRow[0]); + if (rowShift) { + logicalRow[0] -= rowShift; + } + return logicalRow; + })); this.saveSortingState(); } }, {}, BasePlugin); -var $__default = ColumnSorting; +; registerPlugin('columnSorting', ColumnSorting); //# -},{"_base":56,"eventManager":40,"helpers/dom/element":44,"plugins":55}],61:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"plugins":57}],63:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CommentEditor: {get: function() { @@ -11615,7 +11886,7 @@ var $CommentEditor = CommentEditor; ; //# -},{"helpers/dom/element":44}],62:[function(require,module,exports){ +},{"helpers/dom/element":45}],64:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Comments: {get: function() { @@ -11907,7 +12178,7 @@ var $Comments = Comments; registerPlugin('comments', Comments); //# -},{"3rdparty/walkontable/src/cell/coords":5,"_base":56,"commentEditor":61,"eventManager":40,"helpers/dom/element":44,"plugins":55}],63:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"_base":58,"commentEditor":63,"eventManager":41,"helpers/dom/element":45,"plugins":57}],65:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CommandExecutor: {get: function() { @@ -11980,7 +12251,7 @@ function findSubCommand(subCommandName, subCommands) { ; //# -},{"helpers/array":41}],64:[function(require,module,exports){ +},{"helpers/array":42}],66:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ContextMenu: {get: function() { @@ -12056,10 +12327,10 @@ var $ContextMenu = ContextMenu; $__11.menu = new Menu($__11.hot, {className: 'htContextMenu'}); $__11.menu.setMenuItems(menuItems); $__11.menu.addLocalHook('afterOpen', (function() { - return $__11.hot.runHooks('afterContextMenuShow', $__11); + return $__11.onMenuAfterOpen(); })); $__11.menu.addLocalHook('afterClose', (function() { - return $__11.hot.runHooks('afterContextMenuHide', $__11); + return $__11.onMenuAfterClose(); })); $__11.menu.addLocalHook('executeCommand', (function() { for (var params = [], @@ -12107,13 +12378,6 @@ var $ContextMenu = ContextMenu; params[$__13] = arguments[$__13]; this.commandExecutor.execute.apply(this.commandExecutor, params); }, - destroy: function() { - this.close(); - if (this.menu) { - this.menu.destroy(); - } - $traceurRuntime.superGet(this, $ContextMenu.prototype, "destroy").call(this); - }, onContextMenu: function(event) { var settings = this.hot.getSettings(); var showRowHeaders = settings.rowHeaders; @@ -12136,6 +12400,20 @@ var $ContextMenu = ContextMenu; } } this.open(event); + }, + onMenuAfterOpen: function() { + this.hot.runHooks('afterContextMenuShow', this); + }, + onMenuAfterClose: function() { + this.hot.listen(); + this.hot.runHooks('afterContextMenuHide', this); + }, + destroy: function() { + this.close(); + if (this.menu) { + this.menu.destroy(); + } + $traceurRuntime.superGet(this, $ContextMenu.prototype, "destroy").call(this); } }, {get DEFAULT_ITEMS() { return [ROW_ABOVE, ROW_BELOW, SEPARATOR, COLUMN_LEFT, COLUMN_RIGHT, SEPARATOR, REMOVE_ROW, REMOVE_COLUMN, SEPARATOR, UNDO, REDO, SEPARATOR, READ_ONLY, SEPARATOR, ALIGNMENT]; @@ -12149,7 +12427,7 @@ Handsontable.hooks.register('afterContextMenuExecute'); registerPlugin('contextMenu', ContextMenu); //# -},{"_base":56,"commandExecutor":63,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"itemsFactory":66,"menu":67,"plugins":55,"predefinedItems":68}],65:[function(require,module,exports){ +},{"_base":58,"commandExecutor":65,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"itemsFactory":68,"menu":69,"plugins":57,"predefinedItems":70}],67:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Cursor: {get: function() { @@ -12229,7 +12507,7 @@ Handsontable.plugins.utils = Handsontable.plugins.utils || {}; Handsontable.plugins.utils.Cursor = Cursor; //# -},{"helpers/dom/element":44,"helpers/dom/event":45}],66:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/dom/event":46}],68:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ItemsFactory: {get: function() { @@ -12348,7 +12626,7 @@ function getItems() { ; //# -},{"helpers/array":41,"helpers/object":49,"predefinedItems":68}],67:[function(require,module,exports){ +},{"helpers/array":42,"helpers/object":50,"predefinedItems":70}],69:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { Menu: {get: function() { @@ -12363,7 +12641,7 @@ var $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_helpers_47_object__, $__utils__, $___46__46__47__46__46__47_helpers_47_unicode__, - $___46__46__47__46__46__47_pluginHooks__, + $___46__46__47__46__46__47_mixins_47_localHooks__, $__predefinedItems__, $___46__46__47__46__46__47_helpers_47_dom_47_event__; var $__0 = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("helpers/dom/element"), $___46__46__47__46__46__47_helpers_47_dom_47_element__ && $___46__46__47__46__46__47_helpers_47_dom_47_element__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_element__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_element__}), @@ -12392,7 +12670,7 @@ var $__5 = ($__utils__ = require("utils"), $__utils__ && $__utils__.__esModule & hasSubMenu = $__5.hasSubMenu, normalizeSelection = $__5.normalizeSelection; var KEY_CODES = ($___46__46__47__46__46__47_helpers_47_unicode__ = require("helpers/unicode"), $___46__46__47__46__46__47_helpers_47_unicode__ && $___46__46__47__46__46__47_helpers_47_unicode__.__esModule && $___46__46__47__46__46__47_helpers_47_unicode__ || {default: $___46__46__47__46__46__47_helpers_47_unicode__}).KEY_CODES; -var localHooks = ($___46__46__47__46__46__47_pluginHooks__ = require("pluginHooks"), $___46__46__47__46__46__47_pluginHooks__ && $___46__46__47__46__46__47_pluginHooks__.__esModule && $___46__46__47__46__46__47_pluginHooks__ || {default: $___46__46__47__46__46__47_pluginHooks__}).localHooks; +var localHooks = ($___46__46__47__46__46__47_mixins_47_localHooks__ = require("mixins/localHooks"), $___46__46__47__46__46__47_mixins_47_localHooks__ && $___46__46__47__46__46__47_mixins_47_localHooks__.__esModule && $___46__46__47__46__46__47_mixins_47_localHooks__ || {default: $___46__46__47__46__46__47_mixins_47_localHooks__}).localHooks; var $__8 = ($__predefinedItems__ = require("predefinedItems"), $__predefinedItems__ && $__predefinedItems__.__esModule && $__predefinedItems__ || {default: $__predefinedItems__}), SEPARATOR = $__8.SEPARATOR, predefinedItems = $__8.predefinedItems; @@ -12452,6 +12730,7 @@ var $Menu = Menu; }) }], renderAllRows: true, + fragmentSelection: 'cell', beforeKeyDown: (function(event) { return $__10.onBeforeKeyDown(event); }), @@ -12484,7 +12763,6 @@ var $Menu = Menu; this.hotMenu.destroy(); this.hotMenu = null; this.hot.getSettings().outsideClickDeselects = this.origOutsideClickDeselects; - this.hot.listen(); this.runLocalHooks('afterClose'); } }, @@ -12494,7 +12772,7 @@ var $Menu = Menu; if (!cell || !hasSubMenu(cell)) { return false; } - var dataItem = this.hotMenu.getData()[row]; + var dataItem = this.hotMenu.getSourceDataAtRow(row); var subMenu = new $Menu(this.hot, { parent: this, name: dataItem.name, @@ -12507,7 +12785,7 @@ var $Menu = Menu; return subMenu; }, closeSubMenu: function(row) { - var dataItem = this.hotMenu.getData()[row]; + var dataItem = this.hotMenu.getSourceDataAtRow(row); var menus = this.hotSubMenus[dataItem.key]; if (menus) { menus.destroy(); @@ -12532,12 +12810,11 @@ var $Menu = Menu; isOpened: function() { return this.hotMenu !== null; }, - executeCommand: function() { - var event = arguments[0]; + executeCommand: function(event) { if (!this.isOpened() || !this.hotMenu.getSelected()) { return; } - var selectedItem = this.hotMenu.getData()[this.hotMenu.getSelected()[0]]; + var selectedItem = this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelected()[0]); this.runLocalHooks('select', selectedItem, event); if (selectedItem.isCommand === false) { return; @@ -12639,7 +12916,7 @@ var $Menu = Menu; }, menuItemRenderer: function(hot, TD, row, col, prop, value) { var $__10 = this; - var item = hot.getData()[row]; + var item = hot.getSourceDataAtRow(row); var wrapper = document.createElement('div'); var isSubMenu = (function(item) { return item.hasOwnProperty('submenu'); @@ -12650,9 +12927,13 @@ var $Menu = Menu; var itemIsDisabled = (function(item) { return item.disabled === true || (typeof item.disabled == 'function' && item.disabled.call($__10.hot) === true); }); + var itemIsHidden = (function(item) { + return typeof item.hidden == 'function' && item.hidden.call($__10.hot) === true; + }); var itemIsSelectionDisabled = (function(item) { return item.disableSelection; }); + var isHidden = itemIsHidden(item); if (typeof value === 'function') { value = value.call(this.hot); } @@ -12661,13 +12942,17 @@ var $Menu = Menu; TD.appendChild(wrapper); if (itemIsSeparator(item)) { addClass(TD, 'htSeparator'); - } else if (typeof item.renderer === 'function') { + } else if (!isHidden && typeof item.renderer === 'function') { addClass(TD, 'htCustomMenuRenderer'); TD.appendChild(item.renderer(hot, wrapper, row, col, prop, value)); } else { fastInnerHTML(wrapper, value); } - if (itemIsDisabled(item)) { + if (isHidden) { + if (TD.parentNode) { + addClass(TD.parentNode, 'htHidden'); + } + } else if (itemIsDisabled(item)) { addClass(TD, 'htDisabled'); this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { return hot.deselectCell(); @@ -12685,7 +12970,7 @@ var $Menu = Menu; })); } else { this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { - return hot.selectCell(row, col); + return hot.selectCell(row, col, void 0, void 0, void 0, false); })); } } else { @@ -12697,7 +12982,7 @@ var $Menu = Menu; })); } else { this.eventManager.addEventListener(wrapper, 'mouseenter', (function() { - return hot.selectCell(row, col); + return hot.selectCell(row, col, void 0, void 0, void 0, false); })); } } @@ -12746,7 +13031,7 @@ var $Menu = Menu; break; case KEY_CODES.ENTER: if (selection) { - if (this.hotMenu.getData()[selection[0]].submenu) { + if (this.hotMenu.getSourceDataAtRow(selection[0]).submenu) { stopEvent = true; } else { this.executeCommand(event); @@ -12822,7 +13107,7 @@ mixin(Menu, localHooks); ; //# -},{"cursor":65,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,"pluginHooks":54,"predefinedItems":68,"utils":69}],68:[function(require,module,exports){ +},{"cursor":67,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"mixins/localHooks":54,"predefinedItems":70,"utils":71}],70:[function(require,module,exports){ "use strict"; var $__4; Object.defineProperties(exports, { @@ -13020,7 +13305,9 @@ var _predefinedItems = ($__4 = {}, Object.defineProperty($__4, SEPARATOR, { name: 'Clear column', callback: function(key, selection) { var column = selection.start.col; - this.populateFromArray(0, column, [[null]], Math.max(selection.start.row, selection.end.row), column); + if (this.countRows()) { + this.populateFromArray(0, column, [[null]], Math.max(selection.start.row, selection.end.row), column); + } }, disabled: function() { var selected = getValidSelection(this); @@ -13377,7 +13664,7 @@ var _predefinedItems = ($__4 = {}, Object.defineProperty($__4, SEPARATOR, { }), $__4); //# -},{"helpers/number":48,"helpers/object":49,"utils":69}],69:[function(require,module,exports){ +},{"helpers/number":49,"helpers/object":50,"utils":71}],71:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { normalizeSelection: {get: function() { @@ -13519,7 +13806,7 @@ function markLabelAsSelected(label) { } //# -},{"helpers/dom/element":44}],70:[function(require,module,exports){ +},{"helpers/dom/element":45}],72:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ContextMenuCopyPaste: {get: function() { @@ -13611,7 +13898,7 @@ var $ContextMenuCopyPaste = ContextMenuCopyPaste; onAfterContextMenuShow: function() { var $__6 = this; var contextMenu = this.hot.getPlugin('contextMenu'); - var data = contextMenu.menu.hotMenu.getData(); + var data = contextMenu.menu.hotMenu.getSourceData(); arrayEach(data, (function(item, index) { if (item.key === 'copy') { var zeroClipboardInstance = new ZeroClipboard(contextMenu.menu.hotMenu.getCell(index, 0)); @@ -13651,7 +13938,7 @@ var $ContextMenuCopyPaste = ContextMenuCopyPaste; registerPlugin('contextMenuCopyPaste', ContextMenuCopyPaste); //# -},{"_base":56,"eventManager":40,"helpers/array":41,"helpers/dom/element":44,"plugins":55,"zeroclipboard":undefined}],71:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/array":42,"helpers/dom/element":45,"plugins":57,"zeroclipboard":undefined}],73:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { CopyPastePlugin: {get: function() { @@ -13665,6 +13952,7 @@ var $__copyPaste__, $___46__46__47__46__46__47_helpers_47_array__, $___46__46__47__46__46__47_helpers_47_number__, $___46__46__47__46__46__47_helpers_47_dom_47_event__, + $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_helpers_47_function__, $___46__46__47__46__46__47_plugins__, $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__, @@ -13676,7 +13964,10 @@ var $__2 = ($___46__46__47__46__46__47_helpers_47_unicode__ = require("helpers/u isCtrlKey = $__2.isCtrlKey; var arrayEach = ($___46__46__47__46__46__47_helpers_47_array__ = require("helpers/array"), $___46__46__47__46__46__47_helpers_47_array__ && $___46__46__47__46__46__47_helpers_47_array__.__esModule && $___46__46__47__46__46__47_helpers_47_array__ || {default: $___46__46__47__46__46__47_helpers_47_array__}).arrayEach; var rangeEach = ($___46__46__47__46__46__47_helpers_47_number__ = require("helpers/number"), $___46__46__47__46__46__47_helpers_47_number__ && $___46__46__47__46__46__47_helpers_47_number__.__esModule && $___46__46__47__46__46__47_helpers_47_number__ || {default: $___46__46__47__46__46__47_helpers_47_number__}).rangeEach; -var stopImmediatePropagation = ($___46__46__47__46__46__47_helpers_47_dom_47_event__ = require("helpers/dom/event"), $___46__46__47__46__46__47_helpers_47_dom_47_event__ && $___46__46__47__46__46__47_helpers_47_dom_47_event__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_event__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_event__}).stopImmediatePropagation; +var $__5 = ($___46__46__47__46__46__47_helpers_47_dom_47_event__ = require("helpers/dom/event"), $___46__46__47__46__46__47_helpers_47_dom_47_event__ && $___46__46__47__46__46__47_helpers_47_dom_47_event__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_event__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_event__}), + stopImmediatePropagation = $__5.stopImmediatePropagation, + isImmediatePropagationStopped = $__5.isImmediatePropagationStopped; +var getSelectionText = ($___46__46__47__46__46__47_helpers_47_dom_47_element__ = require("helpers/dom/element"), $___46__46__47__46__46__47_helpers_47_dom_47_element__ && $___46__46__47__46__46__47_helpers_47_dom_47_element__.__esModule && $___46__46__47__46__46__47_helpers_47_dom_47_element__ || {default: $___46__46__47__46__46__47_helpers_47_dom_47_element__}).getSelectionText; var proxy = ($___46__46__47__46__46__47_helpers_47_function__ = require("helpers/function"), $___46__46__47__46__46__47_helpers_47_function__ && $___46__46__47__46__46__47_helpers_47_function__.__esModule && $___46__46__47__46__46__47_helpers_47_function__ || {default: $___46__46__47__46__46__47_helpers_47_function__}).proxy; var registerPlugin = ($___46__46__47__46__46__47_plugins__ = require("plugins"), $___46__46__47__46__46__47_plugins__ && $___46__46__47__46__46__47_plugins__.__esModule && $___46__46__47__46__46__47_plugins__ || {default: $___46__46__47__46__46__47_plugins__}).registerPlugin; var WalkontableCellCoords = ($___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ = require("3rdparty/walkontable/src/cell/coords"), $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ && $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__.__esModule && $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__ || {default: $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_coords__}).WalkontableCellCoords; @@ -13752,7 +14043,13 @@ function CopyPastePlugin(instance) { if (instance.getActiveEditor() && instance.getActiveEditor().isOpened()) { return; } + if (isImmediatePropagationStopped(event)) { + return; + } if (isCtrlKey(event.keyCode)) { + if (instance.getSettings().fragmentSelection && getSelectionText()) { + return; + } _this.setCopyableText(); stopImmediatePropagation(event); return; @@ -13844,7 +14141,7 @@ Handsontable.hooks.register('modifyCopyableRange'); ; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"SheetClip":"SheetClip","copyPaste":"copyPaste","helpers/array":41,"helpers/dom/event":45,"helpers/function":46,"helpers/number":48,"helpers/unicode":52,"plugins":55}],72:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"SheetClip":"SheetClip","copyPaste":"copyPaste","helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/number":49,"helpers/unicode":53,"plugins":57}],74:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_plugins__, $___46__46__47__46__46__47_3rdparty_47_walkontable_47_src_47_cell_47_range__, @@ -14181,7 +14478,7 @@ Handsontable.hooks.add('afterInit', function() { Handsontable.CustomBorders = CustomBorders; //# -},{"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"plugins":55}],73:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,"plugins":57}],75:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { DragToScroll: {get: function() { @@ -14269,7 +14566,7 @@ Handsontable.hooks.add('afterOnCellCornerMouseDown', function() { Handsontable.plugins.DragToScroll = DragToScroll; //# -},{"eventManager":40,"plugins":55}],74:[function(require,module,exports){ +},{"eventManager":41,"plugins":57}],76:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnFreeze: {get: function() { @@ -14426,7 +14723,7 @@ var $ManualColumnFreeze = ManualColumnFreeze; registerPlugin('manualColumnFreeze', ManualColumnFreeze); //# -},{"_base":56,"plugins":55}],75:[function(require,module,exports){ +},{"_base":58,"plugins":57}],77:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnMove: {get: function() { @@ -14694,7 +14991,7 @@ Handsontable.hooks.register('beforeColumnMove'); Handsontable.hooks.register('afterColumnMove'); //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],76:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],78:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualColumnResize: {get: function() { @@ -14938,7 +15235,7 @@ var $ManualColumnResize = ManualColumnResize; registerPlugin('manualColumnResize', ManualColumnResize); //# -},{"_base.js":56,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],77:[function(require,module,exports){ +},{"_base.js":58,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],79:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualRowMove: {get: function() { @@ -15160,7 +15457,7 @@ Handsontable.hooks.register('beforeRowMove'); Handsontable.hooks.register('afterRowMove'); //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],78:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],80:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ManualRowResize: {get: function() { @@ -15402,7 +15699,7 @@ var $ManualRowResize = ManualRowResize; registerPlugin('manualRowResize', ManualRowResize); //# -},{"_base.js":56,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"plugins":55}],79:[function(require,module,exports){ +},{"_base.js":58,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"plugins":57}],81:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MergeCells: {get: function() { @@ -15940,7 +16237,7 @@ Handsontable.hooks.add('afterRemoveRow', onAfterRemoveRow); Handsontable.MergeCells = MergeCells; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":45,"plugins":55}],80:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":46,"plugins":57}],82:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { MultipleSelectionHandles: {get: function() { @@ -16227,7 +16524,7 @@ var $MultipleSelectionHandles = MultipleSelectionHandles; registerPlugin('multipleSelectionHandles', MultipleSelectionHandles); //# -},{"_base":56,"eventManager":40,"helpers/dom/element":44,"plugins":55}],81:[function(require,module,exports){ +},{"_base":58,"eventManager":41,"helpers/dom/element":45,"plugins":57}],83:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { ObserveChanges: {get: function() { @@ -16266,7 +16563,7 @@ function createObserver() { instance.resumeObservingChanges = function() { instance.observeChangesActive = true; }; - instance.observedData = instance.getData(); + instance.observedData = instance.getSourceData(); instance.observer = jsonpatch.observe(instance.observedData, function(patches) { if (instance.observeChangesActive) { runHookForOperation.call(instance, patches); @@ -16381,7 +16678,7 @@ function afterTableAlter() { } //# -},{"jsonpatch":"jsonpatch","plugins":55}],82:[function(require,module,exports){ +},{"jsonpatch":"jsonpatch","plugins":57}],84:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { HandsontablePersistentState: {get: function() { @@ -16493,7 +16790,7 @@ Handsontable.hooks.add('beforeInit', htPersistentState.init); Handsontable.hooks.add('afterUpdateSettings', htPersistentState.init); //# -},{"plugins":55}],83:[function(require,module,exports){ +},{"plugins":57}],85:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_helpers_47_dom_47_element__, $___46__46__47__46__46__47_renderers__; @@ -16601,7 +16898,7 @@ Handsontable.hooks.add('afterInit', init); Handsontable.hooks.add('afterUpdateSettings', init); //# -},{"helpers/dom/element":44,"renderers":86}],84:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],86:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TouchScroll: {get: function() { @@ -16714,7 +17011,7 @@ var $TouchScroll = TouchScroll; registerPlugin('touchScroll', TouchScroll); //# -},{"_base":56,"helpers/dom/element":44,"plugins":55}],85:[function(require,module,exports){ +},{"_base":58,"helpers/dom/element":45,"plugins":57}],87:[function(require,module,exports){ "use strict"; var $___46__46__47__46__46__47_helpers_47_object__, $___46__46__47__46__46__47_helpers_47_dom_47_event__; @@ -16742,7 +17039,7 @@ Handsontable.UndoRedo = function(instance) { plugin.done(action); }); instance.addHook('beforeRemoveRow', function(index, amount) { - var originalData = plugin.instance.getData(); + var originalData = plugin.instance.getSourceData(); index = (originalData.length + index) % originalData.length; var removedData = originalData.slice(index, index + amount); var action = new Handsontable.UndoRedo.RemoveRowAction(index, removedData); @@ -16756,7 +17053,7 @@ Handsontable.UndoRedo = function(instance) { plugin.done(action); }); instance.addHook('beforeRemoveCol', function(index, amount) { - var originalData = plugin.instance.getData(); + var originalData = plugin.instance.getSourceData(); index = (plugin.instance.countCols() + index) % plugin.instance.countCols(); var removedData = []; for (var i = 0, @@ -16877,7 +17174,7 @@ inherit(Handsontable.UndoRedo.RemoveRowAction, Handsontable.UndoRedo.Action); Handsontable.UndoRedo.RemoveRowAction.prototype.undo = function(instance, undoneCallback) { var spliceArgs = [this.index, 0]; Array.prototype.push.apply(spliceArgs, this.data); - Array.prototype.splice.apply(instance.getData(), spliceArgs); + Array.prototype.splice.apply(instance.getSourceData(), spliceArgs); instance.addHookOnce('afterRender', undoneCallback); instance.render(); }; @@ -16936,7 +17233,7 @@ Handsontable.UndoRedo.RemoveColumnAction.prototype.undo = function(instance, und var row, spliceArgs; for (var i = 0, - len = instance.getData().length; i < len; i++) { + len = instance.getSourceData().length; i < len; i++) { row = instance.getSourceDataAtRow(i); spliceArgs = [this.index, 0]; Array.prototype.push.apply(spliceArgs, this.data[i]); @@ -17020,7 +17317,7 @@ Handsontable.hooks.add('afterInit', init); Handsontable.hooks.add('afterUpdateSettings', init); //# -},{"helpers/dom/event":45,"helpers/object":49}],86:[function(require,module,exports){ +},{"helpers/dom/event":46,"helpers/object":50}],88:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { registerRenderer: {get: function() { @@ -17065,7 +17362,7 @@ function hasRenderer(rendererName) { ; //# -},{"helpers/string":51}],87:[function(require,module,exports){ +},{"helpers/string":52}],89:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { cellDecorator: {get: function() { @@ -17107,7 +17404,7 @@ function cellDecorator(instance, TD, row, col, prop, value, cellProperties) { } //# -},{"helpers/dom/element":44,"renderers":86}],88:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],90:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { autocompleteRenderer: {get: function() { @@ -17164,7 +17461,7 @@ function autocompleteRenderer(instance, TD, row, col, prop, value, cellPropertie registerRenderer('autocomplete', autocompleteRenderer); //# -},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":40,"helpers/dom/element":44,"renderers":86}],89:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"eventManager":41,"helpers/dom/element":45,"renderers":88}],91:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { checkboxRenderer: {get: function() { @@ -17321,7 +17618,7 @@ function preventDefault(event) { } //# -},{"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/string":51,"helpers/unicode":52,"renderers":86}],90:[function(require,module,exports){ +},{"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/string":52,"helpers/unicode":53,"renderers":88}],92:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { htmlRenderer: {get: function() { @@ -17343,7 +17640,7 @@ function htmlRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('html', htmlRenderer); //# -},{"helpers/dom/element":44,"renderers":86}],91:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],93:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { numericRenderer: {get: function() { @@ -17375,7 +17672,7 @@ function numericRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('numeric', numericRenderer); //# -},{"helpers/dom/element":44,"helpers/number":48,"numeral":"numeral","renderers":86}],92:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/number":49,"numeral":"numeral","renderers":88}],94:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { passwordRenderer: {get: function() { @@ -17402,7 +17699,7 @@ function passwordRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('password', passwordRenderer); //# -},{"helpers/dom/element":44,"renderers":86}],93:[function(require,module,exports){ +},{"helpers/dom/element":45,"renderers":88}],95:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { textRenderer: {get: function() { @@ -17445,7 +17742,7 @@ function textRenderer(instance, TD, row, col, prop, value, cellProperties) { registerRenderer('text', textRenderer); //# -},{"helpers/dom/element":44,"helpers/mixed":47,"renderers":86}],94:[function(require,module,exports){ +},{"helpers/dom/element":45,"helpers/mixed":48,"renderers":88}],96:[function(require,module,exports){ "use strict"; (function(global) { 'use strict'; @@ -17828,7 +18125,7 @@ registerRenderer('text', textRenderer); })(); //# -},{}],95:[function(require,module,exports){ +},{}],97:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { TableView: {get: function() { @@ -17865,6 +18162,7 @@ function TableView(instance) { this.eventManager = eventManagerObject(instance); this.instance = instance; this.settings = instance.getSettings(); + this.selectionMouseDown = false; var originalStyle = instance.rootElement.getAttribute('style'); if (originalStyle) { instance.rootElement.setAttribute('data-originalstyle', originalStyle); @@ -17882,12 +18180,22 @@ function TableView(instance) { instance.table = table; instance.container.insertBefore(table, instance.container.firstChild); this.eventManager.addEventListener(instance.rootElement, 'mousedown', function(event) { + this.selectionMouseDown = true; if (!that.isTextSelectionAllowed(event.target)) { clearTextSelection(); event.preventDefault(); window.focus(); } }); + this.eventManager.addEventListener(instance.rootElement, 'mouseup', function(event) { + this.selectionMouseDown = false; + }); + this.eventManager.addEventListener(instance.rootElement, 'mousemove', function(event) { + if (this.selectionMouseDown && !that.isTextSelectionAllowed(event.target)) { + clearTextSelection(); + event.preventDefault(); + } + }); this.eventManager.addEventListener(document.documentElement, 'keyup', function(event) { if (instance.selection.isInProgress() && !event.shiftKey) { instance.selection.finish(); @@ -17939,7 +18247,7 @@ function TableView(instance) { } }); this.eventManager.addEventListener(table, 'selectstart', function(event) { - if (that.settings.fragmentSelection) { + if (that.settings.fragmentSelection || isInput(event.target)) { return; } event.preventDefault(); @@ -18002,8 +18310,12 @@ function TableView(instance) { table: table, stretchH: this.settings.stretchH, data: instance.getDataAtCell, - totalRows: instance.countRows, - totalColumns: instance.countCols, + totalRows: (function() { + return instance.countRows(); + }), + totalColumns: (function() { + return instance.countCols(); + }), fixedColumnsLeft: function() { return that.settings.fixedColumnsLeft; }, @@ -18018,24 +18330,24 @@ function TableView(instance) { }, renderAllRows: that.settings.renderAllRows, rowHeaders: function() { - var arr = []; + var headerRenderers = []; if (instance.hasRowHeaders()) { - arr.push(function(index, TH) { - that.appendRowHeader(index, TH); + headerRenderers.push(function(row, TH) { + that.appendRowHeader(row, TH); }); } - Handsontable.hooks.run(instance, 'afterGetRowHeaderRenderers', arr); - return arr; + Handsontable.hooks.run(instance, 'afterGetRowHeaderRenderers', headerRenderers); + return headerRenderers; }, columnHeaders: function() { - var arr = []; + var headerRenderers = []; if (instance.hasColHeaders()) { - arr.push(function(index, TH) { - that.appendColHeader(index, TH); + headerRenderers.push(function(column, TH) { + that.appendColHeader(column, TH); }); } - Handsontable.hooks.run(instance, 'afterGetColumnHeaderRenderers', arr); - return arr; + Handsontable.hooks.run(instance, 'afterGetColumnHeaderRenderers', headerRenderers); + return headerRenderers; }, columnWidth: instance.getColWidth, rowHeight: instance.getRowHeight, @@ -18208,11 +18520,23 @@ TableView.prototype.isTextSelectionAllowed = function(el) { if (isInput(el)) { return true; } - if (this.settings.fragmentSelection && isChildOf(el, this.TBODY)) { + var isChildOfTableBody = isChildOf(el, this.instance.view.wt.wtTable.spreader); + if (this.settings.fragmentSelection === true && isChildOfTableBody) { + return true; + } + if (this.settings.fragmentSelection === 'cell' && this.isSelectedOnlyCell() && isChildOfTableBody) { return true; } return false; }; +TableView.prototype.isSelectedOnlyCell = function() { + var $__6 = this.instance.getSelected() || [], + row = $__6[0], + col = $__6[1], + rowEnd = $__6[2], + colEnd = $__6[3]; + return row !== void 0 && row === rowEnd && col === colEnd; +}; TableView.prototype.isCellEdited = function() { var activeEditor = this.instance.getActiveEditor(); return activeEditor && activeEditor.isOpened(); @@ -18266,12 +18590,12 @@ TableView.prototype.appendRowHeader = function(row, TH) { TableView.prototype.appendColHeader = function(col, TH) { if (TH.firstChild) { var container = TH.firstChild; - if (!hasClass(container, 'relative')) { + if (hasClass(container, 'relative')) { + this.updateCellHeader(container.querySelector('.colHeader'), col, this.instance.getColHeader); + } else { empty(TH); - this.appendRowHeader(col, TH); - return; + this.appendColHeader(col, TH); } - this.updateCellHeader(container.querySelector('.colHeader'), col, this.instance.getColHeader); } else { var div = document.createElement('div'); var span = document.createElement('span'); @@ -18311,7 +18635,7 @@ TableView.prototype.destroy = function() { ; //# -},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,"eventManager":40,"helpers/dom/element":44,"helpers/dom/event":45}],96:[function(require,module,exports){ +},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,"eventManager":41,"helpers/dom/element":45,"helpers/dom/event":46}],98:[function(require,module,exports){ "use strict"; Object.defineProperties(exports, { GhostTable: {get: function() { @@ -18536,7 +18860,7 @@ Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.GhostTable = GhostTable; //# -},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],97:[function(require,module,exports){ +},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],99:[function(require,module,exports){ "use strict"; var $__7; Object.defineProperties(exports, { @@ -18650,7 +18974,7 @@ Handsontable.utils = Handsontable.utils || {}; Handsontable.utils.SamplesGenerator = SamplesGenerator; //# -},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],98:[function(require,module,exports){ +},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],100:[function(require,module,exports){ "use strict"; var $___46__46__47_helpers_47_mixed__; var stringify = ($___46__46__47_helpers_47_mixed__ = require("helpers/mixed"), $___46__46__47_helpers_47_mixed__ && $___46__46__47_helpers_47_mixed__.__esModule && $___46__46__47_helpers_47_mixed__ || {default: $___46__46__47_helpers_47_mixed__}).stringify; @@ -18685,7 +19009,7 @@ function process(value, callback) { } //# -},{"helpers/mixed":47}],99:[function(require,module,exports){ +},{"helpers/mixed":48}],101:[function(require,module,exports){ "use strict"; var $__moment__, $___46__46__47_editors__; @@ -18731,7 +19055,7 @@ var correctFormat = function correctFormat(value, dateFormat) { }; //# -},{"editors":28,"moment":undefined}],100:[function(require,module,exports){ +},{"editors":29,"moment":undefined}],102:[function(require,module,exports){ "use strict"; Handsontable.NumericValidator = function(value, callback) { if (value === null) { @@ -20332,5 +20656,5 @@ if (typeof exports !== "undefined") { }).call(window); //# -},{}]},{},[23,57,59,58,60,81,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,82,83,84,85,98,99,100,88,89,90,91,92,93,30,34,31,32,39,33,35,36,37,38])("numeral") +},{}]},{},[23,59,61,60,62,83,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,84,85,86,87,100,101,102,90,91,92,93,94,95,31,35,32,33,40,34,36,37,38,39])("numeral") }); \ No newline at end of file diff --git a/dist/handsontable.min.css b/dist/handsontable.min.css index 9f1cb2cedce..e51e70b929d 100644 --- a/dist/handsontable.min.css +++ b/dist/handsontable.min.css @@ -1,12 +1,12 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright 2015 Handsoncode sp. z o.o. * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable .wtHider{width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;max-width:none;max-height:none}.handsontable col{width:50px}.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-right:1px solid #CCC;border-bottom:1px solid #CCC;height:22px;empty-cells:show;line-height:21px;padding:0 4px 0 4px;background-color:#FFF;vertical-align:top;overflow:hidden;outline-width:0;white-space:pre-line}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable th:last-child{border-right:1px solid #CCC;border-bottom:1px solid #CCC}.handsontable tr:first-child th.htNoFrame,.handsontable th:first-child.htNoFrame,.handsontable th.htNoFrame{border-left-width:0;background-color:white;border-color:#FFF}.handsontable th:first-child,.handsontable td:first-of-type,.handsontable .htNoFrame+th,.handsontable .htNoFrame+td{border-left:1px solid #CCC}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #CCC}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #CCC}.ht_master:not(.innerBorderLeft) ~ .handsontable tbody tr th,.ht_master:not(.innerBorderLeft) ~ .handsontable:not(.ht_clone_top) thead tr th:first-child{border-right-width:0}.ht_master:not(.innerBorderTop) thead tr:last-child th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop) thead tr.lastChild th,.ht_master:not(.innerBorderTop) ~ .handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#EEE;color:#222;text-align:center;font-weight:normal;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#CCC}.handsontable thead th .relative{padding:2px 4px}.handsontable .manualColumnMover{position:fixed;left:0;top:0;background-color:transparent;width:5px;height:25px;z-index:999;cursor:move}.handsontable .manualRowMover{position:fixed;left:-4px;top:0;background-color:transparent;height:5px;width:50px;z-index:999;cursor:move}.handsontable .manualColumnMoverGuide,.handsontable .manualRowMoverGuide{position:fixed;left:0;top:0;background-color:#CCC;width:25px;height:25px;opacity:.7;display:none}.handsontable .manualColumnMoverGuide.active,.handsontable .manualRowMoverGuide.active{display:block}.handsontable .manualColumnMover:hover,.handsontable .manualColumnMover.active,.handsontable .manualRowMover:hover,.handsontable .manualRowMover.active{background-color:#88F}.handsontable .manualColumnResizer{position:fixed;top:0;cursor:col-resize;z-index:110;width:5px;height:25px}.handsontable .manualRowResizer{position:fixed;left:0;cursor:row-resize;z-index:110;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#AAB}.handsontable .manualColumnResizerGuide{position:fixed;right:0;top:0;background-color:#AAB;display:none;width:0;border-right:1px dashed #777;margin-left:5px}.handsontable .manualRowResizerGuide{position:fixed;left:0;bottom:0;background-color:#AAB;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block}.handsontable .columnSorting{position:relative}.handsontable .columnSorting:hover{text-decoration:underline;cursor:pointer}.handsontable .columnSorting.ascending::after{content:'\25B2';color:#5f5f5f;position:absolute;right:-15px}.handsontable .columnSorting.descending::after{content:'\25BC';color:#5f5f5f;position:absolute;right:-15px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn::after,.handsontable th.afterHiddenColumn::before{content:'\25C0';color:#bbb;position:absolute;right:1px;top:2px;font-size:5pt}.handsontable th.afterHiddenColumn{position:relative}.handsontable th.afterHiddenColumn::before{left:1px;top:2px;right:auto;content:'\25B6'}.handsontable td.afterHiddenColumn.firstVisible{border-left:1px solid #CCC}.handsontable thead th.hiddenHeader{display:none}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable td.area{background:-moz-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,rgba(181,209,255,0.34)),color-stop(100%,rgba(181,209,255,0.34)));background:-webkit-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-o-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:-ms-linear-gradient(top,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);background:linear-gradient(to bottom,rgba(181,209,255,0.34) 0,rgba(181,209,255,0.34) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#57b5d1ff',endColorstr='#57b5d1ff',GradientType=0);background-color:#fff}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.handsontable .htBorder.htFillBorder{background:red;width:1px;height:1px}.handsontableInput{border:0;outline-width:0;margin:0;padding:1px 5px 0 5px;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:inline-block;color:#000;border-radius:0;background-color:#FFF}.handsontableInputHolder{position:absolute;top:0;left:0;z-index:100}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:'â–¶';color:#777;position:absolute;right:5px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#EEE;cursor:default;width:16px;text-align:center}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;width:100%}.handsontable .htNumeric{text-align:right}.htCommentCell{position:relative}.htCommentCell:after{content:'';position:absolute;top:0;right:0;border-left:6px solid transparent;border-top:6px solid red}@-webkit-keyframes opacity-hide{from{opacity:1}to{opacity:0}}@keyframes opacity-hide{from{opacity:1}to{opacity:0}}@-webkit-keyframes opacity-show{from{opacity:0}to{opacity:1}}@keyframes opacity-show{from{opacity:0}to{opacity:1}}.handsontable .handsontable.ht_clone_top .wtHider{padding:0 0 5px 0}.handsontable .autocompleteEditor.handsontable{padding-right:17px}.handsontable .autocompleteEditor.handsontable.htMacScroll{padding-right:15px}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{border:1px solid #ccc;border-collapse:separate;background:white}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_clone_top{z-index:101}.ht_clone_left{z-index:102}.ht_clone_top_left_corner,.ht_clone_bottom_left_corner{z-index:103}.ht_clone_debug{z-index:103}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.htBordered{border-width:1px}.htBordered.htTopBorderSolid{border-top-style:solid;border-top-color:#000}.htBordered.htRightBorderSolid{border-right-style:solid;border-right-color:#000}.htBordered.htBottomBorderSolid{border-bottom-style:solid;border-bottom-color:#000}.htBordered.htLeftBorderSolid{border-left-style:solid;border-left-color:#000}.htCommentTextArea{-moz-box-shadow:1px 1px 2px #bbb;-webkit-box-shadow:1px 1px 2px #bbb;background-color:#fffacd;border:1px solid #999;box-shadow:1px 1px 2px #bbb;font-family:'Arial'}.handsontable tbody tr th:nth-last-child(2){border-right:1px solid #CCC}.handsontable thead tr:nth-last-child(2) th.htGroupIndicatorContainer{border-bottom:1px solid #CCC;padding-bottom:5px}.ht_clone_top_left_corner thead tr th:nth-last-child(2){border-right:1px solid #CCC}.htCollapseButton{width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;margin-bottom:3px;position:relative}.htCollapseButton:after{content:"";height:300%;width:1px;display:block;background:#ccc;margin-left:4px;position:absolute;bottom:10px}thead .htCollapseButton{right:5px;position:absolute;top:5px;background:#fff}thead .htCollapseButton:after{height:1px;width:700%;right:10px;top:4px}.handsontable tr th .htExpandButton{position:absolute;width:10px;height:10px;line-height:10px;text-align:center;border-radius:5px;border:1px solid #f3f3f3;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.4);box-shadow:1px 1px 3px rgba(0,0,0,0.4);cursor:pointer;top:0;display:none}.handsontable thead tr th .htExpandButton{top:5px}.handsontable tr th .htExpandButton.clickable{display:block}.collapsibleIndicator{position:absolute;top:50%;transform:translate(0%,-50%);right:5px;border:1px solid #a6a6a6;line-height:10px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgba(238,238,238,1);-moz-box-shadow:0 0 0 6px rgba(238,238,238,1);box-shadow:0 0 0 6px rgba(238,238,238,1);background:#eee}.handsontable col.hidden{width:0!important}.handsontable table tr th.lightRightBorder{border-right:1px solid #e6e6e6}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_left,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.ht_clone_left .wtHolder{overflow-x:hidden;overflow-y:auto}.ht_clone_top .wtHolder,.ht_clone_bottom .wtHolder{overflow-x:auto;overflow-y:hidden}.wtDebugHidden{display:none}.wtDebugVisible{display:block;-webkit-animation-duration:.5s;-webkit-animation-name:wtFadeInFromNone;animation-duration:.5s;animation-name:wtFadeInFromNone}@keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}@-webkit-keyframes wtFadeInFromNone{0%{display:none;opacity:0}1%{display:block;opacity:0}100%{display:block;opacity:1}}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.htMobileEditorContainer{display:none;position:absolute;top:0;width:70%;height:54pt;background:#f8f8f8;border-radius:20px;border:1px solid #ebebeb;z-index:999;box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-text-size-adjust:none}.topLeftSelectionHandle:not(.ht_master .topLeftSelectionHandle),.topLeftSelectionHandle-HitArea:not(.ht_master .topLeftSelectionHandle-HitArea){z-index:9999}.topLeftSelectionHandle,.topLeftSelectionHandle-HitArea,.bottomRightSelectionHandle,.bottomRightSelectionHandle-HitArea{left:-10000px;top:-10000px}.htMobileEditorContainer.active{display:block}.htMobileEditorContainer .inputs{position:absolute;right:210pt;bottom:10pt;top:10pt;left:14px;height:34pt}.htMobileEditorContainer .inputs textarea{font-size:13pt;border:1px solid #a1a1a1;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;position:absolute;left:14px;right:14px;top:0;bottom:0;padding:7pt}.htMobileEditorContainer .cellPointer{position:absolute;top:-13pt;height:0;width:0;left:30px;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #ebebeb}.htMobileEditorContainer .cellPointer.hidden{display:none}.htMobileEditorContainer .cellPointer:before{content:'';display:block;position:absolute;top:2px;height:0;width:0;left:-13pt;border-left:13pt solid transparent;border-right:13pt solid transparent;border-bottom:13pt solid #f8f8f8}.htMobileEditorContainer .moveHandle{position:absolute;top:10pt;left:5px;width:30px;bottom:0;cursor:move;z-index:9999}.htMobileEditorContainer .moveHandle:after{content:"..\a..\a..\a..";white-space:pre;line-height:10px;font-size:20pt;display:inline-block;margin-top:-8px;color:#ebebeb}.htMobileEditorContainer .positionControls{width:205pt;position:absolute;right:5pt;top:0;bottom:0}.htMobileEditorContainer .positionControls>div{width:50pt;height:100%;float:left}.htMobileEditorContainer .positionControls>div:after{content:" ";display:block;width:15pt;height:15pt;text-align:center;line-height:50pt}.htMobileEditorContainer .leftButton:after,.htMobileEditorContainer .rightButton:after,.htMobileEditorContainer .upButton:after,.htMobileEditorContainer .downButton:after{transform-origin:5pt 5pt;-webkit-transform-origin:5pt 5pt;margin:21pt 0 0 21pt}.htMobileEditorContainer .leftButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(-45deg)}.htMobileEditorContainer .leftButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .rightButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(135deg)}.htMobileEditorContainer .rightButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .upButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(45deg)}.htMobileEditorContainer .upButton:active:after{border-color:#cfcfcf}.htMobileEditorContainer .downButton:after{border-top:2px solid #288ffe;border-left:2px solid #288ffe;-webkit-transform:rotate(225deg)}.htMobileEditorContainer .downButton:active:after{border-color:#cfcfcf}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}/*! * Handsontable ContextMenu - */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden} \ No newline at end of file + */.htContextMenu{display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_left,.htContextMenu .ht_clone_corner,.htContextMenu .ht_clone_debug{display:none}.htContextMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:white;border-width:0;padding:4px 6px 0 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #bbb;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden} \ No newline at end of file diff --git a/dist/handsontable.min.js b/dist/handsontable.min.js index c4fee232a77..a67d2f3611a 100644 --- a/dist/handsontable.min.js +++ b/dist/handsontable.min.js @@ -1,5 +1,5 @@ /*! - * Handsontable 0.19.0 + * Handsontable 0.20.0 * Handsontable is a JavaScript library for editable tables with basic copy-paste compatibility with Excel and Google Docs * * Copyright (c) 2012-2014 Marcin Warpechowski @@ -7,18 +7,18 @@ * Licensed under the MIT license. * http://handsontable.com/ * - * Date: Fri Oct 02 2015 12:37:12 GMT+0200 (CEST) + * Date: Tue Nov 03 2015 14:30:34 GMT+0100 (CET) */ -window.Handsontable={version:"0.19.0",buildDate:"Fri Oct 02 2015 12:37:12 GMT+0200 (CEST)"},function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Handsontable=e()}}(function(){var e;return function(e,t,n){return function o(e,t,n){function r(l,a){if(!t[l]){if(!e[l]){var u="function"==typeof require&&require;if(!a&&u)return u(l,!0);if(i)return i(l,!0);if(s[l]&&"undefined"!=typeof window[s[l]])return window[s[l]];var c=new Error("Cannot find module '"+l+"'");throw c.code="MODULE_NOT_FOUND",c}var d=t[l]={exports:{}};e[l][0].call(d.exports,function(t){var n=e[l][1][t];return r(n?n:t)},d,d.exports,o,e,t,n)}return t[l].exports}for(var i="function"==typeof require&&require,s=JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","pikaday":"Pikaday"}')||{},l=0;l1)for(t=1,o=arguments.length;o>t;t++)r.push(arguments[t]);if(a){if("undefined"==typeof a[e])throw new Error("Handsontable do not provide action: "+e);i=a[e].apply(a,r),"destroy"===e&&l.removeData()}return i}}(window,jQuery,Handsontable)},{}],2:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableBorder:{get:function(){return C}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=a.getComputedStyle,c=a.getTrimmingContainer,d=a.innerWidth,h=a.innerHeight,f=a.offset,g=a.outerHeight,p=a.outerWidth,m=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}).stopImmediatePropagation,w=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,v=(s=e("cell/coords"),s&&s.__esModule&&s||{"default":s}).WalkontableCellCoords,b=(l=e("overlay/_base.js"),l&&l.__esModule&&l||{"default":l}).WalkontableOverlay,C=function(e,t){t&&(this.eventManager=new w(e),this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.left=null,this.bottom=null,this.right=null,this.topStyle=null,this.leftStyle=null,this.bottomStyle=null,this.rightStyle=null,this.cornerDefaultStyle={width:"5px",height:"5px",borderWidth:"2px",borderStyle:"solid",borderColor:"#FFF"},this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())};$traceurRuntime.createClass(C,{registerListeners:function(){var e=this;this.eventManager.addEventListener(document.body,"mousedown",function(){return e.onMouseDown()}),this.eventManager.addEventListener(document.body,"mouseup",function(){return e.onMouseUp()});for(var t=0,n=this.main.childNodes.length;n>t;t++)this.eventManager.addEventListener(this.main.childNodes[t],"mouseenter",function(t){return e.onMouseEnter(t)})},onMouseDown:function(){this.mouseDown=!0},onMouseUp:function(){this.mouseDown=!1},onMouseEnter:function(e){function t(e){return e.clientYMath.ceil(r.top+r.height)?!0:e.clientXMath.ceil(r.left+r.width)?!0:void 0}function n(e){t(e)&&(o.eventManager.removeEventListener(document.body,"mousemove",n),o.style.display="block")}if(this.mouseDown&&this.wot.getSetting("hideBorderOnMouseDownOver")){e.preventDefault(),m(e);var o=this,r=this.getBoundingClientRect();this.style.display="none",this.eventManager.addEventListener(document.body,"mousemove",n)}},createBorders:function(e){this.main=document.createElement("div");var t=["top","left","bottom","right","corner"],n=this.main.style;n.position="absolute",n.top=0,n.left=0;for(var o=0;5>o;o++){var r=t[o],i=document.createElement("div");i.className="wtBorder "+(this.settings.className||""),this.settings[r]&&this.settings[r].hide&&(i.className+=" hidden"),n=i.style,n.backgroundColor=this.settings[r]&&this.settings[r].color?this.settings[r].color:e.border.color,n.height=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",n.width=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",this.main.appendChild(i)}this.top=this.main.childNodes[0],this.left=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.right=this.main.childNodes[3],this.topStyle=this.top.style,this.leftStyle=this.left.style,this.bottomStyle=this.bottom.style,this.rightStyle=this.right.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),Handsontable.mobileBrowser&&this.createMultipleSelectorHandles(),this.disappear(),this.wot.wtTable.bordersHolder||(this.wot.wtTable.bordersHolder=document.createElement("div"),this.wot.wtTable.bordersHolder.className="htBorders",this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),this.wot.wtTable.bordersHolder.insertBefore(this.main,this.wot.wtTable.bordersHolder.firstChild)},createMultipleSelectorHandles:function(){this.selectionHandles={topLeft:document.createElement("DIV"),topLeftHitArea:document.createElement("DIV"),bottomRight:document.createElement("DIV"),bottomRightHitArea:document.createElement("DIV")};var e=10,t=40;this.selectionHandles.topLeft.className="topLeftSelectionHandle",this.selectionHandles.topLeftHitArea.className="topLeftSelectionHandle-HitArea",this.selectionHandles.bottomRight.className="bottomRightSelectionHandle",this.selectionHandles.bottomRightHitArea.className="bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={topLeft:this.selectionHandles.topLeft.style,topLeftHitArea:this.selectionHandles.topLeftHitArea.style,bottomRight:this.selectionHandles.bottomRight.style,bottomRightHitArea:this.selectionHandles.bottomRightHitArea.style};var n={position:"absolute",height:t+"px",width:t+"px","border-radius":parseInt(t/1.5,10)+"px"};for(var o in n)n.hasOwnProperty(o)&&(this.selectionHandles.styles.bottomRightHitArea[o]=n[o],this.selectionHandles.styles.topLeftHitArea[o]=n[o]);var r={position:"absolute",height:e+"px",width:e+"px","border-radius":parseInt(e/1.5,10)+"px",background:"#F5F5FF",border:"1px solid #4285c8"};for(var i in r)r.hasOwnProperty(i)&&(this.selectionHandles.styles.bottomRight[i]=r[i],this.selectionHandles.styles.topLeft[i]=r[i]);this.main.appendChild(this.selectionHandles.topLeft),this.main.appendChild(this.selectionHandles.bottomRight),this.main.appendChild(this.selectionHandles.topLeftHitArea),this.main.appendChild(this.selectionHandles.bottomRightHitArea)},isPartRange:function(e,t){return!this.wot.selections.area.cellRange||e==this.wot.selections.area.cellRange.to.row&&t==this.wot.selections.area.cellRange.to.col?!1:!0},updateMultipleSelectionHandlesPosition:function(e,t,n,o,r,i){var s=parseInt(this.selectionHandles.styles.topLeft.width,10),l=parseInt(this.selectionHandles.styles.topLeftHitArea.width,10);this.selectionHandles.styles.topLeft.top=parseInt(n-s,10)+"px",this.selectionHandles.styles.topLeft.left=parseInt(o-s,10)+"px",this.selectionHandles.styles.topLeftHitArea.top=parseInt(n-l/4*3,10)+"px",this.selectionHandles.styles.topLeftHitArea.left=parseInt(o-l/4*3,10)+"px",this.selectionHandles.styles.bottomRight.top=parseInt(n+i,10)+"px",this.selectionHandles.styles.bottomRight.left=parseInt(o+r,10)+"px",this.selectionHandles.styles.bottomRightHitArea.top=parseInt(n+i-l/4,10)+"px",this.selectionHandles.styles.bottomRightHitArea.left=parseInt(o+r-l/4,10)+"px",this.settings.border.multipleSelectionHandlesVisible&&this.settings.border.multipleSelectionHandlesVisible()?(this.selectionHandles.styles.topLeft.display="block",this.selectionHandles.styles.topLeftHitArea.display="block",this.isPartRange(e,t)?(this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"):(this.selectionHandles.styles.bottomRight.display="block",this.selectionHandles.styles.bottomRightHitArea.display="block")):(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.topLeftHitArea.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"),e==this.wot.wtSettings.getSetting("fixedRowsTop")||t==this.wot.wtSettings.getSetting("fixedColumnsLeft")?(this.selectionHandles.styles.topLeft.zIndex="9999",this.selectionHandles.styles.topLeftHitArea.zIndex="9999"):(this.selectionHandles.styles.topLeft.zIndex="",this.selectionHandles.styles.topLeftHitArea.zIndex="")},appear:function(e){if(!this.disabled){var t,n,o,r,i,s,l,a,m,w,C,y,R,E,S,T,O,_,M;M=b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_TOP)||b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_BOTTOM)||b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedRowsBottom"):this.wot.wtTable.getRenderedRowsCount();for(var H=0;M>H;H++){var k=this.wot.wtTable.rowFilter.renderedToSource(H);if(k>=e[0]&&k<=e[2]){R=k;break}}for(var A=M-1;A>=0;A--){var P=this.wot.wtTable.rowFilter.renderedToSource(A);if(P>=e[0]&&P<=e[2]){S=P;break}}M=this.wot.wtTable.getRenderedColumnsCount();for(var x=0;M>x;x++){var D=this.wot.wtTable.columnFilter.renderedToSource(x);if(D>=e[1]&&D<=e[3]){E=D;break}}for(var L=M-1;L>=0;L--){var N=this.wot.wtTable.columnFilter.renderedToSource(L);if(N>=e[1]&&N<=e[3]){T=N;break}}if(void 0===R||void 0===E)return void this.disappear();t=R!==S||E!==T,n=this.wot.wtTable.getCell(new v(R,E)),o=t?this.wot.wtTable.getCell(new v(S,T)):n,r=f(n),i=t?f(o):r,s=f(this.wot.wtTable.TABLE),a=r.top,C=i.top+g(o)-a,w=r.left,y=i.left+p(o)-w,l=a-s.top-1,m=w-s.left-1;var W=u(n);parseInt(W.borderTopWidth,10)>0&&(l+=1,C=C>0?C-1:0),parseInt(W.borderLeftWidth,10)>0&&(m+=1,y=y>0?y-1:0),this.topStyle.top=l+"px",this.topStyle.left=m+"px",this.topStyle.width=y+"px",this.topStyle.display="block",this.leftStyle.top=l+"px",this.leftStyle.left=m+"px",this.leftStyle.height=C+"px",this.leftStyle.display="block";var I=Math.floor(this.settings.border.width/2);this.bottomStyle.top=l+C-I+"px",this.bottomStyle.left=m+"px",this.bottomStyle.width=y+"px",this.bottomStyle.display="block",this.rightStyle.top=l+"px",this.rightStyle.left=m+y-I+"px",this.rightStyle.height=C+1+"px",this.rightStyle.display="block",Handsontable.mobileBrowser||!this.hasSetting(this.settings.border.cornerVisible)||this.isPartRange(S,T)?this.cornerStyle.display="none":(this.cornerStyle.top=l+C-4+"px",this.cornerStyle.left=m+y-4+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="block",O=c(this.wot.wtTable.TABLE),T===this.wot.getSetting("totalColumns")-1&&(_=o.offsetLeft+p(o)>=d(O),_&&(this.cornerStyle.left=Math.floor(m+y-3-parseInt(this.cornerDefaultStyle.width)/2)+"px",this.cornerStyle.borderRightWidth=0)),S===this.wot.getSetting("totalRows")-1&&(_=o.offsetTop+g(o)>=h(O),_&&(this.cornerStyle.top=Math.floor(l+C-3-parseInt(this.cornerDefaultStyle.height)/2)+"px",this.cornerStyle.borderBottomWidth=0))),Handsontable.mobileBrowser&&this.updateMultipleSelectionHandlesPosition(R,E,l,m,y,C)}},disappear:function(){this.topStyle.display="none",this.leftStyle.display="none",this.bottomStyle.display="none",this.rightStyle.display="none",this.cornerStyle.display="none",Handsontable.mobileBrowser&&(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none")},hasSetting:function(e){return"function"==typeof e?e():!!e}},{}),window.WalkontableBorder=C},{"cell/coords":5,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"overlay/_base.js":11}],3:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewportColumnsCalculator:{get:function(){return r}},__esModule:{value:!0}});var o=new WeakMap,r=function(e,t,n,r,i,s,l){o.set(this,{viewportWidth:e,scrollOffset:t,totalColumns:n,columnWidthFn:r,overrideFn:i,onlyFullyVisible:s}),this.count=0,this.startColumn=null,this.endColumn=null,this.startPosition=null,this.stretchAllRatio=0,this.stretchLastWidth=0,this.stretch=l,this.totalTargetWidth=0,this.needVerifyLastColumnWidth=!0,this.stretchAllColumnsWidth=[],this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e,t=0,n=!0,r=[],i=o.get(this),s=i.onlyFullyVisible,l=i.overrideFn,a=i.scrollOffset,u=i.totalColumns,c=i.viewportWidth,d=0;u>d;d++)if(e=this._getColumnWidth(d),a>=t&&!s&&(this.startColumn=d),t>=a&&a+c>=t+e&&(null==this.startColumn&&(this.startColumn=d),this.endColumn=d),r.push(t),t+=e,s||(this.endColumn=d),t>=a+c){n=!1;break}if(this.endColumn===u-1&&n)for(this.startColumn=this.endColumn;this.startColumn>0;){var h=r[this.endColumn]+e-r[this.startColumn-1];if((c>=h||!s)&&this.startColumn--,h>c)break}null!==this.startColumn&&l&&l(this),this.startPosition=r[this.startColumn],void 0==this.startPosition&&(this.startPosition=null),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)},refreshStretching:function(e){if("none"!==this.stretch){for(var t,n,r=0,i=o.get(this),s=i.totalColumns,l=0;s>l;l++)t=this._getColumnWidth(l),r+=t;this.totalTargetWidth=e,n=r-e,"all"===this.stretch&&0>n?(this.stretchAllRatio=e/r,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0):"last"===this.stretch&&e!==1/0&&(this.stretchLastWidth=-n+this._getColumnWidth(s-1))}},getStretchedColumnWidth:function(e,t){var n=null;return"all"===this.stretch&&0!==this.stretchAllRatio?n=this._getStretchedAllColumnWidth(e,t):"last"===this.stretch&&0!==this.stretchLastWidth&&(n=this._getStretchedLastColumnWidth(e)),n},_getStretchedAllColumnWidth:function(e,t){var n=0,r=o.get(this),i=r.totalColumns;if(this.stretchAllColumnsWidth[e]||(this.stretchAllColumnsWidth[e]=Math.round(t*this.stretchAllRatio)),this.stretchAllColumnsWidth.length===i&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(var s=0;sf;f++){var g=a(f);if(void 0===g&&(g=i.DEFAULT_HEIGHT),u>=e&&!s&&(this.startRow=f),e>=u&&u+d-h>=e+g&&(null===this.startRow&&(this.startRow=f),this.endRow=f),n.push(e),e+=g,s||(this.endRow=f),e>=u+d-h){t=!1;break}}if(this.endRow===c-1&&t)for(this.startRow=this.endRow;this.startRow>0;){var p=n[this.endRow]+g-n[this.startRow-1];if((d-h>=p||!s)&&this.startRow--,p>=d-h)break}null!==this.startRow&&l&&l(this),this.startPosition=n[this.startRow],void 0==this.startPosition&&(this.startPosition=null),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}},{get DEFAULT_HEIGHT(){return 23}}),window.WalkontableViewportRowsCalculator=r},{}],5:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellCoords:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t){"undefined"!=typeof e&&"undefined"!=typeof t?(this.row=e,this.col=t):(this.row=null,this.col=null)};$traceurRuntime.createClass(o,{isValid:function(e){return this.row<0||this.col<0?!1:this.row>=e.getSetting("totalRows")||this.col>=e.getSetting("totalColumns")?!1:!0},isEqual:function(e){return e===this?!0:this.row===e.row&&this.col===e.col},isSouthEastOf:function(e){return this.row>=e.row&&this.col>=e.col},isNorthWestOf:function(e){return this.row<=e.row&&this.col<=e.col},isSouthWestOf:function(e){return this.row>=e.row&&this.col<=e.col},isNorthEastOf:function(e){return this.row<=e.row&&this.col>=e.col}},{}),window.WalkontableCellCoords=o},{}],6:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellRange:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("cell/coords"),o&&o.__esModule&&o||{"default":o}).WalkontableCellCoords,i=function(e,t,n){this.highlight=e,this.from=t,this.to=n},s=i;$traceurRuntime.createClass(i,{isValid:function(e){return this.from.isValid(e)&&this.to.isValid(e)},isSingle:function(){return this.from.row===this.to.row&&this.from.col===this.to.col},getHeight:function(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1},getWidth:function(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1},includes:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.row<0&&(e.row=0),e.col<0&&(e.col=0),t.row<=e.row&&n.row>=e.row&&t.col<=e.col&&n.col>=e.col},includesRange:function(e){return this.includes(e.getTopLeftCorner())&&this.includes(e.getBottomRightCorner())},isEqual:function(e){return Math.min(this.from.row,this.to.row)==Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)==Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)==Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)==Math.max(e.from.col,e.to.col)},overlaps:function(e){return e.isSouthEastOf(this.getTopLeftCorner())&&e.isNorthWestOf(this.getBottomRightCorner())},isSouthEastOf:function(e){return this.getTopLeftCorner().isSouthEastOf(e)||this.getBottomRightCorner().isSouthEastOf(e)},isNorthWestOf:function(e){return this.getTopLeftCorner().isNorthWestOf(e)||this.getBottomRightCorner().isNorthWestOf(e)},expand:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.rown.row||e.col>n.col?(this.from=new r(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=new r(Math.max(n.row,e.row),Math.max(n.col,e.col)),!0):!1},expandByRange:function(e){if(this.includesRange(e)||!this.overlaps(e))return!1;var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=(this.getTopRightCorner(),this.getBottomLeftCorner(),e.getTopLeftCorner()),i=e.getBottomRightCorner(),l=Math.min(t.row,o.row),a=Math.min(t.col,o.col),u=Math.max(n.row,i.row),c=Math.max(n.col,i.col),d=new r(l,a),h=new r(u,c),f=new s(d,d,h).isCorner(this.from,e),g=e.isEqual(new s(d,d,h));return f&&!g&&(this.from.col>d.col&&(d.col=c,h.col=a),this.from.row>d.row&&(d.row=u,h.row=l)),this.from=d,this.to=h,!0},getDirection:function(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0},setDirection:function(e){switch(e){case"NW-SE":this.from=this.getTopLeftCorner(),this.to=this.getBottomRightCorner();break;case"NE-SW":this.from=this.getTopRightCorner(),this.to=this.getBottomLeftCorner();break;case"SE-NW":this.from=this.getBottomRightCorner(),this.to=this.getTopLeftCorner();break;case"SW-NE":this.from=this.getBottomLeftCorner(),this.to=this.getTopRightCorner()}},getTopLeftCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},getBottomRightCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getTopRightCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getBottomLeftCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},isCorner:function(e,t){return t&&t.includes(e)&&(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col))||this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col))||this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col))||this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))?!0:e.isEqual(this.getTopLeftCorner())||e.isEqual(this.getTopRightCorner())||e.isEqual(this.getBottomLeftCorner())||e.isEqual(this.getBottomRightCorner())},getOppositeCorner:function(e,t){if(!(e instanceof r))return!1;if(t&&t.includes(e)){if(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))return this.getBottomRightCorner();if(this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))return this.getBottomLeftCorner();if(this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))return this.getTopRightCorner();if(this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))return this.getTopLeftCorner()}return e.isEqual(this.getBottomRightCorner())?this.getTopLeftCorner():e.isEqual(this.getTopLeftCorner())?this.getBottomRightCorner():e.isEqual(this.getTopRightCorner())?this.getBottomLeftCorner():e.isEqual(this.getBottomLeftCorner())?this.getTopRightCorner():void 0},getBordersSharedWith:function(e){if(!this.includesRange(e))return[];var t={top:Math.min(this.from.row,this.to.row),bottom:Math.max(this.from.row,this.to.row),left:Math.min(this.from.col,this.to.col),right:Math.max(this.from.col,this.to.col)},n={top:Math.min(e.from.row,e.to.row),bottom:Math.max(e.from.row,e.to.row),left:Math.min(e.from.col,e.to.col),right:Math.max(e.from.col,e.to.col)},o=[];return t.top==n.top&&o.push("top"),t.right==n.right&&o.push("right"),t.bottom==n.bottom&&o.push("bottom"),t.left==n.left&&o.push("left"),o},getInner:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)this.from.row===o&&this.from.col===i||this.to.row===o&&this.to.col===i||n.push(new r(o,i));return n},getAll:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)e.row===o&&e.col===i?n.push(e):t.row===o&&t.col===i?n.push(t):n.push(new r(o,i));return n},forAll:function(e){for(var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=t.row;o<=n.row;o++)for(var r=t.col;r<=n.col;r++){var i=e(o,r);if(i===!1)return}}},{}),window.WalkontableCellRange=i},{"cell/coords":5}],7:[function(e,t,n){"use strict";Object.defineProperties(n,{Walkontable:{get:function(){return P}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f,g,p,m,w=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),v=w.addClass,b=w.fastInnerText,C=w.isVisible,y=w.removeClass,R=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,E=(i=e("helpers/string"),i&&i.__esModule&&i||{"default":i}),S=E.toUpperCaseFirst,T=E.randomString,O=(s=e("event"),s&&s.__esModule&&s||{"default":s}).WalkontableEvent,_=(l=e("overlays"),l&&l.__esModule&&l||{"default":l}).WalkontableOverlays,M=(a=e("scroll"),a&&a.__esModule&&a||{"default":a}).WalkontableScroll,H=(u=e("settings"),u&&u.__esModule&&u||{"default":u}).WalkontableSettings,k=(c=e("table"),c&&c.__esModule&&c||{"default":c}).WalkontableTable,A=(d=e("viewport"),d&&d.__esModule&&d||{"default":d}).WalkontableViewport,P=((h=e("overlay/_base.js"),h&&h.__esModule&&h||{"default":h}).WalkontableOverlay,(f=e("overlay/top.js"),f&&f.__esModule&&f||{"default":f}).WalkontableTopOverlay,(g=e("overlay/left.js"),g&&g.__esModule&&g||{"default":g}).WalkontableLeftOverlay,(p=e("overlay/debug.js"),p&&p.__esModule&&p||{"default":p}).WalkontableDebugOverlay,(m=e("overlay/topLeftCorner.js"),m&&m.__esModule&&m||{"default":m}).WalkontableTopLeftCornerOverlay,function(e){var t=[];if(this.guid="wt_"+T(),e.cloneSource?(this.cloneSource=e.cloneSource,this.cloneOverlay=e.cloneOverlay,this.wtSettings=e.cloneSource.wtSettings,this.wtTable=new k(this,e.table,e.wtRootElement),this.wtScroll=new M(this),this.wtViewport=e.cloneSource.wtViewport,this.wtEvent=new O(this),this.selections=this.cloneSource.selections):(this.wtSettings=new H(this,e),this.wtTable=new k(this,e.table),this.wtScroll=new M(this),this.wtViewport=new A(this),this.wtEvent=new O(this),this.selections=this.getSetting("selections"),this.wtOverlays=new _(this),this.exportSettingsAsClassNames()),this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(var n=0,o=this.wtTable.THEAD.childNodes[0].childNodes.length;o>n;n++)t.push(this.wtTable.THEAD.childNodes[0].childNodes[n].innerHTML);this.getSetting("columnHeaders").length||this.update("columnHeaders",[function(e,n){b(n,t[e])}])}this.drawn=!1,this.drawInterrupted=!1});$traceurRuntime.createClass(P,{draw:function(){var e=void 0!==arguments[0]?arguments[0]:!1;return this.drawInterrupted=!1,e||C(this.wtTable.TABLE)?this.wtTable.draw(e):this.drawInterrupted=!0,this},getCell:function(e){var t=void 0!==arguments[1]?arguments[1]:!1;if(!t)return this.wtTable.getCell(e);var n=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),r=this.wtSettings.getSetting("fixedRowsBottom"),i=this.wtSettings.getSetting("fixedColumnsLeft");if(e.row=n-r){if(this.wtOverlays.bottomLeftCornerOverlay.clone)return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col=n-r&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)},update:function(e,t){return this.wtSettings.update(e,t)},scrollVertical:function(e){return this.wtOverlays.topOverlay.scrollTo(e),this.getSetting("onScrollVertically"),this},scrollHorizontal:function(e){return this.wtOverlays.leftOverlay.scrollTo(e),this.getSetting("onScrollHorizontally"),this},scrollViewport:function(e){return this.wtScroll.scrollViewport(e),this},getViewport:function(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]},getOverlayName:function(){return this.cloneOverlay?this.cloneOverlay.type:"master"},exportSettingsAsClassNames:function(){var e=this,t={rowHeaders:["array"],columnHeaders:["array"]},n=[],o=[];R(t,function(t,r){t.indexOf("array")>-1&&e.getSetting(r).length&&o.push("ht"+S(r)),n.push("ht"+S(r))}),y(this.wtTable.wtRootElement.parentNode,n),v(this.wtTable.wtRootElement.parentNode,o)},getSetting:function(e,t,n,o,r){return this.wtSettings.getSetting(e,t,n,o,r)},hasSetting:function(e){return this.wtSettings.has(e)},destroy:function(){this.wtOverlays.destroy(),this.wtEvent.destroy()}},{}),window.Walkontable=P},{event:8,"helpers/dom/element":44,"helpers/object":49,"helpers/string":51,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,overlays:16,scroll:17,settings:19,table:20,viewport:22}],8:[function(e,t,n){"use strict";function o(e){var t=this,n=c(e);this.instance=e;var o=[null,null];this.dblClickTimeout=[null,null];var r,i,s=function(e){var n=t.parentCell(e.realTarget);a(e.realTarget,"corner")?t.instance.getSetting("onCellCornerMouseDown",e,e.realTarget):n.TD&&t.instance.hasSetting("onCellMouseDown")&&t.instance.getSetting("onCellMouseDown",e,n.coords,n.TD,t.instance),2!==e.button&&n.TD&&(o[0]=n.TD,clearTimeout(t.dblClickTimeout[0]),t.dblClickTimeout[0]=setTimeout(function(){o[0]=null},1e3))},d=function(e){t.instance.touchMoving=!0},h=function(e){n.addEventListener(this,"touchmove",d),t.checkIfTouchMove=setTimeout(function(){return t.instance.touchMoving===!0?(t.instance.touchMoving=void 0,void n.removeEventListener("touchmove",d,!1)):void s(e)},30)},f=function(e){var n,o;t.instance.hasSetting("onCellMouseOver")&&(n=t.instance.wtTable.TABLE,o=l(e.realTarget,["TD","TH"],n),o&&o!==i&&u(o,n)&&(i=o,t.instance.getSetting("onCellMouseOver",e,t.instance.wtTable.getCoords(o),o,t.instance)))},g=function(e){if(2!==e.button){var n=t.parentCell(e.realTarget);n.TD===o[0]&&n.TD===o[1]?(a(e.realTarget,"corner")?t.instance.getSetting("onCellCornerDblClick",e,n.coords,n.TD,t.instance):t.instance.getSetting("onCellDblClick",e,n.coords,n.TD,t.instance),o[0]=null,o[1]=null):n.TD===o[0]&&(o[1]=n.TD,clearTimeout(t.dblClickTimeout[1]),t.dblClickTimeout[1]=setTimeout(function(){o[1]=null},500))}},p=function(e){clearTimeout(r),e.preventDefault(),g(e)};if(n.addEventListener(this.instance.wtTable.holder,"mousedown",s),n.addEventListener(this.instance.wtTable.TABLE,"mouseover",f),n.addEventListener(this.instance.wtTable.holder,"mouseup",g),this.instance.wtTable.holder.parentNode.parentNode&&Handsontable.mobileBrowser&&!t.instance.wtTable.isWorkingOnClone()){var m="."+this.instance.wtTable.holder.parentNode.className.split(" ").join(".");n.addEventListener(this.instance.wtTable.holder,"touchstart",function(e){t.instance.touchApplied=!0,u(e.target,m)&&h.call(e.target,e)}),n.addEventListener(this.instance.wtTable.holder,"touchend",function(e){t.instance.touchApplied=!1,u(e.target,m)&&p.call(e.target,e)}),t.instance.momentumScrolling||(t.instance.momentumScrolling={}),n.addEventListener(this.instance.wtTable.holder,"scroll",function(e){clearTimeout(t.instance.momentumScrolling._timeout),t.instance.momentumScrolling.ongoing||t.instance.getSetting("onBeforeTouchScroll"),t.instance.momentumScrolling.ongoing=!0,t.instance.momentumScrolling._timeout=setTimeout(function(){t.instance.touchApplied||(t.instance.momentumScrolling.ongoing=!1,t.instance.getSetting("onAfterMomentumScroll"))},200)})}n.addEventListener(window,"resize",function(){"none"!==t.instance.getSetting("stretchH")&&t.instance.draw()}),this.destroy=function(){clearTimeout(this.dblClickTimeout[0]),clearTimeout(this.dblClickTimeout[1]),n.destroy()}}Object.defineProperties(n,{WalkontableEvent:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),l=s.closest,a=s.hasClass,u=s.isChildOf,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager;o.prototype.parentCell=function(e){var t={},n=this.instance.wtTable.TABLE,o=l(e,["TD","TH"],n);return o&&u(o,n)?(t.coords=this.instance.wtTable.getCoords(o),t.TD=o):a(e,"wtBorder")&&a(e,"current")?(t.coords=this.instance.selections.current.cellRange.highlight,t.TD=this.instance.wtTable.getCell(t.coords)):a(e,"wtBorder")&&a(e,"area")&&this.instance.selections.area.cellRange&&(t.coords=this.instance.selections.area.cellRange.to,t.TD=this.instance.wtTable.getCell(t.coords)),t},window.WalkontableEvent=o},{eventManager:40,"helpers/dom/element":44}],9:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableColumnFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleRowHeadedColumnToSourceColumn:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceColumnToVisibleRowHeadedColumn:function(e){return this.unOffsettedTH(this.sourceToRendered(e)); -}},{}),window.WalkontableColumnFilter=o},{}],10:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableRowFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleColHeadedRowToSourceRow:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceRowToVisibleColHeadedRow:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableRowFilter=o},{}],11:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlay:{get:function(){return h}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.getScrollableElement,a=s.getTrimmingContainer,u=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,d={},h=function(e){u(this,"wot",e,{writable:!1}),this.instance=this.wot,this.type="",this.TABLE=this.wot.wtTable.TABLE,this.hider=this.wot.wtTable.hider,this.spreader=this.wot.wtTable.spreader,this.holder=this.wot.wtTable.holder,this.wtRootElement=this.wot.wtTable.wtRootElement,this.trimmingContainer=a(this.hider.parentNode.parentNode),this.mainTableScrollableElement=l(this.wot.wtTable.TABLE),this.needFullRender=this.shouldBeRendered(),this.areElementSizesAdjusted=!1},f=h;$traceurRuntime.createClass(h,{shouldBeRendered:function(){return!0},makeClone:function(e){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error('Clone type "'+e+'" is not supported.');var t=document.createElement("DIV"),n=document.createElement("TABLE");return t.className="ht_clone_"+e+" handsontable",t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.overflow="hidden",n.className=this.wot.wtTable.TABLE.className,t.appendChild(n),this.type=e,this.wot.wtTable.wtRootElement.parentNode.appendChild(t),new Walkontable({cloneSource:this.wot,cloneOverlay:this,table:n})},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.shouldBeRendered();this.clone&&(this.needFullRender||t)&&this.clone.draw(e),this.needFullRender=t},destroy:function(){c(this.clone).destroy()}},{get CLONE_TOP(){return"top"},get CLONE_BOTTOM(){return"bottom"},get CLONE_LEFT(){return"left"},get CLONE_TOP_LEFT_CORNER(){return"top_left_corner"},get CLONE_BOTTOM_LEFT_CORNER(){return"bottom_left_corner"},get CLONE_DEBUG(){return"debug"},get CLONE_TYPES(){return[f.CLONE_TOP,f.CLONE_BOTTOM,f.CLONE_LEFT,f.CLONE_TOP_LEFT_CORNER,f.CLONE_BOTTOM_LEFT_CORNER,f.CLONE_DEBUG]},registerOverlay:function(e,t){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error("Unsupported overlay ("+e+").");d[e]=t},createOverlay:function(e,t){return new d[e](t)},isOverlayTypeOf:function(e,t){return e&&d[t]?e instanceof d[t]:!1}}),window.WalkontableOverlay=h},{eventManager:40,"helpers/dom/element":44,"helpers/object":49}],12:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableDebugOverlay:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,s=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,l=function(e){$traceurRuntime.superConstructor(a).call(this,e),this.clone=this.makeClone(s.CLONE_DEBUG),this.clone.wtTable.holder.style.opacity=.4,this.clone.wtTable.holder.style.textShadow="0 0 2px #ff0000",i(this.clone.wtTable.holder.parentNode,"wtDebugVisible")},a=l;$traceurRuntime.createClass(l,{},{},s),window.WalkontableDebugOverlay=l,s.registerOverlay(s.CLONE_DEBUG,l)},{_base:11,"helpers/dom/element":44}],13:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableLeftOverlay:{get:function(){return p}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,l=i.getScrollbarWidth,a=i.getScrollLeft,u=i.getWindowScrollTop,c=i.hasClass,d=i.outerWidth,h=i.removeClass,f=i.setOverlayPosition,g=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(g.CLONE_LEFT)},m=p;$traceurRuntime.createClass(p,{shouldBeRendered:function(){return this.wot.getSetting("fixedColumnsLeft")||this.wot.getSetting("rowHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.left),s=Math.ceil(r.right);o=this.wot.wtTable.hider.style.top,o=""===o?0:o,n=0>i&&s-e.offsetWidth>0?-i:0,t=n,n+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(e,u()):this.mainTableScrollableElement.scrollLeft=e},onScroll:function(){this.wot.getSetting("onScrollHorizontally")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.defaultColumnWidth;t>e;)n+=this.wot.wtTable.getStretchedColumnWidth(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientHeight===t.offsetHeight?0:l(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.height=this.wot.wtViewport.getWorkspaceHeight()-n+"px"),this.clone.wtTable.holder.style.height=r.height,e=d(this.clone.wtTable.TABLE),r.width=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=l();this.clone.wtTable.hider.style.height=this.hider.style.height,this.clone.wtTable.holder.style.height=this.clone.wtTable.holder.parentNode.style.height,0===e&&(e=30),this.clone.wtTable.holder.style.width=parseInt(this.clone.wtTable.holder.parentNode.style.width,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalColumns");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style.left="0"}this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.top=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;t&&r.offsetWidth!==r.clientWidth&&(i=l()),t?(n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportWidth()):n+=this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"),e),n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.trimmingContainer===window?this.wot.wtTable.holderOffset.left:0},getScrollPosition:function(){return a(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode,n=this.wot.getSetting("rowHeaders"),o=this.wot.getSetting("fixedColumnsLeft");if(o&&!n.length)s(t,"innerBorderLeft");else if(!o&&n.length){var r=c(t,"innerBorderLeft");e?s(t,"innerBorderLeft"):h(t,"innerBorderLeft"),(!r&&e||r&&!e)&&this.wot.wtOverlays.adjustElementsSize()}}},{},g),window.WalkontableLeftOverlay=p,g.registerOverlay(g.CLONE_LEFT,p)},{_base:11,"helpers/dom/element":44}],14:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTopOverlay:{get:function(){return p}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,l=i.getScrollbarWidth,a=i.getScrollTop,u=i.getWindowScrollLeft,c=i.hasClass,d=i.outerHeight,h=i.removeClass,f=i.setOverlayPosition,g=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(g.CLONE_TOP)},m=p;$traceurRuntime.createClass(p,{shouldBeRendered:function(){return this.wot.getSetting("fixedRowsTop")||this.wot.getSetting("columnHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.wot.wtOverlays.leftOverlay.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.top),s=Math.ceil(r.bottom);n=this.wot.wtTable.hider.style.left,n=""===n?0:n,o=0>i&&s-e.offsetHeight>0?-i:0,t=o,o+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(u(),e):this.mainTableScrollableElement.scrollTop=e},onScroll:function(){this.wot.getSetting("onScrollVertically")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.settings.defaultRowHeight;t>e;)n+=this.wot.wtTable.getRowHeight(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientWidth===t.offsetWidth?0:l(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.width=this.wot.wtViewport.getWorkspaceWidth()-n+"px"),this.clone.wtTable.holder.style.width=r.width,e=d(this.clone.wtTable.TABLE),r.height=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=l();this.clone.wtTable.hider.style.width=this.hider.style.width,this.clone.wtTable.holder.style.width=this.clone.wtTable.holder.parentNode.style.width,0===e&&(e=30),this.clone.wtTable.holder.style.height=parseInt(this.clone.wtTable.holder.parentNode.style.height,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalRows");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.left=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;if(t&&r.offsetHeight!==r.clientHeight&&(i=l()),t){var s=this.wot.getSetting("fixedRowsBottom"),a=(this.wot.getSetting("fixedRowsTop"),this.wot.getSetting("totalRows"));n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportHeight()-this.sumCellSizes(a-s,a),n+=1}else n+=this.sumCellSizes(this.wot.getSetting("fixedRowsTop"),e);n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.mainTableScrollableElement===window?this.wot.wtTable.holderOffset.top:0},getScrollPosition:function(){return a(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){if(0===this.wot.getSetting("fixedRowsTop")&&this.wot.getSetting("columnHeaders").length>0){var t=this.wot.wtTable.holder.parentNode,n=c(t,"innerBorderTop");e?s(t,"innerBorderTop"):h(t,"innerBorderTop"),(!n&&e||n&&!e)&&this.wot.wtOverlays.adjustElementsSize()}if(0===this.wot.getSetting("rowHeaders").length){var o=this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");if(o)for(var r=0;rc&&h-e.offsetWidth>0?-c+"px":"0",r=0>u&&d-e.offsetHeight>0?-u+"px":"0",a(e,o,r)}e.style.height=(0===t?t:t+4)+"px",e.style.width=(0===n?n:n+4)+"px"}}},{},u),window.WalkontableTopLeftCornerOverlay=c,u.registerOverlay(u.CLONE_TOP_LEFT_CORNER,c)},{_base:11,"helpers/dom/element":44}],16:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlays:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.getScrollableElement,a=s.getScrollbarWidth,u=s.getScrollLeft,c=s.getScrollTop,d=(r=e("helpers/unicode"),r&&r.__esModule&&r||{"default":r}).isKey,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=function(e){this.wot=e,this.instance=this.wot,this.eventManager=new h(this.wot),this.wot.update("scrollbarWidth",a()),this.wot.update("scrollbarHeight",a()),this.mainTableScrollableElement=l(this.wot.wtTable.TABLE),this.topOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP,this.wot),"undefined"==typeof WalkontableBottomOverlay?this.bottomOverlay={needFullRender:!1}:this.bottomOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM,this.wot),this.leftOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT,this.wot),this.topOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.topLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,this.wot)),this.bottomOverlay.needFullRender&&this.leftOverlay.needFullRender&&"undefined"!=typeof WalkontableBottomLeftCornerOverlay?this.bottomLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER,this.wot):this.bottomLeftCornerOverlay={needFullRender:!1},this.wot.getSetting("debug")&&(this.debug=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG,this.wot)),this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.overlayScrollPositions={master:{top:0,left:0},top:{top:null,left:0},bottom:{top:null,left:0},left:{top:0,left:null}},this.registerListeners()};$traceurRuntime.createClass(f,{refreshAll:function(){if(this.wot.drawn){if(!this.wot.wtTable.holder.parentNode)return void this.destroy();this.wot.draw(!0),this.topOverlay.onScroll(),this.leftOverlay.onScroll()}},registerListeners:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"keydown",function(t){return e.onKeyDown(t)}),this.eventManager.addEventListener(document.documentElement,"keyup",function(){return e.onKeyUp()}),this.eventManager.addEventListener(document,"visibilitychange",function(){return e.onKeyUp()}),this.eventManager.addEventListener(this.mainTableScrollableElement,"scroll",function(t){return e.onTableScroll(t)}),this.topOverlay.needFullRender&&(this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.bottomOverlay.needFullRender&&(this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.leftOverlay.needFullRender&&(this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.topOverlay.trimmingContainer!==window&&this.leftOverlay.trimmingContainer!==window&&this.eventManager.addEventListener(window,"wheel",function(t){var n,o=t.wheelDeltaY||t.deltaY,r=t.wheelDeltaX||t.deltaX;e.topOverlay.clone.wtTable.holder.contains(t.realTarget)?n="top":e.bottomOverlay.clone&&e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget)?n="bottom":e.leftOverlay.clone.wtTable.holder.contains(t.realTarget)&&(n="left"),"top"==n&&0!==o?t.preventDefault():"left"==n&&0!==r?t.preventDefault():"bottom"==n&&0!==o&&t.preventDefault()})},onTableScroll:function(e){Handsontable.mobileBrowser||(!this.keyPressed||this.mainTableScrollableElement===window||e.target.contains(this.mainTableScrollableElement))&&("scroll"===e.type?this.syncScrollPositions(e):this.translateMouseWheelToScroll(e))},onKeyDown:function(e){this.keyPressed=d(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")},onKeyUp:function(){this.keyPressed=!1},translateMouseWheelToScroll:function(e){for(var t,n=this.topOverlay.clone.wtTable.holder,o=this.bottomOverlay.clone?this.bottomOverlay.clone.wtTable.holder:null,r=this.leftOverlay.clone.wtTable.holder,i={type:"wheel"},s=e.target,l=e.wheelDeltaY||-1*e.deltaY,a=e.wheelDeltaX||-1*e.deltaX;s!=document&&null!=s;){if(s.className.indexOf("wtHolder")>-1){t=s;break}s=s.parentNode}return i.target=t,t==n?this.syncScrollPositions(i,-.2*l):t==o?this.syncScrollPositions(i,-.2*l):t==r&&this.syncScrollPositions(i,-.2*a),!1},syncScrollPositions:function(e){var t=void 0!==arguments[1]?arguments[1]:null;if(!this.destroyed){if(0===arguments.length)return void this.syncScrollWithMaster();var n,o,r,i=this.mainTableScrollableElement,s=e.target,l=0,a=!1;this.topOverlay.needFullRender&&(n=this.topOverlay.clone.wtTable.holder),this.bottomOverlay.needFullRender&&(r=this.bottomOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&(o=this.leftOverlay.clone.wtTable.holder),s===document&&(s=window),s===i?(l=u(s),this.overlayScrollPositions.master.left!==l&&(this.overlayScrollPositions.master.left=l,a=!0,n&&(n.scrollLeft=l),r&&(r.scrollLeft=l)),l=c(s),this.overlayScrollPositions.master.top!==l&&(this.overlayScrollPositions.master.top=l,a=!0,o&&(o.scrollTop=l))):s===r?(l=u(s),this.overlayScrollPositions.bottom.left!==l&&(this.overlayScrollPositions.bottom.left=l,a=!0,i.scrollLeft=l),null!==t&&(a=!0,i.scrollTop+=t)):s===n?(l=u(s),this.overlayScrollPositions.top.left!==l&&(this.overlayScrollPositions.top.left=l,a=!0,i.scrollLeft=l),null!==t&&(a=!0,i.scrollTop+=t)):s===o&&(l=c(s),this.overlayScrollPositions.left.top!==l&&(this.overlayScrollPositions.left.top=l,a=!0,i.scrollTop=l),null!==t&&(a=!0,i.scrollLeft+=t)),!this.keyPressed&&a&&"scroll"===e.type&&this.refreshAll()}},syncScrollWithMaster:function(){var e=this.topOverlay.mainTableScrollableElement;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=e.scrollLeft),this.leftOverlay.needFullRender&&(this.leftOverlay.clone.wtTable.holder.scrollTop=e.scrollTop)},destroy:function(){this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.leftOverlay.destroy(),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.destroy(),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.destroy(),this.debug&&this.debug.destroy(),this.destroyed=!0},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted){var t=this.wot.wtTable.wtRootElement.parentNode||this.wot.wtTable.wtRootElement,n=t.clientWidth,o=t.clientHeight;(n!==this.spreaderLastSize.width||o!==this.spreaderLastSize.height)&&(this.spreaderLastSize.width=n,this.spreaderLastSize.height=o,this.adjustElementsSize())}this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.leftOverlay.refresh(e),this.topOverlay.refresh(e),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.refresh(e),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.refresh(e),this.debug&&this.debug.refresh(e)},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.wot.getSetting("totalColumns"),n=this.wot.getSetting("totalRows"),o=this.wot.wtViewport.getRowHeaderWidth(),r=this.wot.wtViewport.getColumnHeaderHeight(),i=this.wot.wtTable.hider.style;i.width=o+this.leftOverlay.sumCellSizes(0,t)+"px",i.height=r+this.topOverlay.sumCellSizes(0,n)+1+"px",this.topOverlay.adjustElementsSize(e),this.leftOverlay.adjustElementsSize(e),this.bottomOverlay.clone&&this.bottomOverlay.adjustElementsSize(e)},applyToDOM:function(){this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted||this.adjustElementsSize(),this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.leftOverlay.applyToDOM()}},{}),window.WalkontableOverlays=f},{eventManager:40,"helpers/dom/element":44,"helpers/unicode":52}],17:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableScroll:{get:function(){return o}},__esModule:{value:!0}});var o=function(e){this.wot=e,this.instance=e};$traceurRuntime.createClass(o,{scrollViewport:function(e){if(this.wot.drawn){var t=this.wot.getSetting("totalRows"),n=this.wot.getSetting("totalColumns"),o=this.instance.getSetting("fixedRowsTop"),r=this.instance.getSetting("fixedRowsBottom"),i=this.instance.getSetting("fixedColumnsLeft");if(e.row<0||e.row>t-1)throw new Error("row "+e.row+" does not exist");if(e.col<0||e.col>n-1)throw new Error("column "+e.col+" does not exist");e.row>this.instance.wtTable.getLastVisibleRow()&&e.row=o&&e.rowthis.instance.wtTable.getLastVisibleColumn()?this.wot.wtOverlays.leftOverlay.scrollTo(e.col,!0):e.col>=i&&e.colu;u++)o=e.wtTable.columnFilter.renderedToSource(u),o>=a[1]&&o<=a[3]&&(r=e.wtTable.getColumnHeader(o),r&&this.settings.highlightColumnClassName&&l(r,this.settings.highlightColumnClassName));for(var c=0;i>c;c++){n=e.wtTable.rowFilter.renderedToSource(c),n>=a[0]&&n<=a[2]&&(r=e.wtTable.getRowHeader(n),r&&this.settings.highlightRowClassName&&l(r,this.settings.highlightRowClassName));for(var d=0;s>d;d++)o=e.wtTable.columnFilter.renderedToSource(d),n>=a[0]&&n<=a[2]&&o>=a[1]&&o<=a[3]?this.settings.className&&this.addClassAtCoords(e,n,o,this.settings.className):n>=a[0]&&n<=a[2]?this.settings.highlightRowClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightRowClassName):o>=a[1]&&o<=a[3]&&this.settings.highlightColumnClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightColumnClassName)}if(e.getSetting("onBeforeDrawBorders",a,this.settings.className),this.settings.border){var h=this.getBorder(e);h&&h.appear(a)}}}},{}),window.WalkontableSelection=d},{border:2,"cell/coords":5,"cell/range":6,"helpers/dom/element":44}],19:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableSettings:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).fastInnerText,i=function(e,t){var n=this;this.wot=e,this.instance=e,this.defaults={table:void 0,debug:!1,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,data:void 0,fixedColumnsLeft:0,fixedRowsTop:0,fixedRowsBottom:0,minSpareRows:0,rowHeaders:function(){return[]},columnHeaders:function(){return[]},totalRows:void 0,totalColumns:void 0,cellRenderer:function(e,t,o){var i=n.getSetting("data",e,t);r(o,void 0===i||null===i?"":i)},columnWidth:function(e){},rowHeight:function(e){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellMouseOver:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeDrawBorders:null,onScrollVertically:null,onScrollHorizontally:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,scrollbarWidth:10,scrollbarHeight:10,renderAllRows:!1,groups:!1},this.settings={};for(var o in this.defaults)if(this.defaults.hasOwnProperty(o))if(void 0!==t[o])this.settings[o]=t[o];else{if(void 0===this.defaults[o])throw new Error('A required setting "'+o+'" was not provided');this.settings[o]=this.defaults[o]}};$traceurRuntime.createClass(i,{update:function(e,t){if(void 0===t)for(var n in e)e.hasOwnProperty(n)&&(this.settings[n]=e[n]);else this.settings[e]=t;return this.wot},getSetting:function(e,t,n,o,r){return"function"==typeof this.settings[e]?this.settings[e](t,n,o,r):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]},has:function(e){return!!this.settings[e]}},{}),window.WalkontableSettings=i},{"helpers/dom/element":44}],20:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTable:{get:function(){return y}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.getStyle,d=u.getTrimmingContainer,h=u.hasClass,f=u.index,g=u.offset,p=u.removeClass,m=u.removeTextNodes,w=(u.overlayContainsElement,(r=e("cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords),v=((i=e("cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange,(s=e("filter/column"),s&&s.__esModule&&s||{"default":s}).WalkontableColumnFilter),b=(l=e("filter/row"),l&&l.__esModule&&l||{"default":l}).WalkontableRowFilter,C=(a=e("tableRenderer"),a&&a.__esModule&&a||{"default":a}).WalkontableTableRenderer,y=function(e,t){this.wot=e,this.instance=this.wot,this.TABLE=t,this.TBODY=null,this.THEAD=null,this.COLGROUP=null,this.tableOffset=0,this.holderOffset=0,m(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.colgroupChildrenLength=this.COLGROUP.childNodes.length,this.theadChildrenLength=this.THEAD.firstChild?this.THEAD.firstChild.childNodes.length:0,this.tbodyChildrenLength=this.TBODY.childNodes.length,this.rowFilter=null,this.columnFilter=null};$traceurRuntime.createClass(y,{fixTableDomTree:function(){this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=document.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=document.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=document.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD)),this.wot.getSetting("columnHeaders").length&&!this.THEAD.childNodes.length&&this.THEAD.appendChild(document.createElement("TR"))},createSpreader:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtSpreader",n&&n.insertBefore(t,e),t.appendChild(e)),t.style.position="relative",t},createHider:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtHider",n&&n.insertBefore(t,e),t.appendChild(e)),t},createHolder:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.style.position="relative",t.className="wtHolder",n&&n.insertBefore(t,e),this.isWorkingOnClone()||(t.parentNode.className+="ht_master handsontable"),t.appendChild(e)),t},alignOverlaysWithTrimmingContainer:function(){var e=d(this.wtRootElement);this.isWorkingOnClone()||(this.holder.parentNode.style.position="relative",e===window?(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible"):(this.holder.style.width=c(e,"width"),this.holder.style.height=c(e,"height"),this.holder.style.overflow=""))},isWorkingOnClone:function(){return!!this.wot.cloneSource},draw:function(e){var t=this.instance.getSetting("totalRows");if(this.isWorkingOnClone()||(this.holderOffset=g(this.holder),e=this.wot.wtViewport.createRenderCalculators(e)),e)this.isWorkingOnClone()||this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays&&this.wot.wtOverlays.refresh(!0);else{this.isWorkingOnClone()?this.tableOffset=this.wot.cloneSource.wtTable.tableOffset:this.tableOffset=g(this.TABLE);var n;n=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?0:WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?t-this.wot.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.startRow;var o;o=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?0:this.wot.wtViewport.columnsRenderCalculator.startColumn, -this.rowFilter=new b(n,t,this.wot.getSetting("columnHeaders").length),this.columnFilter=new v(o,this.wot.getSetting("totalColumns"),this.wot.getSetting("rowHeaders").length),this._doDraw(),this.alignOverlaysWithTrimmingContainer()}return this.refreshSelections(e),this.isWorkingOnClone()||(this.wot.wtOverlays.topOverlay.resetFixedPosition(),this.wot.wtOverlays.bottomOverlay.clone&&this.wot.wtOverlays.bottomOverlay.resetFixedPosition(),this.wot.wtOverlays.leftOverlay.resetFixedPosition(),this.wot.wtOverlays.topLeftCornerOverlay&&this.wot.wtOverlays.topLeftCornerOverlay.resetFixedPosition(),this.instance.wtOverlays.bottomLeftCornerOverlay&&this.instance.wtOverlays.bottomLeftCornerOverlay.clone&&this.wot.wtOverlays.bottomLeftCornerOverlay.resetFixedPosition()),this.wot.drawn=!0,this},_doDraw:function(){var e=new C(this);e.render()},removeClassFromCells:function(e){for(var t=this.TABLE.querySelectorAll("."+e),n=0,o=t.length;o>n;n++)p(t[n],e)},refreshSelections:function(e){if(this.wot.selections){var t=this.wot.selections.length;if(e)for(var n=0;t>n;n++)this.wot.selections[n].settings.className&&this.removeClassFromCells(this.wot.selections[n].settings.className),this.wot.selections[n].settings.highlightRowClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightRowClassName),this.wot.selections[n].settings.highlightColumnClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightColumnClassName);for(var o=0;t>o;o++)this.wot.selections[o].draw(this.wot,e)}},getCell:function(e){if(this.isRowBeforeRenderedRows(e.row))return-1;if(this.isRowAfterRenderedRows(e.row))return-2;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];return t?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)]:void 0},getColumnHeader:function(e){var t=void 0!==arguments[1]?arguments[1]:0,n=this.THEAD.childNodes[t];return n?n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]:void 0},getRowHeader:function(e){if(0===this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))return null;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];return t?t.childNodes[0]:void 0},getCoords:function(e){var t=e.parentNode,n=f(t);n=t.parentNode===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);var o=this.columnFilter.visibleRowHeadedColumnToSourceColumn(e.cellIndex);return new w(n,o)},getTrForRow:function(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]},getFirstRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.startRow},getFirstVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.startRow},getFirstRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.startColumn},getFirstVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.startColumn},getLastRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.endRow},getLastVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.endRow},getLastRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.endColumn},getLastVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.endColumn},isRowBeforeRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)<0&&e>=0},isRowAfterViewport:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastVisibleRow()},isRowAfterRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastRenderedRow()},isColumnBeforeViewport:function(e){return this.columnFilter.sourceToRendered(e)<0&&e>=0},isColumnAfterViewport:function(e){return this.columnFilter.sourceToRendered(e)>this.getLastVisibleColumn()},isLastRowFullyVisible:function(){return this.getLastVisibleRow()===this.getLastRenderedRow()},isLastColumnFullyVisible:function(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()},getRenderedColumnsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalColumns"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedColumnsLeft"):this.wot.wtViewport.columnsRenderCalculator.count},getRenderedRowsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalRows"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.instance.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.count},getVisibleRowsCount:function(){return this.wot.wtViewport.rowsVisibleCalculator.count},allRowsInViewport:function(){return this.wot.getSetting("totalRows")==this.getVisibleRowsCount()},getRowHeight:function(e){var t=this.wot.wtSettings.settings.rowHeight(e),n=this.wot.wtViewport.oversizedRows[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getColumnHeaderHeight:function(e){var t=this.wot.wtSettings.settings.defaultRowHeight,n=this.wot.wtViewport.oversizedColumnHeaders[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getVisibleColumnsCount:function(){return this.wot.wtViewport.columnsVisibleCalculator.count},allColumnsInViewport:function(){return this.wot.getSetting("totalColumns")==this.getVisibleColumnsCount()},getColumnWidth:function(e){var t=this.wot.wtSettings.settings.columnWidth;return"function"==typeof t?t=t(e):"object"==typeof t&&(t=t[e]),t||this.wot.wtSettings.settings.defaultColumnWidth},getStretchedColumnWidth:function(e){var t=this.getColumnWidth(e),n=-1===[void 0,null].indexOf(t)?t:this.instance.wtSettings.settings.defaultColumnWidth,o=this.wot.wtViewport.columnsRenderCalculator;if(o){var r=o.getStretchedColumnWidth(e,n);r&&(n=r)}return n}},{}),window.WalkontableTable=y},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":44,tableRenderer:21}],21:[function(e,t,n){"use strict";function o(e,t){var n=document.createElement("TH");return t.insertBefore(n,e),t.removeChild(e),n}function r(e,t){var n=document.createElement("TD");return t.insertBefore(n,e),t.removeChild(e),n}Object.defineProperties(n,{WalkontableTableRenderer:{get:function(){return h}},__esModule:{value:!0}});var i,s=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),l=s.addClass,a=s.empty,u=s.getScrollbarWidth,c=s.hasClass,d=s.innerHeight,h=function(e){this.wtTable=e,this.wot=e.instance,this.instance=e.instance,this.rowFilter=e.rowFilter,this.columnFilter=e.columnFilter,this.TABLE=e.TABLE,this.THEAD=e.THEAD,this.TBODY=e.TBODY,this.COLGROUP=e.COLGROUP,this.rowHeaders=[],this.rowHeaderCount=0,this.columnHeaders=[],this.columnHeaderCount=0,this.fixedRowsTop=0,this.fixedRowsBottom=0};$traceurRuntime.createClass(h,{render:function(){this.wtTable.isWorkingOnClone()||this.wot.getSetting("beforeDraw",!0),this.rowHeaders=this.wot.getSetting("rowHeaders"),this.rowHeaderCount=this.rowHeaders.length,this.fixedRowsTop=this.wot.getSetting("fixedRowsTop"),this.fixedRowsBottom=this.wot.getSetting("fixedRowsBottom"),this.columnHeaders=this.wot.getSetting("columnHeaders"),this.columnHeaderCount=this.columnHeaders.length;var e,t=this.wtTable.getRenderedColumnsCount(),n=this.wtTable.getRenderedRowsCount(),o=this.wot.getSetting("totalColumns"),r=this.wot.getSetting("totalRows"),i=!1;if((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(this.columnHeaders=[],this.columnHeaderCount=0),o>0&&(this.adjustAvailableNodes(),i=!0,this.renderColumnHeaders(),this.renderRows(r,n,t),this.wtTable.isWorkingOnClone()||(e=this.wot.wtViewport.getWorkspaceWidth(),this.wot.wtViewport.containerWidth=null),this.adjustColumnHeaderHeights(),this.adjustColumnWidths(t),this.markOversizedColumns()),i||this.adjustAvailableNodes(),this.removeRedundantRows(n),this.wtTable.isWorkingOnClone()){if(WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)){var s=this.wot.cloneOverlay.instance;this.wot.cloneOverlay.markOversizedFixedBottomRows(),s.wtOverlays.adjustElementsSize()}}else{if(this.markOversizedRows(),this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays.refresh(!1),this.wot.wtOverlays.applyToDOM(),e!==this.wot.wtViewport.getWorkspaceWidth()){this.wot.wtViewport.containerWidth=null;for(var l=this.wtTable.getFirstRenderedColumn(),a=this.wtTable.getLastRenderedColumn(),u=l;a>u;u++){var c=this.wtTable.getStretchedColumnWidth(u),d=this.columnFilter.sourceToRendered(u);this.COLGROUP.childNodes[d+this.rowHeaderCount].style.width=c+"px"}}this.wot.getSetting("onDraw",!0)}},removeRedundantRows:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--},renderRows:function(e,t,n){for(var o,r,i=0,s=this.rowFilter.renderedToSource(i),l=this.wtTable.isWorkingOnClone();e>s&&s>=0;){if(i>1e3)throw new Error("Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars.");if(void 0!==t&&i===t)break;if(r=this.getOrCreateTrForRow(i,r),this.renderRowHeaders(s,r),this.adjustColumns(r,n+this.rowHeaderCount),o=this.renderCells(s,r,n),(!l||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM))&&this.resetOversizedRow(s),r.firstChild){var a=this.wot.wtTable.getRowHeight(s);a?(a--,r.firstChild.style.height=a+"px"):r.firstChild.style.height=""}i++,s=this.rowFilter.renderedToSource(i)}},resetOversizedRow:function(e){this.wot.getSetting("externalRowCalculator")||this.wot.wtViewport.oversizedRows&&this.wot.wtViewport.oversizedRows[e]&&(this.wot.wtViewport.oversizedRows[e]=void 0)},markOversizedRows:function(){if(!this.wot.getSetting("externalRowCalculator")){var e,t,n,o,r,i=this.instance.wtTable.TBODY.childNodes.length,s=i*this.instance.wtSettings.settings.defaultRowHeight,l=d(this.instance.wtTable.TBODY)-1;this.instance.getSetting("totalRows");if(s!==l||this.instance.getSetting("fixedRowsBottom"))for(;i;)i--,n=this.instance.wtTable.rowFilter.renderedToSource(i),e=this.instance.wtTable.getRowHeight(n),o=this.instance.wtTable.getTrForRow(n),r=o.querySelector("th"),t=r?d(r):d(o)-1,(!e&&this.instance.wtSettings.settings.defaultRowHeighte)&&(this.instance.wtViewport.oversizedRows[n]=++t)}},markOversizedColumns:function(){var e=this.wot.getOverlayName();if(this.columnHeaderCount&&!this.wot.wtViewport.isMarkedOversizedColumn[e]&&!this.wtTable.isWorkingOnClone()){for(var t=this.wtTable.getRenderedColumnsCount(),n=0;no;o++)this.markIfOversizedColumnHeader(o);this.wot.wtViewport.isMarkedOversizedColumn[e]=!0}},adjustColumnHeaderHeights:function(){for(var e=this.wot.getSetting("columnHeaders"),t=this.wot.wtTable.THEAD.childNodes,n=this.wot.wtViewport.oversizedColumnHeaders,o=0,r=e.length;r>o;o++)if(n[o]){if(0===t[o].childNodes.length)return;t[o].childNodes[0].style.height=n[o]+"px"}},markIfOversizedColumnHeader:function(e){for(var t,n,o,r=this.wot.wtTable.columnFilter.renderedToSource(e),i=this.columnHeaderCount,s=this.wot.wtSettings.settings.defaultRowHeight;i;)i--,t=this.wot.wtTable.getColumnHeaderHeight(i),n=this.wot.wtTable.getColumnHeader(r,i),n&&(o=d(n),(!t&&o>s||o>t)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=o))},renderCells:function(e,t,n){for(var o,i,s=0;n>s;s++)i=this.columnFilter.renderedToSource(s),o=0===s?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)]:o.nextSibling,"TH"==o.nodeName&&(o=r(o,t)),c(o,"hide")||(o.className=""),o.removeAttribute("style"),this.wot.wtSettings.settings.cellRenderer(e,i,o);return o},adjustColumnWidths:function(e){var t=0,n=this.wot.cloneSource?this.wot.cloneSource:this.wot,o=n.wtTable.holder;o.offsetHeightr;r++){var i=this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(r));this.COLGROUP.childNodes[r+this.rowHeaderCount].style.width=i+"px"}},appendToTbody:function(e){this.TBODY.appendChild(e),this.wtTable.tbodyChildrenLength++},getOrCreateTrForRow:function(e,t){var n;return e>=this.wtTable.tbodyChildrenLength?(n=this.createRow(),this.appendToTbody(n)):n=0===e?this.TBODY.firstChild:t.nextSibling,n.className&&n.removeAttribute("class"),n},createRow:function(){for(var e=document.createElement("TR"),t=0;to;o++){var r=this.columnFilter.renderedToSource(o);this.renderColumnHeader(t,r,n.childNodes[o+this.rowHeaderCount])}},adjustColGroups:function(){for(var e=this.wtTable.getRenderedColumnsCount();this.wtTable.colgroupChildrenLengthe+this.rowHeaderCount;)this.COLGROUP.removeChild(this.COLGROUP.lastChild),this.wtTable.colgroupChildrenLength--;this.rowHeaderCount&&l(this.COLGROUP.childNodes[0],"rowHeader")},adjustThead:function(){var e=this.wtTable.getRenderedColumnsCount(),t=this.THEAD.firstChild;if(this.columnHeaders.length){for(var n=0,o=this.columnHeaders.length;o>n;n++){for(t=this.THEAD.childNodes[n],t||(t=document.createElement("TR"),this.THEAD.appendChild(t)),this.theadChildrenLength=t.childNodes.length;this.theadChildrenLengthe+this.rowHeaderCount;)t.removeChild(t.lastChild),this.theadChildrenLength--}var r=this.THEAD.childNodes.length;if(r>this.columnHeaders.length)for(var i=this.columnHeaders.length;r>i;i++)this.THEAD.removeChild(this.THEAD.lastChild)}else t&&a(t)},getTrForColumnHeaders:function(e){return this.THEAD.childNodes[e]},renderColumnHeader:function(e,t,n){return n.className="",n.removeAttribute("style"),this.columnHeaders[e](t,n,e)},adjustColumns:function(e,t){for(var n=e.childNodes.length;t>n;){var o=document.createElement("TD");e.appendChild(o),n++}for(;n>t;)e.removeChild(e.lastChild),n--},removeRedundantColumns:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--}},{}),window.WalkontableTableRenderer=h},{"helpers/dom/element":44}],22:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewport:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=l.getScrollbarWidth,u=l.getScrollTop,c=l.getStyle,d=l.offset,h=l.outerHeight,f=l.outerWidth,g=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,p=(i=e("calculator/viewportColumns"),i&&i.__esModule&&i||{"default":i}).WalkontableViewportColumnsCalculator,m=(s=e("calculator/viewportRows"),s&&s.__esModule&&s||{"default":s}).WalkontableViewportRowsCalculator,w=function(e){var t=this;this.wot=e,this.instance=this.wot,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.isMarkedOversizedColumn={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.eventManager=new g(this.wot),this.eventManager.addEventListener(window,"resize",function(){t.clientHeight=t.getWorkspaceHeight()})};$traceurRuntime.createClass(w,{getWorkspaceHeight:function(){var e,t=this.instance.wtOverlays.topOverlay.trimmingContainer,n=0;return t===window?n=document.documentElement.clientHeight:(e=h(t),n=e>0&&t.clientHeight>0?t.clientHeight:1/0),n},getWorkspaceWidth:function(){var e,t,n=this.instance.getSetting("totalColumns"),o=this.instance.wtOverlays.leftOverlay.trimmingContainer,r=this.instance.getSetting("stretchH"),i=document.documentElement.offsetWidth;return e=Handsontable.freezeOverlays?Math.min(i-this.getWorkspaceOffset().left,i):Math.min(this.getContainerFillWidth(),i-this.getWorkspaceOffset().left,i),o===window&&n>0&&this.sumColumnWidths(0,n-1)>e?document.documentElement.clientWidth:o!==window&&(t=c(this.instance.wtOverlays.leftOverlay.trimmingContainer,"overflow"),"scroll"==t||"hidden"==t||"auto"==t)?Math.max(e,o.clientWidth):"none"!==r&&r?e:Math.max(e,f(this.instance.wtTable.TABLE))},hasVerticalScroll:function(){return this.getWorkspaceActualHeight()>this.getWorkspaceHeight()},hasHorizontalScroll:function(){return this.getWorkspaceActualWidth()>this.getWorkspaceWidth()},sumColumnWidths:function(e,t){for(var n=0;t>e;)n+=this.wot.wtTable.getColumnWidth(e),e++;return n},getContainerFillWidth:function(){if(this.containerWidth)return this.containerWidth;var e,t,n=this.instance.wtTable.holder;return t=document.createElement("div"),t.style.width="100%",t.style.height="1px",n.appendChild(t),e=t.offsetWidth,this.containerWidth=e,n.removeChild(t),e},getWorkspaceOffset:function(){return d(this.wot.wtTable.TABLE)},getWorkspaceActualHeight:function(){return h(this.wot.wtTable.TABLE)},getWorkspaceActualWidth:function(){return f(this.wot.wtTable.TABLE)||f(this.wot.wtTable.TBODY)||f(this.wot.wtTable.THEAD)},getColumnHeaderHeight:function(){return isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=h(this.wot.wtTable.THEAD)),this.columnHeaderHeight},getViewportHeight:function(){var e,t=this.getWorkspaceHeight();return t===1/0?t:(e=this.getColumnHeaderHeight(),e>0&&(t-=e),t)},getRowHeaderWidth:function(){if(this.wot.cloneSource)return this.wot.cloneSource.wtViewport.getRowHeaderWidth();if(isNaN(this.rowHeaderWidth)){var e=this.instance.getSetting("rowHeaders");if(e.length){var t=this.instance.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(var n=0,o=e.length;o>n;n++)t?(this.rowHeaderWidth+=f(t),t=t.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0}return this.rowHeaderWidth},getViewportWidth:function(){var e,t=this.getWorkspaceWidth();return t===1/0?t:(e=this.getRowHeaderWidth(),e>0?t-e:t)},createRowsCalculator:function(){var e,t,n,o,r,i,s,l=void 0!==arguments[0]?arguments[0]:!1,c=this;return this.rowHeaderWidth=NaN,e=this.wot.wtSettings.settings.renderAllRows?1/0:this.getViewportHeight(),t=u(this.wot.wtOverlays.mainTableScrollableElement)-this.wot.wtOverlays.topOverlay.getTableParentOffset(),0>t&&(t=0),n=this.wot.getSetting("fixedRowsTop"),r=this.wot.getSetting("fixedRowsBottom"),s=this.wot.getSetting("totalRows"),n&&(i=this.wot.wtOverlays.topOverlay.sumCellSizes(0,n),t+=i,e-=i),r&&this.wot.wtOverlays.bottomOverlay.clone&&(i=this.wot.wtOverlays.bottomOverlay.sumCellSizes(s-r,s),e-=i),o=this.wot.wtTable.holder.clientHeight===this.wot.wtTable.holder.offsetHeight?0:a(),new m(e,t,this.wot.getSetting("totalRows"),function(e){return c.wot.wtTable.getRowHeight(e)},l?null:this.wot.wtSettings.settings.viewportRowCalculatorOverride,l,o)},createColumnsCalculator:function(){var e,t,n=void 0!==arguments[0]?arguments[0]:!1,o=this,r=this.getViewportWidth();if(this.columnHeaderHeight=NaN,e=this.wot.wtOverlays.leftOverlay.getScrollPosition()-this.wot.wtOverlays.leftOverlay.getTableParentOffset(),0>e&&(e=0),t=this.wot.getSetting("fixedColumnsLeft")){var i=this.wot.wtOverlays.leftOverlay.sumCellSizes(0,t);e+=i,r-=i}return this.wot.wtTable.holder.clientWidth!==this.wot.wtTable.holder.offsetWidth&&(r-=a()),new p(r,e,this.wot.getSetting("totalColumns"),function(e){return o.wot.wtTable.getColumnWidth(e)},n?null:this.wot.wtSettings.settings.viewportColumnCalculatorOverride,n,this.wot.getSetting("stretchH"))},createRenderCalculators:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e){var t=this.createRowsCalculator(!0),n=this.createColumnsCalculator(!0);this.areAllProposedVisibleRowsAlreadyRendered(t)&&this.areAllProposedVisibleColumnsAlreadyRendered(n)||(e=!1)}return e||(this.rowsRenderCalculator=this.createRowsCalculator(),this.columnsRenderCalculator=this.createColumnsCalculator()),this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,e},createVisibleCalculators:function(){this.rowsVisibleCalculator=this.createRowsCalculator(!0),this.columnsVisibleCalculator=this.createColumnsCalculator(!0)},areAllProposedVisibleRowsAlreadyRendered:function(e){return this.rowsVisibleCalculator?e.startRow0?!1:e.endRow>this.rowsRenderCalculator.endRow||e.endRow===this.rowsRenderCalculator.endRow&&e.endRow0?!1:e.endColumn>this.columnsRenderCalculator.endColumn||e.endColumn===this.columnsRenderCalculator.endColumn&&e.endColumn=0;s--)if(null===e[s])e.splice(s,1);else{var l=e[s][0],a=d.propToCol(e[s][1]),u=p.runHooks("modifyCol",a),c=p.getCellMeta(l,u);if("numeric"===c.type&&"string"==typeof e[s][3]&&e[s][3].length>0&&(/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3])||c.format)){var h=e[s][3].length;"undefined"==typeof c.language?y.language("en"):e[s][3].indexOf(".")===h-3&&-1===e[s][3].indexOf(",")?y.language("en"):y.language(c.language),y.validate(e[s][3])&&(e[s][3]=y().unformat(e[s][3]))}p.getCellValidator(c)&&(i.addValidatorToQueue(),p.validateCell(e[s][3],c,function(t,n){return function(o){if("boolean"!=typeof o)throw new Error("Validation error: result is not boolean");o===!1&&n.allowInvalid===!1&&(e.splice(t,1),n.valid=!0,--t),i.removeValidatorFormQueue()}}(s,c),t))}i.checkIfQueueIsEmpty()}function r(e,t){var n=e.length-1;if(!(0>n)){for(;n>=0;n--)if(null!==e[n]){if(null!=e[n][2]||null!=e[n][3]){if(c.settings.allowInsertRow)for(;e[n][0]>p.countRows()-1;)d.createRow();if("array"===p.dataType&&c.settings.allowInsertColumn)for(;d.propToCol(e[n][1])>p.countCols()-1;)d.createCol();d.set(e[n][0],e[n][1],e[n][3])}}else e.splice(n,1);p.forceFullRender=!0,h.adjustRowsAndCols(),Handsontable.hooks.run(p,"beforeChangeRender",e,t),f.refreshBorders(null,!0),p.view.wt.wtOverlays.adjustElementsSize(),Handsontable.hooks.run(p,"afterChange",e,t||"edit")}}function i(e,t,n){ -return"object"==typeof e?e:[[e,t,n]]}function s(e){if(e.hasOwnProperty("type")){var t,n={};if("object"==typeof e.type)t=e.type;else if("string"==typeof e.type&&(t=Handsontable.cellTypes[e.type],void 0===t))throw new Error('You declared cell type "'+e.type+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');for(var o in t)t.hasOwnProperty(o)&&!e.hasOwnProperty(o)&&(n[o]=t[o]);return n}}function l(e){return Handsontable.hooks.run(p,"modifyRow",e)}function a(e){return Handsontable.hooks.run(p,"modifyCol",e)}function u(){throw new Error("This method cannot be called because this Handsontable instance has been destroyed")}var c,d,h,f,g,p=this,m=function(){},w=k(p);P(m.prototype,X.prototype),P(m.prototype,t),P(m.prototype,s(t)),this.rootElement=e,this.isHotTableEnv=T(this.rootElement),Handsontable.eventManager.isHotTableEnv=this.isHotTableEnv,this.container=document.createElement("DIV"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),this.guid="ht_"+j(),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid),c={cellSettings:[],columnSettings:[],columnsSettingConflicts:["data","width"],settings:new m,selRange:null,isPopulated:null,scrollable:null,firstRun:!0},h={alter:function(e,t,n,o,r){var i;switch(n=n||1,e){case"insert_row":if(p.getSettings().maxRows===p.countRows())return;i=d.createRow(t,n),i&&(f.isSelected()&&c.selRange.from.row>=t?(c.selRange.from.row=c.selRange.from.row+i,f.transformEnd(i,0)):f.refreshBorders());break;case"insert_col":if(i=d.createCol(t,n)){if(Array.isArray(p.getSettings().colHeaders)){var s=[t,0];s.length+=i,Array.prototype.splice.apply(p.getSettings().colHeaders,s)}f.isSelected()&&c.selRange.from.col>=t?(c.selRange.from.col=c.selRange.from.col+i,f.transformEnd(0,i)):f.refreshBorders()}break;case"remove_row":t=p.runHooks("modifyCol",t),d.removeRow(t,n),c.cellSettings.splice(t,n);var l=p.countRows(),a=p.getSettings().fixedRowsTop;a>=t+1&&(p.getSettings().fixedRowsTop-=Math.min(n,a-t));var u=p.getSettings().fixedRowsBottom;u&&t+1>=l-u&&(p.getSettings().fixedRowsBottom-=Math.min(n,u-t)),h.adjustRowsAndCols(),f.refreshBorders();break;case"remove_col":d.removeCol(t,n);for(var g=0,m=d.getAll().length;m>g;g++)g in c.cellSettings&&c.cellSettings[g].splice(t,n);var w=p.getSettings().fixedColumnsLeft;w>=t+1&&(p.getSettings().fixedColumnsLeft-=Math.min(n,w-t)),Array.isArray(p.getSettings().colHeaders)&&("undefined"==typeof t&&(t=-1),p.getSettings().colHeaders.splice(t,n)),h.adjustRowsAndCols(),f.refreshBorders();break;default:throw new Error('There is no such action "'+e+'"')}r||h.adjustRowsAndCols()},adjustRowsAndCols:function(){if(c.settings.minRows){var e=p.countRows();if(et;t++)d.createRow(p.countRows(),1,!0)}if(c.settings.minSpareRows){var o=p.countEmptyRows(!0);if(oi-1?(a=i-1,l=!0,h>a&&(h=a)):h>i-1&&(h=i-1,l=!0,a>h&&(a=h)),u>s-1?(u=s-1,l=!0,g>u&&(g=u)):g>s-1&&(g=s-1,l=!0,u>g&&(u=g)),l&&p.selectCell(a,u,h,g)}p.view&&p.view.wt.wtOverlays.adjustElementsSize()},populateFromArray:function(e,t,n,o,r,i,s){var l,a,u,d,h=[],f={};if(a=t.length,0===a)return!1;var g,m,w,v;({row:null===n?null:n.row,col:null===n?null:n.col});switch(r){case"shift_down":for(g=n?n.col-e.col+1:0,m=n?n.row-e.row+1:0,t=z(t),u=0,d=t.length,w=Math.max(d,g);w>u;u++)if(d>u){for(l=0,a=t[u].length;m-a>l;l++)t[u].push(t[u][l%a]);t[u].unshift(e.col+u,e.row,0),p.spliceCol.apply(p,t[u])}else t[u%d][0]=e.col+u,p.spliceCol.apply(p,t[u%d]);break;case"shift_right":for(g=n?n.col-e.col+1:0,m=n?n.row-e.row+1:0,l=0,a=t.length,v=Math.max(a,m);v>l;l++)if(a>l){for(u=0,d=t[l].length;g-d>u;u++)t[l].push(t[l][u%d]);t[l].unshift(e.row+l,e.col,0),p.spliceRow.apply(p,t[l])}else t[l%a][0]=e.row+l,p.spliceRow.apply(p,t[l%a]);break;case"overwrite":default:f.row=e.row,f.col=e.col;var b,C={row:n&&e?n.row-e.row+1:1,col:n&&e?n.col-e.col+1:1},y=0,R=0,E=!0,S=function(e){var n=void 0!==arguments[1]?arguments[1]:null,o=t[e%t.length];return null!==n?o[n%o.length]:o},T=t.length,O=n?n.row-e.row+1:0;for(a=n?O:Math.max(T,O),l=0;a>l&&!(n&&f.row>n.row&&O>T||!c.settings.allowInsertRow&&f.row>p.countRows()-1||f.row>=c.settings.maxRows);l++){var _=l-y,M=S(_).length,H=n?n.col-e.col+1:0;if(d=n?H:Math.max(M,H),f.col=e.col,b=p.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!b.skipRowOnPaste){for(R=0,u=0;d>u&&!(n&&f.col>n.col&&H>M||!c.settings.allowInsertColumn&&f.col>p.countCols()-1||f.col>=c.settings.maxCols);u++)if(b=p.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!b.skipColumnOnPaste)if(b.readOnly)f.col++;else{var k=u-R,A=S(_,k),P=p.getDataAtCell(f.row,f.col),N={row:_,col:k};if("autofill"===o){var W=p.runHooks("beforeAutofillInsidePopulate",N,i,t,s,{},C);W&&(A="undefined"==typeof W.value?A:W.value)}if(null!==A&&"object"==typeof A)if(null===P||"object"!=typeof P)E=!1;else{var I=x(P[0]||P),j=x(A[0]||A);D(I,j)?A=L(A):E=!1}else null!==P&&"object"==typeof P&&(E=!1);E&&h.push([f.row,f.col,A]),E=!0,f.col++}else R++,f.col++,d++;f.row++}else y++,f.row++,a++}p.setDataAtCell(h,null,null,o||"populateFromArray")}}},this.selection=f={inProgress:!1,selectedHeader:{cols:!1,rows:!1},setSelectedHeaders:function(e,t){p.selection.selectedHeader.rows=e,p.selection.selectedHeader.cols=t},begin:function(){p.selection.inProgress=!0},finish:function(){var e=p.getSelected();Handsontable.hooks.run(p,"afterSelectionEnd",e[0],e[1],e[2],e[3]),Handsontable.hooks.run(p,"afterSelectionEndByProp",e[0],p.colToProp(e[1]),e[2],p.colToProp(e[3])),p.selection.inProgress=!1},isInProgress:function(){return p.selection.inProgress},setRangeStart:function(e,t){Handsontable.hooks.run(p,"beforeSetRangeStart",e),c.selRange=new K(e,e,e),f.setRangeEnd(e,null,t)},setRangeEnd:function(e,t,n){if(null!==c.selRange){var o,r=!1,i=!0,s=p.view.wt.wtTable.getFirstVisibleRow(),l=p.view.wt.wtTable.getFirstVisibleColumn(),a={row:null,col:null};Handsontable.hooks.run(p,"beforeSetRangeEnd",e),p.selection.begin(),a.row=e.row<0?s:e.row,a.col=e.col<0?l:e.col,c.selRange.to=new $(a.row,a.col),c.settings.multiSelect||(c.selRange.from=e),p.view.wt.selections.current.clear(),o=p.getCellMeta(c.selRange.highlight.row,c.selRange.highlight.col).disableVisualSelection,"string"==typeof o&&(o=[o]),(o===!1||Array.isArray(o)&&-1===o.indexOf("current"))&&p.view.wt.selections.current.add(c.selRange.highlight),p.view.wt.selections.area.clear(),(o===!1||Array.isArray(o)&&-1===o.indexOf("area"))&&f.isMultiple()&&(p.view.wt.selections.area.add(c.selRange.from),p.view.wt.selections.area.add(c.selRange.to)),(c.settings.currentRowClassName||c.settings.currentColClassName)&&(p.view.wt.selections.highlight.clear(),p.view.wt.selections.highlight.add(c.selRange.from),p.view.wt.selections.highlight.add(c.selRange.to)),Handsontable.hooks.run(p,"afterSelection",c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col),Handsontable.hooks.run(p,"afterSelectionByProp",c.selRange.from.row,d.colToProp(c.selRange.from.col),c.selRange.to.row,d.colToProp(c.selRange.to.col)),(0===c.selRange.from.row&&c.selRange.to.row===p.countRows()-1&&p.countRows()>1||0===c.selRange.from.col&&c.selRange.to.col===p.countCols()-1&&p.countCols()>1)&&(r=!0),(e.row<0||e.col<0)&&(i=!1),t!==!1&&!r&&i&&(c.selRange.from&&!f.isMultiple()?p.view.scrollViewport(c.selRange.from):p.view.scrollViewport(e)),f.refreshBorders(null,n)}},refreshBorders:function(e,t){t||g.destroyEditor(e),p.view.render(),f.isSelected()&&!t&&g.prepareEditor()},isMultiple:function(){var e=!(c.selRange.to.col===c.selRange.from.col&&c.selRange.to.row===c.selRange.from.row),t=Handsontable.hooks.run(p,"afterIsMultipleSelection",e);return e?t:void 0},transformStart:function(e,t,n,o){var r,i,s,l,a=new $(e,t),u=0,d=0;p.runHooks("modifyTransformStart",a),r=p.countRows(),i=p.countCols(),l=p.getSettings().fixedRowsBottom,c.selRange.highlight.row+e>r-1?n&&c.settings.minSpareRows>0&&!(l&&c.selRange.highlight.row>=r-l-1)?(p.alter("insert_row",r),r=p.countRows()):c.settings.autoWrapCol&&(a.row=1-r,a.col=c.selRange.highlight.col+a.col==i-1?1-i:1):c.settings.autoWrapCol&&c.selRange.highlight.row+a.row<0&&c.selRange.highlight.col+a.col>=0&&(a.row=r-1,a.col=c.selRange.highlight.col+a.col==0?i-1:-1),c.selRange.highlight.col+a.col>i-1?n&&c.settings.minSpareCols>0?(p.alter("insert_col",i),i=p.countCols()):c.settings.autoWrapRow&&(a.row=c.selRange.highlight.row+a.row==r-1?1-r:1,a.col=1-i):c.settings.autoWrapRow&&c.selRange.highlight.col+a.col<0&&c.selRange.highlight.row+a.row>=0&&(a.row=c.selRange.highlight.row+a.row==0?r-1:-1,a.col=i-1),s=new $(c.selRange.highlight.row+a.row,c.selRange.highlight.col+a.col),s.row<0?(u=-1,s.row=0):s.row>0&&s.row>=r&&(u=1,s.row=r-1),s.col<0?(d=-1,s.col=0):s.col>0&&s.col>=i&&(d=1,s.col=i-1),p.runHooks("afterModifyTransformStart",s,u,d),f.setRangeStart(s,o)},transformEnd:function(e,t){var n,o,r,i=new $(e,t),s=0,l=0;p.runHooks("modifyTransformEnd",i),n=p.countRows(),o=p.countCols(),r=new $(c.selRange.to.row+i.row,c.selRange.to.col+i.col),r.row<0?(s=-1,r.row=0):r.row>0&&r.row>=n&&(s=1,r.row=n-1),r.col<0?(l=-1,r.col=0):r.col>0&&r.col>=o&&(l=1,r.col=o-1),p.runHooks("afterModifyTransformEnd",r,s,l),f.setRangeEnd(r,!0)},isSelected:function(){return null!==c.selRange},inInSelection:function(e){return f.isSelected()?c.selRange.includes(e):!1},deselect:function(){f.isSelected()&&(p.selection.inProgress=!1,c.selRange=null,p.view.wt.selections.current.clear(),p.view.wt.selections.area.clear(),(c.settings.currentRowClassName||c.settings.currentColClassName)&&p.view.wt.selections.highlight.clear(),g.destroyEditor(),f.refreshBorders(),Handsontable.hooks.run(p,"afterDeselect"))},selectAll:function(){c.settings.multiSelect&&(f.setRangeStart(new $(0,0)),f.setRangeEnd(new $(p.countRows()-1,p.countCols()-1),!1))},empty:function(){if(f.isSelected()){var e,t,n=c.selRange.getTopLeftCorner(),o=c.selRange.getBottomRightCorner(),r=[];for(e=n.row;e<=o.row;e++)for(t=n.col;t<=o.col;t++)p.getCellMeta(e,t).readOnly||r.push([e,t,""]);p.setDataAtCell(r)}}},this.init=function(){Handsontable.hooks.run(p,"beforeInit"),Handsontable.mobileBrowser&&E(p.rootElement,"mobile"),this.updateSettings(c.settings,!0),this.view=new V(this),g=new H(p,c,f,d),this.forceFullRender=!0,Handsontable.hooks.run(p,"init"),this.view.render(),"object"==typeof c.firstRun&&(Handsontable.hooks.run(p,"afterChange",c.firstRun[0],c.firstRun[1]),c.firstRun=!1),Handsontable.hooks.run(p,"afterInit")},this.validateCell=function(e,t,n,o){function r(e){var o=t.col,r=t.row,i=p.getCell(r,o,!0);i&&p.view.wt.wtSettings.settings.cellRenderer(r,o,i),n(e)}var i=p.getCellValidator(t);"[object RegExp]"===Object.prototype.toString.call(i)&&(i=function(e){return function(t,n){n(e.test(t))}}(i)),"function"==typeof i?(e=Handsontable.hooks.run(p,"beforeValidate",e,t.row,t.prop,o),p._registerTimeout(setTimeout(function(){i.call(t,e,function(n){n=Handsontable.hooks.run(p,"afterValidate",n,e,t.row,t.prop,o),t.valid=n,r(n),Handsontable.hooks.run(p,"postAfterValidate",n,e,t.row,t.prop,o)})},0))):(t.valid=!0,r(t.valid))},this.setDataAtCell=function(e,t,n,s){var l,a,u,c=i(e,t,n),h=[];for(l=0,a=c.length;a>l;l++){if("object"!=typeof c[l])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof c[l][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");u=d.colToProp(c[l][1]),h.push([c[l][0],u,d.get(c[l][0],u),c[l][2]])}s||"object"!=typeof e||(s=t),o(h,s,function(){r(h,s)})},this.setDataAtRowProp=function(e,t,n,s){var l,a,u=i(e,t,n),c=[];for(l=0,a=u.length;a>l;l++)c.push([u[l][0],u[l][1],d.get(u[l][0],u[l][1]),u[l][2]]);s||"object"!=typeof e||(s=t),o(c,s,function(){r(c,s)})},this.listen=function(){Handsontable.activeGuid=p.guid,document.activeElement&&document.activeElement!==document.body?document.activeElement.blur():document.activeElement||document.body.focus()},this.unlisten=function(){Handsontable.activeGuid=null},this.isListening=function(){return Handsontable.activeGuid===p.guid},this.destroyEditor=function(e){f.refreshBorders(e)},this.populateFromArray=function(e,t,n,o,r,i,s,l,a){var u;if("object"!=typeof n||"object"!=typeof n[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");return u="number"==typeof o?new $(o,r):null,h.populateFromArray(new $(e,t),n,u,i,s,l,a)},this.spliceCol=function(e,t,n){return d.spliceCol.apply(d,arguments)},this.spliceRow=function(e,t,n){return d.spliceRow.apply(d,arguments)},this.getSelected=function(){return f.isSelected()?[c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col]:void 0},this.getSelectedRange=function(){return f.isSelected()?c.selRange:void 0},this.render=function(){p.view&&(p.renderCall=!0,p.forceFullRender=!0,f.refreshBorders(null,!0))},this.loadData=function(e){function t(){c.cellSettings.length=0}if("object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error("loadData only accepts array of objects or array of arrays ("+typeof e+" given)");e=[];for(var n,o=0,r=c.settings.startRows;r>o;o++){n=[];for(var i=0,s=c.settings.startCols;s>i;i++)n.push(null);e.push(n)}}c.isPopulated=!1,m.prototype.data=e,Array.isArray(c.settings.dataSchema)||Array.isArray(e[0])?p.dataType="array":"function"==typeof c.settings.dataSchema?p.dataType="function":p.dataType="object",d=new M(p,c,m),t(),h.adjustRowsAndCols(),Handsontable.hooks.run(p,"afterLoadData"),c.firstRun?c.firstRun=[null,"loadData"]:(Handsontable.hooks.run(p,"afterChange",null,"loadData"),p.render()),c.isPopulated=!0},this.getData=function(e,t,n,o){return"undefined"==typeof e?d.getAll():d.getRange(new $(e,t),new $(n,o),d.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,n,o){return d.getCopyableText(new $(e,t),new $(n,o))},this.getCopyableData=function(e,t){return d.getCopyable(e,d.colToProp(t))},this.getSchema=function(){return d.getSchema()},this.updateSettings=function(e,t){var n,o;if("undefined"!=typeof e.rows)throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');if("undefined"!=typeof e.cols)throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');for(n in e)"data"!==n&&(Handsontable.hooks.getRegistered().indexOf(n)>-1?("function"==typeof e[n]||Array.isArray(e[n]))&&p.addHook(n,e[n]):!t&&e.hasOwnProperty(n)&&(m.prototype[n]=e[n]));if(void 0===e.data&&void 0===c.settings.data?p.loadData(null):void 0!==e.data?p.loadData(e.data):void 0!==e.columns&&d.createMap(),o=p.countCols(),c.cellSettings.length=0,o>0){var r,i;for(n=0;o>n;n++)c.columnSettings[n]=_(m,c.columnsSettingConflicts),r=c.columnSettings[n].prototype,m.prototype.columns&&(i=m.prototype.columns[n],P(r,i),P(r,s(i)))}if("undefined"!=typeof e.cell)for(n in e.cell)if(e.cell.hasOwnProperty(n)){var l=e.cell[n];p.setCellMetaObject(l.row,l.col,l)}if(Handsontable.hooks.run(p,"afterCellMetaReset"),"undefined"!=typeof e.className&&(m.prototype.className&&O(p.rootElement,m.prototype.className),e.className&&E(p.rootElement,e.className)),"undefined"!=typeof e.height){var a=e.height;"function"==typeof a&&(a=a()),p.rootElement.style.height=a+"px"}if("undefined"!=typeof e.width){var u=e.width;"function"==typeof u&&(u=u()),p.rootElement.style.width=u+"px"}a&&(p.rootElement.style.overflow="hidden"),t||Handsontable.hooks.run(p,"afterUpdateSettings"),h.adjustRowsAndCols(),p.view&&!c.firstRun&&(p.forceFullRender=!0,f.refreshBorders(null,!0))},this.getValue=function(){var e=p.getSelected();if(m.prototype.getValue){if("function"==typeof m.prototype.getValue)return m.prototype.getValue.call(p);if(e)return p.getData()[e[0]][m.prototype.getValue]}else if(e)return p.getDataAtCell(e[0],e[1])},this.getSettings=function(){return c.settings},this.clear=function(){f.selectAll(),f.empty()},this.alter=function(e,t,n,o,r){h.alter(e,t,n,o,r)},this.getCell=function(e,t,n){return p.view.getCellAtCoords(new $(e,t),n)},this.getCoords=function(e){return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable,e)},this.colToProp=function(e){return d.colToProp(e)},this.propToCol=function(e){return d.propToCol(e)},this.getDataAtCell=function(e,t){return d.get(e,d.colToProp(t))},this.getDataAtRowProp=function(e,t){return d.get(e,t)},this.getDataAtCol=function(e){var t=[];return t.concat.apply(t,d.getRange(new $(0,e),new $(c.settings.data.length-1,e),d.DESTINATION_RENDERER))},this.getDataAtProp=function(e){var t,n=[];return t=d.getRange(new $(0,d.propToCol(e)),new $(c.settings.data.length-1,d.propToCol(e)),d.DESTINATION_RENDERER),n.concat.apply(n,t)},this.getSourceDataAtCol=function(e){for(var t=[],n=c.settings.data,o=0;o=0;){for(var r=p.countCols()-1;r>=0;)t.addValidatorToQueue(),p.validateCell(p.getDataAtCell(o,r),p.getCellMeta(o,r),function(e){if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");e===!1&&(t.valid=!1),t.removeValidatorFormQueue()},"validateCells"),r--;o--}t.checkIfQueueIsEmpty()},this.getRowHeader=function(e){if(void 0===e){for(var t=[],n=0,o=p.countRows();o>n;n++)t.push(p.getRowHeader(n));return t}return Array.isArray(c.settings.rowHeaders)&&void 0!==c.settings.rowHeaders[e]?c.settings.rowHeaders[e]:"function"==typeof c.settings.rowHeaders?c.settings.rowHeaders(e):c.settings.rowHeaders&&"string"!=typeof c.settings.rowHeaders&&"number"!=typeof c.settings.rowHeaders?e+1:c.settings.rowHeaders},this.hasRowHeaders=function(){return!!c.settings.rowHeaders},this.hasColHeaders=function(){if(void 0!==c.settings.colHeaders&&null!==c.settings.colHeaders)return!!c.settings.colHeaders;for(var e=0,t=p.countCols();t>e;e++)if(p.getColHeader(e))return!0;return!1},this.getColHeader=function(e){if(void 0===e){for(var t=[],n=0,o=p.countCols();o>n;n++)t.push(p.getColHeader(n));return t}var r=e;return e=Handsontable.hooks.run(p,"modifyCol",e),c.settings.columns&&c.settings.columns[e]&&c.settings.columns[e].title?c.settings.columns[e].title:Array.isArray(c.settings.colHeaders)&&void 0!==c.settings.colHeaders[e]?c.settings.colHeaders[e]:"function"==typeof c.settings.colHeaders?c.settings.colHeaders(e):c.settings.colHeaders&&"string"!=typeof c.settings.colHeaders&&"number"!=typeof c.settings.colHeaders?G(r):c.settings.colHeaders},this._getColWidthFromSettings=function(e){var t=p.getCellMeta(0,e),n=t.width;if((void 0===n||n===c.settings.width)&&(n=t.colWidths),void 0!==n&&null!==n){switch(typeof n){case"object":n=n[e];break;case"function":n=n(e)}"string"==typeof n&&(n=parseInt(n,10))}return n},this.getColWidth=function(e){var t=p._getColWidthFromSettings(e);return t=Handsontable.hooks.run(p,"modifyColWidth",t,e),void 0===t&&(t=Y.DEFAULT_WIDTH),t},this._getRowHeightFromSettings=function(e){var t=c.settings.rowHeights;if(void 0!==t&&null!==t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){var t=p._getRowHeightFromSettings(e);return t=Handsontable.hooks.run(p,"modifyRowHeight",t,e)},this.countRows=function(){return c.settings.data.length},this.countCols=function(){return"object"===p.dataType||"function"===p.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:d.colToPropCache.length:"array"===p.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:c.settings.data&&c.settings.data[0]&&c.settings.data[0].length?c.settings.data[0].length:0:void 0},this.getColspanOffset=function(e,t){var n=0;if(p.colspanArray){for(var o=0;e>o;o++)n+=p.colspanArray[t][o]-1||0;return n}for(var n=0,r=p.view.wt.wtTable.THEAD.childNodes.length-t-1,i=p.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(r+1,10)+")"),s=p.view.wt.wtSettings.settings.rowHeaders().length,o=s;s+e>o;o++)i.childNodes[o].hasAttribute("colspan")&&(n+=parseInt(i.childNodes[o].getAttribute("colspan"),10)-1);return n},this.getHeaderColspan=function(e,t){var n=p.view.wt.wtTable.THEAD.childNodes.length-t-1,o=p.view.wt.wtSettings.settings.rowHeaders().length,r=p.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(n+1,10)+")"),i=o+e-p.view.wt.wtViewport.columnsRenderCalculator.startColumn;return r.childNodes[i].hasAttribute("colspan")?parseInt(r.childNodes[i].getAttribute("colspan"),10):0},this.rowOffset=function(){return p.view.wt.wtTable.getFirstRenderedRow()},this.colOffset=function(){return p.view.wt.wtTable.getFirstRenderedColumn()},this.countRenderedRows=function(){return p.view.wt.drawn?p.view.wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return p.view.wt.drawn?p.view.wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return p.view.wt.drawn?p.view.wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return p.view.wt.drawn?p.view.wt.wtTable.getVisibleColumnsCount():-1},this.countEmptyRows=function(e){for(var t,n=p.countRows()-1,o=0;n>=0;){if(t=Handsontable.hooks.run(this,"modifyRow",n),p.isEmptyRow(t))o++;else if(e)break;n--}return o},this.countEmptyCols=function(e){if(p.countRows()<1)return 0;for(var t=p.countCols()-1,n=0;t>=0;){if(p.isEmptyCol(t))n++;else if(e)break;t--}return n},this.isEmptyRow=function(e){return c.settings.isEmptyRow.call(p,e)},this.isEmptyCol=function(e){return c.settings.isEmptyCol.call(p,e)},this.selectCell=function(e,t,n,o,r,i){var s;if(i="undefined"==typeof i||i===!0,"number"!=typeof e||0>e||e>=p.countRows())return!1;if("number"!=typeof t||0>t||t>=p.countCols())return!1;if("undefined"!=typeof n){if("number"!=typeof n||0>n||n>=p.countRows())return!1;if("number"!=typeof o||0>o||o>=p.countCols())return!1}return s=new $(e,t),c.selRange=new K(s,s,s),document.activeElement&&document.activeElement!==document.documentElement&&document.activeElement!==document.body&&document.activeElement.blur(),i&&p.listen(),"undefined"==typeof n?f.setRangeEnd(c.selRange.from,r):f.setRangeEnd(new $(n,o),r),p.selection.finish(),!0},this.selectCellByProp=function(e,t,n,o,r){return arguments[1]=d.propToCol(arguments[1]),"undefined"!=typeof arguments[3]&&(arguments[3]=d.propToCol(arguments[3])),p.selectCell.apply(p,arguments)},this.deselectCell=function(){f.deselect()},this.destroy=function(){p._clearTimeouts(),p.view&&p.view.destroy(),S(p.rootElement),w.destroy(),Handsontable.hooks.run(p,"afterDestroy"),Handsontable.hooks.destroy(p);for(var e in p)p.hasOwnProperty(e)&&("function"==typeof p[e]?p[e]=u:"guid"!==e&&(p[e]=null));c=null,d=null,h=null,f=null,g=null,p=null,m=null},this.getActiveEditor=function(){return g.getActiveEditor()},this.getPlugin=function(e){return W(this,e)},this.getInstance=function(){return p},this.addHook=function(e,t){Handsontable.hooks.add(e,t,p)},this.addHookOnce=function(e,t){Handsontable.hooks.once(e,t,p)},this.removeHook=function(e,t){Handsontable.hooks.remove(e,t,p)},this.runHooks=function(e,t,n,o,r,i,s){return Handsontable.hooks.run(p,e,t,n,o,r,i,s)},this.timeouts=[],this._registerTimeout=function(e){this.timeouts.push(e)},this._clearTimeouts=function(){for(var e=0,t=this.timeouts.length;t>e;e++)clearTimeout(this.timeouts[e])},this.version=Handsontable.version,Handsontable.hooks.run(p,"construct")};var X=function(){};X.prototype={data:void 0,dataSchema:void 0,width:void 0,height:void 0,startRows:5,startCols:5,rowHeaders:null,colHeaders:null,colWidths:void 0,columns:void 0,cells:void 0,cell:[],comments:!1,customBorders:!1,minRows:0,minCols:0,maxRows:1/0,maxCols:1/0,minSpareRows:0,minSpareCols:0,allowInsertRow:!0,allowInsertColumn:!0,allowRemoveRow:!0,allowRemoveColumn:!0,multiSelect:!0,fillHandle:!0,fixedRowsTop:0,fixedRowsBottom:0,fixedColumnsLeft:0,outsideClickDeselects:!0,enterBeginsEditing:!0,enterMoves:{row:1,col:0},tabMoves:{row:0,col:1},autoWrapRow:!1,autoWrapCol:!1,copyRowsLimit:1e3,copyColsLimit:1e3,pasteMode:"overwrite",persistentState:!1,currentRowClassName:void 0,currentColClassName:void 0,className:void 0,tableClassName:void 0,stretchH:"none",isEmptyRow:function(e){var t,n,o,r;for(t=0,n=this.countCols();n>t;t++)if(o=this.getDataAtCell(e,t),""!==o&&null!==o&&"undefined"!=typeof o)return"object"==typeof o?(r=this.getCellMeta(e,t),D(this.getSchema()[r.prop],o)):!1;return!0},isEmptyCol:function(e){var t,n,o;for(t=0,n=this.countRows();n>t;t++)if(o=this.getDataAtCell(t,e),""!==o&&null!==o&&"undefined"!=typeof o)return!1;return!0},observeDOMVisibility:!0,allowInvalid:!0,invalidCellClassName:"htInvalid",placeholder:!1,placeholderCellClassName:"htPlaceholder",readOnlyCellClassName:"htDimmed",renderer:void 0,commentedCellClassName:"htCommentCell",fragmentSelection:!1,readOnly:!1,skipColumnOnPaste:!1,search:!1,type:"text",copyable:!0,editor:void 0,autoComplete:void 0,visibleRows:10,trimDropdown:!0,debug:!1,wordWrap:!0,noWordWrapClassName:"htNoWrap",contextMenu:void 0,contextMenuCopyPaste:void 0,copyPaste:void 0,undo:void 0,columnSorting:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,mergeCells:!1,viewportRowRenderingOffset:"auto",viewportColumnRenderingOffset:"auto",validator:void 0,disableVisualSelection:!1,sortIndicator:!1,manualColumnFreeze:void 0,trimWhitespace:!0,settings:void 0,source:void 0,title:void 0,checkedTemplate:void 0,uncheckedTemplate:void 0,label:void 0,format:void 0,language:void 0,selectOptions:void 0,autoColumnSize:void 0,autoRowSize:void 0,dateFormat:void 0,correctFormat:!1,defaultDate:void 0,strict:void 0,renderAllRows:void 0},Handsontable.DefaultSettings=X},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,dataMap:26,editorManager:27,eventManager:40,"helpers/array":41,"helpers/data":43,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/setting":50,"helpers/string":51,numeral:"numeral",plugins:55,renderers:86,tableView:95}],26:[function(e,t,n){"use strict";function o(e,t,n){this.instance=e,this.priv=t,this.GridSettings=n,this.dataSource=this.instance.getSettings().data,this.dataSource[0]?this.duckSchema=this.recursiveDuckSchema(this.dataSource[0]):this.duckSchema={},this.createMap()}Object.defineProperties(n,{DataMap:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u,c=(r=e("SheetClip"),r&&r.__esModule&&r||{"default":r})["default"],d=(i=e("helpers/data"),i&&i.__esModule&&i||{"default":i}).cellMethodLookupFactory,h=(s=e("helpers/setting"),s&&s.__esModule&&s||{"default":s}).columnFactory,f=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),g=f.duckSchema,p=f.deepExtend,m=(a=e("helpers/array"),a&&a.__esModule&&a||{"default":a}),w=m.extendArray,v=m.to2dArray,b=(u=e("multiMap"),u&&u.__esModule&&u||{"default":u}).MultiMap;o.prototype.DESTINATION_RENDERER=1,o.prototype.DESTINATION_CLIPBOARD_GENERATOR=2,o.prototype.recursiveDuckSchema=function(e){return g(e)},o.prototype.recursiveDuckColumns=function(e,t,n){var o,r;if("undefined"==typeof t&&(t=0,n=""),"object"==typeof e&&!Array.isArray(e))for(r in e)e.hasOwnProperty(r)&&(null===e[r]?(o=n+r,this.colToPropCache.push(o),this.propToColCache.set(o,t),t++):t=this.recursiveDuckColumns(e[r],t,r+"."));return t},o.prototype.createMap=function(){var e,t,n=this.getSchema();if("undefined"==typeof n)throw new Error("trying to create `columns` definition but you didnt' provide `schema` nor `data`");this.colToPropCache=[],this.propToColCache=new b;var o=this.instance.getSettings().columns;if(o)for(e=0,t=o.length;t>e;e++)"undefined"!=typeof o[e].data&&(this.colToPropCache[e]=o[e].data,this.propToColCache.set(o[e].data,e));else this.recursiveDuckColumns(n)},o.prototype.colToProp=function(e){return e=Handsontable.hooks.run(this.instance,"modifyCol",e),this.colToPropCache&&"undefined"!=typeof this.colToPropCache[e]?this.colToPropCache[e]:e},o.prototype.propToCol=function(e){var t;return t="undefined"==typeof this.propToColCache.get(e)?e:this.propToColCache.get(e),t=Handsontable.hooks.run(this.instance,"modifyCol",t)},o.prototype.getSchema=function(){var e=this.instance.getSettings().dataSchema;return e?"function"==typeof e?e():e:this.duckSchema},o.prototype.createRow=function(e,t,n){var o,r,i=this.instance.countCols(),s=0;t||(t=1),("number"!=typeof e||e>=this.instance.countRows())&&(e=this.instance.countRows()),r=e;for(var l=this.instance.getSettings().maxRows;t>s&&this.instance.countRows()a;a++)o.push(null)}else"function"===this.instance.dataType?o=this.instance.getSettings().dataSchema(e):(o={},p(o,this.getSchema()));e===this.instance.countRows()?this.dataSource.push(o):this.dataSource.splice(e,0,o),s++,r++}return Handsontable.hooks.run(this.instance,"afterCreateRow",e,s,n),this.instance.forceFullRender=!0,s},o.prototype.createCol=function(e,t,n){if(!this.instance.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");var o,r,i=this.instance.countRows(),s=this.dataSource,l=0;t||(t=1),r=e;for(var a=this.instance.getSettings().maxCols;t>l&&this.instance.countCols()=this.instance.countCols()){for(var u=0;i>u;u++)"undefined"==typeof s[u]&&(s[u]=[]), -s[u].push(null);this.priv.columnSettings.push(o)}else{for(var u=0;i>u;u++)s[u].splice(r,0,null);this.priv.columnSettings.splice(r,0,o)}l++,r++}return Handsontable.hooks.run(this.instance,"afterCreateCol",e,l,n),this.instance.forceFullRender=!0,l},o.prototype.removeRow=function(e,t){t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countRows()+e)%this.instance.countRows();var n=this.physicalRowsToLogical(e,t),o=Handsontable.hooks.run(this.instance,"beforeRemoveRow",e,t);if(o!==!1){var r=this.dataSource,i=r.filter(function(e,t){return-1==n.indexOf(t)});r.length=0,Array.prototype.push.apply(r,i),Handsontable.hooks.run(this.instance,"afterRemoveRow",e,t),this.instance.forceFullRender=!0}},o.prototype.removeCol=function(e,t){if("object"===this.instance.dataType||this.instance.getSettings().columns)throw new Error("cannot remove column with object data source or columns option specified");t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countCols()+e)%this.instance.countCols();var n=Handsontable.hooks.run(this.instance,"beforeRemoveCol",e,t);if(n!==!1){for(var o=this.dataSource,r=0,i=this.instance.countRows();i>r;r++)o[r].splice(e,t);this.priv.columnSettings.splice(e,t),Handsontable.hooks.run(this.instance,"afterRemoveCol",e,t),this.instance.forceFullRender=!0}},o.prototype.spliceCol=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getDataAtCol(e),i=r.slice(t,t+n),s=r.slice(t+n);w(o,s);for(var l=0;n>l;)o.push(null),l++;return v(o),this.instance.populateFromArray(t,e,o,null,null,"spliceCol"),i},o.prototype.spliceRow=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getSourceDataAtRow(e),i=r.slice(t,t+n),s=r.slice(t+n);w(o,s);for(var l=0;n>l;)o.push(null),l++;return this.instance.populateFromArray(e,t,[o],null,null,"spliceRow"),i},o.prototype.get=function(e,t){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e),"string"==typeof t&&t.indexOf(".")>-1){var n=t.split("."),o=this.dataSource[e];if(!o)return null;for(var r=0,i=n.length;i>r;r++)if(o=o[n[r]],"undefined"==typeof o)return null;return o}return"function"==typeof t?t(this.dataSource.slice(e,e+1)[0]):this.dataSource[e]?this.dataSource[e][t]:null};var C=d("copyable",!1);o.prototype.getCopyable=function(e,t){return C.call(this.instance,e,this.propToCol(t))?this.get(e,t):""},o.prototype.set=function(e,t,n,o){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e,o||"datamapGet"),"string"==typeof t&&t.indexOf(".")>-1){for(var r=t.split("."),i=this.dataSource[e],s=0,l=r.length-1;l>s;s++)"undefined"==typeof i[r[s]]&&(i[r[s]]={}),i=i[r[s]];i[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(e,e+1)[0],n):this.dataSource[e][t]=n},o.prototype.physicalRowsToLogical=function(e,t){for(var n,o=this.instance.countRows(),r=(o+e)%o,i=[],s=t;o>r&&s;)n=Handsontable.hooks.run(this.instance,"modifyRow",r),i.push(n),s--,r++;return i},o.prototype.clear=function(){for(var e=0;e=o;o++){for(l=[],i=Math.min(e.col,t.col);s>=i;i++)l.push(u.call(this,o,this.colToProp(i)));a.push(l)}return a},o.prototype.getText=function(e,t){return c.stringify(this.getRange(e,t,this.DESTINATION_RENDERER))},o.prototype.getCopyableText=function(e,t){return c.stringify(this.getRange(e,t,this.DESTINATION_CLIPBOARD_GENERATOR))},Handsontable.DataMap=o},{SheetClip:"SheetClip","helpers/array":41,"helpers/data":43,"helpers/object":49,"helpers/setting":50,multiMap:53}],27:[function(e,t,n){"use strict";function o(e,t,n){function o(e){var o="function"==typeof t.settings.enterMoves?t.settings.enterMoves(event):t.settings.enterMoves;e?n.transformStart(-o.row,-o.col):n.transformStart(o.row,o.col,!0)}function r(e){e?n.transformEnd(-1,0):n.transformStart(-1,0)}function i(e){e?n.transformEnd(1,0):n.transformStart(1,0)}function s(e){e?n.transformEnd(0,1):n.transformStart(0,1)}function l(e){e?n.transformEnd(0,-1):n.transformStart(0,-1)}function a(a){var c,g;if(e.isListening()&&(Handsontable.hooks.run(e,"beforeKeyDown",a),!y&&!w(a)&&(t.lastKeyCode=a.keyCode,n.isSelected()))){if(c=(a.ctrlKey||a.metaKey)&&!a.altKey,b&&!b.isWaiting()&&!(h(a.keyCode)||f(a.keyCode)||c||C.isEditorOpened()))return void C.openEditor("",a);switch(g=a.shiftKey?n.setRangeEnd:n.setRangeStart,a.keyCode){case d.A:!C.isEditorOpened()&&c&&(n.selectAll(),a.preventDefault(),p(a));break;case d.ARROW_UP:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),r(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_DOWN:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),i(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_RIGHT:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),s(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_LEFT:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),l(a.shiftKey),a.preventDefault(),p(a);break;case d.TAB:var v="function"==typeof t.settings.tabMoves?t.settings.tabMoves(a):t.settings.tabMoves;a.shiftKey?n.transformStart(-v.row,-v.col):n.transformStart(v.row,v.col,!0),a.preventDefault(),p(a);break;case d.BACKSPACE:case d.DELETE:n.empty(a),C.prepareEditor(),a.preventDefault();break;case d.F2:C.openEditor(null,a),b&&b.enableFullEditMode(),a.preventDefault();break;case d.ENTER:C.isEditorOpened()?(b&&b.state!==Handsontable.EditorState.WAITING&&C.closeEditorAndSaveChanges(c),o(a.shiftKey)):e.getSettings().enterBeginsEditing?(C.openEditor(null,a),b&&b.enableFullEditMode()):o(a.shiftKey),a.preventDefault(),m(a);break;case d.ESCAPE:C.isEditorOpened()&&C.closeEditorAndRestoreOriginalValue(c),a.preventDefault();break;case d.HOME:g(a.ctrlKey||a.metaKey?new u(0,t.selRange.from.col):new u(t.selRange.from.row,0)),a.preventDefault(),p(a);break;case d.END:g(a.ctrlKey||a.metaKey?new u(e.countRows()-1,t.selRange.from.col):new u(t.selRange.from.row,e.countCols()-1)),a.preventDefault(),p(a);break;case d.PAGE_UP:n.transformStart(-e.countVisibleRows(),0),a.preventDefault(),p(a);break;case d.PAGE_DOWN:n.transformStart(e.countVisibleRows(),0),a.preventDefault(),p(a)}}}function c(){function t(e,t,n){"TD"==n.nodeName&&(C.openEditor(),b&&b.enableFullEditMode())}e.addHook("afterDocumentKeyDown",a),g.addEventListener(document.documentElement,"keydown",function(t){e.runHooks("afterDocumentKeyDown",t)}),e.view.wt.update("onCellDblClick",t),e.addHook("afterDestroy",function(){y=!0})}var g,b,C=this,y=!1;g=v(e),this.destroyEditor=function(e){this.closeEditor(e)},this.getActiveEditor=function(){return b},this.prepareEditor=function(){var n,o,r,i,s,l,a;return b&&b.isWaiting()?void this.closeEditor(!1,!1,function(e){e&&C.prepareEditor()}):(n=t.selRange.highlight.row,o=t.selRange.highlight.col,r=e.colToProp(o),i=e.getCell(n,o),s=e.getDataAtCell(n,o),l=e.getCellMeta(n,o),a=e.getCellEditor(l),void(a?(b=Handsontable.editors.getEditor(a,e),b.prepare(n,o,r,i,s,l)):b=void 0))},this.isEditorOpened=function(){return b&&b.isOpened()},this.openEditor=function(e,t){b&&!b.cellProperties.readOnly?b.beginEditing(e,t):b&&b.cellProperties.readOnly&&t&&t.keyCode===d.ENTER&&o()},this.closeEditor=function(e,t,n){b?b.finishEditing(e,t,n):n&&n(!1)},this.closeEditorAndSaveChanges=function(e){return this.closeEditor(!1,e)},this.closeEditorAndRestoreOriginalValue=function(e){return this.closeEditor(!0,e)},c()}Object.defineProperties(n,{EditorManager:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u=(r=e("3rdparty/walkontable/src/cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords,c=(i=e("helpers/unicode"),i&&i.__esModule&&i||{"default":i}),d=c.KEY_CODES,h=c.isMetaKey,f=c.isCtrlKey,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=g.stopPropagation,m=g.stopImmediatePropagation,w=g.isImmediatePropagationStopped,v=((l=e("editors"),l&&l.__esModule&&l||{"default":l}).getEditor,(a=e("eventManager"),a&&a.__esModule&&a||{"default":a}).eventManager);Handsontable.EditorManager=o},{"3rdparty/walkontable/src/cell/coords":5,editors:28,eventManager:40,"helpers/dom/event":45,"helpers/unicode":52}],28:[function(e,t,n){"use strict";function o(e){var t,n;n={},t=e,this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in n||(n[e.guid]=new t(e)),n[e.guid]}}function r(e,t){var n=new o(t);"string"==typeof e&&(c[e]=n,Handsontable.editors[u(e)+"Editor"]=t),d.set(t,n)}function i(e,t){var n;if("function"==typeof e)d.get(e)||r(null,e),n=d.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');n=c[e]}if(!n)throw Error('No editor registered under name "'+e+'"');return n.getInstance(t)}function s(e){var t;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');if(t=c[e],!t)throw Error('No editor registered under name "'+e+'"');return t.getConstructor()}function l(e){return c[e]?!0:!1}Object.defineProperties(n,{registerEditor:{get:function(){return r}},getEditor:{get:function(){return i}},hasEditor:{get:function(){return l}},getEditorConstructor:{get:function(){return s}},__esModule:{value:!0}});var a,u=(a=e("helpers/string"),a&&a.__esModule&&a||{"default":a}).toUpperCaseFirst,c={},d=new WeakMap;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.registerEditor=r,Handsontable.editors.getEditor=i},{"helpers/string":51}],29:[function(e,t,n){"use strict";function o(e){this.instance=e,this.state=Handsontable.EditorState.VIRGIN,this._opened=!1,this._fullEditMode=!1,this._closeCallback=null,this.init()}Object.defineProperties(n,{BaseEditor:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify,l=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.BaseEditor=o,Handsontable.EditorState={VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"},o.prototype._fireCallbacks=function(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)},o.prototype.init=function(){},o.prototype.getValue=function(){throw Error("Editor getValue() method unimplemented")},o.prototype.setValue=function(e){throw Error("Editor setValue() method unimplemented")},o.prototype.open=function(){throw Error("Editor open() method unimplemented")},o.prototype.close=function(){throw Error("Editor close() method unimplemented")},o.prototype.prepare=function(e,t,n,o,r,i){this.TD=o,this.row=e,this.col=t,this.prop=n,this.originalValue=r,this.cellProperties=i,this.state=Handsontable.EditorState.VIRGIN},o.prototype.extend=function(){function e(){n.apply(this,arguments)}function t(e,t){function n(){}return n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e,e}var n=this.constructor;return t(e,n)},o.prototype.saveValue=function(e,t){var n,o;t?(n=this.instance.getSelected(),n[0]>n[2]&&(o=n[0],n[0]=n[2],n[2]=o),n[1]>n[3]&&(o=n[1],n[1]=n[3],n[3]=o),this.instance.populateFromArray(n[0],n[1],e,n[2],n[3],"edit")):this.instance.populateFromArray(this.row,this.col,e,null,null,"edit")},o.prototype.beginEditing=function(e,t){this.state==Handsontable.EditorState.VIRGIN&&(this.instance.view.scrollViewport(new l(this.row,this.col)),this.instance.view.render(),this.state=Handsontable.EditorState.EDITING,e="string"==typeof e?e:this.originalValue,this.setValue(s(e)),this.open(t),this._opened=!0,this.focus(),this.instance.view.render())},o.prototype.finishEditing=function(e,t,n){var o,r=this;if(n){var i=this._closeCallback;this._closeCallback=function(e){i&&i(e),n(e)}}if(!this.isWaiting()){if(this.state==Handsontable.EditorState.VIRGIN)return void this.instance._registerTimeout(setTimeout(function(){r._fireCallbacks(!0)},0));if(this.state==Handsontable.EditorState.EDITING){if(e)return this.cancelChanges(),void this.instance.view.render();o=this.instance.getSettings().trimWhitespace?[["string"==typeof this.getValue()?String.prototype.trim.call(this.getValue()||""):this.getValue()]]:[[this.getValue()]],this.state=Handsontable.EditorState.WAITING,this.saveValue(o,t),this.instance.getCellValidator(this.cellProperties)?this.instance.addHookOnce("postAfterValidate",function(e){r.state=Handsontable.EditorState.FINISHED,r.discardEditor(e)}):(this.state=Handsontable.EditorState.FINISHED,this.discardEditor(!0))}}},o.prototype.cancelChanges=function(){this.state=Handsontable.EditorState.FINISHED,this.discardEditor()},o.prototype.discardEditor=function(e){this.state===Handsontable.EditorState.FINISHED&&(e===!1&&this.cellProperties.allowInvalid!==!0?(this.instance.selectCell(this.row,this.col),this.focus(),this.state=Handsontable.EditorState.EDITING,this._fireCallbacks(!1)):(this.close(),this._opened=!1,this._fullEditMode=!1,this.state=Handsontable.EditorState.VIRGIN,this._fireCallbacks(!0)))},o.prototype.enableFullEditMode=function(){this._fullEditMode=!0},o.prototype.isInFullEditMode=function(){return this._fullEditMode},o.prototype.isOpened=function(){return this._opened},o.prototype.isWaiting=function(){return this.state===Handsontable.EditorState.WAITING},o.prototype.checkEditorSection=function(){var e=this.instance.countRows(),t="";return this.row=e-this.instance.getSettings().fixedRowsBottom?t=this.col"+l+"")))},autoColumnSize:!0,modifyColWidth:function(e,t){var o=this.getPlugin("autoColumnSize").widths;return o[t]&&(e=o[t]),n?e:e+15}}),this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"]=v()+2+"px",O&&(O=!1),t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value)},0))},T.prototype.close=function(){S.prototype.close.apply(this,arguments)},T.prototype.queryChoices=function(e){if(this.query=e,"function"==typeof this.cellProperties.source){var t=this;this.cellProperties.source(e,function(e){t.updateChoicesList(e)})}else if(Array.isArray(this.cellProperties.source)){var n;if(e&&this.cellProperties.filter!==!1){var o=this.cellProperties.filteringCaseSensitive===!0,r=e.toLowerCase();n=this.cellProperties.source.filter(function(t){return o?-1!=t.indexOf(e):-1!=t.toLowerCase().indexOf(r)})}else n=this.cellProperties.source;this.updateChoicesList(n)}else this.updateChoicesList([])},T.prototype.updateChoicesList=function(e){var t,n=w(this.TEXTAREA),o=b(this.TEXTAREA),r=T.sortByRelevance(this.getValue(),e,this.cellProperties.filteringCaseSensitive);if(0==this.cellProperties.filter)t=r[0];else{for(var i=[],s=0,l=r.length;l>s;s++)i.push(e[r[s]]);t=0,e=i}this.choices=e,this.htEditor.loadData(g([e])),this.updateDropdownHeight(),this.cellProperties.strict===!0&&this.highlightBestMatchingChoice(t),this.instance.listen(),this.TEXTAREA.focus(),y(this.TEXTAREA,n,n==o?void 0:o)},T.prototype.updateDropdownHeight=function(){var e=this.htEditor.getColWidth(0)+v()+2,t=void 0===this.cellProperties.trimDropdown?!0:this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()},T.prototype.finishEditing=function(e){e||this.instance.removeHook("beforeKeyDown",o),S.prototype.finishEditing.apply(this,arguments)},T.prototype.highlightBestMatchingChoice=function(e){"number"==typeof e?this.htEditor.selectCell(e,0):this.htEditor.deselectCell()},T.sortByRelevance=function(e,t,n){var o,r,i,s,l,a=[],u=e.length,c=[];if(0===u){for(s=0,l=t.length;l>s;s++)c.push(s);return c}for(s=0,l=t.length;l>s;s++)o=f(t[s]),r=n?o.indexOf(e):o.toLowerCase().indexOf(e.toLowerCase()),-1!=r&&(i=o.length-r-u,a.push({baseIndex:s,index:r,charsLeft:i,value:o}));for(a.sort(function(e,t){return-1===t.index?-1:-1===e.index?1:e.indext.charsLeft?1:0:void 0}),s=0,l=a.length;l>s;s++)c.push(a[s].baseIndex);return c},T.prototype.getDropdownHeight=function(){var e=this.htEditor.getInstance().getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.choices.length>=t?t*e:this.choices.length*e+8},T.prototype.allowKeyEventPropagation=function(e){var t={row:this.htEditor.getSelectedRange()?this.htEditor.getSelectedRange().from.row:-1},n=!1;return e===d.ARROW_DOWN&&t.row-1&&(n=!0),n},E("autocomplete",T)},{editors:28,handsontableEditor:34,"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/unicode":52}],31:[function(e,t,n){"use strict";Object.defineProperties(n,{CheckboxEditor:{get:function(){return u}},__esModule:{value:!0}});var o,r,i,s=(o=e("editors"),o&&o.__esModule&&o||{"default":o}).registerEditor,l=(r=e("_baseEditor"),r&&r.__esModule&&r||{"default":r}).BaseEditor,a=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).hasClass,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(){var e=this.TD.querySelector('input[type="checkbox"]');a(e,"htBadValue")||e.click()},finishEditing:function(){},init:function(){},open:function(){},close:function(){},getValue:function(){},setValue:function(){},focus:function(){}},{},l),s("checkbox",u)},{_baseEditor:29,editors:28,"helpers/dom/element":44}],32:[function(e,t,n){"use strict";Object.defineProperties(n,{DateEditor:{get:function(){return S}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),f=h.addClass,g=h.outerHeight,p=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).deepExtend,m=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,w=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),v=(w.getEditor,w.registerEditor),b=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}).isMetaKey,C=(a=e("helpers/dom/event"),a&&a.__esModule&&a||{"default":a}).stopPropagation,y=(u=e("textEditor"),u&&u.__esModule&&u||{"default":u}).TextEditor,R=(c=e("moment"),c&&c.__esModule&&c||{"default":c})["default"],E=(d=e("pikaday"),d&&d.__esModule&&d||{"default":d})["default"];Handsontable.editors=Handsontable.editors||{},Handsontable.editors.DateEditor=S;var S=function(e){this.$datePicker=null,this.datePicker=null,this.datePickerStyle=null,this.defaultDateFormat="DD/MM/YYYY",this.isCellEdited=!1,this.parentDestroyed=!1,$traceurRuntime.superConstructor(T).call(this,e)},T=S;$traceurRuntime.createClass(S,{init:function(){var e=this;if("function"!=typeof R)throw new Error("You need to include moment.js to your project.");if("function"!=typeof E)throw new Error("You need to include Pikaday to your project.");$traceurRuntime.superGet(this,T.prototype,"init").call(this),this.instance.addHook("afterDestroy",function(){e.parentDestroyed=!0,e.destroyElements()})},createElements:function(){$traceurRuntime.superGet(this,T.prototype,"createElements").call(this),this.datePicker=document.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,f(this.datePicker,"htDatepickerHolder"),document.body.appendChild(this.datePicker),this.$datePicker=new E(this.getDatePickerConfig());var e=new m(this);e.addEventListener(this.datePicker,"mousedown",function(e){return C(e)}),this.hideDatepicker()},destroyElements:function(){this.$datePicker.destroy()},prepare:function(e,t,n,o,r,i){this._opened=!1,$traceurRuntime.superGet(this,T.prototype,"prepare").call(this,e,t,n,o,r,i)},open:function(){var e=void 0!==arguments[0]?arguments[0]:null;$traceurRuntime.superGet(this,T.prototype,"open").call(this),this.showDatepicker(e)},close:function(){var e=this;this._opened=!1,this.instance._registerTimeout(setTimeout(function(){e.instance.selection.refreshBorders()},0)),$traceurRuntime.superGet(this,T.prototype,"close").call(this)},finishEditing:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=void 0!==arguments[1]?arguments[1]:!1;if(e){var n=this.originalValue;void 0!==n&&this.setValue(n)}this.hideDatepicker(),$traceurRuntime.superGet(this,T.prototype,"finishEditing").call(this,e,t)},showDatepicker:function(e){this.$datePicker.config(this.getDatePickerConfig());var t,n=this.TD.getBoundingClientRect(),o=this.cellProperties.dateFormat||this.defaultDateFormat,r=this.$datePicker.config(),i=this.instance.view.isMouseDown(),s=e?b(e.keyCode):!1;this.datePickerStyle.top=window.pageYOffset+n.top+g(this.TD)+"px",this.datePickerStyle.left=window.pageXOffset+n.left+"px",this.$datePicker._onInputFocus=function(){},r.format=o,this.originalValue?(t=this.originalValue,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.cellProperties.defaultDate?(t=this.cellProperties.defaultDate,r.defaultDate=t,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.$datePicker.gotoToday(),this.datePickerStyle.display="block",this.$datePicker.show()},hideDatepicker:function(){this.datePickerStyle.display="none",this.$datePicker.hide()},getDatePickerConfig:function(){var e=this,t=this.TEXTAREA,n={};this.cellProperties&&this.cellProperties.datePickerConfig&&p(n,this.cellProperties.datePickerConfig);var o=n.onSelect,r=n.onClose;return n.field=t,n.trigger=t,n.container=this.datePicker,n.bound=!1,n.format=n.format||this.defaultDateFormat,n.reposition=n.reposition||!1,n.onSelect=function(t){isNaN(t.getTime())||(t=R(t).format(e.cellProperties.dateFormat||e.defaultDateFormat)),e.setValue(t),e.hideDatepicker(),o&&o()},n.onClose=function(){e.parentDestroyed||e.finishEditing(!1),r&&r()},n}},{},y),v("date",S)},{editors:28,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,moment:void 0,pikaday:void 0,textEditor:39}],33:[function(e,t,n){"use strict";Object.defineProperties(n,{DropdownEditor:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("editors"),o&&o.__esModule&&o||{"default":o}),s=(i.getEditor,i.registerEditor),l=(r=e("autocompleteEditor"),r&&r.__esModule&&r||{"default":r}).AutocompleteEditor,a=function(){$traceurRuntime.superConstructor(u).apply(this,arguments)},u=a;$traceurRuntime.createClass(a,{prepare:function(e,t,n,o,r,i){$traceurRuntime.superGet(this,u.prototype,"prepare").call(this,e,t,n,o,r,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}},{},l),Handsontable.hooks.add("beforeValidate",function(e,t,n,o){var r=this.getCellMeta(t,n);r.editor===Handsontable.editors.DropdownEditor&&void 0===r.strict&&(r.filter=!1,r.strict=!0)}),s("dropdown",a)},{autocompleteEditor:30,editors:28}],34:[function(e,t,n){"use strict";Object.defineProperties(n,{HandsontableEditor:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).extend,d=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).setCaretPosition,h=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),f=h.stopImmediatePropagation,g=h.isImmediatePropagationStopped,p=(l=e("editors"),l&&l.__esModule&&l||{"default":l}),m=(p.getEditor,p.registerEditor),w=(a=e("textEditor"),a&&a.__esModule&&a||{"default":a}).TextEditor,v=w.prototype.extend();v.prototype.createElements=function(){w.prototype.createElements.apply(this,arguments);var e=document.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()},v.prototype.prepare=function(e,t,n,o,r,i){w.prototype.prepare.apply(this,arguments);var s=this,l={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,afterOnCellMouseDown:function(){var e=this.getValue();void 0!==e&&s.setValue(e),s.instance.destroyEditor()}};this.cellProperties.handsontable&&c(l,i.handsontable),this.htOptions=l};var b=function(e){if(!g(e)){var t,n=this.getActiveEditor(),o=n.htEditor.getInstance();if(e.keyCode==u.ARROW_DOWN)if(o.getSelected()){var r=o.getSelected()[0],i=o.countRows()-1;t=Math.min(i,r+1)}else t=0;else if(e.keyCode==u.ARROW_UP&&o.getSelected()){var r=o.getSelected()[0];t=r-1}void 0!==t&&(0>t?o.deselectCell():o.selectCell(t,0),o.getData().length&&(e.preventDefault(),f(e),n.instance.listen(),n.TEXTAREA.focus()))}};v.prototype.open=function(){this.instance.addHook("beforeKeyDown",b),w.prototype.open.apply(this,arguments),this.htEditor&&this.htEditor.destroy(),this.htEditor=new Handsontable(this.htContainer,this.htOptions),this.cellProperties.strict?(this.htEditor.selectCell(0,0),this.TEXTAREA.style.visibility="hidden"):(this.htEditor.deselectCell(),this.TEXTAREA.style.visibility="visible"),d(this.TEXTAREA,0,this.TEXTAREA.value.length)},v.prototype.close=function(){this.instance.removeHook("beforeKeyDown",b),this.instance.listen(),w.prototype.close.apply(this,arguments)},v.prototype.focus=function(){this.instance.listen(),w.prototype.focus.apply(this,arguments)},v.prototype.beginEditing=function(e){var t=this.instance.getSettings().onBeginEditing;t&&t()===!1||w.prototype.beginEditing.apply(this,arguments)},v.prototype.finishEditing=function(e,t){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor&&this.htEditor.getSelected()){var n=this.htEditor.getInstance().getValue();void 0!==n&&this.setValue(n)}return w.prototype.finishEditing.apply(this,arguments)},v.prototype.assignHooks=function(){var e=this;this.instance.addHook("afterDestroy",function(){e.htEditor&&e.htEditor.destroy()})},m("handsontable",v)},{editors:28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,textEditor:39}],35:[function(e,t,n){"use strict";Object.defineProperties(n,{MobileTextEditor:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),d=c.stopImmediatePropagation,h=c.isImmediatePropagationStopped,f=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),g=f.addClass,p=f.getScrollLeft,m=f.getScrollTop,w=f.hasClass,v=f.isChildOf,b=f.offset,C=f.outerHeight,y=f.outerWidth,R=f.removeClass,E=f.setCaretPosition,S=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),T=(S.getEditor,S.registerEditor),O=(l=e("_baseEditor"),l&&l.__esModule&&l||{"default":l}).BaseEditor,_=(a=e("eventManager"),a&&a.__esModule&&a||{"default":a}).eventManager,M=O.prototype.extend(),H={},k=function(){this.controls={},this.controls.leftButton=document.createElement("DIV"),this.controls.leftButton.className="leftButton",this.controls.rightButton=document.createElement("DIV"),this.controls.rightButton.className="rightButton",this.controls.upButton=document.createElement("DIV"),this.controls.upButton.className="upButton",this.controls.downButton=document.createElement("DIV"),this.controls.downButton.className="downButton";for(var e in this.controls)this.controls.hasOwnProperty(e)&&this.positionControls.appendChild(this.controls[e])};M.prototype.valueChanged=function(){return this.initValue!=this.getValue()},M.prototype.init=function(){var e=this;this.eventManager=_(this.instance),this.createElements(),this.bindEvents(),this.instance.addHook("afterDestroy",function(){e.destroy()})},M.prototype.getValue=function(){return this.TEXTAREA.value},M.prototype.setValue=function(e){this.initValue=e,this.TEXTAREA.value=e},M.prototype.createElements=function(){this.editorContainer=document.createElement("DIV"),this.editorContainer.className="htMobileEditorContainer",this.cellPointer=document.createElement("DIV"),this.cellPointer.className="cellPointer",this.moveHandle=document.createElement("DIV"),this.moveHandle.className="moveHandle",this.inputPane=document.createElement("DIV"),this.inputPane.className="inputs",this.positionControls=document.createElement("DIV"),this.positionControls.className="positionControls",this.TEXTAREA=document.createElement("TEXTAREA"),g(this.TEXTAREA,"handsontableInput"),this.inputPane.appendChild(this.TEXTAREA),this.editorContainer.appendChild(this.cellPointer),this.editorContainer.appendChild(this.moveHandle),this.editorContainer.appendChild(this.inputPane),this.editorContainer.appendChild(this.positionControls),k.call(this),document.body.appendChild(this.editorContainer)},M.prototype.onBeforeKeyDown=function(e){var t=this,n=t.getActiveEditor();if(e.target===n.TEXTAREA&&!h(e))switch(e.keyCode){case u.ENTER:n.close(),e.preventDefault();break;case u.BACKSPACE:d(e)}},M.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),g(this.editorContainer,"active"),R(this.cellPointer,"hidden"),this.updateEditorPosition()},M.prototype.focus=function(){this.TEXTAREA.focus(),E(this.TEXTAREA,this.TEXTAREA.value.length)},M.prototype.close=function(){this.TEXTAREA.blur(),this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),R(this.editorContainer,"active")},M.prototype.scrollToView=function(){var e=this.instance.getSelectedRange().highlight;this.instance.view.scrollViewport(e)},M.prototype.hideCellPointer=function(){w(this.cellPointer,"hidden")||g(this.cellPointer,"hidden")},M.prototype.updateEditorPosition=function(e,t){if(e&&t)e=parseInt(e,10),t=parseInt(t,10), -this.editorContainer.style.top=t+"px",this.editorContainer.style.left=e+"px";else{var n=this.instance.getSelected(),o=this.instance.getCell(n[0],n[1]);if(H.cellPointer||(H.cellPointer={height:C(this.cellPointer),width:y(this.cellPointer)}),H.editorContainer||(H.editorContainer={width:y(this.editorContainer)}),void 0!==o){var r=this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer==window?0:p(this.instance.view.wt.wtOverlays.leftOverlay.holder),i=this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer==window?0:m(this.instance.view.wt.wtOverlays.topOverlay.holder),s=b(o),l=y(o),a={x:r,y:i};this.editorContainer.style.top=parseInt(s.top+C(o)-a.y+H.cellPointer.height,10)+"px",this.editorContainer.style.left=parseInt(window.innerWidth/2-H.editorContainer.width/2,10)+"px",s.left+l/2>parseInt(this.editorContainer.style.left,10)+H.editorContainer.width?this.editorContainer.style.left=window.innerWidth-H.editorContainer.width+"px":s.left+l/2n;n++)t[e[n]]=e[n];else"object"==typeof e&&(t=e);return t},S.prototype.getValue=function(){return this.select.value},S.prototype.setValue=function(e){this.select.value=e};var T=function(e){var t=this,n=t.getActiveEditor();switch(e.keyCode){case C.ARROW_UP:var o=n.select.selectedIndex-1;o>=0&&(n.select[o].selected=!0),b(e),e.preventDefault();break;case C.ARROW_DOWN:var r=n.select.selectedIndex+1;r<=n.select.length-1&&(n.select[r].selected=!0),b(e),e.preventDefault()}};S.prototype.open=function(){this._opened=!0,this.refreshDimensions(),this.select.style.display="",this.instance.addHook("beforeKeyDown",T)},S.prototype.close=function(){this._opened=!1,this.select.style.display="none",this.instance.removeHook("beforeKeyDown",T)},S.prototype.focus=function(){this.select.focus()},S.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close();var e,t=w(this.TD)+1,n=m(this.TD)+1,o=p(this.TD),r=p(this.instance.rootElement),i=g(this.TD),s=o.top-r.top-1-(i.scrollTop||0),l=o.left-r.left-1-(i.scrollLeft||0),a=this.checkEditorSection(),u=this.instance.getSettings();u.rowHeaders?1:0,u.colHeaders?1:0;switch(a){case"top":e=f(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=f(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=f(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=f(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=f(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}0===this.instance.getSelected()[0]&&(s+=1),0===this.instance.getSelected()[1]&&(l+=1);var c=this.select.style;e&&-1!=e?c[e[0]]=e[1]:v(this.select);var d=h(this.TD);parseInt(d.borderTopWidth,10)>0&&(n-=1),parseInt(d.borderLeftWidth,10)>0&&(t-=1),c.height=n+"px",c.minWidth=t+"px",c.top=s+"px",c.left=l+"px",c.margin="0px"}},S.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=101;break;case"corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.select.style.zIndex=""}return-1!=e&&-2!=e?e:void 0},R("select",S)},{_baseEditor:29,editors:28,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],39:[function(e,t,n){"use strict";Object.defineProperties(n,{TextEditor:{get:function(){return k}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),d=c.addClass,h=c.getCaretPosition,f=c.getComputedStyle,g=c.getCssTransform,p=c.getScrollableElement,m=c.innerWidth,w=c.offset,v=c.resetCssTransform,b=c.setCaretPosition,C=(r=e("autoResize"),r&&r.__esModule&&r||{"default":r})["default"],y=(i=e("_baseEditor"),i&&i.__esModule&&i||{"default":i}).BaseEditor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,E=(l=e("editors"),l&&l.__esModule&&l||{"default":l}),S=(E.getEditor,E.registerEditor),T=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}).KEY_CODES,O=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}),_=O.stopPropagation,M=O.stopImmediatePropagation,H=O.isImmediatePropagationStopped,k=y.prototype.extend();k.prototype.init=function(){var e=this;this.createElements(),this.eventManager=R(this),this.bindEvents(),this.autoResize=C(),this.instance.addHook("afterDestroy",function(){e.destroy()})},k.prototype.getValue=function(){return this.TEXTAREA.value},k.prototype.setValue=function(e){this.TEXTAREA.value=e};var A=function(e){var t,n=this,o=n.getActiveEditor();if(t=(e.ctrlKey||e.metaKey)&&!e.altKey,e.target===o.TEXTAREA&&!H(e)){if(17===e.keyCode||224===e.keyCode||91===e.keyCode||93===e.keyCode)return void M(e);switch(e.keyCode){case T.ARROW_RIGHT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ARROW_LEFT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ARROW_UP:case T.ARROW_DOWN:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ENTER:var r=o.instance.getSelected(),i=!(r[0]===r[2]&&r[1]===r[3]);if(t&&!i||e.altKey){if(o.isOpened()){var s=h(o.TEXTAREA),l=o.getValue(),a=l.slice(0,s)+"\n"+l.slice(s);o.setValue(a),b(o.TEXTAREA,s+1)}else o.beginEditing(o.originalValue+"\n");M(e)}e.preventDefault();break;case T.A:case T.X:case T.C:case T.V:t&&M(e);break;case T.BACKSPACE:case T.DELETE:case T.HOME:case T.END:M(e)}-1===[T.ARROW_UP,T.ARROW_RIGHT,T.ARROW_DOWN,T.ARROW_LEFT].indexOf(e.keyCode)&&o.autoResize.resize(String.fromCharCode(e.keyCode))}};k.prototype.open=function(){this.refreshDimensions(),this.instance.addHook("beforeKeyDown",A)},k.prototype.close=function(e){this.textareaParentStyle.display="none",this.autoResize.unObserve(),document.activeElement===this.TEXTAREA&&this.instance.listen(),this.instance.removeHook("beforeKeyDown",A)},k.prototype.focus=function(){this.TEXTAREA.focus(),b(this.TEXTAREA,this.TEXTAREA.value.length)},k.prototype.createElements=function(){this.TEXTAREA=document.createElement("TEXTAREA"),d(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.TEXTAREA_PARENT=document.createElement("DIV"),d(this.TEXTAREA_PARENT,"handsontableInputHolder"),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.textareaParentStyle.top=0,this.textareaParentStyle.left=0,this.textareaParentStyle.display="none",this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);var e=this;this.instance._registerTimeout(setTimeout(function(){e.refreshDimensions()},0))},k.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=101;break;case"top-left-corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"bottom-left-corner":e=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;case"bottom":e=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.textareaParentStyle.zIndex=""}return-1!=e&&-2!=e?e:void 0},k.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close(!0);var e,t=w(this.TD),n=w(this.instance.rootElement),o=p(this.TD),r=this.instance.countRows(),i=t.top-n.top-1-(o.scrollTop||0),s=t.left-n.left-1-(o.scrollLeft||0),l=this.instance.getSettings(),a=(l.rowHeaders?1:0,l.colHeaders?1:0),u=this.checkEditorSection(),c=this.TD.style.backgroundColor;switch(u){case"top":e=g(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=g(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=g(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=g(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=g(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(a&&0===this.instance.getSelected()[0]||l.fixedRowsBottom&&this.instance.getSelected()[0]===r-l.fixedRowsBottom)&&(i+=1),0===this.instance.getSelected()[1]&&(s+=1),e&&-1!=e?this.textareaParentStyle[e[0]]=e[1]:v(this.textareaParentStyle),this.textareaParentStyle.top=i+"px",this.textareaParentStyle.left=s+"px";var d=this.TD.offsetTop-this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition(),h=this.TD.offsetLeft-this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),b=m(this.TD)-8,C=this.instance.view.maximumVisibleElementWidth(h)-9,y=this.TD.scrollHeight+1,R=Math.max(this.instance.view.maximumVisibleElementHeight(d)-2,23),E=f(this.TD);this.TEXTAREA.style.fontSize=E.fontSize,this.TEXTAREA.style.fontFamily=E.fontFamily,this.TEXTAREA.style.backgroundColor="",this.TEXTAREA.style.backgroundColor=c?c:f(this.TEXTAREA).backgroundColor,this.autoResize.init(this.TEXTAREA,{minHeight:Math.min(y,R),maxHeight:R,minWidth:Math.min(b,C),maxWidth:C},!0),this.textareaParentStyle.display="block"}},k.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.TEXTAREA,"cut",function(e){_(e)}),this.eventManager.addEventListener(this.TEXTAREA,"paste",function(e){_(e)}),this.instance.addHook("afterScrollVertically",function(){e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterRowResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterDestroy",function(){e.eventManager.destroy()})},k.prototype.destroy=function(){this.eventManager.destroy()},S("text",k)},{_baseEditor:29,autoResize:"autoResize",editors:28,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/unicode":52}],40:[function(e,t,n){"use strict";function o(e,t){var n,o,r,i,s,l="HOT-TABLE";if(t.isTargetWebComponent=!1,t.realTarget=t.target,!Handsontable.eventManager.isHotTableEnv)return t;for(t=a(t),s=t.path?t.path.length:0;s--;){if(t.path[s].nodeName===l)n=!0;else if(n&&t.path[s].shadowRoot){i=t.path[s];break}0!==s||i||(i=t.path[s])}return i||(i=t.target),t.isTargetWebComponent=!0,c()?t.realTarget=t.srcElement||t.toElement:(e instanceof Handsontable.Core||e instanceof Walkontable)&&(e instanceof Handsontable.Core?o=e.view?e.view.wt.wtTable.TABLE:null:e instanceof Walkontable&&(o=e.wtTable.TABLE.parentNode.parentNode),r=u(t.target,[l],o),r?t.realTarget=o.querySelector(l)||t.target:t.realTarget=t.target),Object.defineProperty(t,"target",{get:function(){return a(i)},enumerable:!0,configurable:!0}),t}function r(e){return new d(e)}Object.defineProperties(n,{EventManager:{get:function(){return d}},eventManager:{get:function(){return r}},__esModule:{value:!0}});var i,s,l=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),a=l.polymerWrap,u=l.closest,c=(s=e("helpers/browser"),s&&s.__esModule&&s||{"default":s}).isWebComponentSupportedNatively,d=function(){var e=void 0!==arguments[0]?arguments[0]:null;this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])};$traceurRuntime.createClass(d,{addEventListener:function(e,t,n){function r(e){void 0==e.target&&void 0!=e.srcElement&&(e.definePoperty?e.definePoperty("target",{value:e.srcElement}):e.target=e.srcElement),void 0==e.preventDefault&&(e.definePoperty?e.definePoperty("preventDefault",{value:function(){this.returnValue=!1}}):e.preventDefault=function(){this.returnValue=!1}),e=o(s,e),n.call(this,e)}var i=this,s=this.context;return this.context.eventListeners.push({element:e,event:t,callback:n,callbackProxy:r}),window.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r),Handsontable.countEventManagerListeners++,function(){i.removeEventListener(e,t,n)}},removeEventListener:function(e,t,n){for(var o,r=this.context.eventListeners.length;r--;)if(o=this.context.eventListeners[r],o.event==t&&o.element==e){if(n&&n!=o.callback)continue;this.context.eventListeners.splice(r,1),o.element.removeEventListener?o.element.removeEventListener(o.event,o.callbackProxy,!1):o.element.detachEvent("on"+o.event,o.callbackProxy),Handsontable.countEventManagerListeners--}},clearEvents:function(){if(this.context)for(var e=this.context.eventListeners.length;e--;){var t=this.context.eventListeners[e];t&&this.removeEventListener(t.element,t.event,t.callback)}},clear:function(){this.clearEvents()},destroy:function(){this.clearEvents(),this.context=null},fireEvent:function(e,t){var n,o={bubbles:!0,cancelable:"mousemove"!==t,view:window,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};document.createEvent?(n=document.createEvent("MouseEvents"),n.initMouseEvent(t,o.bubbles,o.cancelable,o.view,o.detail,o.screenX,o.screenY,o.clientX,o.clientY,o.ctrlKey,o.altKey,o.shiftKey,o.metaKey,o.button,o.relatedTarget||document.body.parentNode)):n=document.createEventObject(),e.dispatchEvent?e.dispatchEvent(n):e.fireEvent("on"+t,n)}},{}),window.Handsontable=window.Handsontable||{},Handsontable.countEventManagerListeners=0,Handsontable.eventManager=r},{"helpers/browser":42,"helpers/dom/element":44}],41:[function(e,t,n){"use strict";function o(e){for(var t=0,n=e.length;n>t;)e[t]=[e[t]],t++}function r(e,t){for(var n=0,o=t.length;o>n;)e.push(t[n]),n++}function i(e){var t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;for(var n=e.length,o=e[0].length,r=0;n>r;r++)for(var i=0;o>i;i++)t[i]||(t[i]=[]),t[i][r]=e[r][i];return t}function s(e,t,n,o){var r=-1,i=e.length;for(o&&i&&(n=e[++r]);++rt
t";var n=document.createElement("CAPTION");n.innerHTML="c
c
c
c",n.style.padding=0,n.style.margin=0,e.insertBefore(n,t),document.body.appendChild(e),h=e.offsetHeight<2*e.lastChild.offsetHeight,document.body.removeChild(e)}function d(){return void 0===h&&c(),h}Object.defineProperties(n,{isIE8:{get:function(){return o}},isIE9:{get:function(){return r}},isSafari:{get:function(){return i}},isChrome:{get:function(){return s}},isMobileBrowser:{get:function(){return l}},isTouchSupported:{get:function(){return a}},isWebComponentSupportedNatively:{get:function(){return u}},hasCaptionProblem:{get:function(){return d}},__esModule:{value:!0}});var h,f=!document.createTextNode("test").textContent,g=!!document.documentMode,p=/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),m=/Chrome/.test(navigator.userAgent)&&/Google/.test(navigator.vendor)},{}],43:[function(e,t,n){"use strict";function o(e){for(var t,n=e+1,o="";n>0;)t=(n-1)%26,o=String.fromCharCode(65+t)+o,n=parseInt((n-t)/26,10);return o}function r(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s=[];for(r=0;t>r;r++)s.push(o(r)+(n+1));i.push(s)}return i}function i(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s={};for(r=0;t>r;r++)s["prop"+r]=o(r)+(n+1);i.push(s)}return i}function s(e){var t,n,o,r,i=[],s=0;for(t=0,n=e.length;n>t;t++)for(o=0,r=e[t].length;r>o;o++)o==s&&(i.push([]),s++),i[o].push(e[t][o]);return i}function l(e,t){function n(e){var t=Handsontable.cellTypes[e];if("undefined"==typeof t)throw new Error('You declared cell type "'+e+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');return t}return t="undefined"==typeof t?!0:t,function(o,r){return function i(o){if(o){if(o.hasOwnProperty(e)&&void 0!==o[e])return o[e];if(o.hasOwnProperty("type")&&o.type){var r;if("string"!=typeof o.type)throw new Error("Cell type must be a string ");if(r=n(o.type),r.hasOwnProperty(e))return r[e];if(t)return}return i(u(o))}}("number"==typeof o?this.getCellMeta(o,r):o)}}Object.defineProperties(n,{spreadsheetColumnLabel:{get:function(){return o}},createSpreadsheetData:{get:function(){return r}},createSpreadsheetObjectData:{get:function(){return i}},translateRowsToColumns:{get:function(){return s}},cellMethodLookupFactory:{get:function(){return l}},__esModule:{value:!0}});var a,u=(a=e("object"),a&&a.__esModule&&a||{"default":a}).getPrototypeOf},{object:49}],44:[function(e,t,n){"use strict";function o(e,t,n){for(;null!=e&&e!==n;){if(e.nodeType===Node.ELEMENT_NODE&&(t.indexOf(e.nodeName)>-1||t.indexOf(e)>-1))return e;e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode}return null}function r(e,t){var n=e.parentNode,o=[];for("string"==typeof t?o=Array.prototype.slice.call(document.querySelectorAll(t),0):o.push(t);null!=n;){if(o.indexOf(n)>-1)return!0;n=n.parentNode}return!1}function i(e){function t(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName===o.toUpperCase()}var n,o="hot-table",r=!1;for(n=s(e);null!=n;){if(t(n)){r=!0;break}if(n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(r=t(n.host))break;n=n.host}n=n.parentNode}return r}function s(e){return"undefined"!=typeof Polymer&&"function"==typeof wrap?wrap(e):e}function l(e){return"undefined"!=typeof Polymer&&"function"==typeof unwrap?unwrap(e):e}function a(e){var t=0;if(e.previousSibling)for(;e=e.previousSibling;)++t;return t}function u(e,t){var n=document.querySelector(".ht_clone_"+e);return n?n.contains(t):null}function c(e){var t=0,n=[];if(!e||!e.length)return n;for(;e[t];)n.push(e[t]),t++;return n}function d(e,t){return K(e,t)}function h(e,t){return Y(e,t)}function f(e,t){return X(e,t)}function g(e,t){if(3===e.nodeType)t.removeChild(e);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(e.nodeName)>-1)for(var n=e.childNodes,o=n.length-1;o>=0;o--)g(n[o],e)}function p(e){for(var t;t=e.lastChild;)e.removeChild(t)}function m(e,t){ie.test(t)?e.innerHTML=t:w(e,t)}function w(e,t){var n=e.firstChild;n&&3===n.nodeType&&null===n.nextSibling?se?n.textContent=t:n.data=t:(p(e),e.appendChild(document.createTextNode(t)))}function v(e){for(var t=e;l(t)!==document.documentElement;){if(null===t)return!1;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(t.host){if(t.host.impl)return v(t.host.impl);if(t.host)return v(t.host);throw new Error("Lost in Web Components world")}return!1}if("none"===t.style.display)return!1;t=t.parentNode}return!0}function b(e){var t,n,o,r,i;if(r=document.documentElement,ee()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName)return i=e.getBoundingClientRect(),{top:i.top+(window.pageYOffset||r.scrollTop)-(r.clientTop||0),left:i.left+(window.pageXOffset||r.scrollLeft)-(r.clientLeft||0)};for(t=e.offsetLeft,n=e.offsetTop,o=e;(e=e.offsetParent)&&e!==document.body;)t+=e.offsetLeft,n+=e.offsetTop,o=e;return o&&"fixed"===o.style.position&&(t+=window.pageXOffset||r.scrollLeft,n+=window.pageYOffset||r.scrollTop),{left:t,top:n}}function C(){var e=window.scrollY;return void 0===e&&(e=document.documentElement.scrollTop),e}function y(){var e=window.scrollX;return void 0===e&&(e=document.documentElement.scrollLeft),e}function R(e){return e===window?C():e.scrollTop}function E(e){return e===window?y():e.scrollLeft}function S(e){for(var t,n,o,r=e.parentNode,i=["auto","scroll"],s="",l="",a="",u="";r&&r.style&&document.body!==r;){if(t=r.style.overflow,n=r.style.overflowX,o=r.style.overflowY,"scroll"==t||"scroll"==n||"scroll"==o)return r;if(window.getComputedStyle&&(s=window.getComputedStyle(r),l=s.getPropertyValue("overflow"),a=s.getPropertyValue("overflow-y"),u=s.getPropertyValue("overflow-x"),"scroll"===l||"scroll"===u||"scroll"===a))return r;if(r.clientHeight<=r.scrollHeight&&(-1!==i.indexOf(o)||-1!==i.indexOf(t)||-1!==i.indexOf(l)||-1!==i.indexOf(a)))return r;if(r.clientWidth<=r.scrollWidth&&(-1!==i.indexOf(n)||-1!==i.indexOf(t)||-1!==i.indexOf(l)||-1!==i.indexOf(u)))return r;r=r.parentNode}return window}function T(e){for(var t=e.parentNode;t&&t.style&&document.body!==t;){if("visible"!==t.style.overflow&&""!==t.style.overflow)return t;if(window.getComputedStyle){var n=window.getComputedStyle(t);if("visible"!==n.getPropertyValue("overflow")&&""!==n.getPropertyValue("overflow"))return t}t=t.parentNode}return window}function O(e,t){if(e){if(e!==window){var n,o=e.style[t];return""!==o&&void 0!==o?o:(n=_(e),""!==n[t]&&void 0!==n[t]?n[t]:void 0)}if("width"===t)return window.innerWidth+"px";if("height"===t)return window.innerHeight+"px"}}function _(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}function M(e){return e.offsetWidth}function H(e){return ee()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName?e.offsetHeight+e.firstChild.offsetHeight:e.offsetHeight}function k(e){return e.clientHeight||e.innerHeight}function A(e){return e.clientWidth||e.innerWidth}function P(e,t,n){window.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function x(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function D(e){if(e.selectionStart)return e.selectionStart;if(document.selection){e.focus();var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange(),o=n.duplicate();return n.moveToBookmark(t.getBookmark()),o.setEndPoint("EndToStart",n),o.text.length}return 0}function L(e){if(e.selectionEnd)return e.selectionEnd;if(document.selection){var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange();return n.text.indexOf(t.text)+t.text.length}}function N(e,t,n){if(void 0===n&&(n=t),e.setSelectionRange){e.focus();try{e.setSelectionRange(t,n)}catch(o){var r=e.parentNode,i=r.style.display;r.style.display="block",e.setSelectionRange(t,n),r.style.display=i}}else if(e.createTextRange){var s=e.createTextRange();s.collapse(!0),s.moveEnd("character",n),s.moveStart("character",t),s.select()}}function W(){var e=document.createElement("p");e.style.width="100%",e.style.height="200px";var t=document.createElement("div");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.visibility="hidden",t.style.width="200px",t.style.height="150px",t.style.overflow="hidden",t.appendChild(e),(document.body||document.documentElement).appendChild(t);var n=e.offsetWidth;t.style.overflow="scroll";var o=e.offsetWidth;return n==o&&(o=t.clientWidth),(document.body||document.documentElement).removeChild(t),n-o}function I(){return void 0===re&&(re=W()),re}function j(e,t,n){Q()||J()?(e.style.top=n,e.style.left=t):Z()?e.style["-webkit-transform"]="translate3d("+t+","+n+",0)":e.style.transform="translate3d("+t+","+n+",0)"}function B(e){var t;return e.style.transform&&""!==(t=e.style.transform)?["transform",t]:e.style["-webkit-transform"]&&""!==(t=e.style["-webkit-transform"])?["-webkit-transform",t]:-1}function V(e){e.transform&&""!==e.transform?e.transform="":e["-webkit-transform"]&&""!==e["-webkit-transform"]&&(e["-webkit-transform"]="")}function F(e){var t=["INPUT","SELECT","TEXTAREA"];return t.indexOf(e.nodeName)>-1||"true"===e.contentEditable}function z(e){return F(e)&&-1==e.className.indexOf("handsontableInput")&&-1==e.className.indexOf("copyPaste")}function U(e){return ue.call(window,e)}function G(e){ce.call(window,e)}Object.defineProperties(n,{ -closest:{get:function(){return o}},isChildOf:{get:function(){return r}},isChildOfWebComponentTable:{get:function(){return i}},polymerWrap:{get:function(){return s}},polymerUnwrap:{get:function(){return l}},index:{get:function(){return a}},overlayContainsElement:{get:function(){return u}},hasClass:{get:function(){return d}},addClass:{get:function(){return h}},removeClass:{get:function(){return f}},removeTextNodes:{get:function(){return g}},empty:{get:function(){return p}},HTML_CHARACTERS:{get:function(){return ie}},fastInnerHTML:{get:function(){return m}},fastInnerText:{get:function(){return w}},isVisible:{get:function(){return v}},offset:{get:function(){return b}},getWindowScrollTop:{get:function(){return C}},getWindowScrollLeft:{get:function(){return y}},getScrollTop:{get:function(){return R}},getScrollLeft:{get:function(){return E}},getScrollableElement:{get:function(){return S}},getTrimmingContainer:{get:function(){return T}},getStyle:{get:function(){return O}},getComputedStyle:{get:function(){return _}},outerWidth:{get:function(){return M}},outerHeight:{get:function(){return H}},innerHeight:{get:function(){return k}},innerWidth:{get:function(){return A}},addEvent:{get:function(){return P}},removeEvent:{get:function(){return x}},getCaretPosition:{get:function(){return D}},getSelectionEndPosition:{get:function(){return L}},setCaretPosition:{get:function(){return N}},getScrollbarWidth:{get:function(){return I}},setOverlayPosition:{get:function(){return j}},getCssTransform:{get:function(){return B}},resetCssTransform:{get:function(){return V}},isInput:{get:function(){return F}},isOutsideInput:{get:function(){return z}},requestAnimationFrame:{get:function(){return U}},cancelAnimationFrame:{get:function(){return G}},__esModule:{value:!0}});var $,K,Y,X,q=($=e("../browser"),$&&$.__esModule&&$||{"default":$}),Q=q.isIE8,J=q.isIE9,Z=q.isSafari,ee=q.hasCaptionProblem,te=document.documentElement.classList?!0:!1;if(te){var ne=function(){var e=document.createElement("div");return e.classList.add("test","test2"),e.classList.contains("test2")}();K=function(e,t){return""===t?!1:e.classList.contains(t)},Y=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),ne)e.classList.add.apply(e.classList,t);else for(;t&&t[n];)e.classList.add(t[n]),n++},X=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),ne)e.classList.remove.apply(e.classList,t);else for(;t&&t[n];)e.classList.remove(t[n]),n++}}else{var oe=function(e){return new RegExp("(\\s|^)"+e+"(\\s|$)")};K=function(e,t){return e.className.match(oe(t))?!0:!1},Y=function(e,t){var n=0,o=e.className;if("string"==typeof t&&(t=t.split(" ")),""===o)o=t.join(" ");else for(;t&&t[n];)oe(t[n]).test(o)||(o+=" "+t[n]),n++;e.className=o},X=function(e,t){var n=0,o=e.className;for("string"==typeof t&&(t=t.split(" "));t&&t[n];)o=o.replace(oe(t[n])," ").trim(),n++;e.className!==o&&(e.className=o)}}for(var re,ie=/(<(.*)>|&(.*);)/,se=document.createTextNode("test").textContent?!0:!1,le=0,ae=["ms","moz","webkit","o"],ue=window.requestAnimationFrame,ce=window.cancelAnimationFrame,de=0;de=e)for(;++r<=i&&n(r)!==!1;);else for(r=e+1;--r>=t&&n(r)!==!1;);}function i(e,t){return t=parseInt(t.toString().replace("%",""),10),t=parseInt(e*t/100)}Object.defineProperties(n,{isNumeric:{get:function(){return o}},rangeEach:{get:function(){return r}},valueAccordingPercent:{get:function(){return i}},__esModule:{value:!0}})},{}],49:[function(e,t,n){"use strict";function o(e){var t;return Array.isArray(e)?t=[]:(t={},g(e,function(e,n){e&&"object"==typeof e&&!Array.isArray(e)?t[n]=o(e):Array.isArray(e)?e.length&&"object"==typeof e[0]&&!Array.isArray(e[0])?t[n]=[o(e[0])]:t[n]=[]:t[n]=null})),t}function r(e,t){return t.prototype.constructor=t,e.prototype=new t,e.prototype.constructor=e,e}function i(e,t){return g(t,function(t,n){e[n]=t}),e}function s(e,t){g(t,function(n,o){t[o]&&"object"==typeof t[o]?(e[o]||(Array.isArray(t[o])?e[o]=[]:e[o]={}),s(e[o],t[o])):e[o]=t[o]})}function l(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}function a(e){var t={};return g(e,function(e,n){return t[n]=e}),t}function u(e){for(var t=[],n=1;no;o++)n.prototype[t[o]]=void 0;return n}Object.defineProperties(n,{columnFactory:{get:function(){return o}},__esModule:{value:!0}});var r,i=(r=e("object"),r&&r.__esModule&&r||{"default":r}).inherit},{object:49}],51:[function(e,t,n){"use strict";function o(e){return e[0].toUpperCase()+e.substr(1)}function r(e,t){var n=!0;return h(t.length-1,function(o){return e.charAt(o)!==t.charAt(o)?(n=!1,!1):void 0}),n}function i(e,t){var n=!0,o=t.length-1,r=e.length-1;return h(o,function(i){var s=r-i,l=o-i;return e.charAt(s)!==t.charAt(l)?(n=!1,!1):void 0}),n}function s(){for(var e=[],t=0;t=48&&57>=e||e>=96&&111>=e||e>=186&&192>=e||e>=219&&222>=e||e>=226||e>=65&&90>=e}function r(e){var t=[u.ARROW_DOWN,u.ARROW_UP,u.ARROW_LEFT,u.ARROW_RIGHT,u.HOME,u.END,u.DELETE,u.BACKSPACE,u.F1,u.F2,u.F3,u.F4,u.F5,u.F6,u.F7,u.F8,u.F9,u.F10,u.F11,u.F12,u.TAB,u.PAGE_DOWN,u.PAGE_UP,u.ENTER,u.ESCAPE,u.SHIFT,u.CAPS_LOCK,u.ALT];return-1!==t.indexOf(e)}function i(e){return-1!==[u.CONTROL_LEFT,224,u.COMMAND_LEFT,u.COMMAND_RIGHT].indexOf(e)}function s(e,t){var n=t.split("|"),o=!1;return a(n,function(t){return e===u[t]?(o=!0,!1):void 0}),o}Object.defineProperties(n,{KEY_CODES:{get:function(){return u}},isPrintableChar:{get:function(){return o}},isMetaKey:{get:function(){return r}},isCtrlKey:{get:function(){return i}},isKey:{get:function(){return s}},__esModule:{value:!0}});var l,a=(l=e("array"),l&&l.__esModule&&l||{"default":l}).arrayEach,u={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL_LEFT:91,COMMAND_LEFT:17,COMMAND_RIGHT:93,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86}},{array:41}],53:[function(e,t,n){"use strict";function o(){function e(e){return null!==e&&!n(e)&&("string"==typeof e||"number"==typeof e)}function t(e){return null!==e&&("object"==typeof e||"function"==typeof e)}function n(e){return e!==e}var o={arrayMap:[],weakMap:new WeakMap};return{get:function(n){return e(n)?o.arrayMap[n]:t(n)?o.weakMap.get(n):void 0},set:function(n,r){if(e(n))o.arrayMap[n]=r;else{if(!t(n))throw new Error("Invalid key type");o.weakMap.set(n,r)}},"delete":function(n){e(n)?delete o.arrayMap[n]:t(n)&&o.weakMap["delete"](n)}}}Object.defineProperties(n,{MultiMap:{get:function(){return o}},__esModule:{value:!0}}),window.MultiMap=o},{}],54:[function(e,t,n){"use strict";Object.defineProperties(n,{Hooks:{get:function(){return a}},localHooks:{get:function(){return u}},__esModule:{value:!0}});var o,r,i=["afterCellMetaReset","afterChange","afterChangesObserved","afterColumnMove","afterColumnResize","afterContextMenuDefaultOptions","afterContextMenuHide","afterContextMenuShow","afterCopyLimit","afterCreateCol","afterCreateRow","afterDeselect","afterDestroy","afterDocumentKeyDown","afterGetCellMeta","afterGetColHeader","afterGetRowHeader","afterInit","afterIsMultipleSelectionCheck","afterLoadData","afterMomentumScroll","afterOnCellCornerMouseDown","afterOnCellMouseDown","afterOnCellMouseOver","afterRemoveCol","afterRemoveRow","afterRender","afterRenderer","afterScrollHorizontally","afterScrollVertically","afterSelection","afterSelectionByProp","afterSelectionEnd","afterSelectionEndByProp","afterSetCellMeta","afterUpdateSettings","afterValidate","beforeAutofill","beforeCellAlignment","beforeChange","beforeChangeRender","beforeDrawBorders","beforeGetCellMeta","beforeInit","beforeInitWalkontable","beforeKeyDown","beforeOnCellMouseDown","beforeRemoveCol","beforeRemoveRow","beforeRender","beforeSetRangeEnd","beforeTouchScroll","beforeValidate","construct","init","modifyCol","modifyColWidth","modifyRow","modifyRowHeight","persistentStateLoad","persistentStateReset","persistentStateSave","beforeColumnSort","afterColumnSort","afterAutofillApplyValues","modifyCopyableRange","beforeColumnMove","afterColumnMove","beforeRowMove","afterRowMove","beforeColumnResize","afterColumnResize","beforeRowResize","afterRowResize"],s=(o=e("helpers/array"),o&&o.__esModule&&o||{"default":o}).arrayEach,l=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,a=function(){this.globalBucket=this.createEmptyBucket()};$traceurRuntime.createClass(a,{createEmptyBucket:function(){var e=Object.create(null);return s(i,function(t){return e[t]=[]}),e},getBucket:function(){var e=void 0!==arguments[0]?arguments[0]:null;return e?(e.pluginHookBucket||(e.pluginHookBucket=this.createEmptyBucket()),e.pluginHookBucket):this.globalBucket},add:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this;if(Array.isArray(t))s(t,function(t){return o.add(e,t,n)});else{var r=this.getBucket(n);"undefined"==typeof r[e]&&(this.register(e),r[e]=[]),t.skip=!1,-1===r[e].indexOf(t)&&r[e].push(t)}return this},once:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this;Array.isArray(t)?s(t,function(t){return o.once(e,t,n)}):(t.runOnce=!0,this.add(e,t,n))},remove:function(e,t){var n=void 0!==arguments[2]?arguments[2]:null,o=this.getBucket(n);return"undefined"!=typeof o[e]&&o[e].indexOf(t)>=0?(t.skip=!0,!0):!1},run:function(e,t,n,o,r,i,s,l){var a=this.globalBucket[t],u=-1,c=a?a.length:0;if(c)for(;++u=0},getRegistered:function(){return i}},{});var u={_localHooks:Object.create(null),addLocalHook:function(e,t){this._localHooks[e]||(this._localHooks[e]=[]),this._localHooks[e].push(t)},runLocalHooks:function(e){for(var t=[],n=1;n=0&&g.splice(g.indexOf(this.pluginName),1),g.length||this.hot.runHooks("afterPluginsInitialized"),this.initialized=!0},enablePlugin:function(){this.enabled=!0},disablePlugin:function(){this.eventManager&&this.eventManager.clear(),this.clearHooks(),this.enabled=!1},addHook:function(e,t){var n=f.get(this).hooks[e]=f.get(this).hooks[e]||[];this.hot.addHook(e,t),n.push(t),f.get(this).hooks[e]=n},removeHooks:function(e){var t=this;u(f.get(this).hooks[e]||[],function(n){t.hot.removeHook(e,n)})},clearHooks:function(){var e=this,t=f.get(this).hooks;a(t,function(t,n){return e.removeHooks(n)}),t.length=0},callOnPluginsReady:function(e){this.isPluginsReady?e():this.pluginsInitializedCallbacks.push(e)},onAfterPluginsInitialized:function(){u(this.pluginsInitializedCallbacks,function(e){return e()}),this.pluginsInitializedCallbacks.length=0,this.isPluginsReady=!0},onUpdateSettings:function(){this.isEnabled&&(this.enabled&&!this.isEnabled()&&this.disablePlugin(),!this.enabled&&this.isEnabled()&&this.enablePlugin(),this.enabled&&this.isEnabled()&&this.updatePlugin&&this.updatePlugin())},updatePlugin:function(){},destroy:function(){this.eventManager&&this.eventManager.destroy(),this.clearHooks(),delete this.hot}},{});var m=p},{"helpers/array":41,"helpers/object":49,plugins:55}],57:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoColumnSize:{get:function(){return A}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],g=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),p=g.arrayEach,m=g.arrayFilter,w=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),v=w.cancelAnimationFrame,b=w.requestAnimationFrame,C=w.isVisible,y=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,R=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),E=R.isObject,S=(R.objectEach,a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}),T=S.valueAccordingPercent,O=S.rangeEach,_=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,M=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,H=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,k=(h=e("3rdparty/walkontable/src/calculator/viewportColumns"),h&&h.__esModule&&h||{"default":h}).WalkontableViewportColumnsCalculator,A=function(e){var t=this;$traceurRuntime.superConstructor(P).call(this,e),this.widths=[],this.ghostTable=new y(this.hot),this.samplesGenerator=new M(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeColumnResize",function(e,n,o){return t.onBeforeColumnResize(e,n,o)})},P=A;$traceurRuntime.createClass(A,{isEnabled:function(){return this.hot.getSettings().autoColumnSize!==!1&&!this.hot.getSettings().colWidths},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("modifyColWidth",function(t,n){return e.getColumnWidth(n,t)}),$traceurRuntime.superGet(this,P.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,P.prototype,"disablePlugin").call(this)},calculateColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countRows()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),O(e.from,e.to,function(e){if(n||void 0===o.widths[e]&&!o.hot._getColWidthFromSettings(e)){var r=o.samplesGenerator.generateColumnSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addColumn(t,e)})}}),this.ghostTable.columns.length&&(this.ghostTable.getWidths(function(e,t){return o.widths[e]=t}),this.ghostTable.clean())},calculateAllColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=this,n=0,o=this.hot.countCols()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateColumnsWidth({from:n,to:Math.min(n+P.CALCULATION_STEP,o)},e),n=n+P.CALCULATION_STEP+1,void(o>n?r=b(i):(v(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(v(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateColumnsWidth({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllColumnsWidth:function(){this.hot.view&&C(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllColumnsWidth())},getSyncCalculationLimit:function(){var e=P.SYNC_CALCULATION_LIMIT,t=this.hot.countCols()-1;return E(this.hot.getSettings().autoColumnSize)&&(e=this.hot.getSettings().autoColumnSize.syncLimit,H(e)?e=T(t,e):e>>=0),Math.min(e,t)},getColumnWidth:function(e){var t=arguments[1],n=void 0!==arguments[2]?arguments[2]:!0,o=t;return void 0===o&&(o=this.widths[e],n&&"number"==typeof o&&(o=Math.max(o,k.DEFAULT_WIDTH))),o},getFirstVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getFirstVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getFirstRenderedColumn():-1},getLastVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getLastVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getLastRenderedColumn():-1},clearCache:function(){this.widths.length=0},isNeedRecalculate:function(){return m(this.widths,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateColumnsWidth({from:this.getFirstVisibleColumn(),to:this.getLastVisibleColumn()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllColumnsWidth()},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllColumnsWidth():setTimeout(function(){e.hot&&e.recalculateAllColumnsWidth()},0)},onBeforeChange:function(e){var t=this;p(e,function(e){return t.widths[e[1]]=void 0})},onBeforeColumnResize:function(e,t,n){return n&&(this.calculateColumnsWidth(e,void 0,!0),t=this.getColumnWidth(e,void 0,!1)),t},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,P.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 50}},f),_("autoColumnSize",A)},{"3rdparty/walkontable/src/calculator/viewportColumns":3,_base:56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,plugins:55,"utils/ghostTable":96,"utils/samplesGenerator":97}],58:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoRowSize:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],f=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),g=(f.arrayEach,f.arrayFilter),p=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),m=p.cancelAnimationFrame,w=p.requestAnimationFrame,v=p.isVisible,b=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,C=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),y=C.isObject,R=(C.objectEach,a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}),E=R.valueAccordingPercent,S=R.rangeEach,T=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,O=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,_=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,M=function(e){var t=this;$traceurRuntime.superConstructor(H).call(this,e),this.heights=[],this.ghostTable=new b(this.hot),this.samplesGenerator=new O(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeRowResize",function(e,n,o){return t.onBeforeRowResize(e,n,o)})},H=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().autoRowSize===!0||y(this.hot.getSettings().autoRowSize)},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeColumnMove",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnResize",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnSort",function(){return e.clearCache()}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("beforeRowMove",function(t,n){return e.onBeforeRowMove(t,n)}),this.addHook("modifyRowHeight",function(t,n){return e.getRowHeight(n,t)}),$traceurRuntime.superGet(this,H.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,H.prototype,"disablePlugin").call(this)},calculateRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countCols()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),S(e.from,e.to,function(e){if(n||void 0===o.heights[e]){var r=o.samplesGenerator.generateRowSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addRow(t,e)})}}),this.ghostTable.rows.length&&(this.ghostTable.getHeights(function(e,t){return o.heights[e]=t}),this.ghostTable.clean())},calculateAllRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=this,n=0,o=this.hot.countRows()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateRowsHeight({from:n,to:Math.min(n+H.CALCULATION_STEP,o)},e),n=n+H.CALCULATION_STEP+1,void(o>n?r=w(i):(m(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(m(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateRowsHeight({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllRowsHeight:function(){v(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllRowsHeight())},getSyncCalculationLimit:function(){var e=H.SYNC_CALCULATION_LIMIT,t=this.hot.countRows()-1;return y(this.hot.getSettings().autoRowSize)&&(e=this.hot.getSettings().autoRowSize.syncLimit,_(e)?e=E(t,e):e>>=0),Math.min(e,t)},getRowHeight:function(e){var t=arguments[1],n=t;return void 0!==this.heights[e]&&this.heights[e]>(t||0)&&(n=this.heights[e]),n},getFirstVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getFirstVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getFirstRenderedRow():-1},getLastVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getLastVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getLastRenderedRow():-1},clearCache:function(){this.heights.length=0},clearCacheByRange:function(e){var t=this;"number"==typeof e&&(e={from:e,to:e}),S(Math.min(e.from,e.to),Math.max(e.from,e.to),function(e){return t.heights[e]=void 0})},isNeedRecalculate:function(){return g(this.heights,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateRowsHeight({from:this.getFirstVisibleRow(),to:this.getLastVisibleRow()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllRowsHeight()},onBeforeRowMove:function(e,t){this.clearCacheByRange({from:e,to:t}),this.calculateAllRowsHeight()},onBeforeRowResize:function(e,t,n){return n&&(this.calculateRowsHeight(e,void 0,!0),t=this.getRowHeight(e)),t},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllRowsHeight():setTimeout(function(){e.hot&&e.recalculateAllRowsHeight()},0)},onBeforeChange:function(e){var t=null;1===e.length?t=e[0][0]:e.length>1&&(t={from:e[0][0],to:e[e.length-1][0]}),null!==t&&this.clearCacheByRange(t)},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,H.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 500}},h),T("autoRowSize",M)},{_base:56,"helpers/array":41,"helpers/dom/element":44,"helpers/number":48,"helpers/object":49,"helpers/string":51,plugins:55,"utils/ghostTable":96,"utils/samplesGenerator":97}],59:[function(e,t,n){"use strict";function o(e,t,n,o){var r,i,s,l,a,u=n.length,c=n?n[0].length:0,d=[],h=[];if(r=t.row-e.row,i=t.col-e.col,-1!==["down","up"].indexOf(o)){for(var f=0;i>=f;f++)s=parseInt(n[0][f],10),l=parseInt(n[u-1][f],10),a=("down"===o?l-s:s-l)/(u-1)||0,h.push(a);d.push(h)}if(-1!==["right","left"].indexOf(o))for(var g=0;r>=g;g++)s=parseInt(n[g][0],10),l=parseInt(n[g][c-1],10),a=("right"===o?l-s:s-l)/(c-1)||0,h=[],h.push(a),d.push(h);return d}function r(e){function t(t){return e.autofill?void(e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged>1&&e.autofill.apply(),e.autofill.handle.isDragged=0,l=!1)):!0}function n(e){var t,n;return s.instance.autofill?(t=c(s.instance.table).top-(window.pageYOffset||document.documentElement.scrollTop)+d(s.instance.table),n=c(s.instance.table).left-(window.pageXOffset||document.documentElement.scrollLeft)+h(s.instance.table),s.addingStarted===!1&&s.instance.autofill.handle.isDragged>0&&e.clientY>t&&e.clientX<=n?(s.instance.mouseDragOutside=!0,s.addingStarted=!0):s.instance.mouseDragOutside=!1,void(s.instance.mouseDragOutside&&setTimeout(function(){s.addingStarted=!1,s.instance.alter("insert_row")},200))):!1}var o,r,i,s=this,l=!1;this.instance=e,this.addingStarted=!1,i=f(e),i.addEventListener(document,"mouseup",t),i.addEventListener(document,"mousemove",n),o=this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown,this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown=function(t){e.autofill.handle.isDragged=1,l=!0,o(t); -},r=this.instance.view.wt.wtSettings.settings.onCellMouseOver,this.instance.view.wt.wtSettings.settings.onCellMouseOver=function(t,n,o,i){e.autofill&&l&&!e.view.isMouseDown()&&e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged++,e.autofill.showBorder(n),e.autofill.checkIfNewRowNeeded()),r(t,n,o,i)},this.instance.view.wt.wtSettings.settings.onCellCornerDblClick=function(){e.autofill.selectAdjacent()}}Object.defineProperties(n,{Autofill:{get:function(){return r}},__esModule:{value:!0}});var i,s,l,a,u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),c=u.offset,d=u.outerHeight,h=u.outerWidth,f=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,g=((l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords);r.prototype.init=function(){this.handle={}},r.prototype.disable=function(){this.handle.disabled=!0},r.prototype.selectAdjacent=function(){var e,t,n,o,r;e=this.instance.selection.isMultiple()?this.instance.view.wt.selections.area.getCorners():this.instance.view.wt.selections.current.getCorners(),t=this.instance.getData();e:for(n=e[2]+1;nt[3]?(s="right",n=new g(e[0],t[3]+1),r=new g(e[2],e[3])):e[0]t[2]&&e[1]===t[1]&&(s="down",n=new g(t[2]+1,e[1]),r=new g(e[2],e[3])),n&&n.row>-1&&n.col>-1?(a={from:this.instance.getSelectedRange().from,to:this.instance.getSelectedRange().to},i=this.instance.getData(a.from.row,a.from.col,a.to.row,a.to.col),l=o(n,r,i,s),Handsontable.hooks.run(this.instance,"beforeAutofill",n,r,i),this.instance.populateFromArray(n.row,n.col,i,r.row,r.col,"autofill",null,s,l),this.instance.selection.setRangeStart(new g(e[0],e[1])),this.instance.selection.setRangeEnd(new g(e[2],e[3]))):this.instance.selection.refreshBorders())},r.prototype.showBorder=function(e){var t=this.instance.getSelectedRange().getTopLeftCorner(),n=this.instance.getSelectedRange().getBottomRightCorner();if("horizontal"!==this.instance.getSettings().fillHandle&&(n.rowe.row))e=new g(e.row,n.col);else{if("vertical"===this.instance.getSettings().fillHandle)return;e=new g(n.row,e.col)}this.instance.view.wt.selections.fill.clear(),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().from),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().to),this.instance.view.wt.selections.fill.add(e),this.instance.view.render()},r.prototype.checkIfNewRowNeeded=function(){var e,t,n=this.instance.countRows(),o=this;this.instance.view.wt.selections.fill.cellRange&&this.addingStarted===!1&&(t=this.instance.getSelected(),e=this.instance.view.wt.selections.fill.getCorners(),t[2]n[1]?e?1:-1:0}},dateSort:function(e){return function(t,n){if(t[1]===n[1])return 0;if(null===t[1]||""===t[1])return 1;if(null===n[1]||""===n[1])return-1;var o=new Date(t[1]),r=new Date(n[1]);return r>o?e?-1:1:o>r?e?1:-1:0}},sort:function(){if("undefined"!=typeof this.hot.sortOrder){var e,t;this.hot.sortingEnabled=!1,this.hot.sortIndex.length=0;for(var n=this.hot.colOffset(),o=0,r=this.hot.countRows()-this.hot.getSettings().minSpareRows;r>o;o++)this.hot.sortIndex.push([o,this.hot.getDataAtCell(o,this.hot.sortColumn+n)]);switch(e=this.hot.getCellMeta(0,this.hot.sortColumn),this.sortIndicators[this.hot.sortColumn]=e.sortIndicator,e.type){case"date":t=this.dateSort;break;default:t=this.defaultSort}this.hot.sortIndex.sort(t(this.hot.sortOrder));for(var o=this.hot.sortIndex.length;o=0&&-1===r&&a(n,"columnSorting"),h(n,"descending"),h(n,"ascending"),this.sortIndicators[e]&&e===this.hot.sortColumn&&("ascending"===this.sortOrderClass?a(n,"ascending"):"descending"===this.sortOrderClass&&a(n,"descending")))},isSorted:function(){return"undefined"!=typeof this.hot.sortColumn},afterCreateRow:function(e,t){if(this.isSorted()){for(var n=0;n=e&&(this.hot.sortIndex[n][0]+=t);for(var n=0;t>n;n++)this.hot.sortIndex.splice(e+n,0,[e+n,this.hot.getData()[e+n][this.hot.sortColumn+this.hot.colOffset()]]);this.saveSortingState()}},afterRemoveRow:function(e,t){if(this.isSorted()){var n=this.translateRow(e);this.hot.sortIndex.splice(e,t);for(var o=0;on&&(this.hot.sortIndex[o][0]-=t);this.saveSortingState()}}},{},g);var v=m;p("columnSorting",m)},{_base:56,eventManager:40,"helpers/dom/element":44,plugins:55}],61:[function(e,t,n){"use strict";Object.defineProperties(n,{CommentEditor:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,i=function(){this.editor=this.createEditor(),this.editorStyle=this.editor.style,this.editorStyle.position="absolute",this.editorStyle.zIndex=100,this.hide()},s=i;$traceurRuntime.createClass(i,{setPosition:function(e,t){this.editorStyle.left=e+"px",this.editorStyle.top=t+"px"},show:function(){this.editorStyle.display="block"},hide:function(){this.editorStyle.display="none"},isVisible:function(){return"block"===this.editorStyle.display},setValue:function(){var e=void 0!==arguments[0]?arguments[0]:"";e=e||"",this.getInputElement().value=e},getValue:function(){return this.getInputElement().value},isFocused:function(){return document.activeElement===this.getInputElement()},focus:function(){this.getInputElement().focus()},createEditor:function(){var e,t,n=document.querySelector("."+s.CLASS_EDITOR_CONTAINER);return n||(n=document.createElement("div"),r(n,s.CLASS_EDITOR_CONTAINER),document.body.appendChild(n)),e=document.createElement("div"),r(e,s.CLASS_EDITOR),t=document.createElement("textarea"),r(t,s.CLASS_INPUT),e.appendChild(t),n.appendChild(e),e},getInputElement:function(){return this.editor.querySelector("."+s.CLASS_INPUT)},destroy:function(){this.editor.parentNode.removeChild(this.editor),this.editor=null,this.editorStyle=null}},{get CLASS_EDITOR_CONTAINER(){return"htCommentsContainer"},get CLASS_EDITOR(){return"htComments"},get CLASS_INPUT(){return"htCommentTextArea"},get CLASS_CELL(){return"htCommentCell"}})},{"helpers/dom/element":44}],62:[function(e,t,n){"use strict";Object.defineProperties(n,{Comments:{get:function(){return R}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.addClass,d=u.closest,h=u.getWindowScrollLeft,f=u.getWindowScrollTop,g=u.hasClass,p=u.offset,m=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,w=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords,v=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}),b=v.registerPlugin,C=(v.getPlugin,(l=e("_base"),l&&l.__esModule&&l||{"default":l})["default"]),y=(a=e("commentEditor"),a&&a.__esModule&&a||{"default":a}).CommentEditor,R=function(e){$traceurRuntime.superConstructor(E).call(this,e),this.editor=null,this.eventManager=null,this.range={},this.mouseDown=!1,this.contextMenuEvent=!1,this.timer=null},E=R;$traceurRuntime.createClass(R,{isEnabled:function(){return this.hot.getSettings().comments},enablePlugin:function(){var e=this;this.enabled||(this.editor||(this.editor=new y),this.eventManager||(this.eventManager=new m(this)),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addToContextMenu(t)}),this.addHook("afterRenderer",function(t,n,o,r,i,s){return e.onAfterRenderer(t,s)}),this.addHook("afterScrollVertically",function(){return e.refreshEditorPosition()}),this.addHook("afterColumnResize",function(){return e.refreshEditorPosition()}),this.addHook("afterRowResize",function(){return e.refreshEditorPosition()}),this.registerListeners(),$traceurRuntime.superGet(this,E.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,E.prototype,"disablePlugin").call(this)},registerListeners:function(){var e=this;this.eventManager.addEventListener(document,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(document,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(document,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document,"mouseup",function(t){return e.onMouseUp(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"blur",function(t){return e.onEditorBlur(t)})},setRange:function(e){this.range=e},clearRange:function(){this.range={}},targetIsCellWithComment:function(e){return g(e.target,"htCommentCell")&&d(e.target,[this.hot.rootElement])?!0:!1},targetIsCommentTextArea:function(e){return this.editor.getInputElement()===e.target},saveComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.editor.getValue(),t=this.range.from.row,n=this.range.from.col;this.hot.setCellMeta(t,n,"comment",e),this.hot.render()},saveCommentAtCell:function(e,t){this.setRange({from:new w(e,t)}),this.saveComment()},removeComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');this.hot.removeCellMeta(this.range.from.row,this.range.from.col,"comment"),this.hot.render(),this.hide()},removeCommentAtCell:function(e,t){this.setRange({from:new w(e,t)}),this.removeComment()},show:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.hot.getCellMeta(this.range.from.row,this.range.from.col);return this.refreshEditorPosition(!0),this.editor.setValue(e.comment||""),this.editor.show(),!0},showAtCell:function(e,t){return this.setRange({from:new w(e,t)}),this.show()},hide:function(){this.editor.hide()},refreshEditorPosition:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e||this.range.from&&this.editor.isVisible()){var t=this.hot.view.wt.wtTable.getCell(this.range.from),n=p(t),o=this.hot.getColWidth(this.range.from.col),r=n.top,i=n.left,s=0,l=0;this.hot.view.wt.wtViewport.hasVerticalScroll()&&(r-=this.hot.view.wt.wtOverlays.topOverlay.getScrollPosition(),s=20),this.hot.view.wt.wtViewport.hasHorizontalScroll()&&(i-=this.hot.view.wt.wtOverlays.leftOverlay.getScrollPosition(),l=20);var a=i+o,u=r,c=this.hot.view.wt.wtTable.holder.getBoundingClientRect(),d={left:c.left+h()+l,right:c.right+h()-15,top:c.top+f()+s,bottom:c.bottom+f()};a<=d.left||a>d.right||u<=d.top||u>d.bottom?this.hide():this.editor.setPosition(a,u)}},onMouseDown:function(e){this.mouseDown=!0,this.hot.view&&this.hot.view.wt&&(this.contextMenuEvent||this.targetIsCommentTextArea(e)||this.targetIsCellWithComment(e)||this.hide(),this.contextMenuEvent=!1)},onMouseOver:function(e){if(!this.mouseDown&&!this.editor.isFocused())if(this.targetIsCellWithComment(e)){var t=this.hot.view.wt.wtTable.getCoords(e.target),n={from:new w(t.row,t.col)};this.setRange(n),this.show()}else this.targetIsCommentTextArea(e)||this.editor.isFocused()||this.hide()},onMouseMove:function(e){var t=this;this.targetIsCommentTextArea(e)&&(this.mouseDown=!0,clearTimeout(this.timer),this.timer=setTimeout(function(){t.mouseDown=!1},200))},onMouseUp:function(e){this.mouseDown=!1},onAfterRenderer:function(e,t){t.comment&&c(e,t.commentedCellClassName)},onEditorBlur:function(e){this.saveComment()},checkSelectionCommentsConsistency:function(){var e=this.hot.getSelectedRange();if(!e)return!1;var t=!1,n=e.from;return this.hot.getCellMeta(n.row,n.col).comment&&(t=!0),t},onContextMenuAddComment:function(){var e=this,t=this.hot.getSelectedRange();this.contextMenuEvent=!0,this.setRange({from:t.from}),this.show(),setTimeout(function(){e.hot&&(e.hot.deselectCell(),e.editor.focus())},10)},onContextMenuRemoveComment:function(e,t){this.contextMenuEvent=!0,this.removeCommentAtCell(t.start.row,t.start.col)},addToContextMenu:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"commentsAddEdit",name:function(){return t.checkSelectionCommentsConsistency()?"Edit Comment":"Add Comment"},callback:function(){return t.onContextMenuAddComment()},disabled:function(){return this.getSelected()?!1:!0}},{key:"commentsRemove",name:function(){return"Delete Comment"},callback:function(e,n){return t.onContextMenuRemoveComment(e,n)},disabled:function(){return!t.checkSelectionCommentsConsistency()}})},destroy:function(){this.editor&&this.editor.destroy(),$traceurRuntime.superGet(this,E.prototype,"destroy").call(this)}},{},C),b("comments",R)},{"3rdparty/walkontable/src/cell/coords":5,_base:56,commentEditor:61,eventManager:40,"helpers/dom/element":44,plugins:55}],63:[function(e,t,n){"use strict";function o(e,t){var n;return i(t,function(t){var o=t.key?t.key.split(":"):null;return Array.isArray(o)&&o[1]===e?(n=t,!1):void 0}),n}Object.defineProperties(n,{CommandExecutor:{get:function(){return s}},__esModule:{value:!0}});var r,i=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,s=function(e){this.hot=e,this.commands={},this.commonCallback=null};$traceurRuntime.createClass(s,{registerCommand:function(e,t){this.commands[e]=t},setCommonCallback:function(e){this.commonCallback=e},execute:function(e){for(var t=[],n=1;n0;if(s)return}}else if(!(t(i)||v(i,"current")&&v(i,"wtBorder")))return;this.open(e)}},{get DEFAULT_ITEMS(){return[T,O,L,_,M,L,H,k,L,A,P,L,x,L,D]}},g),N.SEPARATOR={name:L},Handsontable.hooks.register("afterContextMenuDefaultOptions"),Handsontable.hooks.register("afterContextMenuShow"),Handsontable.hooks.register("afterContextMenuHide"),Handsontable.hooks.register("afterContextMenuExecute"),R("contextMenu",N)},{_base:56,commandExecutor:63,eventManager:40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,itemsFactory:66,menu:67,plugins:55,predefinedItems:68}],65:[function(e,t,n){"use strict";Object.defineProperties(n,{Cursor:{get:function(){return d}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.getWindowScrollLeft,l=i.getWindowScrollTop,a=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),u=a.pageX,c=a.pageY,d=function(e){var t,n,o,r,i,a,d,h,f=l(),g=s();this.type=this.getSourceType(e),"literal"===this.type?(t=parseInt(e.top,10),o=parseInt(e.left,10),d=e.height,h=e.width):"event"===this.type&&(t=parseInt(c(e),10),o=parseInt(u(e),10),d=e.target.clientHeight,h=e.target.clientWidth),n=t-f,r=o-g,i=f,a=g,this.top=t,this.topRelative=n,this.left=o,this.leftRelative=r,this.scrollTop=i,this.scrollLeft=a,this.cellHeight=d,this.cellWidth=h};$traceurRuntime.createClass(d,{getSourceType:function(e){var t="literal";return e instanceof Event&&(t="event"),t},fitsAbove:function(e){return this.topRelative>=e.offsetHeight},fitsBelow:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerHeight;return this.topRelative+e.offsetHeight<=t},fitsOnRight:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerWidth;return this.leftRelative+this.cellWidth+e.offsetWidth<=t},fitsOnLeft:function(e){return this.leftRelative>=e.offsetWidth}},{}),Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.utils.Cursor=d},{"helpers/dom/element":44,"helpers/dom/event":45}],66:[function(e,t,n){"use strict";function o(){var e=void 0!==arguments[0]?arguments[0]:null,t=void 0!==arguments[1]?arguments[1]:[],n=void 0!==arguments[2]?arguments[2]:{},o=[];return e&&e.items?e=e.items:Array.isArray(e)||(e=t),u(e)?a(e,function(e,t){var r=n["string"==typeof e?e:t];r||(r=e),u(e)?c(r,e):"string"==typeof r&&(r={name:r}),void 0===r.key&&(r.key=t),o.push(r)}):d(e,function(e,t){var r=n[e];!r&&g.indexOf(e)>=0||(r||(r={name:e,key:t+""}),u(e)&&c(r,e),void 0===r.key&&(r.key=t),o.push(r))}),o[0].name===f&&o.shift(),o}Object.defineProperties(n,{ItemsFactory:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,l=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}),a=l.objectEach,u=l.isObject,c=l.extend,d=(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,h=(s=e("predefinedItems"),s&&s.__esModule&&s||{"default":s}),f=h.SEPARATOR,g=h.ITEMS,p=h.predefinedItems,m=function(e){var t=void 0!==arguments[1]?arguments[1]:null;this.hot=e,this.predefinedItems=p(),this.defaultOrderPattern=t};$traceurRuntime.createClass(m,{setPredefinedItems:function(e){var t=this,n={};this.defaultOrderPattern.length=0,a(e,function(e,o){var r="";e.name===f?(n[f]=e,r=f):isNaN(parseInt(o,10))?(e.key=void 0===e.key?o:e.key,n[o]=e,r=e.key):(n[e.key]=e,r=e.key),t.defaultOrderPattern.push(r)}),this.predefinedItems=n},getVisibleItems:function(){var e=void 0!==arguments[0]?arguments[0]:null,t=this,n={};return a(this.predefinedItems,function(e,o){(!e.hidden||e.hidden&&!e.hidden.apply(t.hot))&&(n[o]=e)}),o(e,this.defaultOrderPattern,n)},getItems:function(){var e=void 0!==arguments[0]?arguments[0]:null;return o(e,this.defaultOrderPattern,this.predefinedItems)}},{})},{"helpers/array":41,"helpers/object":49,predefinedItems:68}],67:[function(e,t,n){"use strict";Object.defineProperties(n,{Menu:{get:function(){return W}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),g=f.addClass,p=f.empty,m=f.fastInnerHTML,w=(f.getComputedStyle,f.getScrollbarWidth),v=(f.getWindowScrollLeft,f.getWindowScrollTop,f.hasClass,f.isChildOf),b=f.removeClass,C=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,y=(i=e("cursor"),i&&i.__esModule&&i||{"default":i}).Cursor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).EventManager,E=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),S=(E.extend,E.isObject,E.objectEach,E.mixin),T=(a=e("utils"),a&&a.__esModule&&a||{"default":a}),O=T.isSeparator,_=T.isDisabled,M=T.isSelectionDisabled,H=T.hasSubMenu,k=T.normalizeSelection,A=(u=e("helpers/unicode"),u&&u.__esModule&&u||{"default":u}).KEY_CODES,P=(c=e("pluginHooks"),c&&c.__esModule&&c||{"default":c}).localHooks,x=(d=e("predefinedItems"),d&&d.__esModule&&d||{"default":d}),D=x.SEPARATOR,L=(x.predefinedItems,h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),N=(L.stopPropagation,L.stopImmediatePropagation),W=(L.pageX,L.pageY,function(e){var t=void 0!==arguments[1]?arguments[1]:{parent:null,name:null,className:"",keepInViewport:!0};this.hot=e,this.options=t,this.eventManager=new R(this),this.container=this.createContainer(this.options.name),this.hotMenu=null,this.hotSubMenus={},this.parentMenu=this.options.parent||null,this.menuItems=null,this.origOutsideClickDeselects=null,this._afterScrollCallback=null,this.registerEvents()}),I=W;$traceurRuntime.createClass(W,{registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){return e.onDocumentMouseDown(t)})},setMenuItems:function(e){this.menuItems=e},isSubMenu:function(){return null!==this.parentMenu},open:function(){var e=this;this.container.removeAttribute("style"),this.container.style.display="block";var t={data:this.menuItems,colHeaders:!1,colWidths:[200],autoRowSize:!1,readOnly:!0,copyPaste:!1,columns:[{data:"name",renderer:function(t,n,o,r,i,s){return e.menuItemRenderer(t,n,o,r,i,s)}}],renderAllRows:!0,beforeKeyDown:function(t){return e.onBeforeKeyDown(t)},afterOnCellMouseOver:function(t,n,o){return e.openSubMenu(n.row)}};this.origOutsideClickDeselects=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1,this.hotMenu=new Handsontable.Core(this.container,t),this.hotMenu.addHook("afterInit",function(){return e.onAfterInit()}),this.hotMenu.init(),this.hotMenu.listen(),this.blockMainTableCallbacks(),this.runLocalHooks("afterOpen")},close:function(){var e=void 0!==arguments[0]?arguments[0]:!1;this.isOpened()&&(e&&this.parentMenu?this.parentMenu.close():(this.closeAllSubMenus(),this.container.style.display="none",this.releaseMainTableCallbacks(),this.hotMenu.destroy(),this.hotMenu=null,this.hot.getSettings().outsideClickDeselects=this.origOutsideClickDeselects,this.hot.listen(),this.runLocalHooks("afterClose")))},openSubMenu:function(e){var t=this.hotMenu.getCell(e,0);if(this.closeAllSubMenus(),!t||!H(t))return!1;var n=this.hotMenu.getData()[e],o=new I(this.hot,{parent:this,name:n.name,className:this.options.className});return o.setMenuItems(n.submenu.items),o.open(),o.setPosition(t.getBoundingClientRect()),this.hotSubMenus[n.key]=o,o},closeSubMenu:function(e){var t=this.hotMenu.getData()[e],n=this.hotSubMenus[t.key];n&&(n.destroy(),delete this.hotSubMenus[t.key])},closeAllSubMenus:function(){var e=this;C(this.hotMenu.getData(),function(t,n){return e.closeSubMenu(n)})},isAllSubMenusClosed:function(){return 0===Object.keys(this.hotSubMenus).length},destroy:function(){this.clearLocalHooks(),this.close(),this.parentMenu=null,this.eventManager.destroy()},isOpened:function(){return null!==this.hotMenu},executeCommand:function(){var e=arguments[0];if(this.isOpened()&&this.hotMenu.getSelected()){var t=this.hotMenu.getData()[this.hotMenu.getSelected()[0]];if(this.runLocalHooks("select",t,e),t.isCommand!==!1){var n=this.hot.getSelectedRange(),o=n?k(n):{};this.runLocalHooks("executeCommand",t.key,o,e),this.isSubMenu()&&this.parentMenu.runLocalHooks("executeCommand",t.key,o,e),this.close(!0)}}},setPosition:function(e){var t=new y(e);this.options.keepInViewport?(t.fitsBelow(this.container)?this.setPositionBelowCursor(t):t.fitsAbove(this.container)?this.setPositionAboveCursor(t):this.setPositionBelowCursor(t),t.fitsOnRight(this.container)?this.setPositionOnRightOfCursor(t):this.setPositionOnLeftOfCursor(t)):(this.setPositionBelowCursor(t),this.setPositionOnRightOfCursor(t)); -},setPositionAboveCursor:function(e){var t=e.top-this.container.offsetHeight;this.isSubMenu()&&(t=window.scrollY+e.top+e.cellHeight-this.container.offsetHeight+3),this.container.style.top=t+"px"},setPositionBelowCursor:function(e){var t=e.top-1;this.isSubMenu()&&(t=e.top+window.scrollY-1),this.container.style.top=t+"px"},setPositionOnRightOfCursor:function(e){var t;t=this.isSubMenu()?window.scrollX+1+e.left+e.cellWidth:1+e.left,this.container.style.left=t+"px"},setPositionOnLeftOfCursor:function(e){this.container.style.left=e.left-this.container.offsetWidth+w()+4+"px"},selectFirstCell:function(){var e=this.hotMenu.getCell(0,0);O(e)||_(e)||M(e)?this.selectNextCell(0,0):this.hotMenu.selectCell(0,0)},selectLastCell:function(){var e=this.hotMenu.countRows()-1,t=this.hotMenu.getCell(e,0);O(t)||_(t)||M(t)?this.selectPrevCell(e,0):this.hotMenu.selectCell(e,0)},selectNextCell:function(e,t){var n=e+1,o=n=0?this.hotMenu.getCell(n,t):null;o&&(O(o)||_(o)||M(o)?this.selectPrevCell(n,t):this.hotMenu.selectCell(n,t))},menuItemRenderer:function(e,t,n,o,r,i){var s=this,l=e.getData()[n],a=document.createElement("div"),u=function(e){return e.hasOwnProperty("submenu")},c=function(e){return new RegExp(D,"i").test(e.name)},d=function(e){return e.disabled===!0||"function"==typeof e.disabled&&e.disabled.call(s.hot)===!0},h=function(e){return e.disableSelection};"function"==typeof i&&(i=i.call(this.hot)),p(t),g(a,"htItemWrapper"),t.appendChild(a),c(l)?g(t,"htSeparator"):"function"==typeof l.renderer?(g(t,"htCustomMenuRenderer"),t.appendChild(l.renderer(e,a,n,o,r,i))):m(a,i),d(l)?(g(t,"htDisabled"),this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()})):h(l)?(g(t,"htSelectionDisabled"),this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()})):u(l)?(g(t,"htSubmenu"),h(l)?this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(a,"mouseenter",function(){return e.selectCell(n,o)})):(b(t,"htSubmenu"),b(t,"htDisabled"),h(l)?this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(a,"mouseenter",function(){return e.selectCell(n,o)}))},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:null;e&&(e=e.replace(/ /g,"_"),e=this.options.className+"Sub_"+e);var t;return t=e?document.querySelector("."+this.options.className+"."+e):document.querySelector("."+this.options.className),t||(t=document.createElement("div"),g(t,"htMenu "+this.options.className),e&&g(t,e),document.getElementsByTagName("body")[0].appendChild(t)),t},blockMainTableCallbacks:function(){this._afterScrollCallback=function(){},this.hot.addHook("afterScrollVertically",this._afterScrollCallback),this.hot.addHook("afterScrollHorizontally",this._afterScrollCallback)},releaseMainTableCallbacks:function(){this._afterScrollCallback&&(this.hot.removeHook("afterScrollVertically",this._afterScrollCallback),this.hot.removeHook("afterScrollHorizontally",this._afterScrollCallback),this._afterScrollCallback=null)},onBeforeKeyDown:function(e){var t=this.hotMenu.getSelected(),n=!1;switch(e.keyCode){case A.ESCAPE:this.close(),n=!0;break;case A.ENTER:t&&(this.hotMenu.getData()[t[0]].submenu?n=!0:(this.executeCommand(e),this.close(!0)));break;case A.ARROW_DOWN:t?this.selectNextCell(t[0],t[1]):this.selectFirstCell(),n=!0;break;case A.ARROW_UP:t?this.selectPrevCell(t[0],t[1]):this.selectLastCell(),n=!0;break;case A.ARROW_RIGHT:if(t){var o=this.openSubMenu(t[0]);o&&o.selectFirstCell()}n=!0;break;case A.ARROW_LEFT:t&&this.isSubMenu()&&(this.close(),this.parentMenu&&this.parentMenu.hotMenu.listen(),n=!0)}n&&(e.preventDefault(),N(e))},onAfterInit:function(){var e=this.hotMenu.getSettings().data,t=this.hotMenu.view.wt.wtTable.hider.style,n=this.hotMenu.view.wt.wtTable.holder.style,o=parseInt(t.width,10),r=0;C(e,function(e){return r+=e.name===D?1:26}),n.width=o+22+"px",n.height=r+4+"px"},onDocumentMouseDown:function(e){this.isOpened()&&(this.container&&v(e.target,this.container)&&this.executeCommand(e),(this.isAllSubMenusClosed()||this.isSubMenu())&&!v(e.target,".htMenu")&&v(e.target,document)&&this.close(!0))}},{}),S(W,P)},{cursor:65,eventManager:40,"helpers/array":41,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/object":49,"helpers/unicode":52,pluginHooks:54,predefinedItems:68,utils:69}],68:[function(e,t,n){"use strict";function o(){var e={};return c(A,function(t,n){return e[n]=d(t)}),e}function r(e,t){-1===k.indexOf(e)&&(A[e]=t)}var i;Object.defineProperties(n,{ROW_ABOVE:{get:function(){return v}},ROW_BELOW:{get:function(){return b}},COLUMN_LEFT:{get:function(){return C}},COLUMN_RIGHT:{get:function(){return y}},CLEAR_COLUMN:{get:function(){return R}},REMOVE_ROW:{get:function(){return E}},REMOVE_COLUMN:{get:function(){return S}},UNDO:{get:function(){return T}},REDO:{get:function(){return O}},READ_ONLY:{get:function(){return _}},ALIGNMENT:{get:function(){return M}},SEPARATOR:{get:function(){return H}},ITEMS:{get:function(){return k}},predefinedItems:{get:function(){return o}},addItem:{get:function(){return r}},__esModule:{value:!0}});var s,l,a,u=(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}),c=u.objectEach,d=u.clone,h=((l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).rangeEach,a=e("utils"),a&&a.__esModule&&a||{"default":a}),f=h.align,g=h.getAlignmentClasses,p=h.getValidSelection,m=h.checkSelectionConsistency,w=h.markLabelAsSelected,v="row_above",b="row_below",C="col_left",y="col_right",R="clear_column",E="remove_row",S="remove_col",T="undo",O="redo",_="make_read_only",M="alignment",H="---------",k=[v,b,C,y,R,E,S,T,O,_,M,H],A=(i={},Object.defineProperty(i,H,{value:{name:H},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,v,{value:{key:v,name:"Insert row above",callback:function(e,t){this.alter("insert_row",t.start.row)},disabled:function(){var e=p(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,b,{value:{key:b,name:"Insert row below",callback:function(e,t){this.alter("insert_row",t.end.row+1)},disabled:function(){var e=p(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,C,{value:{key:C,name:"Insert column on the left",callback:function(e,t){this.alter("insert_col",t.start.col)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,y,{value:{key:y,name:"Insert column on the right",callback:function(e,t){this.alter("insert_col",t.end.col+1)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,R,{value:{key:R,name:"Clear column",callback:function(e,t){var n=t.start.col;this.populateFromArray(0,n,[[null]],Math.max(t.start.row,t.end.row),n)},disabled:function(){var e=p(this);if(!e)return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,E,{value:{key:E,name:"Remove row",callback:function(e,t){var n=t.end.row-t.start.row+1;this.alter("remove_row",t.start.row,n)},disabled:function(){var e=p(this);if(!e)return!0;var t=[0,e[1],this.countRows()-1,e[1]];return t.join(",")===e.join(",")},hidden:function(){return!this.getSettings().allowRemoveRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,S,{value:{key:S,name:"Remove column",callback:function(e,t){var n=t.end.col-t.start.col+1;this.alter("remove_col",t.start.col,n)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||n},hidden:function(){return!this.getSettings().allowRemoveColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,T,{value:{key:T,name:"Undo",callback:function(){this.undo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isUndoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,O,{value:{key:O,name:"Redo",callback:function(){this.redo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isRedoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,_,{value:{key:_,name:function(){var e=this,t="Read only",n=m(this.getSelectedRange(),function(t,n){return e.getCellMeta(t,n).readOnly});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=m(t,function(t,n){return e.getCellMeta(t,n).readOnly});t.forAll(function(t,o){e.getCellMeta(t,o).readOnly=n?!1:!0}),this.render()},disabled:function(){return this.getSelectedRange()?!1:!0}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,M,{value:{key:M,name:"Alignment",disabled:function(){return this.getSelectedRange()?!1:!0},submenu:{items:[{key:M+":left",name:function(){var e=this,t="Left",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htLeft")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htLeft";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":center",name:function(){var e=this,t="Center",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htCenter")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htCenter";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":right",name:function(){var e=this,t="Right",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htRight")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htRight";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":justify",name:function(){var e=this,t="Justify",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htJustify")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htJustify";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{name:H},{key:M+":top",name:function(){var e=this,t="Top",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htTop")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htTop";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":middle",name:function(){var e=this,t="Middle",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htMiddle")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htMiddle";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":bottom",name:function(){var e=this,t="Bottom",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htBottom")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htBottom";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1}]}},configurable:!0,enumerable:!0,writable:!0}),i)},{"helpers/number":48,"helpers/object":49,utils:69}],69:[function(e,t,n){"use strict";function o(e){return{start:e.getTopLeftCorner(),end:e.getBottomRightCorner()}}function r(e){return w(e,"htSeparator")}function i(e){return w(e,"htSubmenu")}function s(e){return w(e,"htDisabled")}function l(e){return w(e,"htSelectionDisabled")}function a(e){var t=e.getSelected();return t?t[0]<0?null:e.countRows()>=e.getSettings().maxRows?null:t:null}function u(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htTop","").replace("htMiddle","").replace("htBottom","").replace(" ",""),e+=" "+t)}function c(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htLeft","").replace("htCenter","").replace("htRight","").replace("htJustify","").replace(" ",""),e+=" "+t)}function d(e,t){for(var n={},o=e.from.row;o<=e.to.row;o++)for(var r=e.from.col;r<=e.to.col;r++)n[o]||(n[o]=[]),n[o][r]=t(o,r);return n}function h(e,t,n,o){if(e.from.row==e.to.row&&e.from.col==e.to.col)f(e.from.row,e.from.col,t,n,o);else for(var r=e.from.row;r<=e.to.row;r++)for(var i=e.from.col;i<=e.to.col;i++)f(r,i,t,n,o)}function f(e,t,n,o,r){var i=r(e,t),s=o;i.className&&(s="vertical"===n?u(i.className,o):c(i.className,o)),i.className=s}function g(e,t){var n=!1;return e&&e.forAll(function(e,o){return t(e,o)?(n=!0,!1):void 0}),n}function p(e){return''+String.fromCharCode(10003)+""+e}Object.defineProperties(n,{normalizeSelection:{get:function(){return o}},isSeparator:{get:function(){return r}},hasSubMenu:{get:function(){return i}},isDisabled:{get:function(){return s}},isSelectionDisabled:{get:function(){return l}},getValidSelection:{get:function(){return a}},prepareVerticalAlignClass:{get:function(){return u}},prepareHorizontalAlignClass:{get:function(){return c}},getAlignmentClasses:{get:function(){return d}},align:{get:function(){return h}},checkSelectionConsistency:{get:function(){return g}},markLabelAsSelected:{get:function(){return p}},__esModule:{value:!0}});var m,w=(m=e("helpers/dom/element"),m&&m.__esModule&&m||{"default":m}).hasClass},{"helpers/dom/element":44}],70:[function(e,t,n){"use strict";Object.defineProperties(n,{ContextMenuCopyPaste:{get:function(){return p}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).removeClass,c=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,d=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,h=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,f=(l=e("_base"),l&&l.__esModule&&l||{"default":l})["default"],g=(a=e("zeroclipboard"),a&&a.__esModule&&a||{"default":a})["default"],p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.eventManager=new d(this),this.swfPath=null,this.outsideClickDeselectsCache=null},m=p;$traceurRuntime.createClass(p,{isEnabled:function(){return this.hot.getSettings().contextMenuCopyPaste},enablePlugin:function(){var e=this;if(!this.enabled){"object"==typeof this.hot.getSettings().contextMenuCopyPaste&&(this.swfPath=this.hot.getSettings().contextMenuCopyPaste.swfPath),"undefined"==typeof g&&console.error("To be able to use the Copy/Paste feature from the context menu, you need to manually include ZeroClipboard.js file to your website.");try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(t){"undefined"==typeof navigator.mimeTypes["application/x-shockwave-flash"]&&console.error("To be able to use the Copy/Paste feature from the context menu, your browser needs to have Flash Plugin installed.")}this.swfPath&&g.config({swfPath:this.swfPath}),this.hot.addHook("afterContextMenuShow",function(){return e.onAfterContextMenuShow()}),this.hot.addHook("afterContextMenuDefaultOptions",function(t){return e.onAfterContextMenuDefaultOptions(t)}),this.registerEvents(),$traceurRuntime.superGet(this,m.prototype,"enablePlugin").call(this)}},disablePlugin:function(){$traceurRuntime.superGet(this,m.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(document,"mouseenter",function(){return e.removeCurrentClass()}),this.eventManager.addEventListener(document,"mouseleave",function(){return e.removeZeroClipboardClass()})},getCopyValue:function(){return this.hot.copyPaste.setCopyableText(),this.hot.copyPaste.copyPasteInstance.elTextarea.value},onAfterContextMenuDefaultOptions:function(e){e.items.unshift({key:"copy",name:"Copy"},{key:"paste",name:"Paste",callback:function(){this.copyPaste.triggerPaste()}},Handsontable.plugins.ContextMenu.SEPARATOR)},onAfterContextMenuShow:function(){var e=this,t=this.hot.getPlugin("contextMenu"),n=t.menu.hotMenu.getData();c(n,function(n,o){if("copy"===n.key){var r=new g(t.menu.hotMenu.getCell(o,0));return r.off(),r.on("copy",function(t){var n=t.clipboardData;n.setData("text/plain",e.getCopyValue()),e.hot.getSettings().outsideClickDeselects=e.outsideClickDeselectsCache}),!1}})},removeCurrentClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.current");t&&u(t,"current")}this.outsideClickDeselectsCache=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1},removeZeroClipboardClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.zeroclipboard-is-hover");t&&u(t,"zeroclipboard-is-hover")}this.hot.getSettings().outsideClickDeselects=this.outsideClickDeselectsCache}},{},f),h("contextMenuCopyPaste",p)},{_base:56,eventManager:40,"helpers/array":41,"helpers/dom/element":44,plugins:55,zeroclipboard:void 0}],71:[function(e,t,n){"use strict";function o(e){function t(){e.isListening()&&e.selection.empty()}function n(t){var n,o,r,i,s,l,a,u,c,d;if(e.isListening()&&e.selection.isSelected()){n=t,o=m.parse(n),r=e.getSelected(),i=new S(r[0],r[1]),s=new S(r[2],r[3]),l=new T(i,i,s),a=l.getTopLeftCorner(),u=l.getBottomRightCorner(),c=a,d=new S(Math.max(u.row,o.length-1+a.row),Math.max(u.col,o[0].length-1+a.col));var h=s.row-i.row>=o.length-1,f=s.col-i.col>=o[0].length-1;e.addHookOnce("afterChange",function(t,n){var o=t?t.length:0;if(o){var r={row:0,col:0},i=-1;C(t,function(e,n){var s=o>n+1?t[n+1]:null;s&&(h||(r.row=r.row+Math.max(s[0]-e[0]-1,0)),!f&&e[1]>i&&(i=e[1],r.col=r.col+Math.max(s[1]-e[1]-1,0)))}),e.selectCell(c.row,c.col,d.row+r.row,d.col+r.col)}}),e.populateFromArray(c.row,c.col,o,d.row,d.col,"paste",e.getSettings().pasteMode)}}function o(t){if(e.getSelected()&&(!e.getActiveEditor()||!e.getActiveEditor().isOpened())){if(b(t.keyCode))return r.setCopyableText(),void R(t);var n=(t.ctrlKey||t.metaKey)&&!t.altKey;t.keyCode==v.A&&n&&e._registerTimeout(setTimeout(E(r.setCopyableText,r),0))}}var r=this;this.copyPasteInstance=p(),this.copyPasteInstance.onCut(t),this.copyPasteInstance.onPaste(n),this.onPaste=n,e.addHook("beforeKeyDown",o),this.destroy=function(){this.copyPasteInstance&&(this.copyPasteInstance.removeCallback(t),this.copyPasteInstance.removeCallback(n),this.copyPasteInstance.destroy(),this.copyPasteInstance=null),e.removeHook("beforeKeyDown",o)},e.addHook("afterDestroy",E(this.destroy,this)),this.triggerPaste=E(this.copyPasteInstance.triggerPaste,this.copyPasteInstance),this.triggerCut=E(this.copyPasteInstance.triggerCut,this.copyPasteInstance),this.setCopyableText=function(){var t=e.getSettings(),n=t.copyRowsLimit,o=t.copyColsLimit,r=e.getSelectedRange(),i=r.getTopLeftCorner(),s=r.getBottomRightCorner(),l=i.row,a=i.col,u=s.row,c=s.col,d=Math.min(u,l+n-1),h=Math.min(c,a+o-1),f=[];f.push({startRow:l,startCol:a,endRow:d,endCol:h}),f=Handsontable.hooks.run(e,"modifyCopyableRange",f);var g=this.getRangedCopyableData(f);e.copyPaste.copyPasteInstance.copyable(g),(u!==d||c!==h)&&Handsontable.hooks.run(e,"afterCopyLimit",u-l+1,c-a+1,n,o)},this.getRangedCopyableData=function(t){var n=[],o=[],r=[];return C(t,function(e){y(e.startRow,e.endRow,function(e){-1===o.indexOf(e)&&o.push(e)}),y(e.startCol,e.endCol,function(e){-1===r.indexOf(e)&&r.push(e)})}),C(o,function(t){var o=[];C(r,function(n){o.push(e.getCopyableData(t,n))}),n.push(o)}),m.stringify(n)}}function r(){var e=this,t=e.getSettings().copyPaste!==!1;t&&!e.copyPaste?e.copyPaste=new o(e):!t&&e.copyPaste&&(e.copyPaste.destroy(),e.copyPaste=null)}Object.defineProperties(n,{CopyPastePlugin:{get:function(){return o}},__esModule:{value:!0}});var i,s,l,a,u,c,d,h,f,g,p=(i=e("copyPaste"),i&&i.__esModule&&i||{"default":i})["default"],m=(s=e("SheetClip"),s&&s.__esModule&&s||{"default":s})["default"],w=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}),v=w.KEY_CODES,b=w.isCtrlKey,C=(a=e("helpers/array"),a&&a.__esModule&&a||{"default":a}).arrayEach,y=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,R=(c=e("helpers/dom/event"),c&&c.__esModule&&c||{"default":c}).stopImmediatePropagation,E=(d=e("helpers/function"),d&&d.__esModule&&d||{"default":d}).proxy,S=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("3rdparty/walkontable/src/cell/coords"),f&&f.__esModule&&f||{"default":f}).WalkontableCellCoords),T=(g=e("3rdparty/walkontable/src/cell/range"),g&&g.__esModule&&g||{"default":g}).WalkontableCellRange;Handsontable.hooks.add("afterInit",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterCopyLimit"),Handsontable.hooks.register("modifyCopyableRange")},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,SheetClip:"SheetClip",copyPaste:"copyPaste","helpers/array":41,"helpers/dom/event":45,"helpers/function":46,"helpers/number":48,"helpers/unicode":52,plugins:55}],72:[function(e,t,n){"use strict";function o(){}var r,i,s,l,a=((r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,(i=e("3rdparty/walkontable/src/cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange),u=(s=e("3rdparty/walkontable/src/selection"),s&&s.__esModule&&s||{"default":s}).WalkontableSelection,c=function(e){return"boolean"==typeof e&&e===!0?!0:"object"==typeof e&&e.length>0?!0:!1},d=function(){c(this.getSettings().customBorders)&&(this.customBorders||(l=this,this.customBorders=new o))},h=function(e){for(var t=0;t=0?l.view.wt.selections[o]=n:l.view.wt.selections.push(n)},g=function(e,t,n){var o=C(e,t);o=y(o,n),this.setCellMeta(e,t,"borders",o),f(o)},p=function(e){for(var t=e.range,n=t.from.row;n<=t.to.row;n++)for(var o=t.from.col;o<=t.to.col;o++){var r=C(n,o),i=0;n==t.from.row&&(i++,e.hasOwnProperty("top")&&(r.top=e.top)),n==t.to.row&&(i++,e.hasOwnProperty("bottom")&&(r.bottom=e.bottom)),o==t.from.col&&(i++,e.hasOwnProperty("left")&&(r.left=e.left)),o==t.to.col&&(i++,e.hasOwnProperty("right")&&(r.right=e.right)),i>0&&(this.setCellMeta(n,o,"borders",r),f(r))}},m=function(e,t){return"border_row"+e+"col"+t},w=function(){return{width:1,color:"#000"}},v=function(){return{hide:!0}},b=function(){return{width:1,color:"#000",cornerVisible:!1}},C=function(e,t){return{className:m(e,t),border:b(),row:e,col:t,top:v(),right:v(),bottom:v(),left:v()}},y=function(e,t){return t.hasOwnProperty("border")&&(e.border=t.border),t.hasOwnProperty("top")&&(e.top=t.top),t.hasOwnProperty("right")&&(e.right=t.right),t.hasOwnProperty("bottom")&&(e.bottom=t.bottom),t.hasOwnProperty("left")&&(e.left=t.left),e},R=function(e){for(var t=document.querySelectorAll("."+e),n=0;n'+String.fromCharCode(10003)+""+e},M=function(e){this.getSettings().customBorders&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"borders",name:"Borders",submenu:{items:[{key:"borders:top",name:function(){var e="Top",t=O(this,"top");return t&&(e=_(e)),e},callback:function(){var e=O(this,"top");T.call(this,this.getSelectedRange(),"top",e)},disabled:!1},{key:"borders:right",name:function(){var e="Right",t=O(this,"right");return t&&(e=_(e)),e},callback:function(){var e=O(this,"right");T.call(this,this.getSelectedRange(),"right",e)},disabled:!1},{key:"borders:bottom",name:function(){var e="Bottom",t=O(this,"bottom");return t&&(e=_(e)),e},callback:function(){var e=O(this,"bottom");T.call(this,this.getSelectedRange(),"bottom",e)},disabled:!1},{key:"borders:left",name:function(){var e="Left",t=O(this,"left");return t&&(e=_(e)),e},callback:function(){var e=O(this,"left");T.call(this,this.getSelectedRange(),"left",e)},disabled:!1},{key:"borders:no_borders",name:"Remove border(s)",callback:function(){T.call(this,this.getSelectedRange(),"noBorders")},disabled:function(){return!O(this)}}]}}))};Handsontable.hooks.add("beforeInit",d),Handsontable.hooks.add("afterContextMenuDefaultOptions",M),Handsontable.hooks.add("afterInit",function(){var e=this.getSettings().customBorders;if(e){for(var t=0;tthis.boundaries.bottom&&(o=t-this.boundaries.bottom),ethis.boundaries.right&&(n=e-this.boundaries.right),this.callback(n,o)};var l,a=function(e){e.dragToScrollListening=!1;var t=e.view.wt.wtTable.holder;l=new o,t!==window&&(l.setBoundaries(t.getBoundingClientRect()),l.setCallback(function(e,n){0>e?t.scrollLeft-=50:e>0&&(t.scrollLeft+=50),0>n?t.scrollTop-=20:n>0&&(t.scrollTop+=20)}),e.dragToScrollListening=!0)};Handsontable.hooks.add("afterInit",function(){var e=this,t=s(this);t.addEventListener(document,"mouseup",function(){e.dragToScrollListening=!1}),t.addEventListener(document,"mousemove",function(t){e.dragToScrollListening&&l.check(t.clientX,t.clientY)})}),Handsontable.hooks.add("afterDestroy",function(){s(this).clear()}),Handsontable.hooks.add("afterOnCellMouseDown",function(){a(this)}),Handsontable.hooks.add("afterOnCellCornerMouseDown",function(){a(this)}),Handsontable.plugins.DragToScroll=o},{eventManager:40,plugins:55}],74:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnFreeze:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,l=function(e){$traceurRuntime.superConstructor(a).call(this,e)},a=l;$traceurRuntime.createClass(l,{isEnabled:function(){return!!this.hot.getSettings().manualColumnFreeze},enablePlugin:function(){var e=this;this.enabled||(this.addHook("modifyCol",function(t){return e.onModifyCol(t)}),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addContextMenuEntry(t)}),$traceurRuntime.superGet(this,a.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,a.prototype,"disablePlugin").call(this)},init:function(){$traceurRuntime.superGet(this,a.prototype,"init").call(this),"undefined"==typeof this.hot.manualColumnPositionsPluginUsages?this.hot.manualColumnPositionsPluginUsages=["manualColumnFreeze"]:this.hot.manualColumnPositionsPluginUsages.push("manualColumnFreeze"),this.fixedColumnsCount=this.hot.getSettings().fixedColumnsLeft},onModifyCol:function(e){return this.hot.manualColumnPositionsPluginUsages.length>1?e:this.getModifiedColumnIndex(e)},getModifiedColumnIndex:function(e){return this.hot.manualColumnPositions[e]},addContextMenuEntry:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"freeze_column",name:function(){var e=t.hot.getSelected()[1];return e>t.fixedColumnsCount-1?"Freeze this column":"Unfreeze this column"},disabled:function(){var e=t.hot.getSelected();return e[1]!==e[3]},callback:function(){var e=t.hot.getSelected()[1];e>t.fixedColumnsCount-1?t.freezeColumn(e):t.unfreezeColumn(e)}})},freezeColumn:function(e){if(!(e<=this.fixedColumnsCount-1)){var t=this.getModifiedColumnIndex(e)||e;this.checkPositionData(t),this.modifyColumnOrder(t,e,null,"freeze"),this.addFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},unfreezeColumn:function(e){if(!(e>this.fixedColumnsCount-1)){var t=this.getBestColumnReturnPosition(e),n=this.getModifiedColumnIndex(e)||e;this.checkPositionData(n),this.modifyColumnOrder(n,e,t,"unfreeze"),this.removeFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},addFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount+1}),this.fixedColumnsCount++},removeFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount-1}),this.fixedColumnsCount--},checkPositionData:function(e){this.hot.manualColumnPositions&&0!==this.hot.manualColumnPositions.length||this.hot.manualColumnPositions||(this.hot.manualColumnPositions=[]),e?this.hot.manualColumnPositions[e]||this.createPositionData(e+1):this.createPositionData(this.hot.countCols())},createPositionData:function(e){if(this.hot.manualColumnPositions.lengtht;t++)this.hot.manualColumnPositions[t]=t; -},modifyColumnOrder:function(e,t,n,o){null==n&&(n=e),"freeze"===o?this.hot.manualColumnPositions.splice(this.fixedColumnsCount,0,this.hot.manualColumnPositions.splice(t,1)[0]):"unfreeze"===o&&this.hot.manualColumnPositions.splice(n,0,this.hot.manualColumnPositions.splice(t,1)[0])},getBestColumnReturnPosition:function(e){for(var t=this.fixedColumnsCount,n=this.getModifiedColumnIndex(t),o=this.getModifiedColumnIndex(e);o>n;)t++,n=this.getModifiedColumnIndex(t);return t-1}},{},i),s("manualColumnFreeze",l)},{_base:56,plugins:55}],75:[function(e,t,n){"use strict";function o(){function e(e){p=this,m=e;var t=this.view.wt.wtTable.getCoords(e).col;if(t>=0){f=t;var n=m.getBoundingClientRect();a=n.left,w.style.top=n.top+"px",w.style.left=a+"px",p.rootElement.appendChild(w)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?w.style.left=n.left+n.width-o+"px":w.style.left=n.left+"px"}function n(){var e=this;u(w,"active"),u(v,"active");var t=m.getBoundingClientRect();v.style.width=t.width+"px",v.style.height=e.view.maximumVisibleElementHeight(0)+"px",v.style.top=w.style.top,v.style.left=a+"px",e.rootElement.appendChild(v)}function o(e){v.style.left=a+e+"px"}function r(){d(w,"active"),d(v,"active")}var i,s,l,a,f,p,m,w=document.createElement("DIV"),v=document.createElement("DIV"),b=h(this);w.className="manualColumnMover",v.className="manualColumnMoverGuide";var C=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualColumnPositions",e.manualColumnPositions)},y=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualColumnPositions",t),t.value},R=function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,R(e)):!1},E=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:E(e.parentNode):null},S=function(){var a,u=this;b.addEventListener(u.rootElement,"mouseover",function(n){if(R(n.target)){var o=E(n.target);if(o)if(a){var r=u.view.wt.wtTable.getCoords(o).col;r>=0&&(s=r,t(n.target,s-i))}else e.call(u,o)}}),b.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualColumnMover")&&(l=g(e),n.call(u),a=u,i=f,s=f)}),b.addEventListener(window,"mousemove",function(e){a&&o(g(e)-l)}),b.addEventListener(window,"mouseup",function(t){a&&(r(),a=!1,O(u.manualColumnPositions,u.countCols()),u.manualColumnPositions.splice(s,0,u.manualColumnPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeColumnMove",i,s),u.forceFullRender=!0,u.view.render(),C.call(u),Handsontable.hooks.run(u,"afterColumnMove",i,s),e.call(u,m))}),u.addHook("afterDestroy",T)},T=function(){b.clear()},O=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualColumnPositions=[]},this.init=function(e){var t=this,n=!!this.getSettings().manualColumnMove;if(n){var o=this.getSettings().manualColumnMove,r=y.call(t);"undefined"!=typeof r?this.manualColumnPositions=r:Array.isArray(o)?this.manualColumnPositions=o:this.manualColumnPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===b.context.eventListeners.length)&&("undefined"==typeof t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages=["manualColumnMove"]:t.manualColumnPositionsPluginUsages.push("manualColumnMove"),S.call(this),this.manualColumnPositions.length>0&&(this.forceFullRender=!0,this.render()))}else{var i=t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(T.call(this),this.manualColumnPositions=[],t.manualColumnPositionsPluginUsages[i]=void 0)}},this.modifyCol=function(e){return this.getSettings().manualColumnMove?("undefined"==typeof this.manualColumnPositions[e]&&O(this.manualColumnPositions,e+1),this.manualColumnPositions[e]):e},this.afterRemoveCol=function(e,t){if(this.getSettings().manualColumnMove){var n,o=this.manualColumnPositions;n=o.splice(e,t),o=o.map(function(e){var t,o=e;for(t=0;tn[t]&&o--;return o}),this.manualColumnPositions=o}},this.afterCreateCol=function(e,t){if(this.getSettings().manualColumnMove){var n=this.manualColumnPositions;if(n.length){for(var o=[],r=0;t>r;r++)o.push(e+r);e>=n.length?n.concat(o):(n=n.map(function(n){return n>=e?n+t:n}),n.splice.apply(n,[e,0].concat(o))),this.manualColumnPositions=n}}}}Object.defineProperties(n,{ManualColumnMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=a.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=f.pageX,p=(f.pageY,(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",p.beforeInit),Handsontable.hooks.add("afterInit",function(){p.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){p.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyCol",p.modifyCol),Handsontable.hooks.add("afterRemoveCol",p.afterRemoveCol),Handsontable.hooks.add("afterCreateCol",p.afterCreateCol),Handsontable.hooks.register("beforeColumnMove"),Handsontable.hooks.register("afterColumnMove")},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],76:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnResize:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=g.pageX,m=(g.pageY,(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin),w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.currentTH=null,this.currentCol=null,this.currentWidth=null,this.newSize=null,this.startY=null,this.startWidth=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualColumnWidths=[],c(this.handle,"manualColumnResizer"),c(this.guide,"manualColumnResizerGuide")},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return this.hot.getSettings().manualColumnResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualColumnWidths=[];var t=this.hot.getSettings().manualColumnResize,n=this.loadManualColumnWidths();this.addHook("modifyColWidth",function(t,n){return e.onModifyColWidth(t,n)}),"undefined"!=typeof n?this.manualColumnWidths=n:Array.isArray(t)?this.manualColumnWidths=t:this.manualColumnWidths=[],Handsontable.hooks.register("beforeColumnResize"),Handsontable.hooks.register("afterColumnResize"),this.bindEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualColumnResize;Array.isArray(e)?this.manualColumnWidths=e:this.manualColumnWidths=[]},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},saveManualColumnWidths:function(){this.hot.runHooks("persistentStateSave","manualColumnWidths",this.manualColumnWidths)},loadManualColumnWidths:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualColumnWidths",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).col;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentCol=t,this.startOffset=n.left-6,this.startWidth=parseInt(n.width,10),this.handle.style.top=n.top+"px",this.handle.style.left=this.startOffset+this.startWidth+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.left=this.startOffset+this.currentWidth+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.height=this.hot.view.maximumVisibleElementHeight(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.left=this.handle.style.left},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfColumnHeader:function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfColumnHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfColumnHeader(e.target)){var t=this.getTHFromTargetElement(e.target);if(!t)return;var n=t.getAttribute("colspan");!t||null!==n&&1!==n||this.pressed||this.setupHandlePosition(t)}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualColumnResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null===this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startX=p(e),this.newSize=this.startWidth)},onMouseMove:function(e){this.pressed&&(this.currentWidth=this.startWidth+(p(e)-this.startX),this.newSize=this.setManualSize(this.currentCol,this.currentWidth),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startWidth&&(this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return t=Math.max(t,20),e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=t,t},onModifyColWidth:function(e,t){return this.enabled&&(t=this.hot.runHooks("modifyCol",t),this.hot.getSettings().manualColumnResize&&this.manualColumnWidths[t])?this.manualColumnWidths[t]:e}},{},a),m("manualColumnResize",w)},{"_base.js":56,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],77:[function(e,t,n){"use strict";function o(){function e(e){var t=this;p=e;var n=this.view.wt.wtTable.getCoords(e).row;if(n>=0){f=n;var o=p.getBoundingClientRect();a=o.top,m.style.top=a+"px",m.style.left=o.left+"px",t.rootElement.appendChild(m)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?m.style.top=n.top+n.height-o+"px":m.style.top=n.top+"px"}function n(){var e=this;u(m,"active"),u(w,"active");var t=p.getBoundingClientRect();w.style.width=e.view.maximumVisibleElementWidth(0)+"px",w.style.height=t.height+"px",w.style.top=a+"px",w.style.left=m.style.left,e.rootElement.appendChild(w)}function o(e){w.style.top=a+e+"px"}function r(){d(m,"active"),d(w,"active")}var i,s,l,a,f,p,m=document.createElement("DIV"),w=document.createElement("DIV"),v=h(this);m.className="manualRowMover",w.className="manualRowMoverGuide";var b=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualRowPositions",e.manualRowPositions)},C=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualRowPositions",t),t.value},y=function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,y(e)):!1},R=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:R(e.parentNode):null},E=function(){var a,u=this;v.addEventListener(u.rootElement,"mouseover",function(n){if(y(n.target)){var o=R(n.target);o&&(a?(s=u.view.wt.wtTable.getCoords(o).row,t(o,s-i)):e.call(u,o))}}),v.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualRowMover")&&(l=g(e),n.call(u),a=u,i=f,s=f)}),v.addEventListener(window,"mousemove",function(e){a&&o(g(e)-l)}),v.addEventListener(window,"mouseup",function(t){a&&(r(),a=!1,T(u.manualRowPositions,u.countRows()),u.manualRowPositions.splice(s,0,u.manualRowPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeRowMove",i,s),u.forceFullRender=!0,u.view.render(),b.call(u),Handsontable.hooks.run(u,"afterRowMove",i,s),e.call(u,p))}),u.addHook("afterDestroy",S)},S=function(){v.clear()},T=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualRowPositions=[]},this.init=function(e){var t=this,n=!!t.getSettings().manualRowMove;if(n){var o=t.getSettings().manualRowMove,r=C.call(t);"undefined"==typeof t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages=["manualColumnMove"]:t.manualRowPositionsPluginUsages.push("manualColumnMove"),"undefined"!=typeof r?this.manualRowPositions=r:Array.isArray(o)?this.manualRowPositions=o:this.manualRowPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===v.context.eventListeners.length)&&(E.call(this),this.manualRowPositions.length>0&&(t.forceFullRender=!0,t.render()))}else{var i=t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(S.call(this),t.manualRowPositions=[],t.manualRowPositionsPluginUsages[i]=void 0)}},this.modifyRow=function(e){var t=this;return t.getSettings().manualRowMove?("undefined"==typeof t.manualRowPositions[e]&&T(this.manualRowPositions,e+1),t.manualRowPositions[e]):e}}Object.defineProperties(n,{ManualRowMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=a.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=(f.pageX,f.pageY),p=((l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",p.beforeInit),Handsontable.hooks.add("afterInit",function(){p.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){p.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyRow",p.modifyRow),Handsontable.hooks.register("beforeRowMove"),Handsontable.hooks.register("afterRowMove")},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],78:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualRowResize:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=(g.pageX,g.pageY),m=(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.currentTH=null,this.currentRow=null,this.currentHeight=null,this.newSize=null,this.startY=null,this.startHeight=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualRowHeights=[],c(this.handle,"manualRowResizer"),c(this.guide,"manualRowResizerGuide")},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return this.hot.getSettings().manualRowResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualRowHeights=[];var t=this.hot.getSettings().manualRowResize,n=this.loadManualRowHeights();"undefined"!=typeof n?this.manualRowHeights=n:Array.isArray(t)?this.manualRowHeights=t:this.manualRowHeights=[],this.addHook("modifyRowHeight",function(t,n){return e.onModifyRowHeight(t,n)}),Handsontable.hooks.register("beforeRowResize"),Handsontable.hooks.register("afterRowResize"),this.bindEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualRowResize;Array.isArray(e)?this.manualRowHeights=e:this.manualRowHeights=[]},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},saveManualRowHeights:function(){this.hot.runHooks("persistentStateSave","manualRowHeights",this.manualRowHeights)},loadManualRowHeights:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualRowHeights",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).row;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentRow=t,this.startOffset=n.top-6,this.startHeight=parseInt(n.height,10),this.handle.style.left=n.left+"px",this.handle.style.top=this.startOffset+this.startHeight+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.top=this.startOffset+this.currentHeight+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.width=this.hot.view.maximumVisibleElementWidth(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.top=this.handle.style.top},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfRowHeader:function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfRowHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfRowHeader(e.target)){var t=this.getTHFromTargetElement(e.target);t&&(this.pressed||this.setupHandlePosition(t))}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualRowResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null==this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startY=p(e),this.newSize=this.startHeight)},onMouseMove:function(e){this.pressed&&(this.currentHeight=this.startHeight+(p(e)-this.startY),this.newSize=this.setManualSize(this.currentRow,this.currentHeight),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startHeight&&(this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualRowHeights(),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return e=this.hot.runHooks("modifyRow",e),this.manualRowHeights[e]=t,t},onModifyRowHeight:function(e,t){if(this.enabled){var n=this.hot.getPlugin("autoRowSize"),o=n?n.heights[t]:null;t=this.hot.runHooks("modifyRow",t);var r=this.manualRowHeights[t];if(void 0!==r&&(r===o||r>(e||0)))return r}return e}},{},a),m("manualRowResize",w)},{"_base.js":56,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,plugins:55}],79:[function(e,t,n){"use strict";function o(){var e=[];return e.getInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row<=e&&this[n].row+this[n].rowspan-1>=e&&this[n].col<=t&&this[n].col+this[n].colspan-1>=t)return this[n]},e.setInfo=function(e){for(var t=0,n=this.length;n>t;t++)if(this[t].row===e.row&&this[t].col===e.col)return void(this[t]=e);this.push(e)},e.removeInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row===e&&this[n].col===t){this.splice(n,1);break}},e}function r(e){if(this.mergedCellInfoCollection=new o,Array.isArray(e))for(var t=0,n=e.length;n>t;t++)this.mergedCellInfoCollection.setInfo(e[t])}function i(e,t){var n=this.getSettings().mergeCells;if(n&&!this.selection.isMultiple()){var o=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);o&&(e[0]=o.row,e[1]=o.col,e[2]=o.row+o.rowspan-1,e[3]=o.col+o.colspan-1)}}function s(e,t){this.mergeCells&&this.mergeCells.shiftCollection("right",e,t)}function l(e,t){this.mergeCells&&this.mergeCells.shiftCollection("left",e,t)}function a(e,t){this.mergeCells&&this.mergeCells.shiftCollection("down",e,t)}function u(e,t){this.mergeCells&&this.mergeCells.shiftCollection("up",e,t)}Object.defineProperties(n,{MergeCells:{get:function(){return r}},__esModule:{value:!0}});var c,d,h,f,g,p=((c=e("plugins"),c&&c.__esModule&&c||{"default":c}).registerPlugin,(d=e("helpers/dom/event"),d&&d.__esModule&&d||{"default":d}).stopImmediatePropagation),m=(h=e("3rdparty/walkontable/src/cell/coords"),h&&h.__esModule&&h||{"default":h}).WalkontableCellCoords,w=(f=e("3rdparty/walkontable/src/cell/range"),f&&f.__esModule&&f||{"default":f}).WalkontableCellRange,v=(g=e("3rdparty/walkontable/src/table"),g&&g.__esModule&&g||{"default":g}).WalkontableTable;r.prototype.canMergeRange=function(e){return!e.isSingle()},r.prototype.mergeRange=function(e){if(this.canMergeRange(e)){var t=e.getTopLeftCorner(),n=e.getBottomRightCorner(),o={};o.row=t.row,o.col=t.col,o.rowspan=n.row-t.row+1,o.colspan=n.col-t.col+1,this.mergedCellInfoCollection.setInfo(o)}},r.prototype.mergeOrUnmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.from.row,e.from.col);t?this.unmergeSelection(e.from):this.mergeSelection(e)},r.prototype.mergeSelection=function(e){this.mergeRange(e)},r.prototype.unmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.row,e.col);this.mergedCellInfoCollection.removeInfo(t.row,t.col)},r.prototype.applySpanProperties=function(e,t,n){var o=this.mergedCellInfoCollection.getInfo(t,n);o?o.row===t&&o.col===n?(e.setAttribute("rowspan",o.rowspan),e.setAttribute("colspan",o.colspan)):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="none"):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"))},r.prototype.modifyTransform=function(e,t,n){var o=function(e,t){return t.row>=e.row&&t.row<=e.row+e.rowspan-1?!0:!1},r=function(e,t){return t.col>=e.col&&t.col<=e.col+e.colspan-1?!0:!1},i=function(e){return new m(t.to.row+e.row,t.to.col+e.col)},s={row:n.row,col:n.col};if("modifyTransformStart"==e){this.lastDesiredCoords||(this.lastDesiredCoords=new m(null,null));for(var l,a=new m(t.highlight.row,t.highlight.col),u=this.mergedCellInfoCollection.getInfo(a.row,a.col),c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var h=this.mergedCellInfoCollection[c];if(h=new m(h.row+h.rowspan-1,h.col+h.colspan-1),t.includes(h)){l=!0;break}}if(u){var f=new m(u.row,u.col),g=new m(u.row+u.rowspan-1,u.col+u.colspan-1),p=new w(f,f,g);p.includes(this.lastDesiredCoords)||(this.lastDesiredCoords=new m(null,null)),s.row=this.lastDesiredCoords.row?this.lastDesiredCoords.row-a.row:s.row,s.col=this.lastDesiredCoords.col?this.lastDesiredCoords.col-a.col:s.col,n.row>0?s.row=u.row+u.rowspan-1-a.row+n.row:n.row<0&&(s.row=a.row-u.row+n.row),n.col>0?s.col=u.col+u.colspan-1-a.col+n.col:n.col<0&&(s.col=a.col-u.col+n.col)}var v=new m(t.highlight.row+s.row,t.highlight.col+s.col),b=this.mergedCellInfoCollection.getInfo(v.row,v.col);b&&(this.lastDesiredCoords=v,s={row:b.row-a.row,col:b.col-a.col})}else if("modifyTransformEnd"==e)for(var c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var C=this.mergedCellInfoCollection[c],f=new m(C.row,C.col),g=new m(C.row+C.rowspan-1,C.col+C.colspan-1),y=new w(f,f,g),R=t.getBordersSharedWith(y);if(y.isEqual(t))t.setDirection("NW-SE");else if(R.length>0){var E=t.highlight.isEqual(y.from);R.indexOf("top")>-1?t.to.isSouthEastOf(y.from)&&E?t.setDirection("NW-SE"):t.to.isSouthWestOf(y.from)&&E&&t.setDirection("NE-SW"):R.indexOf("bottom")>-1&&(t.to.isNorthEastOf(y.from)&&E?t.setDirection("SW-NE"):t.to.isNorthWestOf(y.from)&&E&&t.setDirection("SE-NW"))}var v=i(s),S=o(C,v),T=r(C,v);t.includesRange(y)&&(y.includes(v)||S||T)&&(S&&(s.row<0?s.row-=C.rowspan-1:s.row>0&&(s.row+=C.rowspan-1)),T&&(s.col<0?s.col-=C.colspan-1:s.col>0&&(s.col+=C.colspan-1)))}0!==s.row&&(n.row=s.row),0!==s.col&&(n.col=s.col)},r.prototype.shiftCollection=function(e,t,n){var o=[0,0];switch(e){case"right":o[0]+=1;break;case"left":o[0]-=1;break;case"down":o[1]+=1;break;case"up":o[1]-=1}for(var r=0;rn;n++)e.mergeCells.mergedCellInfoCollection.setInfo(t[n])}else e.mergeCells=new r(t);else e.mergeCells&&(e.mergeCells.mergedCellInfoCollection=new o)},R=function(e){if(this.mergeCells){var t=(e.ctrlKey||e.metaKey)&&!e.altKey;t&&77===e.keyCode&&(this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render(),p(e))}},E=function(e){this.getSettings().mergeCells&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"mergeCells",name:function(){var e=this.getSelected(),t=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);return t?"Unmerge cells":"Merge cells"},callback:function(){this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render()},disabled:function(){return!1}}))},S=function(e,t,n,o,r,i){this.mergeCells&&this.mergeCells.applySpanProperties(e,t,n)},T=function(e){return function(t){var n=this.getSettings().mergeCells;if(n){var o=this.getSelectedRange();if(this.mergeCells.modifyTransform(e,o,t),"modifyTransformEnd"===e){var r=this.countRows(),i=this.countCols();o.from.row<0?o.from.row=0:o.from.row>0&&o.from.row>=r&&(o.from.row=o.from-1),o.from.col<0?o.from.col=0:o.from.col>0&&o.from.col>=i&&(o.from.col=i-1)}}}},O=function(e){this.lastDesiredCoords=null;var t=this.getSettings().mergeCells;if(t){var n=this.getSelectedRange();n.highlight=new m(n.highlight.row,n.highlight.col),n.to=e;var o=!1;do{o=!1;for(var r=0,i=this.mergeCells.mergedCellInfoCollection.length;i>r;r++){var s=this.mergeCells.mergedCellInfoCollection[r],l=new m(s.row,s.col),a=new m(s.row+s.rowspan-1,s.col+s.colspan-1),u=new w(l,l,a);n.expandByRange(u)&&(e.row=n.to.row,e.col=n.to.col,o=!0)}}while(o)}},_=function(e,t){if(t&&"area"==t){var n=this.getSettings().mergeCells;if(n)for(var o=this.getSelectedRange(),r=new w(o.from,o.from,o.from),i=new w(o.to,o.to,o.to),s=0,l=this.mergeCells.mergedCellInfoCollection.length;l>s;s++){var a=this.mergeCells.mergedCellInfoCollection[s],u=new m(a.row,a.col),c=new m(a.row+a.rowspan-1,a.col+a.colspan-1),d=new w(u,u,c);r.expandByRange(d)&&(e[0]=r.from.row,e[1]=r.from.col),i.expandByRange(d)&&(e[2]=i.from.row,e[3]=i.from.col)}}},M=function(e,t,n){var o=this.getSettings().mergeCells;if(o){var r=this.mergeCells.mergedCellInfoCollection.getInfo(e,t);!r||r.row==e&&r.col==t||(n.copyable=!1)}},H=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countCols(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(e.startRow,r),n&&n.rowe.endRow)return e.endRow=i,H.call(this,e)}}},k=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countRows(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(r,e.startColumn),n&&n.cole.endColumn)return e.endColumn=i,k.call(this,e)}}},A=function(e){if(e&&this.mergeCells){var t=this.mergeCells.mergedCellInfoCollection,n=this.getSelectedRange();for(var o in t)if(n.highlight.row==t[o].row&&n.highlight.col==t[o].col&&n.to.row==t[o].row+t[o].rowspan-1&&n.to.col==t[o].col+t[o].colspan-1)return!1}return e};Handsontable.hooks.add("beforeInit",b),Handsontable.hooks.add("afterInit",C),Handsontable.hooks.add("afterUpdateSettings",y),Handsontable.hooks.add("beforeKeyDown",R),Handsontable.hooks.add("modifyTransformStart",T("modifyTransformStart")),Handsontable.hooks.add("modifyTransformEnd",T("modifyTransformEnd")),Handsontable.hooks.add("beforeSetRangeEnd",O),Handsontable.hooks.add("beforeDrawBorders",_),Handsontable.hooks.add("afterIsMultipleSelection",A),Handsontable.hooks.add("afterRenderer",S),Handsontable.hooks.add("afterContextMenuDefaultOptions",E),Handsontable.hooks.add("afterGetCellMeta",M),Handsontable.hooks.add("afterViewportRowCalculatorOverride",H),Handsontable.hooks.add("afterViewportColumnCalculatorOverride",k),Handsontable.hooks.add("afterAutofillApplyValues",i),Handsontable.hooks.add("afterCreateCol",s),Handsontable.hooks.add("afterRemoveCol",l),Handsontable.hooks.add("afterCreateRow",a),Handsontable.hooks.add("afterRemoveRow",u),Handsontable.MergeCells=r},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":45,plugins:55}],80:[function(e,t,n){"use strict";Object.defineProperties(n,{MultipleSelectionHandles:{get:function(){return g}},__esModule:{value:!0}});var o,r,i,s,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=l.getWindowScrollTop,u=l.hasClass,c=l.getWindowScrollLeft,d=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,g=function(e){$traceurRuntime.superConstructor(p).call(this,e),this.dragged=[],this.eventManager=null,this.lastSetCell=null},p=g;$traceurRuntime.createClass(g,{isEnabled:function(){return Handsontable.mobileBrowser},enablePlugin:function(){this.enabled||(this.eventManager||(this.eventManager=new h(this)),this.registerListeners(),$traceurRuntime.superGet(this,p.prototype,"enablePlugin").call(this))},registerListeners:function(){function e(e){if(1===t.dragged.length)return t.dragged.splice(0,t.dragged.length),!0;var n=t.dragged.indexOf(e);return-1==n?!1:void(0===n?t.dragged=t.dragged.slice(0,1):1==n&&(t.dragged=t.dragged.slice(-1)))}var t=this;this.eventManager.addEventListener(this.hot.rootElement,"touchstart",function(e){ -var n;return u(e.target,"topLeftSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("topLeft"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):u(e.target,"bottomRightSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("bottomRight"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchend",function(n){return u(n.target,"topLeftSelectionHandle-HitArea")?(e.call(t,"topLeft"),t.touchStartRange=void 0,n.preventDefault(),!1):u(n.target,"bottomRightSelectionHandle-HitArea")?(e.call(t,"bottomRight"),t.touchStartRange=void 0,n.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchmove",function(e){var n,o,r,i,s,l,u,d=a(),h=c();0!==t.dragged.length&&(n=document.elementFromPoint(e.touches[0].screenX-h,e.touches[0].screenY-d),n&&n!==t.lastSetCell&&(("TD"==n.nodeName||"TH"==n.nodeName)&&(o=t.hot.getCoords(n),-1==o.col&&(o.col=0),r=t.hot.getSelectedRange(),i=r.getWidth(),s=r.getHeight(),l=r.getDirection(),1==i&&1==s&&t.hot.selection.setRangeEnd(o),u=t.getCurrentRangeCoords(r,o,t.touchStartRange.direction,l,t.dragged[0]),null!==u.start&&t.hot.selection.setRangeStart(u.start),t.hot.selection.setRangeEnd(u.end),t.lastSetCell=n),e.preventDefault()))})},getCurrentRangeCoords:function(e,t,n,o,r){var i=e.getTopLeftCorner(),s=e.getBottomRightCorner(),l=e.getBottomLeftCorner(),a=e.getTopRightCorner(),u={start:null,end:null};switch(n){case"NE-SW":switch(o){case"NE-SW":case"NW-SE":u="topLeft"==r?{start:new WalkontableCellCoords(t.row,e.highlight.col),end:new WalkontableCellCoords(l.row,t.col)}:{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,i.col)};break;case"SE-NW":"bottomRight"==r&&(u={start:new WalkontableCellCoords(s.row,t.col),end:new WalkontableCellCoords(t.row,i.col)})}break;case"NW-SE":switch(o){case"NE-SW":"topLeft"==r?u={start:t,end:l}:u.end=t;break;case"NW-SE":"topLeft"==r?u={start:t,end:s}:u.end=t;break;case"SE-NW":"topLeft"==r?u={start:t,end:i}:u.end=t;break;case"SW-NE":"topLeft"==r?u={start:t,end:a}:u.end=t}break;case"SW-NE":switch(o){case"NW-SE":u="bottomRight"==r?{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(l.row,t.col)}:{start:new WalkontableCellCoords(i.row,t.col),end:new WalkontableCellCoords(t.row,s.col)};break;case"SW-NE":u="topLeft"==r?{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,s.col)}:{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(i.row,t.col)};break;case"SE-NW":"bottomRight"==r?u={start:new WalkontableCellCoords(t.row,a.col),end:new WalkontableCellCoords(i.row,t.col)}:"topLeft"==r&&(u={start:l,end:t})}break;case"SE-NW":switch(o){case"NW-SE":case"NE-SW":case"SW-NE":"topLeft"==r&&(u.end=t);break;case"SE-NW":"topLeft"==r?u.end=t:u={start:t,end:i}}}return u},isDragged:function(){return this.dragged.length>0}},{},d),f("multipleSelectionHandles",g)},{_base:56,eventManager:40,"helpers/dom/element":44,plugins:55}],81:[function(e,t,n){"use strict";function o(){}function r(){var e=this,t=e.getSettings().observeChanges;t?(e.observer&&l.call(e),i.call(e),u.call(e)):t||l.call(e)}function i(){var e=this;e.observeChangesActive=!0,e.pauseObservingChanges=function(){e.observeChangesActive=!1},e.resumeObservingChanges=function(){e.observeChangesActive=!0},e.observedData=e.getData(),e.observer=g.observe(e.observedData,function(t){e.observeChangesActive&&(s.call(e,t),e.render()),e.runHooks("afterChangesObserved")})}function s(e){function t(e){var t;return t=o(e),t=n(t)}function n(e){var t=[];return e.filter(function(e){var n=r(e.path);if(-1!=["add","remove"].indexOf(e.op)&&!isNaN(n.col)){if(-1!=t.indexOf(n.col))return!1;t.push(n.col)}return!0})}function o(e){return e.filter(function(e){return!/[\/]length/gi.test(e.path)})}function r(e){var t=e.match(/^\/(\d+)\/?(.*)?$/);return{row:parseInt(t[1],10),col:/^\d*$/.test(t[2])?parseInt(t[2],10):t[2]}}for(var i=this,s=t(e),l=0,a=s.length;a>l;l++){var u=s[l],c=r(u.path);switch(u.op){case"add":isNaN(c.col)?i.runHooks("afterCreateRow",c.row):i.runHooks("afterCreateCol",c.col);break;case"remove":isNaN(c.col)?i.runHooks("afterRemoveRow",c.row,1):i.runHooks("afterRemoveCol",c.col,1);break;case"replace":i.runHooks("afterChange",[c.row,c.col,null,u.value],"external")}}}function l(){var e=this;e.observer&&(a.call(e),c.call(e))}function a(){var e=this;g.unobserve(e.observedData,e.observer),delete e.observedData,delete e.observeChangesActive,delete e.pauseObservingChanges,delete e.resumeObservingChanges}function u(){var e=this;e.addHook("afterDestroy",l),e.addHook("afterCreateRow",d),e.addHook("afterRemoveRow",d),e.addHook("afterCreateCol",d),e.addHook("afterRemoveCol",d),e.addHook("afterChange",function(e,t){"loadData"!=t&&d.call(this)})}function c(){var e=this;e.removeHook("afterDestroy",l),e.removeHook("afterCreateRow",d),e.removeHook("afterRemoveRow",d),e.removeHook("afterCreateCol",d),e.removeHook("afterRemoveCol",d),e.removeHook("afterChange",d)}function d(){var e=this;e.pauseObservingChanges(),e.addHookOnce("afterChangesObserved",function(){e.resumeObservingChanges()})}Object.defineProperties(n,{ObserveChanges:{get:function(){return o}},__esModule:{value:!0}});var h,f,g=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("jsonpatch"),f&&f.__esModule&&f||{"default":f})["default"]);Handsontable.hooks.add("afterLoadData",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterChangesObserved")},{jsonpatch:"jsonpatch",plugins:55}],82:[function(e,t,n){"use strict";function o(e){var t,n=function(){window.localStorage[e+"__persistentStateKeys"]=JSON.stringify(t)},o=function(){var n=window.localStorage[e+"__persistentStateKeys"],o="string"==typeof n?JSON.parse(n):void 0;t=o?o:[]},r=function(){t=[],n()};o(),this.saveValue=function(o,r){window.localStorage[e+"_"+o]=JSON.stringify(r),-1==t.indexOf(o)&&(t.push(o),n())},this.loadValue=function(t,n){t="undefined"==typeof t?n:t;var o=window.localStorage[e+"_"+t];return"undefined"==typeof o?void 0:JSON.parse(o)},this.reset=function(t){window.localStorage.removeItem(e+"_"+t)},this.resetAll=function(){for(var n=0;nl;l++)for(var a=0;i>a;a++){var u=e.getDataAtCell(l,a),c=e.getCellMeta(l,a),d=c.search.callback||n,h=c.search.queryMethod||o,f=h(t,u);if(f){var g={row:l,col:a,data:u};s.push(g)}d&&d(e,l,a,u,f)}return s}},Handsontable.Search.DEFAULT_CALLBACK=function(e,t,n,o,r){e.getCellMeta(t,n).isSearchResult=r},Handsontable.Search.DEFAULT_QUERY_METHOD=function(e,t){return"undefined"!=typeof e&&null!=e&&e.toLowerCase&&0!==e.length?"undefined"==typeof t||null==t?!1:-1!=t.toString().toLowerCase().indexOf(e.toLowerCase()):!1},Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS="htSearchResult",Handsontable.Search.global=function(){var e=Handsontable.Search.DEFAULT_CALLBACK,t=Handsontable.Search.DEFAULT_QUERY_METHOD,n=Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS;return{getDefaultCallback:function(){return e},setDefaultCallback:function(t){e=t},getDefaultQueryMethod:function(){return t},setDefaultQueryMethod:function(e){t=e},getDefaultSearchResultClass:function(){return n},setDefaultSearchResultClass:function(e){n=e}}}(),Handsontable.SearchCellDecorator=function(e,t,n,o,r,i,s){var u=null!==s.search&&"object"==typeof s.search&&s.search.searchResultClass||Handsontable.Search.global.getDefaultSearchResultClass();s.isSearchResult?l(t,u):a(t,u)};var h=d("base");c("base",function(e,t,n,o,r,i,s){h.apply(this,arguments),Handsontable.SearchCellDecorator.apply(this,arguments)}),Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/element":44,renderers:86}],84:[function(e,t,n){"use strict";Object.defineProperties(n,{TouchScroll:{get:function(){return d}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.addClass,a=s.removeClass,u=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}).registerPlugin,d=function(e){var t=this;$traceurRuntime.superConstructor(h).call(this,e),this.hot.addHook("afterInit",function(){return t.afterInit()}),this.hot.addHook("afterUpdateSettings",function(){return t.onAfterUpdateSettings()}),this.scrollbars=[],this.clones=[]},h=d;$traceurRuntime.createClass(d,{afterInit:function(){this.registerEvents(),this.onAfterUpdateSettings()},onAfterUpdateSettings:function(){var e=this;this.hot.addHookOnce("afterRender",function(){var t=e.hot.view.wt.wtOverlays;e.scrollbars=[],e.scrollbars.push(t.topOverlay),t.bottomOverlay.clone&&e.scrollbars.push(t.bottomOverlay),e.scrollbars.push(t.leftOverlay),t.topLeftCornerOverlay&&e.scrollbars.push(t.topLeftCornerOverlay),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.scrollbars.push(t.bottomLeftCornerOverlay),e.clones=[],t.topOverlay.needFullRender&&e.clones.push(t.topOverlay.clone.wtTable.holder.parentNode),t.bottomOverlay.needFullRender&&e.clones.push(t.bottomOverlay.clone.wtTable.holder.parentNode),t.leftOverlay.needFullRender&&e.clones.push(t.leftOverlay.clone.wtTable.holder.parentNode),t.topLeftCornerOverlay&&e.clones.push(t.topLeftCornerOverlay.clone.wtTable.holder.parentNode),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.clones.push(t.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode)})},registerEvents:function(){var e=this;this.hot.addHook("beforeTouchScroll",function(){return e.onBeforeTouchScroll()}),this.hot.addHook("afterMomentumScroll",function(){return e.onAfterMomentumScroll()})},onBeforeTouchScroll:function(){Handsontable.freezeOverlays=!0;for(var e=0,t=this.clones.length;t>e;e++)l(this.clones[e],"hide-tween")},onAfterMomentumScroll:function(){Handsontable.freezeOverlays=!1;for(var e=this,t=0,n=this.clones.length;n>t;t++)a(this.clones[t],"hide-tween");for(var o=0,r=this.clones.length;r>o;o++)l(this.clones[o],"show-tween");setTimeout(function(){for(var t=0,n=e.clones.length;n>t;t++)a(e.clones[t],"show-tween")},400);for(var i=0,s=this.scrollbars.length;s>i;i++)this.scrollbars[i].refresh(),this.scrollbars[i].resetFixedPosition();this.hot.view.wt.wtOverlays.syncScrollWithMaster()}},{},u),c("touchScroll",d)},{_base:56,"helpers/dom/element":44,plugins:55}],85:[function(e,t,n){"use strict";function o(){var e=this,t="undefined"==typeof e.getSettings().undo||e.getSettings().undo;t?e.undoRedo||(e.undoRedo=new Handsontable.UndoRedo(e),s(e),e.addHook("beforeKeyDown",r),e.addHook("afterChange",i)):e.undoRedo&&(delete e.undoRedo,l(e),e.removeHook("beforeKeyDown",r),e.removeHook("afterChange",i))}function r(e){var t=this,n=(e.ctrlKey||e.metaKey)&&!e.altKey;n&&(89===e.keyCode||e.shiftKey&&90===e.keyCode?(t.undoRedo.redo(),f(e)):90===e.keyCode&&(t.undoRedo.undo(),f(e)))}function i(e,t){var n=this;return"loadData"==t?n.undoRedo.clear():void 0}function s(e){e.undo=function(){return e.undoRedo.undo()},e.redo=function(){return e.undoRedo.redo()},e.isUndoAvailable=function(){return e.undoRedo.isUndoAvailable()},e.isRedoAvailable=function(){return e.undoRedo.isRedoAvailable()},e.clearUndo=function(){return e.undoRedo.clear()}}function l(e){delete e.undo,delete e.redo,delete e.isUndoAvailable,delete e.isRedoAvailable,delete e.clearUndo}var a,u,c=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),d=c.inherit,h=c.deepClone,f=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}).stopImmediatePropagation;Handsontable.UndoRedo=function(e){var t=this;this.instance=e,this.doneActions=[],this.undoneActions=[],this.ignoreNewActions=!1,e.addHook("afterChange",function(e,n){if(e){var o=new Handsontable.UndoRedo.ChangeAction(e);t.done(o)}}),e.addHook("afterCreateRow",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateRowAction(e,n);t.done(r)}}),e.addHook("beforeRemoveRow",function(e,n){var o=t.instance.getData();e=(o.length+e)%o.length;var r=o.slice(e,e+n),i=new Handsontable.UndoRedo.RemoveRowAction(e,r);t.done(i)}),e.addHook("afterCreateCol",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateColumnAction(e,n);t.done(r)}}),e.addHook("beforeRemoveCol",function(n,o){var r=t.instance.getData();n=(t.instance.countCols()+n)%t.instance.countCols();for(var i=[],s=0,l=r.length;l>s;s++)i[s]=r[s].slice(n,n+o);var a;Array.isArray(e.getSettings().colHeaders)&&(a=e.getSettings().colHeaders.slice(n,n+i.length));var u=new Handsontable.UndoRedo.RemoveColumnAction(n,i,a);t.done(u)}),e.addHook("beforeCellAlignment",function(e,n,o,r){var i=new Handsontable.UndoRedo.CellAlignmentAction(e,n,o,r);t.done(i)})},Handsontable.UndoRedo.prototype.done=function(e){this.ignoreNewActions||(this.doneActions.push(e),this.undoneActions.length=0)},Handsontable.UndoRedo.prototype.undo=function(){if(this.isUndoAvailable()){var e=this.doneActions.pop();this.ignoreNewActions=!0;var t=this;e.undo(this.instance,function(){t.ignoreNewActions=!1,t.undoneActions.push(e)})}},Handsontable.UndoRedo.prototype.redo=function(){if(this.isRedoAvailable()){var e=this.undoneActions.pop();this.ignoreNewActions=!0;var t=this;e.redo(this.instance,function(){t.ignoreNewActions=!1,t.doneActions.push(e)})}},Handsontable.UndoRedo.prototype.isUndoAvailable=function(){return this.doneActions.length>0},Handsontable.UndoRedo.prototype.isRedoAvailable=function(){return this.undoneActions.length>0},Handsontable.UndoRedo.prototype.clear=function(){this.doneActions.length=0,this.undoneActions.length=0},Handsontable.UndoRedo.Action=function(){},Handsontable.UndoRedo.Action.prototype.undo=function(){},Handsontable.UndoRedo.Action.prototype.redo=function(){},Handsontable.UndoRedo.ChangeAction=function(e){this.changes=e},d(Handsontable.UndoRedo.ChangeAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.ChangeAction.prototype.undo=function(e,t){for(var n=h(this.changes),o=e.countEmptyRows(!0),r=e.countEmptyCols(!0),i=0,s=n.length;s>i;i++)n[i].splice(3,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"undo");for(var i=0,s=n.length;s>i;i++)e.getSettings().minSpareRows&&n[i][0]+1+e.getSettings().minSpareRows===e.countRows()&&o==e.getSettings().minSpareRows&&(e.alter("remove_row",parseInt(n[i][0]+1,10),e.getSettings().minSpareRows),e.undoRedo.doneActions.pop()),e.getSettings().minSpareCols&&n[i][1]+1+e.getSettings().minSpareCols===e.countCols()&&r==e.getSettings().minSpareCols&&(e.alter("remove_col",parseInt(n[i][1]+1,10),e.getSettings().minSpareCols),e.undoRedo.doneActions.pop())},Handsontable.UndoRedo.ChangeAction.prototype.redo=function(e,t){for(var n=h(this.changes),o=0,r=n.length;r>o;o++)n[o].splice(2,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"redo")},Handsontable.UndoRedo.CreateRowAction=function(e,t){this.index=e,this.amount=t},d(Handsontable.UndoRedo.CreateRowAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.CreateRowAction.prototype.undo=function(e,t){var n=e.countRows(),o=e.getSettings().minSpareRows;this.index>=n&&this.index-or;r++)n=e.getSourceDataAtRow(r),o=[this.index,0],Array.prototype.push.apply(o,this.data[r]),Array.prototype.splice.apply(n,o);"undefined"!=typeof this.headers&&(o=[this.index,0],Array.prototype.push.apply(o,this.headers),Array.prototype.splice.apply(e.getSettings().colHeaders,o)),e.addHookOnce("afterRender",t),e.render()},Handsontable.UndoRedo.RemoveColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount)},Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/event":45,"helpers/object":49}],86:[function(e,t,n){"use strict";function o(e,t){var n;a[e]=t,n=l(e)+"Renderer",Handsontable.renderers[n]=t,Handsontable[n]=t}function r(e){if("function"==typeof e)return e;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "renderer" parameter');if(!(e in a))throw Error('No editor registered under name "'+e+'"');return a[e]}function i(e){return e in a}Object.defineProperties(n,{registerRenderer:{get:function(){return o}},getRenderer:{get:function(){return r}},hasRenderer:{get:function(){return i}},__esModule:{value:!0}});var s,l=(s=e("helpers/string"),s&&s.__esModule&&s||{"default":s}).toUpperCaseFirst,a={};Handsontable.renderers=Handsontable.renderers||{},Handsontable.renderers.registerRenderer=o,Handsontable.renderers.getRenderer=r},{"helpers/string":51}],87:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){s.className&&(t.className?t.className=t.className+" "+s.className:t.className=s.className),s.readOnly&&l(t,s.readOnlyCellClassName),s.valid===!1&&s.invalidCellClassName?l(t,s.invalidCellClassName):a(t,s.invalidCellClassName),s.wordWrap===!1&&s.noWordWrapClassName&&l(t,s.noWordWrapClassName),!i&&s.placeholder&&l(t,s.placeholderCellClassName)}Object.defineProperties(n,{cellDecorator:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),l=s.addClass,a=s.removeClass,u=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}).registerRenderer;u("base",o),Handsontable.renderers.cellDecorator=o},{"helpers/dom/element":44,renderers:86}],88:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){var l=(m.cloneNode(!0),w.cloneNode(!0));if(f("text")(e,t,n,o,r,i,s),t.appendChild(l),u(t,"htAutocomplete"),t.firstChild||t.appendChild(document.createTextNode(String.fromCharCode(160))),!e.acArrowListener){var a=d(e);e.acArrowListener=function(r){c(r.target,"htAutocompleteArrow")&&e.view.wt.getSetting("onCellDblClick",null,new p(n,o),t)},a.addEventListener(e.rootElement,"mousedown",e.acArrowListener),e.addHookOnce("afterDestroy",function(){a.destroy()})}}Object.defineProperties(n,{autocompleteRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=(a.empty,(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager),h=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),f=h.getRenderer,g=h.registerRenderer,p=(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords,m=document.createElement("DIV");m.className="htAutocompleteWrapper";var w=document.createElement("DIV");w.className="htAutocompleteArrow",w.appendChild(document.createTextNode(String.fromCharCode(9660)));g("autocomplete",o)},{"3rdparty/walkontable/src/cell/coords":5,eventManager:40,"helpers/dom/element":44,renderers:86}],89:[function(e,t,n){"use strict";function o(e,t,n,o,l,a,u){function c(e){var t=[y.SPACE,y.ENTER,y.DELETE,y.BACKSPACE];-1===t.indexOf(e.keyCode)||T(e)||f(function(){S(e),e.preventDefault()}),(e.keyCode==y.SPACE||e.keyCode==y.ENTER)&&d(),(e.keyCode==y.DELETE||e.keyCode==y.BACKSPACE)&&d(!1)}function d(){var e=void 0!==arguments[0]?arguments[0]:null;f(function(t){for(var n=0,o=t.length;o>n;n++){if(m(t[n],_)&&null===e)return;h(t[n],e)}})}function h(e){var t=void 0!==arguments[1]?arguments[1]:null;null===t?e.checked=!e.checked:e.checked=t,b.fireEvent(e,"change")}function f(t){for(var n=e.getSelectedRange(),o=n.getTopLeftCorner(),r=n.getBottomRightCorner(),i=o.row;i<=r.row;i++)for(var s=o.col;s<=r.col;s++){var l=e.getCell(i,s),a=e.getCellMeta(i,s),u=l.querySelectorAll("input[type=checkbox]");u.length>0&&!a.readOnly&&t(u)}}var b=new v(e),C=r(),R=u.label,M=!1;if("undefined"==typeof u.checkedTemplate&&(u.checkedTemplate=!0),"undefined"==typeof u.uncheckedTemplate&&(u.uncheckedTemplate=!1),g(t),a===u.checkedTemplate||w(a,u.checkedTemplate)?C.checked=!0:a===u.uncheckedTemplate||w(a,u.uncheckedTemplate)?C.checked=!1:null===a?p(C,"noValue"):(C.style.display="none",p(C,_),M=!0),!M&&R){var H="";R.value?H="function"==typeof R.value?R.value.call(this,n,o,l,a):R.value:R.property&&(H=e.getDataAtRowProp(n,R.property));var k=i(H);"before"===R.position?k.appendChild(C):k.insertBefore(C,k.firstChild),C=k}t.appendChild(C),M&&t.appendChild(document.createTextNode("#bad-value#")),u.readOnly?b.addEventListener(C,"click",s):(b.addEventListener(C,"mousedown",E),b.addEventListener(C,"mouseup",E),b.addEventListener(C,"change",function(t){e.setDataAtRowProp(n,l,t.target.checked?u.checkedTemplate:u.uncheckedTemplate)})),O.has(e)||(O.set(e,!0),e.addHook("beforeKeyDown",c))}function r(){var e=document.createElement("input");return e.className="htCheckboxRendererInput",e.type="checkbox",e.setAttribute("autocomplete","off"),e.cloneNode(!1)}function i(e){var t=document.createElement("label");return t.className="htCheckboxRendererLabel",t.appendChild(document.createTextNode(e)),t.cloneNode(!0)}function s(e){e.preventDefault()}Object.defineProperties(n,{checkboxRenderer:{get:function(){return o}},__esModule:{value:!0}});var l,a,u,c,d,h,f=(l=e("helpers/dom/element"),l&&l.__esModule&&l||{"default":l}),g=f.empty,p=f.addClass,m=f.hasClass,w=(a=e("helpers/string"),a&&a.__esModule&&a||{"default":a}).equalsIgnoreCase,v=(u=e("eventManager"),u&&u.__esModule&&u||{"default":u}).EventManager,b=(c=e("renderers"),c&&c.__esModule&&c||{"default":c}),C=(b.getRenderer,b.registerRenderer),y=(d=e("helpers/unicode"),d&&d.__esModule&&d||{"default":d}).KEY_CODES,R=(h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),E=R.stopPropagation,S=R.stopImmediatePropagation,T=R.isImmediatePropagationStopped,O=new WeakMap,_="htBadValue";C("checkbox",o)},{eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45,"helpers/string":51,"helpers/unicode":52,renderers:86}],90:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,l){a("base").apply(this,arguments),s(t,i)}Object.defineProperties(n,{htmlRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}).fastInnerHTML,l=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}),a=l.getRenderer,u=l.registerRenderer;u("html",o)},{"helpers/dom/element":44,renderers:86}],91:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){f(i)&&("undefined"!=typeof s.language&&a.language(s.language),i=a(i).format(s.format||"0"),u(t,"htNumeric")),d("text")(e,t,n,o,r,i,s)}Object.defineProperties(n,{numericRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("numeral"),r&&r.__esModule&&r||{"default":r})["default"],u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).addClass,c=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),d=c.getRenderer,h=c.registerRenderer,f=(l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).isNumeric;h("numeric",o)},{"helpers/dom/element":44,"helpers/number":48,numeral:"numeral",renderers:86}],92:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,l){a("text").apply(this,arguments),i=t.innerHTML;var u,c=l.hashLength||i.length,d=l.hashSymbol||"*";for(u="";u.split(d).length-13?("function"==typeof o&&(e.__proto__=o),e.prototype=d(l(o),i(t))):e.prototype=t,f(e,"prototype",{configurable:!1,writable:!1}),h(e,i(n))}function l(e){if("function"==typeof e){var t=e.prototype;if(u(t)===t||null===t)return e.prototype;throw new c("super prototype must be an Object or null")}if(null===e)return null;throw new c("Super expression must either be null or a function, not "+typeof e+".")}function a(e,t,o){null!==p(t)&&n(e,t,"constructor",o)}var u=Object,c=TypeError,d=u.create,h=$traceurRuntime.defineProperties,f=$traceurRuntime.defineProperty,g=$traceurRuntime.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=$traceurRuntime.toProperty,w=Object,v=w.getOwnPropertyNames,b=w.getOwnPropertySymbols;$traceurRuntime.createClass=s,$traceurRuntime.defaultSuperCall=a,$traceurRuntime.superCall=n,$traceurRuntime.superConstructor=t,$traceurRuntime.superGet=o,$traceurRuntime.superSet=r}()},{}],95:[function(e,t,n){"use strict";function o(e){var t=this;this.eventManager=C(e),this.instance=e,this.settings=e.getSettings();var n=e.rootElement.getAttribute("style");n&&e.rootElement.setAttribute("data-originalstyle",n),d(e.rootElement,"handsontable");var o=document.createElement("TABLE");d(o,"htCore"),e.getSettings().tableClassName&&d(o,e.getSettings().tableClassName),this.THEAD=document.createElement("THEAD"),o.appendChild(this.THEAD),this.TBODY=document.createElement("TBODY"),o.appendChild(this.TBODY),e.table=o,e.container.insertBefore(o,e.container.firstChild),this.eventManager.addEventListener(e.rootElement,"mousedown",function(e){t.isTextSelectionAllowed(e.target)||(i(),e.preventDefault(),window.focus())}),this.eventManager.addEventListener(document.documentElement,"keyup",function(t){e.selection.isInProgress()&&!t.shiftKey&&e.selection.finish()});var r;this.isMouseDown=function(){return r},this.eventManager.addEventListener(document.documentElement,"mouseup",function(t){e.selection.isInProgress()&&1===t.which&&e.selection.finish(),r=!1,b(document.activeElement)&&e.unlisten()}),this.eventManager.addEventListener(document.documentElement,"mousedown",function(n){var o=n.target,i=n.x||n.clientX,s=n.y||n.clientY;if(!r&&e.rootElement){if(o===e.view.wt.wtTable.holder){var l=p();if(document.elementFromPoint(i+l,s)!==e.view.wt.wtTable.holder||document.elementFromPoint(i,s+l)!==e.view.wt.wtTable.holder)return}else for(;o!==document.documentElement;){if(null===o){if(n.isTargetWebComponent)break;return}if(o===e.rootElement)return;o=o.parentNode}t.settings.outsideClickDeselects?e.deselectCell():e.destroyEditor()}}),this.eventManager.addEventListener(o,"selectstart",function(e){t.settings.fragmentSelection||e.preventDefault()});var i=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},s=[new T({className:"current",border:{width:2,color:"#5292F7",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&!e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&!e.selection.isMultiple()}}}),new T({className:"area",border:{width:1,color:"#89AFF9",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&e.selection.isMultiple()}}}),new T({className:"highlight",highlightRowClassName:t.settings.currentRowClassName,highlightColumnClassName:t.settings.currentColClassName}),new T({className:"fill",border:{width:1,color:"red"}})];s.current=s[0],s.area=s[1],s.highlight=s[2],s.fill=s[3];var l={debug:function(){return t.settings.debug},externalRowCalculator:this.instance.getPlugin("autoRowSize")&&this.instance.getPlugin("autoRowSize").isEnabled(),table:o,stretchH:this.settings.stretchH,data:e.getDataAtCell,totalRows:e.countRows,totalColumns:e.countCols,fixedColumnsLeft:function(){return t.settings.fixedColumnsLeft},fixedRowsTop:function(){return t.settings.fixedRowsTop},fixedRowsBottom:function(){return t.settings.fixedRowsBottom},minSpareRows:function(){return t.settings.minSpareRows},renderAllRows:t.settings.renderAllRows,rowHeaders:function(){var n=[];return e.hasRowHeaders()&&n.push(function(e,n){t.appendRowHeader(e,n)}),Handsontable.hooks.run(e,"afterGetRowHeaderRenderers",n),n},columnHeaders:function(){var n=[];return e.hasColHeaders()&&n.push(function(e,n){t.appendColHeader(e,n)}),Handsontable.hooks.run(e,"afterGetColumnHeaderRenderers",n),n},columnWidth:e.getColWidth,rowHeight:e.getRowHeight,cellRenderer:function(e,n,o){var r=t.instance.colToProp(n),i=t.instance.getCellMeta(e,n),s=t.instance.getCellRenderer(i),l=t.instance.getDataAtRowProp(e,r);s(t.instance,o,e,n,r,l,i),Handsontable.hooks.run(t.instance,"afterRenderer",o,e,n,r,l,i)},selections:s,hideBorderOnMouseDownOver:function(){return t.settings.fragmentSelection},onCellMouseDown:function(n,o,i,s){var l,a,u=i.parentNode,c=u.parentNode;if(e.listen(),t.activeWt=s,r=!0,Handsontable.hooks.run(e,"beforeOnCellMouseDown",n,o,i),e.selection.setSelectedHeaders(!1,!1),!E(n)){if(2===n.button&&e.selection.inInSelection(o));else n.shiftKey?o.row>=0&&o.col>=0&&e.selection.setRangeEnd(o):(o.row<0||o.col<0)&&(o.row>=0||o.col>=0)?(o.row<0&&(l=c.childNodes.length-Array.prototype.indexOf.call(c.childNodes,u)-1,a=e.getHeaderColspan(o.col,l),e.selection.setSelectedHeaders(!1,!0),e.selectCell(0,o.col,e.countRows()-1,o.col+Math.max(0,a-1))),o.col<0&&(e.selection.setSelectedHeaders(!0,!1),e.selectCell(o.row,0,o.row,e.countCols()-1))):(o.row=o.row<0?0:o.row,o.col=o.col<0?0:o.col,e.selection.setRangeStart(o));Handsontable.hooks.run(e,"afterOnCellMouseDown",n,o,i),t.activeWt=t.wt}},onCellMouseOver:function(n,o,i,s){t.activeWt=s,o.row>=0&&o.col>=0?r&&e.selection.setRangeEnd(o):r&&(o.row<0&&(e.selection.selectedHeader.cols?(e.selection.setRangeEnd(new S(e.countRows()-1,o.col)),e.selection.setSelectedHeaders(!1,!0)):e.selection.setRangeEnd(new S(o.row,o.col))),o.col<0&&(e.selection.selectedHeader.rows?(e.selection.setRangeEnd(new S(o.row,e.countCols()-1)),e.selection.setSelectedHeaders(!0,!1)):e.selection.setRangeEnd(new S(o.row,o.col)))),Handsontable.hooks.run(e,"afterOnCellMouseOver",n,o,i),t.activeWt=t.wt},onCellCornerMouseDown:function(t){t.preventDefault(),Handsontable.hooks.run(e,"afterOnCellCornerMouseDown",t)},beforeDraw:function(e){t.beforeRender(e)},onDraw:function(e){t.onDraw(e)},onScrollVertically:function(){e.runHooks("afterScrollVertically")},onScrollHorizontally:function(){e.runHooks("afterScrollHorizontally")},onBeforeDrawBorders:function(t,n){e.runHooks("beforeDrawBorders",t,n)},onBeforeTouchScroll:function(){e.runHooks("beforeTouchScroll")},onAfterMomentumScroll:function(){e.runHooks("afterMomentumScroll")},viewportRowCalculatorOverride:function(n){var o=e.countRows(),r=t.settings.viewportRowRenderingOffset;if("auto"===r&&t.settings.fixedRowsTop&&(r=10),"number"==typeof r&&(n.startRow=Math.max(n.startRow-r,0),n.endRow=Math.min(n.endRow+r,o-1)),"auto"===r){var i=n.startRow+n.endRow-n.startRow,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startRow-s,0),n.endRow=Math.min(n.endRow+s,o-1)}e.runHooks("afterViewportRowCalculatorOverride",n)},viewportColumnCalculatorOverride:function(n){var o=e.countCols(),r=t.settings.viewportColumnRenderingOffset;if("auto"===r&&t.settings.fixedColumnsLeft&&(r=10),"number"==typeof r&&(n.startColumn=Math.max(n.startColumn-r,0),n.endColumn=Math.min(n.endColumn+r,o-1)),"auto"===r){var i=n.startColumn+n.endColumn-n.startColumn,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startColumn-s,0),n.endColumn=Math.min(n.endColumn+s,o-1)}e.runHooks("afterViewportColumnCalculatorOverride",n)}};Handsontable.hooks.run(e,"beforeInitWalkontable",l),this.wt=new O(l),this.activeWt=this.wt,this.eventManager.addEventListener(t.wt.wtTable.spreader,"mousedown",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(t.wt.wtTable.spreader,"contextmenu",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(document.documentElement,"click",function(){t.settings.observeDOMVisibility&&t.wt.drawInterrupted&&(t.instance.forceFullRender=!0,t.render())})}Object.defineProperties(n,{TableView:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u,c=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),d=c.addClass,h=c.empty,f=c.fastInnerHTML,g=c.fastInnerText,p=c.getScrollbarWidth,m=c.hasClass,w=c.isChildOf,v=c.isInput,b=c.isOutsideInput,C=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,y=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),R=y.stopPropagation,E=y.isImmediatePropagationStopped,S=(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords,T=(a=e("3rdparty/walkontable/src/selection"),a&&a.__esModule&&a||{"default":a}).WalkontableSelection,O=(u=e("3rdparty/walkontable/src/core"),u&&u.__esModule&&u||{"default":u}).Walkontable;Handsontable.TableView=o,o.prototype.isTextSelectionAllowed=function(e){return v(e)?!0:this.settings.fragmentSelection&&w(e,this.TBODY)?!0:!1},o.prototype.isCellEdited=function(){var e=this.instance.getActiveEditor();return e&&e.isOpened()},o.prototype.beforeRender=function(e){e&&Handsontable.hooks.run(this.instance,"beforeRender",this.instance.forceFullRender)},o.prototype.onDraw=function(e){e&&Handsontable.hooks.run(this.instance,"afterRender",this.instance.forceFullRender)},o.prototype.render=function(){this.wt.draw(!this.instance.forceFullRender),this.instance.forceFullRender=!1,this.instance.renderCall=!1},o.prototype.getCellAtCoords=function(e,t){var n=this.wt.getCell(e,t);return 0>n?null:n},o.prototype.scrollViewport=function(e){this.wt.scrollViewport(e)},o.prototype.appendRowHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".rowHeader"),e,this.instance.getRowHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="rowHeader",this.updateCellHeader(r,e,this.instance.getRowHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetRowHeader",e,t)},o.prototype.appendColHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".colHeader"),e,this.instance.getColHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="colHeader",this.updateCellHeader(r,e,this.instance.getColHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetColHeader",e,t)},o.prototype.updateCellHeader=function(e,t,n){t>-1?f(e,n(t)):(g(e,String.fromCharCode(160)),d(e,"cornerHeader"))},o.prototype.maximumVisibleElementWidth=function(e){var t=this.wt.wtViewport.getWorkspaceWidth(),n=t-e;return n>0?n:0},o.prototype.maximumVisibleElementHeight=function(e){var t=this.wt.wtViewport.getWorkspaceHeight(),n=t-e;return n>0?n:0},o.prototype.mainViewIsActive=function(){return this.wt===this.activeWt},o.prototype.destroy=function(){this.wt.destroy(),this.eventManager.destroy()}},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,eventManager:40,"helpers/dom/element":44,"helpers/dom/event":45}],96:[function(e,t,n){"use strict";Object.defineProperties(n,{GhostTable:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=a.addClass,c=a.outerHeight,d=a.outerWidth,h=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,f=((i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}).objectEach,(s=e("helpers/number"),s&&s.__esModule&&s||{"default":s}).rangeEach,(l=e("helpers/mixed"),l&&l.__esModule&&l||{"default":l}).stringify,function(e){this.hot=e,this.container=null,this.injected=!1,this.rows=[],this.columns=[],this.samples=null});$traceurRuntime.createClass(f,{addRow:function(e,t){if(this.columns.length)throw new Error("Doesn't support multi-dimensional table");this.rows.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={row:e};this.rows.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tr.appendChild(this.createRow(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},addColumn:function(e,t){if(this.rows.length)throw new Error("Doesn't support multi-dimensional table");this.columns.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={col:e};this.columns.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),null!==this.hot.getColHeader(e)&&this.hot.view.appendColHeader(e,this.table.th),this.table.tBody.appendChild(this.createCol(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},getHeights:function(e){this.injected||this.injectTable(),h(this.rows,function(t){e(t.row,c(t.table)-1)})},getWidths:function(e){this.injected||this.injectTable(),h(this.columns,function(t){e(t.col,d(t.table))})},createColGroupsCol:function(){var e=this,t=document,n=t.createDocumentFragment();return n.appendChild(this.createColElement(-1)),this.samples.forEach(function(t){h(t.strings,function(t){n.appendChild(e.createColElement(t.col))})}),n},createRow:function(e){var t=this,n=document,o=n.createDocumentFragment(),r=n.createElement("th");return null!==this.hot.getRowHeader(e)&&this.hot.view.appendRowHeader(e,r),o.appendChild(r),this.samples.forEach(function(r){h(r.strings,function(r){var i=r.col,s=t.hot.getCellMeta(e,i);s.col=i,s.row=e;var l=t.hot.getCellRenderer(s),a=n.createElement("td");l(t.hot,a,e,i,t.hot.colToProp(i),r.value,s),o.appendChild(a)})}),o},createCol:function(e){var t=this,n=document,o=n.createDocumentFragment();return this.samples.forEach(function(r){h(r.strings,function(r){var i=r.row,s=t.hot.getCellMeta(i,e);s.col=e,s.row=i;var l=t.hot.getCellRenderer(s),a=n.createElement("td"),u=n.createElement("tr");l(t.hot,a,i,e,t.hot.colToProp(i),r.value,s),u.appendChild(a),o.appendChild(u)})}),o},clean:function(){this.rows.length=0,this.columns.length=0,this.samples&&this.samples.clear(),this.samples=null,this.removeTable()},injectTable:function(){var e=void 0!==arguments[0]?arguments[0]:null;this.injected||((e||this.hot.rootElement).appendChild(this.container.fragment),this.injected=!0)},removeTable:function(){this.injected&&this.container.container.parentNode&&(this.container.container.parentNode.removeChild(this.container.container),this.container=null,this.injected=!1)},createColElement:function(e){var t=document,n=t.createElement("col");return n.style.width=this.hot.view.wt.wtTable.getStretchedColumnWidth(e)+"px",n},createTable:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("table"),r=t.createElement("thead"),i=t.createElement("tbody"),s=t.createElement("colgroup"),l=t.createElement("tr"),a=t.createElement("th");return this.isVertical()&&o.appendChild(s),this.isHorizontal()&&(l.appendChild(a),r.appendChild(l),o.style.tableLayout="auto",o.style.width="auto"),o.appendChild(r),this.isVertical()&&i.appendChild(l),o.appendChild(i),u(o,e),n.appendChild(o),{fragment:n,table:o,tHead:r,tBody:i,colGroup:s,tr:l,th:a}},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("div");return e="htGhostTable htAutoSize "+e.trim(),u(o,e),n.appendChild(o),{fragment:n,container:o}},isVertical:function(){return this.rows.length&&!this.columns.length?!0:!1},isHorizontal:function(){return this.columns.length&&!this.rows.length?!0:!1}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.GhostTable=f},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],97:[function(e,t,n){"use strict";var o;Object.defineProperties(n,{SamplesGenerator:{get:function(){return h}},__esModule:{value:!0}});var r,i,s,l,a,u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=(u.addClass,u.outerHeight,u.outerWidth,(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}).objectEach,(l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).rangeEach),d=(a=e("helpers/mixed"),a&&a.__esModule&&a||{"default":a}).stringify,h=function(e){this.samples=null,this.dataFactory=e},f=h;$traceurRuntime.createClass(h,(o={},Object.defineProperty(o,"generateRowSamples",{value:function(e,t){return this.generateSamples("row",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateColumnSamples",{value:function(e,t){return this.generateSamples("col",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSamples",{value:function(e,t,n){var o=this,r=new Map;return"number"==typeof n&&(n={from:n,to:n}),c(n.from,n.to,function(n){var i=o.generateSample(e,t,n);r.set(n,i)}),r},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSample",{value:function(e,t,n){var o=this,r=new Map;return c(t.from,t.to,function(t){var i,s;if("row"===e)s=o.dataFactory(n,t);else{if("col"!==e)throw new Error("Unsupported sample type");s=o.dataFactory(t,n)}Array.isArray(s)||(s=d(s));var l=s.length;r.has(l)||r.set(l,{needed:f.SAMPLE_COUNT,strings:[]});var a=r.get(l);if(a.needed){var u="row"===e?"col":"row";a.strings.push((i={},Object.defineProperty(i,"value",{value:s,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,u,{value:t,configurable:!0,enumerable:!0,writable:!0}),i)),a.needed--}}),r},configurable:!0,enumerable:!0,writable:!0}),o),{get SAMPLE_COUNT(){return 3}}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.SamplesGenerator=h},{"helpers/array":41,"helpers/dom/element":44,"helpers/mixed":47,"helpers/number":48,"helpers/object":49}],98:[function(e,t,n){"use strict";function o(e,t){var n=e,o="string"==typeof n?n.toLowerCase():null;return function(e){for(var r=!1,s=0,l=e.length;l>s;s++){if(n===e[s]){r=!0;break}if(o===i(e[s]).toLowerCase()){r=!0;break}}t(r)}}var r,i=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify;Handsontable.AutocompleteValidator=function(e,t){this.strict&&this.source?"function"==typeof this.source?this.source(e,o(e,t)):o(e,t)(this.source):t(!0)}},{"helpers/mixed":47}],99:[function(e,t,n){"use strict";var o,r,i=(o=e("moment"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("editors"),r&&r.__esModule&&r||{"default":r}).getEditor;Handsontable.DateValidator=function(e,t){var n=!0,o=s("date",this.instance);null===e&&(e="");var r=i(new Date(e)).isValid(),a=i(e,this.dateFormat||o.defaultDateFormat,!0).isValid();if(r||(n=!1),!r&&a&&(n=!0),r&&!a)if(this.correctFormat===!0){var u=l(e,this.dateFormat);this.instance.setDataAtCell(this.row,this.col,u,"dateValidator"),n=!0}else n=!1;t(n)};var l=function(e,t){var n=i(new Date(e)),o=n.format("YYYY"),r=i().format("YYYY");return o.substr(0,2)!==r.substr(0,2)?e.match(new RegExp(o))||n.year(o.replace(o.substr(0,2),r.substr(0,2))):o.length>4&&n.year((n.year()+"").substr(0,4)),n.format(t)}},{editors:28,moment:void 0}],100:[function(e,t,n){"use strict";Handsontable.NumericValidator=function(e,t){null===e&&(e=""),t(/^-?\d*(\.|\,)?\d*$/.test(e))}},{}],SheetClip:[function(e,t,n){"use strict";!function(e){function t(e){return e.split('"').length-1}var o={parse:function(e){var n,o,r,i,s,l,a,u=[],c=0;for(r=e.split("\n"),r.length>1&&""===r[r.length-1]&&r.pop(),n=0,o=r.length;o>n;n+=1){for(r[n]=r[n].split(" "),i=0,s=r[n].length;s>i;i+=1)u[c]||(u[c]=[]),l&&0===i?(a=u[c].length-1,u[c][a]=u[c][a]+"\n"+r[n][0],l&&1&t(r[n][0])&&(l=!1,u[c][a]=u[c][a].substring(0,u[c][a].length-1).replace(/""/g,'"'))):i===s-1&&0===r[n][i].indexOf('"')&&1&t(r[n][i])?(u[c].push(r[n][i].substring(1).replace(/""/g,'"')),l=!0):(u[c].push(r[n][i].replace(/""/g,'"')),l=!1);l||(c+=1)}return u},stringify:function(e){var t,n,o,r,i,s="";for(t=0,n=e.length;n>t;t+=1){for(r=e[t].length,o=0;r>o;o+=1)o>0&&(s+=" "),i=e[t][o],s+="string"==typeof i?i.indexOf("\n")>-1?'"'+i.replace(/"/g,'""')+'"':i:null===i||void 0===i?"":i;s+="\n"}return s}};"undefined"!=typeof n?(n.parse=o.parse,n.stringify=o.stringify):e.SheetClip=o}(window)},{}],autoResize:[function(e,t,n){"use strict";function o(){var e,t={minHeight:200,maxHeight:300,minWidth:100,maxWidth:300},n=document.body,o=document.createTextNode(""),r=document.createElement("SPAN"),i=function(e,t,n){window.attachEvent?e.attachEvent("on"+t,n):e.addEventListener(t,n,!1)},s=function(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)},l=function(i){var s,l;i?/^[a-zA-Z \.,\\\/\|0-9]$/.test(i)||(i="."):i="",void 0!==o.textContent?o.textContent=e.value+i:o.data=e.value+i,r.style.fontSize=Handsontable.Dom.getComputedStyle(e).fontSize,r.style.fontFamily=Handsontable.Dom.getComputedStyle(e).fontFamily,r.style.whiteSpace="pre",n.appendChild(r),s=r.clientWidth+2,n.removeChild(r),e.style.height=t.minHeight+"px",t.minWidth>s?e.style.width=t.minWidth+"px":s>t.maxWidth?e.style.width=t.maxWidth+"px":e.style.width=s+"px",l=e.scrollHeight?e.scrollHeight-1:0,t.minHeight>l?e.style.height=t.minHeight+"px":t.maxHeight-1||"true"===e.contentEditable}var n=this,o=!1;if(e.metaKey?o=!0:e.ctrlKey&&-1===navigator.userAgent.indexOf("Mac")&&(o=!0),o){if(document.activeElement!==this.elTextarea&&(""!==this.getSelectionText()||t()))return;this.selectNodeText(this.elTextarea),setTimeout(function(){document.activeElement!==n.elTextarea&&n.selectNodeText(n.elTextarea)},0)}!o||67!==e.keyCode&&86!==e.keyCode&&88!==e.keyCode||(88===e.keyCode?setTimeout(function(){n.triggerCut(e)},0):86===e.keyCode&&setTimeout(function(){n.triggerPaste(e)},0))},r.prototype.selectNodeText=function(e){e&&e.select()},r.prototype.getSelectionText=function(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e},r.prototype.copyable=function(e){if("string"!=typeof e&&void 0===e.toString)throw new Error("copyable requires string parameter");this.elTextarea.value=e,this.selectNodeText(this.elTextarea)},r.prototype.onCut=function(e){this.cutCallbacks.push(e)},r.prototype.onPaste=function(e){this.pasteCallbacks.push(e)},r.prototype.removeCallback=function(e){var t,n;for(t=0,n=this.copyCallbacks.length;n>t;t++)if(this.copyCallbacks[t]===e)return this.copyCallbacks.splice(t,1),!0;for(t=0,n=this.cutCallbacks.length;n>t;t++)if(this.cutCallbacks[t]===e)return this.cutCallbacks.splice(t,1),!0;for(t=0,n=this.pasteCallbacks.length;n>t;t++)if(this.pasteCallbacks[t]===e)return this.pasteCallbacks.splice(t,1),!0;return!1},r.prototype.triggerCut=function(e){var t=this;t.cutCallbacks&&setTimeout(function(){for(var n=0,o=t.cutCallbacks.length;o>n;n++)t.cutCallbacks[n](e)},50)},r.prototype.triggerPaste=function(e,t){var n=this;n.pasteCallbacks&&setTimeout(function(){for(var o=t||n.elTextarea.value,r=0,i=n.pasteCallbacks.length;i>r;r++)n.pasteCallbacks[r](o,e)},50)},r.prototype.destroy=function(){this.hasBeenDestroyed()||0!==--this.refCounter||(this.elDiv&&this.elDiv.parentNode&&(this.elDiv.parentNode.removeChild(this.elDiv),this.elDiv=null,this.elTextarea=null),document.documentElement.removeEventListener("keydown",this.onKeyDownRef),this.onKeyDownRef=null)},r.prototype.hasBeenDestroyed=function(){return!this.refCounter}},{}],es6collections:[function(e,t,n){"use strict";!function(e){function t(e,t){function o(e){return this&&this.constructor===o?(this._keys=[],this._values=[],this._itp=[],this.objectOnly=t,void(e&&n.call(this,e))):new o(e)}return t||b(e,"size",{get:m}),e.constructor=o,o.prototype=e,o}function n(e){this.add?e.forEach(this.add,this):e.forEach(function(e){this.set(e[0],e[1])},this)}function o(e){return this.has(e)&&(this._keys.splice(v,1),this._values.splice(v,1),this._itp.forEach(function(e){v-1}function r(e){return this.has(e)?this._values[v]:void 0}function i(e,t){if(this.objectOnly&&t!==Object(t))throw new TypeError("Invalid value used as weak collection key");if(t!=t||0===t)for(v=e.length;v--&&!C(e[v],t););else v=e.indexOf(t);return v>-1}function s(e){return i.call(this,this._values,e)}function l(e){return i.call(this,this._keys,e)}function a(e,t){return this.has(e)?this._values[v]=t:this._values[this._keys.push(e)-1]=t,this}function u(e){return this.has(e)||this._values.push(e),this}function c(){this._values.length=0}function d(){return p(this._itp,this._keys)}function h(){return p(this._itp,this._values)}function f(){return p(this._itp,this._keys,this._values)}function g(){return p(this._itp,this._values,this._values)}function p(e,t,n){var o=[0],r=!1;return e.push(o),{next:function(){var i,s=o[0];return!r&&st;t++)if(v[t].obj===e)return v[t]}function i(e){for(var t=0,n=v.length;n>t;t++)v[t]===e&&v.splice(t,1)}function s(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].callback===t)return e.observers[n].observer}function l(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].observer===t)return e.observers.splice(n,1),void(e.observers.length||i(e))}function a(e,t){h(t),Object.observe?d(t,e):clearTimeout(t.next);var n=r(e);l(n,t)}function u(e,t){var n,i=[],l=e,a=r(e);if(a?n=s(a,t):(a=new b(e),v.push(a)),n)return n;if(Object.observe)n=function(r){d(n,e),c(n,e);for(var s=0,a=r.length;a>s;){if(("length"!==r[s].name||!R(r[s].object))&&"__Jasmine_been_here_before__"!==r[s].name){var u=r[s].type;switch(u){case"new":u="add";break;case"deleted":u="delete";break;case"updated":u="update"}w[u].call(r[s],i,o(l,r[s].object))}s++}i&&t&&t(i),n.patches=i,i=[]};else if(n={},a.value=JSON.parse(JSON.stringify(e)),t){n.callback=t,n.next=null;var u=this.intervals||[100,1e3,1e4,6e4],f=0,g=function(){h(n)},p=function(){clearTimeout(n.next),n.next=setTimeout(function(){g(),f=0,n.next=setTimeout(m,u[f++])},0)},m=function(){g(),f==u.length&&(f=u.length-1),n.next=setTimeout(m,u[f++])};"undefined"!=typeof window&&(window.addEventListener?(window.addEventListener("mousedown",p),window.addEventListener("mouseup",p),window.addEventListener("keydown",p)):(window.attachEvent("onmousedown",p),window.attachEvent("onmouseup",p),window.attachEvent("onkeydown",p))),n.next=setTimeout(m,u[f++])}return n.patches=i,n.object=e,a.observers.push(new C(t,n)),c(n,e)}function c(e,t){if(Object.observe){Object.observe(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&c(e,o)}}return e}function d(e,t){if(Object.observe){Object.unobserve(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&d(e,o)}}return e}function h(e){if(Object.observe)Object.deliverChangeRecords(e);else{for(var t,n=0,o=v.length;o>n;n++)if(v[n].obj===e.object){t=v[n];break}t&&f(t.value,e.object,e.patches,"")}var r=e.patches;return r.length>0&&(e.patches=[],e.callback&&e.callback(r)),r}function f(e,n,o,r){for(var i=y(n),s=y(e),l=!1,a=!1,u=s.length-1;u>=0;u--){var c=s[u],d=e[c];if(n.hasOwnProperty(c)){var h=n[c];d instanceof Object?f(d,h,o,r+"/"+t(c)):d!=h&&(l=!0,o.push({op:"replace",path:r+"/"+t(c),value:h}),e[c]=h)}else o.push({op:"remove",path:r+"/"+t(c)}),delete e[c],a=!0}if(a||i.length!=s.length)for(var u=0;ur;){n=t[r];for(var s=n.path.split("/"),l=e,a=1,u=s.length;;)if(R(l)){var c=parseInt(s[a],10);if(a++,a>=u){o=m[n.op].call(n,l,c,e);break}l=l[c]}else{var d=s[a];if(-1!=d.indexOf("~")&&(d=d.replace(/~1/g,"/").replace(/~0/g,"~")),a++,a>=u){o=p[n.op].call(n,l,d,e);break}l=l[d]}r++}return o}var p={add:function(e,t){return e[t]=this.value,!0},remove:function(e,t){return delete e[t],!0},replace:function(e,t){return e[t]=this.value,!0},move:function(e,t,n){var o={op:"_get",path:this.from};return g(n,[o]),g(n,[{op:"remove",path:this.from}]),g(n,[{op:"add",path:this.path,value:o.value}]),!0},copy:function(e,t,n){var o={op:"_get",path:this.from};return g(n,[o]),g(n,[{op:"add",path:this.path,value:o.value}]),!0},test:function(e,t){return JSON.stringify(e[t])===JSON.stringify(this.value)},_get:function(e,t){this.value=e[t]}},m={add:function(e,t){return e.splice(t,0,this.value),!0},remove:function(e,t){return e.splice(t,1),!0},replace:function(e,t){return e[t]=this.value,!0},move:p.move,copy:p.copy,test:p.test,_get:p._get},w={add:function(e,n){var o={op:"add",path:n+t(this.name),value:this.object[this.name]};e.push(o)},"delete":function(e,n){var o={op:"remove",path:n+t(this.name)};e.push(o)},update:function(e,n){var o={op:"replace",path:n+t(this.name),value:this.object[this.name]};e.push(o)}},v=[];e.intervals;var b=function(){function e(e){this.observers=[],this.obj=e}return e}(),C=function(){function e(e,t){this.callback=e,this.observer=t}return e}();e.unobserve=a,e.observe=u,e.generate=h;var y;y=Object.keys?Object.keys:function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t};var R;R=Array.isArray?Array.isArray:function(e){return e.push&&"number"==typeof e.length},e.apply=g}(o||(o={})),"undefined"!=typeof n&&(n.apply=o.apply,n.observe=o.observe,n.unobserve=o.unobserve,n.generate=o.generate)},{}],numeral:[function(t,n,o){"use strict";(function(){function t(e){this._value=e}function o(e,t,n,o){var r,i,s=Math.pow(10,t);return i=(n(e*s)/s).toFixed(t),o&&(r=new RegExp("0{1,"+o+"}$"),i=i.replace(r,"")),i}function r(e,t,n){var o;return o=t.indexOf("$")>-1?s(e,t,n):t.indexOf("%")>-1?l(e,t,n):t.indexOf(":")>-1?a(e,t):c(e._value,t,n)}function i(e,t){var n,o,r,i,s,l=t,a=["KB","MB","GB","TB","PB","EB","ZB","YB"],c=!1;if(t.indexOf(":")>-1)e._value=u(t);else if(t===v)e._value=0;else{for("."!==m[w].delimiters.decimal&&(t=t.replace(/\./g,"").replace(m[w].delimiters.decimal,".")),n=new RegExp("[^a-zA-Z]"+m[w].abbreviations.thousand+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),o=new RegExp("[^a-zA-Z]"+m[w].abbreviations.million+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),r=new RegExp("[^a-zA-Z]"+m[w].abbreviations.billion+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),i=new RegExp("[^a-zA-Z]"+m[w].abbreviations.trillion+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),s=0;s<=a.length&&!(c=t.indexOf(a[s])>-1?Math.pow(1024,s+1):!1);s++);e._value=(c?c:1)*(l.match(n)?Math.pow(10,3):1)*(l.match(o)?Math.pow(10,6):1)*(l.match(r)?Math.pow(10,9):1)*(l.match(i)?Math.pow(10,12):1)*(t.indexOf("%")>-1?.01:1)*((t.split("-").length+Math.min(t.split("(").length-1,t.split(")").length-1))%2?1:-1)*Number(t.replace(/[^0-9\.]+/g,"")),e._value=c?Math.ceil(e._value):e._value}return e._value}function s(e,t,n){var o,r,i=t.indexOf("$"),s=t.indexOf("("),l=t.indexOf("-"),a="";return t.indexOf(" $")>-1?(a=" ",t=t.replace(" $","")):t.indexOf("$ ")>-1?(a=" ",t=t.replace("$ ","")):t=t.replace("$",""),r=c(e._value,t,n),1>=i?r.indexOf("(")>-1||r.indexOf("-")>-1?(r=r.split(""),o=1,(s>i||l>i)&&(o=0),r.splice(o,0,m[w].currency.symbol+a),r=r.join("")):r=m[w].currency.symbol+a+r:r.indexOf(")")>-1?(r=r.split(""),r.splice(-1,0,a+m[w].currency.symbol),r=r.join("")):r=r+a+m[w].currency.symbol,r}function l(e,t,n){var o,r="",i=100*e._value;return t.indexOf(" %")>-1?(r=" ",t=t.replace(" %","")):t=t.replace("%",""),o=c(i,t,n),o.indexOf(")")>-1?(o=o.split(""),o.splice(-1,0,r+"%"),o=o.join("")):o=o+r+"%",o}function a(e){var t=Math.floor(e._value/60/60),n=Math.floor((e._value-60*t*60)/60),o=Math.round(e._value-60*t*60-60*n);return t+":"+(10>n?"0"+n:n)+":"+(10>o?"0"+o:o)}function u(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}function c(e,t,n){var r,i,s,l,a,u,c=!1,d=!1,h=!1,f="",g=!1,p=!1,b=!1,C=!1,y=!1,R="",E="",S=Math.abs(e),T=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],O="",_=!1;if(0===e&&null!==v)return v;if(t.indexOf("(")>-1?(c=!0,t=t.slice(1,-1)):t.indexOf("+")>-1&&(d=!0,t=t.replace(/\+/g,"")),t.indexOf("a")>-1&&(g=t.indexOf("aK")>=0,p=t.indexOf("aM")>=0,b=t.indexOf("aB")>=0,C=t.indexOf("aT")>=0,y=g||p||b||C,t.indexOf(" a")>-1?(f=" ",t=t.replace(" a","")):t=t.replace("a",""),S>=Math.pow(10,12)&&!y||C?(f+=m[w].abbreviations.trillion,e/=Math.pow(10,12)):S=Math.pow(10,9)&&!y||b?(f+=m[w].abbreviations.billion,e/=Math.pow(10,9)):S=Math.pow(10,6)&&!y||p?(f+=m[w].abbreviations.million,e/=Math.pow(10,6)):(S=Math.pow(10,3)&&!y||g)&&(f+=m[w].abbreviations.thousand,e/=Math.pow(10,3))),t.indexOf("b")>-1)for(t.indexOf(" b")>-1?(R=" ",t=t.replace(" b","")):t=t.replace("b",""),s=0;s<=T.length;s++)if(r=Math.pow(1024,s),i=Math.pow(1024,s+1),e>=r&&i>e){R+=T[s],r>0&&(e/=r);break}return t.indexOf("o")>-1&&(t.indexOf(" o")>-1?(E=" ",t=t.replace(" o","")):t=t.replace("o",""),E+=m[w].ordinal(e)),t.indexOf("[.]")>-1&&(h=!0,t=t.replace("[.]",".")),l=e.toString().split(".")[0],a=t.split(".")[1],u=t.indexOf(","),a?(a.indexOf("[")>-1?(a=a.replace("]",""),a=a.split("["),O=o(e,a[0].length+a[1].length,n,a[1].length)):O=o(e,a.length,n),l=O.split(".")[0],O=O.split(".")[1].length?m[w].delimiters.decimal+O.split(".")[1]:"",h&&0===Number(O.slice(1))&&(O="")):l=o(e,null,n),l.indexOf("-")>-1&&(l=l.slice(1),_=!0),u>-1&&(l=l.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+m[w].delimiters.thousands)),0===t.indexOf(".")&&(l=""),(c&&_?"(":"")+(!c&&_?"-":"")+(!_&&d?"+":"")+l+O+(E?E:"")+(f?f:"")+(R?R:"")+(c&&_?")":"")}function d(e,t){m[e]=t}function h(e){var t=e.toString().split(".");return t.length<2?1:Math.pow(10,t[1].length)}function f(){var e=Array.prototype.slice.call(arguments);return e.reduce(function(e,t){var n=h(e),o=h(t);return n>o?n:o},-(1/0))}var g,p="1.5.3",m={},w="en",v=null,b="0,0",C="undefined"!=typeof n&&n.exports;g=function(e){return g.isNumeral(e)?e=e.value():0===e||"undefined"==typeof e?e=0:Number(e)||(e=g.fn.unformat(e)),new t(Number(e))},g.version=p,g.isNumeral=function(e){return e instanceof t},g.language=function(e,t){if(!e)return w;if(e&&!t){if(!m[e])throw new Error("Unknown language : "+e);w=e}return(t||!m[e])&&d(e,t),g},g.languageData=function(e){if(!e)return m[w];if(!m[e])throw new Error("Unknown language : "+e);return m[e]},g.language("en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),g.zeroFormat=function(e){v="string"==typeof e?e:null},g.defaultFormat=function(e){b="string"==typeof e?e:"0.0"},g.validate=function(e,t){var n,o,r,i,s,l,a,u;if("string"!=typeof e&&(e+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",e)),e=e.trim(),""===e)return!1;e=e.replace(/^[+-]?/,"");try{a=g.languageData(t)}catch(c){a=g.languageData(g.language())}return r=a.currency.symbol,s=a.abbreviations,n=a.delimiters.decimal,o="."===a.delimiters.thousands?"\\.":a.delimiters.thousands,u=e.match(/^[^\d\.\,]+/),null!==u&&(e=e.substr(1),u[0]!==r)?!1:(u=e.match(/[^\d]+$/),null!==u&&(e=e.slice(0,-1),u[0]!==s.thousand&&u[0]!==s.million&&u[0]!==s.billion&&u[0]!==s.trillion)?!1:e.match(/^\d+$/)?!0:(l=new RegExp(o+"{2}"),e.match(/[^\d.,]/g)?!1:(i=e.split(n),i.length>2?!1:i.length<2?!!i[0].match(/^\d+.*\d$/)&&!i[0].match(l):""===i[0]?!i[0].match(l)&&!!i[1].match(/^\d+$/):1===i[0].length?!!i[0].match(/^\d+$/)&&!i[0].match(l)&&!!i[1].match(/^\d+$/):!!i[0].match(/^\d+.*\d$/)&&!i[0].match(l)&&!!i[1].match(/^\d+$/))))},"function"!=typeof Array.prototype.reduce&&(Array.prototype.reduce=function(e,t){if(null===this||"undefined"==typeof this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!=typeof e)throw new TypeError(e+" is not a function");var n,o,r=this.length>>>0,i=!1;for(1n;++n)this.hasOwnProperty(n)&&(i?o=e(o,this[n],n,this):(o=this[n],i=!0));if(!i)throw new TypeError("Reduce of empty array with no initial value");return o}),g.fn=t.prototype={clone:function(){return g(this)},format:function(e,t){return r(this,e?e:b,void 0!==t?t:Math.round)},unformat:function(e){return"[object Number]"===Object.prototype.toString.call(e)?e:i(this,e?e:b)},value:function(){return this._value},valueOf:function(){return this._value},set:function(e){return this._value=Number(e),this},add:function(e){function t(e,t,o,r){return e+n*t}var n=f.call(null,this._value,e);return this._value=[this._value,e].reduce(t,0)/n,this},subtract:function(e){function t(e,t,o,r){return e-n*t}var n=f.call(null,this._value,e);return this._value=[e].reduce(t,this._value*n)/n,this},multiply:function(e){function t(e,t,n,o){var r=f(e,t);return e*r*(t*r)/(r*r)}return this._value=[this._value,e].reduce(t,1),this},divide:function(e){function t(e,t,n,o){var r=f(e,t);return e*r/(t*r)}return this._value=[this._value,e].reduce(t),this},difference:function(e){return Math.abs(g(this._value).subtract(e).value())}},C&&(n.exports=g),"undefined"==typeof ender&&(this.numeral=g),"function"==typeof e&&e.amd&&e([],function(){return g})}).call(window)},{}]},{},[23,57,59,58,60,81,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,82,83,84,85,98,99,100,88,89,90,91,92,93,30,34,31,32,39,33,35,36,37,38])("numeral")}); \ No newline at end of file +window.Handsontable={version:"0.20.0",buildDate:"Tue Nov 03 2015 14:30:34 GMT+0100 (CET)"},function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.Handsontable=e()}}(function(){var e;return function(e,t,n){return function o(e,t,n){function r(l,a){if(!t[l]){if(!e[l]){var u="function"==typeof require&&require;if(!a&&u)return u(l,!0);if(i)return i(l,!0);if(s[l]&&"undefined"!=typeof window[s[l]])return window[s[l]];var c=new Error("Cannot find module '"+l+"'");throw c.code="MODULE_NOT_FOUND",c}var d=t[l]={exports:{}};e[l][0].call(d.exports,function(t){var n=e[l][1][t];return r(n?n:t)},d,d.exports,o,e,t,n)}return t[l].exports}for(var i="function"==typeof require&&require,s=JSON.parse('{"zeroclipboard":"ZeroClipboard","moment":"moment","pikaday":"Pikaday"}')||{},l=0;l1)for(t=1,o=arguments.length;o>t;t++)r.push(arguments[t]);if(a){if("undefined"==typeof a[e])throw new Error("Handsontable do not provide action: "+e);i=a[e].apply(a,r),"destroy"===e&&l.removeData()}return i}}(window,jQuery,Handsontable)},{}],2:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableBorder:{get:function(){return C}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=a.getComputedStyle,c=a.getTrimmingContainer,d=a.innerWidth,h=a.innerHeight,f=a.offset,g=a.outerHeight,p=a.outerWidth,m=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}).stopImmediatePropagation,w=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,v=(s=e("cell/coords"),s&&s.__esModule&&s||{"default":s}).WalkontableCellCoords,b=(l=e("overlay/_base.js"),l&&l.__esModule&&l||{"default":l}).WalkontableOverlay,C=function(e,t){t&&(this.eventManager=new w(e),this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.left=null,this.bottom=null,this.right=null,this.topStyle=null,this.leftStyle=null,this.bottomStyle=null,this.rightStyle=null,this.cornerDefaultStyle={width:"5px",height:"5px",borderWidth:"2px",borderStyle:"solid",borderColor:"#FFF"},this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())};$traceurRuntime.createClass(C,{registerListeners:function(){var e=this;this.eventManager.addEventListener(document.body,"mousedown",function(){return e.onMouseDown()}),this.eventManager.addEventListener(document.body,"mouseup",function(){return e.onMouseUp()});for(var t=this,n=function(n,o){t.eventManager.addEventListener(t.main.childNodes[n],"mouseenter",function(t){return e.onMouseEnter(t,e.main.childNodes[n])})},o=0,r=this.main.childNodes.length;r>o;o++)n(o,r)},onMouseDown:function(){this.mouseDown=!0},onMouseUp:function(){this.mouseDown=!1},onMouseEnter:function(e,t){function n(e){return e.clientYMath.ceil(i.top+i.height)?!0:e.clientXMath.ceil(i.left+i.width)?!0:void 0}function o(e){n(e)&&(r.eventManager.removeEventListener(document.body,"mousemove",o),t.style.display="block")}if(this.mouseDown&&this.wot.getSetting("hideBorderOnMouseDownOver")){e.preventDefault(),m(e);var r=this,i=t.getBoundingClientRect();t.style.display="none",this.eventManager.addEventListener(document.body,"mousemove",o)}},createBorders:function(e){this.main=document.createElement("div");var t=["top","left","bottom","right","corner"],n=this.main.style;n.position="absolute",n.top=0,n.left=0;for(var o=0;5>o;o++){var r=t[o],i=document.createElement("div");i.className="wtBorder "+(this.settings.className||""),this.settings[r]&&this.settings[r].hide&&(i.className+=" hidden"),n=i.style,n.backgroundColor=this.settings[r]&&this.settings[r].color?this.settings[r].color:e.border.color,n.height=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",n.width=this.settings[r]&&this.settings[r].width?this.settings[r].width+"px":e.border.width+"px",this.main.appendChild(i)}this.top=this.main.childNodes[0],this.left=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.right=this.main.childNodes[3],this.topStyle=this.top.style,this.leftStyle=this.left.style,this.bottomStyle=this.bottom.style,this.rightStyle=this.right.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),Handsontable.mobileBrowser&&this.createMultipleSelectorHandles(),this.disappear(),this.wot.wtTable.bordersHolder||(this.wot.wtTable.bordersHolder=document.createElement("div"),this.wot.wtTable.bordersHolder.className="htBorders",this.wot.wtTable.spreader.appendChild(this.wot.wtTable.bordersHolder)),this.wot.wtTable.bordersHolder.insertBefore(this.main,this.wot.wtTable.bordersHolder.firstChild)},createMultipleSelectorHandles:function(){this.selectionHandles={topLeft:document.createElement("DIV"),topLeftHitArea:document.createElement("DIV"),bottomRight:document.createElement("DIV"),bottomRightHitArea:document.createElement("DIV")};var e=10,t=40;this.selectionHandles.topLeft.className="topLeftSelectionHandle",this.selectionHandles.topLeftHitArea.className="topLeftSelectionHandle-HitArea",this.selectionHandles.bottomRight.className="bottomRightSelectionHandle",this.selectionHandles.bottomRightHitArea.className="bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={topLeft:this.selectionHandles.topLeft.style,topLeftHitArea:this.selectionHandles.topLeftHitArea.style,bottomRight:this.selectionHandles.bottomRight.style,bottomRightHitArea:this.selectionHandles.bottomRightHitArea.style};var n={position:"absolute",height:t+"px",width:t+"px","border-radius":parseInt(t/1.5,10)+"px"};for(var o in n)n.hasOwnProperty(o)&&(this.selectionHandles.styles.bottomRightHitArea[o]=n[o],this.selectionHandles.styles.topLeftHitArea[o]=n[o]);var r={position:"absolute",height:e+"px",width:e+"px","border-radius":parseInt(e/1.5,10)+"px",background:"#F5F5FF",border:"1px solid #4285c8"};for(var i in r)r.hasOwnProperty(i)&&(this.selectionHandles.styles.bottomRight[i]=r[i],this.selectionHandles.styles.topLeft[i]=r[i]);this.main.appendChild(this.selectionHandles.topLeft),this.main.appendChild(this.selectionHandles.bottomRight),this.main.appendChild(this.selectionHandles.topLeftHitArea),this.main.appendChild(this.selectionHandles.bottomRightHitArea)},isPartRange:function(e,t){return!this.wot.selections.area.cellRange||e==this.wot.selections.area.cellRange.to.row&&t==this.wot.selections.area.cellRange.to.col?!1:!0},updateMultipleSelectionHandlesPosition:function(e,t,n,o,r,i){var s=parseInt(this.selectionHandles.styles.topLeft.width,10),l=parseInt(this.selectionHandles.styles.topLeftHitArea.width,10);this.selectionHandles.styles.topLeft.top=parseInt(n-s,10)+"px",this.selectionHandles.styles.topLeft.left=parseInt(o-s,10)+"px",this.selectionHandles.styles.topLeftHitArea.top=parseInt(n-l/4*3,10)+"px",this.selectionHandles.styles.topLeftHitArea.left=parseInt(o-l/4*3,10)+"px",this.selectionHandles.styles.bottomRight.top=parseInt(n+i,10)+"px",this.selectionHandles.styles.bottomRight.left=parseInt(o+r,10)+"px",this.selectionHandles.styles.bottomRightHitArea.top=parseInt(n+i-l/4,10)+"px",this.selectionHandles.styles.bottomRightHitArea.left=parseInt(o+r-l/4,10)+"px",this.settings.border.multipleSelectionHandlesVisible&&this.settings.border.multipleSelectionHandlesVisible()?(this.selectionHandles.styles.topLeft.display="block",this.selectionHandles.styles.topLeftHitArea.display="block",this.isPartRange(e,t)?(this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"):(this.selectionHandles.styles.bottomRight.display="block",this.selectionHandles.styles.bottomRightHitArea.display="block")):(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none",this.selectionHandles.styles.topLeftHitArea.display="none",this.selectionHandles.styles.bottomRightHitArea.display="none"),e==this.wot.wtSettings.getSetting("fixedRowsTop")||t==this.wot.wtSettings.getSetting("fixedColumnsLeft")?(this.selectionHandles.styles.topLeft.zIndex="9999",this.selectionHandles.styles.topLeftHitArea.zIndex="9999"):(this.selectionHandles.styles.topLeft.zIndex="",this.selectionHandles.styles.topLeftHitArea.zIndex="")},appear:function(e){if(!this.disabled){var t,n,o,r,i,s,l,a,m,w,C,y,R,E,S,T,O,_,M;M=b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_TOP)||b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_BOTTOM)||b.isOverlayTypeOf(this.wot.cloneOverlay,b.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedRowsBottom"):this.wot.wtTable.getRenderedRowsCount();for(var H=0;M>H;H++){var k=this.wot.wtTable.rowFilter.renderedToSource(H);if(k>=e[0]&&k<=e[2]){R=k;break}}for(var A=M-1;A>=0;A--){var P=this.wot.wtTable.rowFilter.renderedToSource(A);if(P>=e[0]&&P<=e[2]){S=P;break}}M=this.wot.wtTable.getRenderedColumnsCount();for(var x=0;M>x;x++){var D=this.wot.wtTable.columnFilter.renderedToSource(x);if(D>=e[1]&&D<=e[3]){E=D;break}}for(var N=M-1;N>=0;N--){var L=this.wot.wtTable.columnFilter.renderedToSource(N);if(L>=e[1]&&L<=e[3]){T=L;break}}if(void 0===R||void 0===E)return void this.disappear();t=R!==S||E!==T,n=this.wot.wtTable.getCell(new v(R,E)),o=t?this.wot.wtTable.getCell(new v(S,T)):n,r=f(n),i=t?f(o):r,s=f(this.wot.wtTable.TABLE),a=r.top,C=i.top+g(o)-a,w=r.left,y=i.left+p(o)-w,l=a-s.top-1,m=w-s.left-1;var W=u(n);parseInt(W.borderTopWidth,10)>0&&(l+=1,C=C>0?C-1:0),parseInt(W.borderLeftWidth,10)>0&&(m+=1,y=y>0?y-1:0),this.topStyle.top=l+"px",this.topStyle.left=m+"px",this.topStyle.width=y+"px",this.topStyle.display="block",this.leftStyle.top=l+"px",this.leftStyle.left=m+"px",this.leftStyle.height=C+"px",this.leftStyle.display="block";var I=Math.floor(this.settings.border.width/2);this.bottomStyle.top=l+C-I+"px",this.bottomStyle.left=m+"px",this.bottomStyle.width=y+"px",this.bottomStyle.display="block",this.rightStyle.top=l+"px",this.rightStyle.left=m+y-I+"px",this.rightStyle.height=C+1+"px",this.rightStyle.display="block",Handsontable.mobileBrowser||!this.hasSetting(this.settings.border.cornerVisible)||this.isPartRange(S,T)?this.cornerStyle.display="none":(this.cornerStyle.top=l+C-4+"px",this.cornerStyle.left=m+y-4+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="block",O=c(this.wot.wtTable.TABLE),T===this.wot.getSetting("totalColumns")-1&&(_=o.offsetLeft+p(o)>=d(O),_&&(this.cornerStyle.left=Math.floor(m+y-3-parseInt(this.cornerDefaultStyle.width)/2)+"px",this.cornerStyle.borderRightWidth=0)),S===this.wot.getSetting("totalRows")-1&&(_=o.offsetTop+g(o)>=h(O),_&&(this.cornerStyle.top=Math.floor(l+C-3-parseInt(this.cornerDefaultStyle.height)/2)+"px",this.cornerStyle.borderBottomWidth=0))),Handsontable.mobileBrowser&&this.updateMultipleSelectionHandlesPosition(R,E,l,m,y,C)}},disappear:function(){this.topStyle.display="none",this.leftStyle.display="none",this.bottomStyle.display="none",this.rightStyle.display="none",this.cornerStyle.display="none",Handsontable.mobileBrowser&&(this.selectionHandles.styles.topLeft.display="none",this.selectionHandles.styles.bottomRight.display="none")},hasSetting:function(e){return"function"==typeof e?e():!!e}},{}),window.WalkontableBorder=C},{"cell/coords":5,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"overlay/_base.js":11}],3:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewportColumnsCalculator:{get:function(){return r}},__esModule:{value:!0}});var o=new WeakMap,r=function(e,t,n,r,i,s,l){o.set(this,{viewportWidth:e,scrollOffset:t,totalColumns:n,columnWidthFn:r,overrideFn:i,onlyFullyVisible:s}),this.count=0,this.startColumn=null,this.endColumn=null,this.startPosition=null,this.stretchAllRatio=0,this.stretchLastWidth=0,this.stretch=l,this.totalTargetWidth=0,this.needVerifyLastColumnWidth=!0,this.stretchAllColumnsWidth=[],this.calculate()},i=r;$traceurRuntime.createClass(r,{calculate:function(){for(var e,t=0,n=!0,r=[],i=o.get(this),s=i.onlyFullyVisible,l=i.overrideFn,a=i.scrollOffset,u=i.totalColumns,c=i.viewportWidth,d=0;u>d;d++)if(e=this._getColumnWidth(d),a>=t&&!s&&(this.startColumn=d),t>=a&&a+c>=t+e&&(null==this.startColumn&&(this.startColumn=d),this.endColumn=d),r.push(t),t+=e,s||(this.endColumn=d),t>=a+c){n=!1;break}if(this.endColumn===u-1&&n)for(this.startColumn=this.endColumn;this.startColumn>0;){var h=r[this.endColumn]+e-r[this.startColumn-1];if((c>=h||!s)&&this.startColumn--,h>c)break}null!==this.startColumn&&l&&l(this),this.startPosition=r[this.startColumn],void 0==this.startPosition&&(this.startPosition=null),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)},refreshStretching:function(e){if("none"!==this.stretch){for(var t,n,r=0,i=o.get(this),s=i.totalColumns,l=0;s>l;l++)t=this._getColumnWidth(l),r+=t;this.totalTargetWidth=e,n=r-e,"all"===this.stretch&&0>n?(this.stretchAllRatio=e/r,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0):"last"===this.stretch&&e!==1/0&&(this.stretchLastWidth=-n+this._getColumnWidth(s-1))}},getStretchedColumnWidth:function(e,t){var n=null;return"all"===this.stretch&&0!==this.stretchAllRatio?n=this._getStretchedAllColumnWidth(e,t):"last"===this.stretch&&0!==this.stretchLastWidth&&(n=this._getStretchedLastColumnWidth(e)),n},_getStretchedAllColumnWidth:function(e,t){var n=0,r=o.get(this),i=r.totalColumns;if(this.stretchAllColumnsWidth[e]||(this.stretchAllColumnsWidth[e]=Math.round(t*this.stretchAllRatio)),this.stretchAllColumnsWidth.length===i&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(var s=0;sf;f++){var g=a(f);if(void 0===g&&(g=i.DEFAULT_HEIGHT),u>=e&&!s&&(this.startRow=f),e>=u&&u+d-h>=e+g&&(null===this.startRow&&(this.startRow=f),this.endRow=f),n.push(e),e+=g,s||(this.endRow=f),e>=u+d-h){t=!1;break}}if(this.endRow===c-1&&t)for(this.startRow=this.endRow;this.startRow>0;){var p=n[this.endRow]+g-n[this.startRow-1];if((d-h>=p||!s)&&this.startRow--,p>=d-h)break}null!==this.startRow&&l&&l(this),this.startPosition=n[this.startRow],void 0==this.startPosition&&(this.startPosition=null),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}},{get DEFAULT_HEIGHT(){return 23}}),window.WalkontableViewportRowsCalculator=r},{}],5:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellCoords:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t){"undefined"!=typeof e&&"undefined"!=typeof t?(this.row=e,this.col=t):(this.row=null,this.col=null)};$traceurRuntime.createClass(o,{isValid:function(e){return this.row<0||this.col<0?!1:this.row>=e.getSetting("totalRows")||this.col>=e.getSetting("totalColumns")?!1:!0},isEqual:function(e){return e===this?!0:this.row===e.row&&this.col===e.col},isSouthEastOf:function(e){return this.row>=e.row&&this.col>=e.col},isNorthWestOf:function(e){return this.row<=e.row&&this.col<=e.col},isSouthWestOf:function(e){return this.row>=e.row&&this.col<=e.col},isNorthEastOf:function(e){return this.row<=e.row&&this.col>=e.col}},{}),window.WalkontableCellCoords=o},{}],6:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableCellRange:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("cell/coords"),o&&o.__esModule&&o||{"default":o}).WalkontableCellCoords,i=function(e,t,n){this.highlight=e,this.from=t,this.to=n},s=i;$traceurRuntime.createClass(i,{isValid:function(e){return this.from.isValid(e)&&this.to.isValid(e)},isSingle:function(){return this.from.row===this.to.row&&this.from.col===this.to.col},getHeight:function(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1},getWidth:function(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1},includes:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.row<0&&(e.row=0),e.col<0&&(e.col=0),t.row<=e.row&&n.row>=e.row&&t.col<=e.col&&n.col>=e.col},includesRange:function(e){return this.includes(e.getTopLeftCorner())&&this.includes(e.getBottomRightCorner())},isEqual:function(e){return Math.min(this.from.row,this.to.row)==Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)==Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)==Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)==Math.max(e.from.col,e.to.col)},overlaps:function(e){return e.isSouthEastOf(this.getTopLeftCorner())&&e.isNorthWestOf(this.getBottomRightCorner())},isSouthEastOf:function(e){return this.getTopLeftCorner().isSouthEastOf(e)||this.getBottomRightCorner().isSouthEastOf(e)},isNorthWestOf:function(e){return this.getTopLeftCorner().isNorthWestOf(e)||this.getBottomRightCorner().isNorthWestOf(e)},expand:function(e){var t=this.getTopLeftCorner(),n=this.getBottomRightCorner();return e.rown.row||e.col>n.col?(this.from=new r(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=new r(Math.max(n.row,e.row),Math.max(n.col,e.col)),!0):!1},expandByRange:function(e){if(this.includesRange(e)||!this.overlaps(e))return!1;var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=(this.getTopRightCorner(),this.getBottomLeftCorner(),e.getTopLeftCorner()),i=e.getBottomRightCorner(),l=Math.min(t.row,o.row),a=Math.min(t.col,o.col),u=Math.max(n.row,i.row),c=Math.max(n.col,i.col),d=new r(l,a),h=new r(u,c),f=new s(d,d,h).isCorner(this.from,e),g=e.isEqual(new s(d,d,h));return f&&!g&&(this.from.col>d.col&&(d.col=c,h.col=a),this.from.row>d.row&&(d.row=u,h.row=l)),this.from=d,this.to=h,!0},getDirection:function(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0},setDirection:function(e){switch(e){case"NW-SE":this.from=this.getTopLeftCorner(),this.to=this.getBottomRightCorner();break;case"NE-SW":this.from=this.getTopRightCorner(),this.to=this.getBottomLeftCorner();break;case"SE-NW":this.from=this.getBottomRightCorner(),this.to=this.getTopLeftCorner();break;case"SW-NE":this.from=this.getBottomLeftCorner(),this.to=this.getTopRightCorner()}},getTopLeftCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},getBottomRightCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getTopRightCorner:function(){return new r(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))},getBottomLeftCorner:function(){return new r(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))},isCorner:function(e,t){return t&&t.includes(e)&&(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col))||this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col))||this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col))||this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))?!0:e.isEqual(this.getTopLeftCorner())||e.isEqual(this.getTopRightCorner())||e.isEqual(this.getBottomLeftCorner())||e.isEqual(this.getBottomRightCorner())},getOppositeCorner:function(e,t){if(!(e instanceof r))return!1;if(t&&t.includes(e)){if(this.getTopLeftCorner().isEqual(new r(t.from.row,t.from.col)))return this.getBottomRightCorner();if(this.getTopRightCorner().isEqual(new r(t.from.row,t.to.col)))return this.getBottomLeftCorner();if(this.getBottomLeftCorner().isEqual(new r(t.to.row,t.from.col)))return this.getTopRightCorner();if(this.getBottomRightCorner().isEqual(new r(t.to.row,t.to.col)))return this.getTopLeftCorner()}return e.isEqual(this.getBottomRightCorner())?this.getTopLeftCorner():e.isEqual(this.getTopLeftCorner())?this.getBottomRightCorner():e.isEqual(this.getTopRightCorner())?this.getBottomLeftCorner():e.isEqual(this.getBottomLeftCorner())?this.getTopRightCorner():void 0},getBordersSharedWith:function(e){if(!this.includesRange(e))return[];var t={top:Math.min(this.from.row,this.to.row),bottom:Math.max(this.from.row,this.to.row),left:Math.min(this.from.col,this.to.col),right:Math.max(this.from.col,this.to.col)},n={top:Math.min(e.from.row,e.to.row),bottom:Math.max(e.from.row,e.to.row),left:Math.min(e.from.col,e.to.col),right:Math.max(e.from.col,e.to.col)},o=[];return t.top==n.top&&o.push("top"),t.right==n.right&&o.push("right"),t.bottom==n.bottom&&o.push("bottom"),t.left==n.left&&o.push("left"),o},getInner:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)this.from.row===o&&this.from.col===i||this.to.row===o&&this.to.col===i||n.push(new r(o,i));return n},getAll:function(){for(var e=this.getTopLeftCorner(),t=this.getBottomRightCorner(),n=[],o=e.row;o<=t.row;o++)for(var i=e.col;i<=t.col;i++)e.row===o&&e.col===i?n.push(e):t.row===o&&t.col===i?n.push(t):n.push(new r(o,i));return n},forAll:function(e){for(var t=this.getTopLeftCorner(),n=this.getBottomRightCorner(),o=t.row;o<=n.row;o++)for(var r=t.col;r<=n.col;r++){var i=e(o,r);if(i===!1)return}}},{}),window.WalkontableCellRange=i},{"cell/coords":5}],7:[function(e,t,n){"use strict";Object.defineProperties(n,{Walkontable:{get:function(){return P}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f,g,p,m,w=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),v=w.addClass,b=w.fastInnerText,C=w.isVisible,y=w.removeClass,R=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).objectEach,E=(i=e("helpers/string"),i&&i.__esModule&&i||{"default":i}),S=E.toUpperCaseFirst,T=E.randomString,O=(s=e("event"),s&&s.__esModule&&s||{"default":s}).WalkontableEvent,_=(l=e("overlays"),l&&l.__esModule&&l||{"default":l}).WalkontableOverlays,M=(a=e("scroll"),a&&a.__esModule&&a||{"default":a}).WalkontableScroll,H=(u=e("settings"),u&&u.__esModule&&u||{"default":u}).WalkontableSettings,k=(c=e("table"),c&&c.__esModule&&c||{"default":c}).WalkontableTable,A=(d=e("viewport"),d&&d.__esModule&&d||{"default":d}).WalkontableViewport,P=((h=e("overlay/_base.js"),h&&h.__esModule&&h||{"default":h}).WalkontableOverlay,(f=e("overlay/top.js"),f&&f.__esModule&&f||{"default":f}).WalkontableTopOverlay,(g=e("overlay/left.js"),g&&g.__esModule&&g||{"default":g}).WalkontableLeftOverlay,(p=e("overlay/debug.js"),p&&p.__esModule&&p||{"default":p}).WalkontableDebugOverlay,(m=e("overlay/topLeftCorner.js"),m&&m.__esModule&&m||{"default":m}).WalkontableTopLeftCornerOverlay,function(e){var t=[];if(this.guid="wt_"+T(),e.cloneSource?(this.cloneSource=e.cloneSource,this.cloneOverlay=e.cloneOverlay,this.wtSettings=e.cloneSource.wtSettings,this.wtTable=new k(this,e.table,e.wtRootElement),this.wtScroll=new M(this),this.wtViewport=e.cloneSource.wtViewport,this.wtEvent=new O(this),this.selections=this.cloneSource.selections):(this.wtSettings=new H(this,e),this.wtTable=new k(this,e.table),this.wtScroll=new M(this),this.wtViewport=new A(this),this.wtEvent=new O(this),this.selections=this.getSetting("selections"),this.wtOverlays=new _(this),this.exportSettingsAsClassNames()),this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(var n=0,o=this.wtTable.THEAD.childNodes[0].childNodes.length;o>n;n++)t.push(this.wtTable.THEAD.childNodes[0].childNodes[n].innerHTML);this.getSetting("columnHeaders").length||this.update("columnHeaders",[function(e,n){b(n,t[e])}])}this.drawn=!1,this.drawInterrupted=!1});$traceurRuntime.createClass(P,{draw:function(){var e=void 0!==arguments[0]?arguments[0]:!1;return this.drawInterrupted=!1,e||C(this.wtTable.TABLE)?this.wtTable.draw(e):this.drawInterrupted=!0,this},getCell:function(e){var t=void 0!==arguments[1]?arguments[1]:!1;if(!t)return this.wtTable.getCell(e);var n=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),r=this.wtSettings.getSetting("fixedRowsBottom"),i=this.wtSettings.getSetting("fixedColumnsLeft");if(e.row=n-r){if(this.wtOverlays.bottomLeftCornerOverlay.clone)return this.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col=n-r&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)},update:function(e,t){return this.wtSettings.update(e,t)},scrollVertical:function(e){return this.wtOverlays.topOverlay.scrollTo(e),this.getSetting("onScrollVertically"),this},scrollHorizontal:function(e){return this.wtOverlays.leftOverlay.scrollTo(e),this.getSetting("onScrollHorizontally"),this},scrollViewport:function(e){return this.wtScroll.scrollViewport(e),this},getViewport:function(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]},getOverlayName:function(){return this.cloneOverlay?this.cloneOverlay.type:"master"},exportSettingsAsClassNames:function(){var e=this,t={rowHeaders:["array"],columnHeaders:["array"]},n=[],o=[];R(t,function(t,r){t.indexOf("array")>-1&&e.getSetting(r).length&&o.push("ht"+S(r)),n.push("ht"+S(r))}),y(this.wtTable.wtRootElement.parentNode,n),v(this.wtTable.wtRootElement.parentNode,o)},getSetting:function(e,t,n,o,r){return this.wtSettings.getSetting(e,t,n,o,r)},hasSetting:function(e){return this.wtSettings.has(e)},destroy:function(){this.wtOverlays.destroy(),this.wtEvent.destroy()}},{}),window.Walkontable=P},{event:8,"helpers/dom/element":45,"helpers/object":50,"helpers/string":52,"overlay/_base.js":11,"overlay/debug.js":12,"overlay/left.js":13,"overlay/top.js":14,"overlay/topLeftCorner.js":15,overlays:16,scroll:17,settings:19,table:20,viewport:22}],8:[function(e,t,n){"use strict";function o(e){var t=this,n=c(e);this.instance=e;var o=[null,null];this.dblClickTimeout=[null,null];var r,i,s=function(e){var n=t.parentCell(e.realTarget);a(e.realTarget,"corner")?t.instance.getSetting("onCellCornerMouseDown",e,e.realTarget):n.TD&&t.instance.hasSetting("onCellMouseDown")&&t.instance.getSetting("onCellMouseDown",e,n.coords,n.TD,t.instance),2!==e.button&&n.TD&&(o[0]=n.TD,clearTimeout(t.dblClickTimeout[0]),t.dblClickTimeout[0]=setTimeout(function(){o[0]=null},1e3))},d=function(e){t.instance.touchMoving=!0},h=function(e){n.addEventListener(this,"touchmove",d),t.checkIfTouchMove=setTimeout(function(){return t.instance.touchMoving===!0?(t.instance.touchMoving=void 0,void n.removeEventListener("touchmove",d,!1)):void s(e)},30)},f=function(e){var n,o;t.instance.hasSetting("onCellMouseOver")&&(n=t.instance.wtTable.TABLE,o=l(e.realTarget,["TD","TH"],n),o&&o!==i&&u(o,n)&&(i=o,t.instance.getSetting("onCellMouseOver",e,t.instance.wtTable.getCoords(o),o,t.instance)))},g=function(e){if(2!==e.button){var n=t.parentCell(e.realTarget);n.TD===o[0]&&n.TD===o[1]?(a(e.realTarget,"corner")?t.instance.getSetting("onCellCornerDblClick",e,n.coords,n.TD,t.instance):t.instance.getSetting("onCellDblClick",e,n.coords,n.TD,t.instance),o[0]=null,o[1]=null):n.TD===o[0]&&(o[1]=n.TD,clearTimeout(t.dblClickTimeout[1]),t.dblClickTimeout[1]=setTimeout(function(){o[1]=null},500))}},p=function(e){clearTimeout(r),e.preventDefault(),g(e)};if(n.addEventListener(this.instance.wtTable.holder,"mousedown",s),n.addEventListener(this.instance.wtTable.TABLE,"mouseover",f),n.addEventListener(this.instance.wtTable.holder,"mouseup",g),this.instance.wtTable.holder.parentNode.parentNode&&Handsontable.mobileBrowser&&!t.instance.wtTable.isWorkingOnClone()){var m="."+this.instance.wtTable.holder.parentNode.className.split(" ").join(".");n.addEventListener(this.instance.wtTable.holder,"touchstart",function(e){t.instance.touchApplied=!0,u(e.target,m)&&h.call(e.target,e)}),n.addEventListener(this.instance.wtTable.holder,"touchend",function(e){t.instance.touchApplied=!1,u(e.target,m)&&p.call(e.target,e)}),t.instance.momentumScrolling||(t.instance.momentumScrolling={}),n.addEventListener(this.instance.wtTable.holder,"scroll",function(e){clearTimeout(t.instance.momentumScrolling._timeout),t.instance.momentumScrolling.ongoing||t.instance.getSetting("onBeforeTouchScroll"),t.instance.momentumScrolling.ongoing=!0,t.instance.momentumScrolling._timeout=setTimeout(function(){t.instance.touchApplied||(t.instance.momentumScrolling.ongoing=!1,t.instance.getSetting("onAfterMomentumScroll"))},200)})}n.addEventListener(window,"resize",function(){"none"!==t.instance.getSetting("stretchH")&&t.instance.draw()}),this.destroy=function(){clearTimeout(this.dblClickTimeout[0]),clearTimeout(this.dblClickTimeout[1]),n.destroy()}}Object.defineProperties(n,{WalkontableEvent:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),l=s.closest,a=s.hasClass,u=s.isChildOf,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager;o.prototype.parentCell=function(e){var t={},n=this.instance.wtTable.TABLE,o=l(e,["TD","TH"],n);return o&&u(o,n)?(t.coords=this.instance.wtTable.getCoords(o),t.TD=o):a(e,"wtBorder")&&a(e,"current")?(t.coords=this.instance.selections.current.cellRange.highlight,t.TD=this.instance.wtTable.getCell(t.coords)):a(e,"wtBorder")&&a(e,"area")&&this.instance.selections.area.cellRange&&(t.coords=this.instance.selections.area.cellRange.to,t.TD=this.instance.wtTable.getCell(t.coords)),t},window.WalkontableEvent=o},{eventManager:41,"helpers/dom/element":45}],9:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableColumnFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleRowHeadedColumnToSourceColumn:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceColumnToVisibleRowHeadedColumn:function(e){ +return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableColumnFilter=o},{}],10:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableRowFilter:{get:function(){return o}},__esModule:{value:!0}});var o=function(e,t,n){this.offset=e,this.total=t,this.countTH=n};$traceurRuntime.createClass(o,{offsetted:function(e){return e+this.offset},unOffsetted:function(e){return e-this.offset},renderedToSource:function(e){return this.offsetted(e)},sourceToRendered:function(e){return this.unOffsetted(e)},offsettedTH:function(e){return e-this.countTH},unOffsettedTH:function(e){return e+this.countTH},visibleColHeadedRowToSourceRow:function(e){return this.renderedToSource(this.offsettedTH(e))},sourceRowToVisibleColHeadedRow:function(e){return this.unOffsettedTH(this.sourceToRendered(e))}},{}),window.WalkontableRowFilter=o},{}],11:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlay:{get:function(){return h}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.getScrollableElement,a=s.getTrimmingContainer,u=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,c=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,d={},h=function(e){u(this,"wot",e,{writable:!1}),this.instance=this.wot,this.type="",this.TABLE=this.wot.wtTable.TABLE,this.hider=this.wot.wtTable.hider,this.spreader=this.wot.wtTable.spreader,this.holder=this.wot.wtTable.holder,this.wtRootElement=this.wot.wtTable.wtRootElement,this.trimmingContainer=a(this.hider.parentNode.parentNode),this.mainTableScrollableElement=l(this.wot.wtTable.TABLE),this.needFullRender=this.shouldBeRendered(),this.areElementSizesAdjusted=!1},f=h;$traceurRuntime.createClass(h,{shouldBeRendered:function(){return!0},makeClone:function(e){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error('Clone type "'+e+'" is not supported.');var t=document.createElement("DIV"),n=document.createElement("TABLE");return t.className="ht_clone_"+e+" handsontable",t.style.position="absolute",t.style.top=0,t.style.left=0,t.style.overflow="hidden",n.className=this.wot.wtTable.TABLE.className,t.appendChild(n),this.type=e,this.wot.wtTable.wtRootElement.parentNode.appendChild(t),new Walkontable({cloneSource:this.wot,cloneOverlay:this,table:n})},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.shouldBeRendered();this.clone&&(this.needFullRender||t)&&this.clone.draw(e),this.needFullRender=t},destroy:function(){c(this.clone).destroy()}},{get CLONE_TOP(){return"top"},get CLONE_BOTTOM(){return"bottom"},get CLONE_LEFT(){return"left"},get CLONE_TOP_LEFT_CORNER(){return"top_left_corner"},get CLONE_BOTTOM_LEFT_CORNER(){return"bottom_left_corner"},get CLONE_DEBUG(){return"debug"},get CLONE_TYPES(){return[f.CLONE_TOP,f.CLONE_BOTTOM,f.CLONE_LEFT,f.CLONE_TOP_LEFT_CORNER,f.CLONE_BOTTOM_LEFT_CORNER,f.CLONE_DEBUG]},registerOverlay:function(e,t){if(-1===f.CLONE_TYPES.indexOf(e))throw new Error("Unsupported overlay ("+e+").");d[e]=t},createOverlay:function(e,t){return new d[e](t)},isOverlayTypeOf:function(e,t){return e&&d[t]?e instanceof d[t]:!1}}),window.WalkontableOverlay=h},{eventManager:41,"helpers/dom/element":45,"helpers/object":50}],12:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableDebugOverlay:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,s=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,l=function(e){$traceurRuntime.superConstructor(a).call(this,e),this.clone=this.makeClone(s.CLONE_DEBUG),this.clone.wtTable.holder.style.opacity=.4,this.clone.wtTable.holder.style.textShadow="0 0 2px #ff0000",i(this.clone.wtTable.holder.parentNode,"wtDebugVisible")},a=l;$traceurRuntime.createClass(l,{},{},s),window.WalkontableDebugOverlay=l,s.registerOverlay(s.CLONE_DEBUG,l)},{_base:11,"helpers/dom/element":45}],13:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableLeftOverlay:{get:function(){return p}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,l=i.getScrollbarWidth,a=i.getScrollLeft,u=i.getWindowScrollTop,c=i.hasClass,d=i.outerWidth,h=i.removeClass,f=i.setOverlayPosition,g=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(g.CLONE_LEFT)},m=p;$traceurRuntime.createClass(p,{shouldBeRendered:function(){return this.wot.getSetting("fixedColumnsLeft")||this.wot.getSetting("rowHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.left),s=Math.ceil(r.right);o=this.wot.wtTable.hider.style.top,o=""===o?0:o,n=0>i&&s-e.offsetWidth>0?-i:0,t=n,n+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(e,u()):this.mainTableScrollableElement.scrollLeft=e},onScroll:function(){this.wot.getSetting("onScrollHorizontally")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.defaultColumnWidth;t>e;)n+=this.wot.wtTable.getStretchedColumnWidth(e)||o,e++;return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientHeight===t.offsetHeight?0:l(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.height=this.wot.wtViewport.getWorkspaceHeight()-n+"px"),this.clone.wtTable.holder.style.height=r.height,e=d(this.clone.wtTable.TABLE),r.width=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=l();this.clone.wtTable.hider.style.height=this.hider.style.height,this.clone.wtTable.holder.style.height=this.clone.wtTable.holder.parentNode.style.height,0===e&&(e=30),this.clone.wtTable.holder.style.width=parseInt(this.clone.wtTable.holder.parentNode.style.width,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalColumns");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style.left="0"}this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.top=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;t&&r.offsetWidth!==r.clientWidth&&(i=l()),t?(n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportWidth()):n+=this.sumCellSizes(this.wot.getSetting("fixedColumnsLeft"),e),n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.trimmingContainer===window?this.wot.wtTable.holderOffset.left:0},getScrollPosition:function(){return a(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){var t=this.wot.wtTable.holder.parentNode,n=this.wot.getSetting("rowHeaders"),o=this.wot.getSetting("fixedColumnsLeft");if(o&&!n.length)s(t,"innerBorderLeft");else if(!o&&n.length){var r=c(t,"innerBorderLeft");e?s(t,"innerBorderLeft"):h(t,"innerBorderLeft"),(!r&&e||r&&!e)&&this.wot.wtOverlays.adjustElementsSize()}}},{},g),window.WalkontableLeftOverlay=p,g.registerOverlay(g.CLONE_LEFT,p)},{_base:11,"helpers/dom/element":45}],14:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTopOverlay:{get:function(){return p}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.addClass,l=i.getScrollbarWidth,a=i.getScrollTop,u=i.getWindowScrollLeft,c=i.hasClass,d=i.outerHeight,h=i.removeClass,f=i.setOverlayPosition,g=(r=e("_base"),r&&r.__esModule&&r||{"default":r}).WalkontableOverlay,p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.clone=this.makeClone(g.CLONE_TOP)},m=p;$traceurRuntime.createClass(p,{shouldBeRendered:function(){return this.wot.getSetting("fixedRowsTop")||this.wot.getSetting("columnHeaders").length?!0:!1},resetFixedPosition:function(){if(this.needFullRender&&this.wot.wtTable.holder.parentNode){var e=this.clone.wtTable.holder.parentNode,t=0;if(this.wot.wtOverlays.leftOverlay.trimmingContainer===window){var n,o,r=this.wot.wtTable.hider.getBoundingClientRect(),i=Math.ceil(r.top),s=Math.ceil(r.bottom);n=this.wot.wtTable.hider.style.left,n=""===n?0:n,o=0>i&&s-e.offsetHeight>0?-i:0,t=o,o+="px",f(e,n,o)}else t=this.getScrollPosition();this.adjustHeaderBordersPosition(t),this.adjustElementsSize()}},setScrollPosition:function(e){this.mainTableScrollableElement===window?window.scrollTo(u(),e):this.mainTableScrollableElement.scrollTop=e},onScroll:function(){this.wot.getSetting("onScrollVertically")},sumCellSizes:function(e,t){for(var n=0,o=this.wot.wtSettings.settings.defaultRowHeight;t>e;){var r=this.wot.wtTable.getRowHeight(e);n+=void 0===r?o:r,e++}return n},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1;(this.needFullRender||e)&&(this.adjustRootElementSize(),this.adjustRootChildrenSize(),e||(this.areElementSizesAdjusted=!0))},adjustRootElementSize:function(){var e,t=this.wot.wtTable.holder,n=t.clientWidth===t.offsetWidth?0:l(),o=this.clone.wtTable.holder.parentNode,r=o.style;this.trimmingContainer!==window&&(r.width=this.wot.wtViewport.getWorkspaceWidth()-n+"px"),this.clone.wtTable.holder.style.width=r.width,e=d(this.clone.wtTable.TABLE),r.height=(0===e?e:e+4)+"px"},adjustRootChildrenSize:function(){var e=l();this.clone.wtTable.hider.style.width=this.hider.style.width,this.clone.wtTable.holder.style.width=this.clone.wtTable.holder.parentNode.style.width,0===e&&(e=30),this.clone.wtTable.holder.style.height=parseInt(this.clone.wtTable.holder.parentNode.style.height,10)+e+"px"},applyToDOM:function(){var e=this.wot.getSetting("totalRows");if(this.areElementSizesAdjusted||this.adjustElementsSize(),"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=this.wot.wtViewport.rowsRenderCalculator.startPosition+"px";else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()},syncOverlayOffset:function(){"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.left=this.wot.wtViewport.columnsRenderCalculator.startPosition+"px":this.clone.wtTable.spreader.style.left=""},scrollTo:function(e,t){var n=this.getTableParentOffset(),o=this.wot.cloneSource?this.wot.cloneSource:this.wot,r=o.wtTable.holder,i=0;if(t&&r.offsetHeight!==r.clientHeight&&(i=l()),t){var s=this.wot.getSetting("fixedRowsBottom"),a=(this.wot.getSetting("fixedRowsTop"),this.wot.getSetting("totalRows"));n+=this.sumCellSizes(0,e+1),n-=this.wot.wtViewport.getViewportHeight()-this.sumCellSizes(a-s,a),n+=1}else n+=this.sumCellSizes(this.wot.getSetting("fixedRowsTop"),e);n+=i,this.setScrollPosition(n)},getTableParentOffset:function(){return this.mainTableScrollableElement===window?this.wot.wtTable.holderOffset.top:0},getScrollPosition:function(){return a(this.mainTableScrollableElement)},adjustHeaderBordersPosition:function(e){if(0===this.wot.getSetting("fixedRowsTop")&&this.wot.getSetting("columnHeaders").length>0){var t=this.wot.wtTable.holder.parentNode,n=c(t,"innerBorderTop");e?s(t,"innerBorderTop"):h(t,"innerBorderTop"),(!n&&e||n&&!e)&&this.wot.wtOverlays.adjustElementsSize()}if(0===this.wot.getSetting("rowHeaders").length){var o=this.clone.wtTable.THEAD.querySelectorAll("th:nth-of-type(2)");if(o)for(var r=0;rc&&h-e.offsetWidth>0?-c+"px":"0",r=0>u&&d-e.offsetHeight>0?-u+"px":"0",a(e,o,r)}e.style.height=(0===t?t:t+4)+"px",e.style.width=(0===n?n:n+4)+"px"}}},{},u),window.WalkontableTopLeftCornerOverlay=c,u.registerOverlay(u.CLONE_TOP_LEFT_CORNER,c)},{_base:11,"helpers/dom/element":45}],16:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableOverlays:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.getScrollableElement,a=s.getScrollbarWidth,u=s.getScrollLeft,c=s.getScrollTop,d=(r=e("helpers/unicode"),r&&r.__esModule&&r||{"default":r}).isKey,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=function(e){this.wot=e,this.instance=this.wot,this.eventManager=new h(this.wot),this.wot.update("scrollbarWidth",a()),this.wot.update("scrollbarHeight",a()),this.mainTableScrollableElement=l(this.wot.wtTable.TABLE),this.topOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP,this.wot),"undefined"==typeof WalkontableBottomOverlay?this.bottomOverlay={needFullRender:!1}:this.bottomOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM,this.wot),this.leftOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_LEFT,this.wot),this.topOverlay.needFullRender&&this.leftOverlay.needFullRender&&(this.topLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_TOP_LEFT_CORNER,this.wot)),this.bottomOverlay.needFullRender&&this.leftOverlay.needFullRender&&"undefined"!=typeof WalkontableBottomLeftCornerOverlay?this.bottomLeftCornerOverlay=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER,this.wot):this.bottomLeftCornerOverlay={needFullRender:!1},this.wot.getSetting("debug")&&(this.debug=WalkontableOverlay.createOverlay(WalkontableOverlay.CLONE_DEBUG,this.wot)),this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.overlayScrollPositions={master:{top:0,left:0},top:{top:null,left:0},bottom:{top:null,left:0},left:{top:0,left:null}},this.registerListeners()};$traceurRuntime.createClass(f,{refreshAll:function(){if(this.wot.drawn){if(!this.wot.wtTable.holder.parentNode)return void this.destroy();this.wot.draw(!0),this.topOverlay.onScroll(),this.leftOverlay.onScroll()}},registerListeners:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"keydown",function(t){return e.onKeyDown(t)}),this.eventManager.addEventListener(document.documentElement,"keyup",function(){return e.onKeyUp()}),this.eventManager.addEventListener(document,"visibilitychange",function(){return e.onKeyUp()}),this.eventManager.addEventListener(this.mainTableScrollableElement,"scroll",function(t){return e.onTableScroll(t)}),this.topOverlay.needFullRender&&(this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.topOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.bottomOverlay.needFullRender&&(this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.bottomOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.leftOverlay.needFullRender&&(this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"scroll",function(t){return e.onTableScroll(t)}),this.eventManager.addEventListener(this.leftOverlay.clone.wtTable.holder,"wheel",function(t){return e.onTableScroll(t)})),this.topOverlay.trimmingContainer!==window&&this.leftOverlay.trimmingContainer!==window&&this.eventManager.addEventListener(window,"wheel",function(t){var n,o=t.wheelDeltaY||t.deltaY,r=t.wheelDeltaX||t.deltaX;e.topOverlay.clone.wtTable.holder.contains(t.realTarget)?n="top":e.bottomOverlay.clone&&e.bottomOverlay.clone.wtTable.holder.contains(t.realTarget)?n="bottom":e.leftOverlay.clone.wtTable.holder.contains(t.realTarget)&&(n="left"),"top"==n&&0!==o?t.preventDefault():"left"==n&&0!==r?t.preventDefault():"bottom"==n&&0!==o&&t.preventDefault()})},onTableScroll:function(e){Handsontable.mobileBrowser||(!this.keyPressed||this.mainTableScrollableElement===window||e.target.contains(this.mainTableScrollableElement))&&("scroll"===e.type?this.syncScrollPositions(e):this.translateMouseWheelToScroll(e))},onKeyDown:function(e){this.keyPressed=d(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")},onKeyUp:function(){this.keyPressed=!1},translateMouseWheelToScroll:function(e){for(var t,n=this.topOverlay.clone.wtTable.holder,o=this.bottomOverlay.clone?this.bottomOverlay.clone.wtTable.holder:null,r=this.leftOverlay.clone.wtTable.holder,i={type:"wheel"},s=e.target,l=e.wheelDeltaY||-1*e.deltaY,a=e.wheelDeltaX||-1*e.deltaX;s!=document&&null!=s;){if(s.className.indexOf("wtHolder")>-1){t=s;break}s=s.parentNode}return i.target=t,t==n?this.syncScrollPositions(i,-.2*l):t==o?this.syncScrollPositions(i,-.2*l):t==r&&this.syncScrollPositions(i,-.2*a),!1},syncScrollPositions:function(e){var t=void 0!==arguments[1]?arguments[1]:null;if(!this.destroyed){if(0===arguments.length)return void this.syncScrollWithMaster();var n,o,r,i=this.mainTableScrollableElement,s=e.target,l=0,a=!1;this.topOverlay.needFullRender&&(n=this.topOverlay.clone.wtTable.holder),this.bottomOverlay.needFullRender&&(r=this.bottomOverlay.clone.wtTable.holder),this.leftOverlay.needFullRender&&(o=this.leftOverlay.clone.wtTable.holder),s===document&&(s=window),s===i?(l=u(s),this.overlayScrollPositions.master.left!==l&&(this.overlayScrollPositions.master.left=l,a=!0,n&&(n.scrollLeft=l),r&&(r.scrollLeft=l)),l=c(s),this.overlayScrollPositions.master.top!==l&&(this.overlayScrollPositions.master.top=l,a=!0,o&&(o.scrollTop=l))):s===r?(l=u(s),this.overlayScrollPositions.bottom.left!==l&&(this.overlayScrollPositions.bottom.left=l,a=!0,i.scrollLeft=l),null!==t&&(a=!0,i.scrollTop+=t)):s===n?(l=u(s),this.overlayScrollPositions.top.left!==l&&(this.overlayScrollPositions.top.left=l,a=!0,i.scrollLeft=l),null!==t&&(a=!0,i.scrollTop+=t)):s===o&&(l=c(s),this.overlayScrollPositions.left.top!==l&&(this.overlayScrollPositions.left.top=l,a=!0,i.scrollTop=l),null!==t&&(a=!0,i.scrollLeft+=t)),!this.keyPressed&&a&&"scroll"===e.type&&this.refreshAll()}},syncScrollWithMaster:function(){var e=this.topOverlay.mainTableScrollableElement;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=e.scrollLeft),this.leftOverlay.needFullRender&&(this.leftOverlay.clone.wtTable.holder.scrollTop=e.scrollTop)},destroy:function(){this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.leftOverlay.destroy(),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.destroy(),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.destroy(),this.debug&&this.debug.destroy(),this.destroyed=!0},refresh:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted){var t=this.wot.wtTable.wtRootElement.parentNode||this.wot.wtTable.wtRootElement,n=t.clientWidth,o=t.clientHeight;(n!==this.spreaderLastSize.width||o!==this.spreaderLastSize.height)&&(this.spreaderLastSize.width=n,this.spreaderLastSize.height=o,this.adjustElementsSize())}this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.leftOverlay.refresh(e),this.topOverlay.refresh(e),this.topLeftCornerOverlay&&this.topLeftCornerOverlay.refresh(e),this.bottomLeftCornerOverlay&&this.bottomLeftCornerOverlay.clone&&this.bottomLeftCornerOverlay.refresh(e),this.debug&&this.debug.refresh(e)},adjustElementsSize:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=this.wot.getSetting("totalColumns"),n=this.wot.getSetting("totalRows"),o=this.wot.wtViewport.getRowHeaderWidth(),r=this.wot.wtViewport.getColumnHeaderHeight(),i=this.wot.wtTable.hider.style;i.width=o+this.leftOverlay.sumCellSizes(0,t)+"px",i.height=r+this.topOverlay.sumCellSizes(0,n)+1+"px",this.topOverlay.adjustElementsSize(e),this.leftOverlay.adjustElementsSize(e),this.bottomOverlay.clone&&this.bottomOverlay.adjustElementsSize(e)},applyToDOM:function(){this.topOverlay.areElementSizesAdjusted&&this.leftOverlay.areElementSizesAdjusted||this.adjustElementsSize(),this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.leftOverlay.applyToDOM()}},{}),window.WalkontableOverlays=f},{eventManager:41,"helpers/dom/element":45,"helpers/unicode":53}],17:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableScroll:{get:function(){return o}},__esModule:{value:!0}});var o=function(e){this.wot=e,this.instance=e};$traceurRuntime.createClass(o,{scrollViewport:function(e){if(this.wot.drawn){var t=this.wot.getSetting("totalRows"),n=this.wot.getSetting("totalColumns"),o=this.instance.getSetting("fixedRowsTop"),r=this.instance.getSetting("fixedRowsBottom"),i=this.instance.getSetting("fixedColumnsLeft");if(e.row<0||e.row>t-1)throw new Error("row "+e.row+" does not exist");if(e.col<0||e.col>n-1)throw new Error("column "+e.col+" does not exist");e.row>this.instance.wtTable.getLastVisibleRow()&&e.row=o&&e.rowthis.instance.wtTable.getLastVisibleColumn()?this.wot.wtOverlays.leftOverlay.scrollTo(e.col,!0):e.col>=i&&e.colu;u++)o=e.wtTable.columnFilter.renderedToSource(u),o>=a[1]&&o<=a[3]&&(r=e.wtTable.getColumnHeader(o),r&&this.settings.highlightColumnClassName&&l(r,this.settings.highlightColumnClassName));for(var c=0;i>c;c++){n=e.wtTable.rowFilter.renderedToSource(c),n>=a[0]&&n<=a[2]&&(r=e.wtTable.getRowHeader(n),r&&this.settings.highlightRowClassName&&l(r,this.settings.highlightRowClassName));for(var d=0;s>d;d++)o=e.wtTable.columnFilter.renderedToSource(d),n>=a[0]&&n<=a[2]&&o>=a[1]&&o<=a[3]?this.settings.className&&this.addClassAtCoords(e,n,o,this.settings.className):n>=a[0]&&n<=a[2]?this.settings.highlightRowClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightRowClassName):o>=a[1]&&o<=a[3]&&this.settings.highlightColumnClassName&&this.addClassAtCoords(e,n,o,this.settings.highlightColumnClassName)}if(e.getSetting("onBeforeDrawBorders",a,this.settings.className),this.settings.border){var h=this.getBorder(e);h&&h.appear(a)}}}},{}),window.WalkontableSelection=d},{border:2,"cell/coords":5,"cell/range":6,"helpers/dom/element":45}],19:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableSettings:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).fastInnerText,i=function(e,t){var n=this;this.wot=e,this.instance=e,this.defaults={table:void 0,debug:!1,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,data:void 0,fixedColumnsLeft:0,fixedRowsTop:0,fixedRowsBottom:0,minSpareRows:0,rowHeaders:function(){return[]},columnHeaders:function(){return[]},totalRows:void 0,totalColumns:void 0,cellRenderer:function(e,t,o){var i=n.getSetting("data",e,t);r(o,void 0===i||null===i?"":i)},columnWidth:function(e){},rowHeight:function(e){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellMouseOver:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeDrawBorders:null,onScrollVertically:null,onScrollHorizontally:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,scrollbarWidth:10,scrollbarHeight:10,renderAllRows:!1,groups:!1},this.settings={};for(var o in this.defaults)if(this.defaults.hasOwnProperty(o))if(void 0!==t[o])this.settings[o]=t[o];else{if(void 0===this.defaults[o])throw new Error('A required setting "'+o+'" was not provided');this.settings[o]=this.defaults[o]}};$traceurRuntime.createClass(i,{update:function(e,t){if(void 0===t)for(var n in e)e.hasOwnProperty(n)&&(this.settings[n]=e[n]);else this.settings[e]=t;return this.wot},getSetting:function(e,t,n,o,r){return"function"==typeof this.settings[e]?this.settings[e](t,n,o,r):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]},has:function(e){return!!this.settings[e]}},{}),window.WalkontableSettings=i},{"helpers/dom/element":45}],20:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableTable:{get:function(){return y}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.getStyle,d=u.getTrimmingContainer,h=u.hasClass,f=u.index,g=u.offset,p=u.removeClass,m=u.removeTextNodes,w=(u.overlayContainsElement,(r=e("cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords),v=((i=e("cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange,(s=e("filter/column"),s&&s.__esModule&&s||{"default":s}).WalkontableColumnFilter),b=(l=e("filter/row"),l&&l.__esModule&&l||{"default":l}).WalkontableRowFilter,C=(a=e("tableRenderer"),a&&a.__esModule&&a||{"default":a}).WalkontableTableRenderer,y=function(e,t){this.wot=e,this.instance=this.wot,this.TABLE=t,this.TBODY=null,this.THEAD=null,this.COLGROUP=null,this.tableOffset=0,this.holderOffset=0,m(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.colgroupChildrenLength=this.COLGROUP.childNodes.length,this.theadChildrenLength=this.THEAD.firstChild?this.THEAD.firstChild.childNodes.length:0,this.tbodyChildrenLength=this.TBODY.childNodes.length,this.rowFilter=null,this.columnFilter=null};$traceurRuntime.createClass(y,{fixTableDomTree:function(){this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=document.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=document.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=document.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD)),this.wot.getSetting("columnHeaders").length&&!this.THEAD.childNodes.length&&this.THEAD.appendChild(document.createElement("TR"))},createSpreader:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtSpreader",n&&n.insertBefore(t,e),t.appendChild(e)),t.style.position="relative",t},createHider:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.className="wtHider",n&&n.insertBefore(t,e),t.appendChild(e)),t},createHolder:function(e){var t,n=e.parentNode;return n&&1===n.nodeType&&h(n,"wtHolder")||(t=document.createElement("div"),t.style.position="relative",t.className="wtHolder",n&&n.insertBefore(t,e),this.isWorkingOnClone()||(t.parentNode.className+="ht_master handsontable"),t.appendChild(e)),t},alignOverlaysWithTrimmingContainer:function(){var e=d(this.wtRootElement);this.isWorkingOnClone()||(this.holder.parentNode.style.position="relative",e===window?(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible"):(this.holder.style.width=c(e,"width"),this.holder.style.height=c(e,"height"),this.holder.style.overflow=""))},isWorkingOnClone:function(){return!!this.wot.cloneSource},draw:function(e){var t=this.instance.getSetting("totalRows");if(this.isWorkingOnClone()||(this.holderOffset=g(this.holder),e=this.wot.wtViewport.createRenderCalculators(e)),e)this.isWorkingOnClone()||this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays&&this.wot.wtOverlays.refresh(!0);else{this.isWorkingOnClone()?this.tableOffset=this.wot.cloneSource.wtTable.tableOffset:this.tableOffset=g(this.TABLE);var n;n=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?0:WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.instance.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?t-this.wot.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.startRow;var o;o=WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?0:this.wot.wtViewport.columnsRenderCalculator.startColumn, +this.rowFilter=new b(n,t,this.wot.getSetting("columnHeaders").length),this.columnFilter=new v(o,this.wot.getSetting("totalColumns"),this.wot.getSetting("rowHeaders").length),this._doDraw(),this.alignOverlaysWithTrimmingContainer()}return this.refreshSelections(e),this.isWorkingOnClone()||(this.wot.wtOverlays.topOverlay.resetFixedPosition(),this.wot.wtOverlays.bottomOverlay.clone&&this.wot.wtOverlays.bottomOverlay.resetFixedPosition(),this.wot.wtOverlays.leftOverlay.resetFixedPosition(),this.wot.wtOverlays.topLeftCornerOverlay&&this.wot.wtOverlays.topLeftCornerOverlay.resetFixedPosition(),this.instance.wtOverlays.bottomLeftCornerOverlay&&this.instance.wtOverlays.bottomLeftCornerOverlay.clone&&this.wot.wtOverlays.bottomLeftCornerOverlay.resetFixedPosition()),this.wot.drawn=!0,this},_doDraw:function(){var e=new C(this);e.render()},removeClassFromCells:function(e){for(var t=this.TABLE.querySelectorAll("."+e),n=0,o=t.length;o>n;n++)p(t[n],e)},refreshSelections:function(e){if(this.wot.selections){var t=this.wot.selections.length;if(e)for(var n=0;t>n;n++)this.wot.selections[n].settings.className&&this.removeClassFromCells(this.wot.selections[n].settings.className),this.wot.selections[n].settings.highlightRowClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightRowClassName),this.wot.selections[n].settings.highlightColumnClassName&&this.removeClassFromCells(this.wot.selections[n].settings.highlightColumnClassName);for(var o=0;t>o;o++)this.wot.selections[o].draw(this.wot,e)}},getCell:function(e){if(this.isRowBeforeRenderedRows(e.row))return-1;if(this.isRowAfterRenderedRows(e.row))return-2;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e.row)];return t?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e.col)]:void 0},getColumnHeader:function(e){var t=void 0!==arguments[1]?arguments[1]:0,n=this.THEAD.childNodes[t];return n?n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]:void 0},getRowHeader:function(e){if(0===this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0))return null;var t=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)];return t?t.childNodes[0]:void 0},getCoords:function(e){var t=e.parentNode,n=f(t);n=t.parentNode===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);var o=this.columnFilter.visibleRowHeadedColumnToSourceColumn(e.cellIndex);return new w(n,o)},getTrForRow:function(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]},getFirstRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.startRow},getFirstVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.startRow},getFirstRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.startColumn},getFirstVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.startColumn},getLastRenderedRow:function(){return this.wot.wtViewport.rowsRenderCalculator.endRow},getLastVisibleRow:function(){return this.wot.wtViewport.rowsVisibleCalculator.endRow},getLastRenderedColumn:function(){return this.wot.wtViewport.columnsRenderCalculator.endColumn},getLastVisibleColumn:function(){return this.wot.wtViewport.columnsVisibleCalculator.endColumn},isRowBeforeRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)<0&&e>=0},isRowAfterViewport:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastVisibleRow()},isRowAfterRenderedRows:function(e){return this.rowFilter.sourceToRendered(e)>this.getLastRenderedRow()},isColumnBeforeViewport:function(e){return this.columnFilter.sourceToRendered(e)<0&&e>=0},isColumnAfterViewport:function(e){return this.columnFilter.sourceToRendered(e)>this.getLastVisibleColumn()},isLastRowFullyVisible:function(){return this.getLastVisibleRow()===this.getLastRenderedRow()},isLastColumnFullyVisible:function(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()},getRenderedColumnsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalColumns"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_LEFT)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.wot.getSetting("fixedColumnsLeft"):this.wot.wtViewport.columnsRenderCalculator.count},getRenderedRowsCount:function(){return WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_DEBUG)?this.wot.getSetting("totalRows"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_TOP_LEFT_CORNER)?this.wot.getSetting("fixedRowsTop"):WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER)?this.instance.getSetting("fixedRowsBottom"):this.wot.wtViewport.rowsRenderCalculator.count},getVisibleRowsCount:function(){return this.wot.wtViewport.rowsVisibleCalculator.count},allRowsInViewport:function(){return this.wot.getSetting("totalRows")==this.getVisibleRowsCount()},getRowHeight:function(e){var t=this.wot.wtSettings.settings.rowHeight(e),n=this.wot.wtViewport.oversizedRows[e];return void 0!==n&&(t=void 0===t?n:Math.max(t,n)),t},getColumnHeaderHeight:function(e){var t=this.wot.wtSettings.settings.defaultRowHeight,n=this.wot.wtViewport.oversizedColumnHeaders[e];return void 0!==n&&(t=t?Math.max(t,n):n),t},getVisibleColumnsCount:function(){return this.wot.wtViewport.columnsVisibleCalculator.count},allColumnsInViewport:function(){return this.wot.getSetting("totalColumns")==this.getVisibleColumnsCount()},getColumnWidth:function(e){var t=this.wot.wtSettings.settings.columnWidth;return"function"==typeof t?t=t(e):"object"==typeof t&&(t=t[e]),t||this.wot.wtSettings.settings.defaultColumnWidth},getStretchedColumnWidth:function(e){var t=this.getColumnWidth(e),n=-1===[void 0,null].indexOf(t)?t:this.instance.wtSettings.settings.defaultColumnWidth,o=this.wot.wtViewport.columnsRenderCalculator;if(o){var r=o.getStretchedColumnWidth(e,n);r&&(n=r)}return n}},{}),window.WalkontableTable=y},{"cell/coords":5,"cell/range":6,"filter/column":9,"filter/row":10,"helpers/dom/element":45,tableRenderer:21}],21:[function(e,t,n){"use strict";function o(e,t){var n=document.createElement("TH");return t.insertBefore(n,e),t.removeChild(e),n}function r(e,t){var n=document.createElement("TD");return t.insertBefore(n,e),t.removeChild(e),n}Object.defineProperties(n,{WalkontableTableRenderer:{get:function(){return h}},__esModule:{value:!0}});var i,s=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),l=s.addClass,a=s.empty,u=s.getScrollbarWidth,c=s.hasClass,d=s.innerHeight,h=function(e){this.wtTable=e,this.wot=e.instance,this.instance=e.instance,this.rowFilter=e.rowFilter,this.columnFilter=e.columnFilter,this.TABLE=e.TABLE,this.THEAD=e.THEAD,this.TBODY=e.TBODY,this.COLGROUP=e.COLGROUP,this.rowHeaders=[],this.rowHeaderCount=0,this.columnHeaders=[],this.columnHeaderCount=0,this.fixedRowsTop=0,this.fixedRowsBottom=0};$traceurRuntime.createClass(h,{render:function(){this.wtTable.isWorkingOnClone()||this.wot.getSetting("beforeDraw",!0),this.rowHeaders=this.wot.getSetting("rowHeaders"),this.rowHeaderCount=this.rowHeaders.length,this.fixedRowsTop=this.wot.getSetting("fixedRowsTop"),this.fixedRowsBottom=this.wot.getSetting("fixedRowsBottom"),this.columnHeaders=this.wot.getSetting("columnHeaders"),this.columnHeaderCount=this.columnHeaders.length;var e,t=this.wtTable.getRenderedColumnsCount(),n=this.wtTable.getRenderedRowsCount(),o=this.wot.getSetting("totalColumns"),r=this.wot.getSetting("totalRows"),i=!1;if((WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM_LEFT_CORNER))&&(this.columnHeaders=[],this.columnHeaderCount=0),o>0&&(this.adjustAvailableNodes(),i=!0,this.renderColumnHeaders(),this.renderRows(r,n,t),this.wtTable.isWorkingOnClone()||(e=this.wot.wtViewport.getWorkspaceWidth(),this.wot.wtViewport.containerWidth=null),this.adjustColumnHeaderHeights(),this.adjustColumnWidths(t),this.markOversizedColumns()),i||this.adjustAvailableNodes(),this.removeRedundantRows(n),this.wtTable.isWorkingOnClone()){if(WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM)){var s=this.wot.cloneOverlay.instance;this.wot.cloneOverlay.markOversizedFixedBottomRows(),s.wtOverlays.adjustElementsSize()}}else{if(this.markOversizedRows(),this.wot.wtViewport.createVisibleCalculators(),this.wot.wtOverlays.refresh(!1),this.wot.wtOverlays.applyToDOM(),e!==this.wot.wtViewport.getWorkspaceWidth()){this.wot.wtViewport.containerWidth=null;for(var l=this.wtTable.getFirstRenderedColumn(),a=this.wtTable.getLastRenderedColumn(),u=l;a>u;u++){var c=this.wtTable.getStretchedColumnWidth(u),d=this.columnFilter.sourceToRendered(u);this.COLGROUP.childNodes[d+this.rowHeaderCount].style.width=c+"px"}}this.wot.getSetting("onDraw",!0)}},removeRedundantRows:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--},renderRows:function(e,t,n){for(var o,r,i=0,s=this.rowFilter.renderedToSource(i),l=this.wtTable.isWorkingOnClone();e>s&&s>=0&&(i>1e3&&console.error("Security brake: Too much TRs. Please define height for your table, which will enforce scrollbars."),void 0===t||i!==t);){if(r=this.getOrCreateTrForRow(i,r),this.renderRowHeaders(s,r),this.adjustColumns(r,n+this.rowHeaderCount),o=this.renderCells(s,r,n),(!l||WalkontableOverlay.isOverlayTypeOf(this.wot.cloneOverlay,WalkontableOverlay.CLONE_BOTTOM))&&this.resetOversizedRow(s),r.firstChild){var a=this.wot.wtTable.getRowHeight(s);a?(a--,r.firstChild.style.height=a+"px"):r.firstChild.style.height=""}i++,s=this.rowFilter.renderedToSource(i)}},resetOversizedRow:function(e){this.wot.getSetting("externalRowCalculator")||this.wot.wtViewport.oversizedRows&&this.wot.wtViewport.oversizedRows[e]&&(this.wot.wtViewport.oversizedRows[e]=void 0)},markOversizedRows:function(){if(!this.wot.getSetting("externalRowCalculator")){var e,t,n,o,r,i=this.instance.wtTable.TBODY.childNodes.length,s=i*this.instance.wtSettings.settings.defaultRowHeight,l=d(this.instance.wtTable.TBODY)-1;this.instance.getSetting("totalRows");if(s!==l||this.instance.getSetting("fixedRowsBottom"))for(;i;)i--,n=this.instance.wtTable.rowFilter.renderedToSource(i),e=this.instance.wtTable.getRowHeight(n),o=this.instance.wtTable.getTrForRow(n),r=o.querySelector("th"),t=r?d(r):d(o)-1,(!e&&this.instance.wtSettings.settings.defaultRowHeighte)&&(this.instance.wtViewport.oversizedRows[n]=++t)}},markOversizedColumns:function(){var e=this.wot.getOverlayName();if(this.columnHeaderCount&&!this.wot.wtViewport.isMarkedOversizedColumn[e]&&!this.wtTable.isWorkingOnClone()){for(var t=this.wtTable.getRenderedColumnsCount(),n=0;no;o++)this.markIfOversizedColumnHeader(o);this.wot.wtViewport.isMarkedOversizedColumn[e]=!0}},adjustColumnHeaderHeights:function(){for(var e=this.wot.getSetting("columnHeaders"),t=this.wot.wtTable.THEAD.childNodes,n=this.wot.wtViewport.oversizedColumnHeaders,o=0,r=e.length;r>o;o++)if(n[o]){if(0===t[o].childNodes.length)return;t[o].childNodes[0].style.height=n[o]+"px"}},markIfOversizedColumnHeader:function(e){for(var t,n,o,r=this.wot.wtTable.columnFilter.renderedToSource(e),i=this.columnHeaderCount,s=this.wot.wtSettings.settings.defaultRowHeight;i;)i--,t=this.wot.wtTable.getColumnHeaderHeight(i),n=this.wot.wtTable.getColumnHeader(r,i),n&&(o=d(n),(!t&&o>s||o>t)&&(this.wot.wtViewport.oversizedColumnHeaders[i]=o))},renderCells:function(e,t,n){for(var o,i,s=0;n>s;s++)i=this.columnFilter.renderedToSource(s),o=0===s?t.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(i)]:o.nextSibling,"TH"==o.nodeName&&(o=r(o,t)),c(o,"hide")||(o.className=""),o.removeAttribute("style"),this.wot.wtSettings.settings.cellRenderer(e,i,o);return o},adjustColumnWidths:function(e){var t=0,n=this.wot.cloneSource?this.wot.cloneSource:this.wot,o=n.wtTable.holder;o.offsetHeightr;r++){var i=this.wtTable.getStretchedColumnWidth(this.columnFilter.renderedToSource(r));this.COLGROUP.childNodes[r+this.rowHeaderCount].style.width=i+"px"}},appendToTbody:function(e){this.TBODY.appendChild(e),this.wtTable.tbodyChildrenLength++},getOrCreateTrForRow:function(e,t){var n;return e>=this.wtTable.tbodyChildrenLength?(n=this.createRow(),this.appendToTbody(n)):n=0===e?this.TBODY.firstChild:t.nextSibling,n.className&&n.removeAttribute("class"),n},createRow:function(){for(var e=document.createElement("TR"),t=0;to;o++){var r=this.columnFilter.renderedToSource(o);this.renderColumnHeader(t,r,n.childNodes[o+this.rowHeaderCount])}},adjustColGroups:function(){for(var e=this.wtTable.getRenderedColumnsCount();this.wtTable.colgroupChildrenLengthe+this.rowHeaderCount;)this.COLGROUP.removeChild(this.COLGROUP.lastChild),this.wtTable.colgroupChildrenLength--;this.rowHeaderCount&&l(this.COLGROUP.childNodes[0],"rowHeader")},adjustThead:function(){var e=this.wtTable.getRenderedColumnsCount(),t=this.THEAD.firstChild;if(this.columnHeaders.length){for(var n=0,o=this.columnHeaders.length;o>n;n++){for(t=this.THEAD.childNodes[n],t||(t=document.createElement("TR"),this.THEAD.appendChild(t)),this.theadChildrenLength=t.childNodes.length;this.theadChildrenLengthe+this.rowHeaderCount;)t.removeChild(t.lastChild),this.theadChildrenLength--}var r=this.THEAD.childNodes.length;if(r>this.columnHeaders.length)for(var i=this.columnHeaders.length;r>i;i++)this.THEAD.removeChild(this.THEAD.lastChild)}else t&&a(t)},getTrForColumnHeaders:function(e){return this.THEAD.childNodes[e]},renderColumnHeader:function(e,t,n){return n.className="",n.removeAttribute("style"),this.columnHeaders[e](t,n,e)},adjustColumns:function(e,t){for(var n=e.childNodes.length;t>n;){var o=document.createElement("TD");e.appendChild(o),n++}for(;n>t;)e.removeChild(e.lastChild),n--},removeRedundantColumns:function(e){for(;this.wtTable.tbodyChildrenLength>e;)this.TBODY.removeChild(this.TBODY.lastChild),this.wtTable.tbodyChildrenLength--}},{}),window.WalkontableTableRenderer=h},{"helpers/dom/element":45}],22:[function(e,t,n){"use strict";Object.defineProperties(n,{WalkontableViewport:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=l.getScrollbarWidth,u=l.getScrollTop,c=l.getStyle,d=l.offset,h=l.outerHeight,f=l.outerWidth,g=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,p=(i=e("calculator/viewportColumns"),i&&i.__esModule&&i||{"default":i}).WalkontableViewportColumnsCalculator,m=(s=e("calculator/viewportRows"),s&&s.__esModule&&s||{"default":s}).WalkontableViewportRowsCalculator,w=function(e){var t=this;this.wot=e,this.instance=this.wot,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.isMarkedOversizedColumn={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.eventManager=new g(this.wot),this.eventManager.addEventListener(window,"resize",function(){t.clientHeight=t.getWorkspaceHeight()})};$traceurRuntime.createClass(w,{getWorkspaceHeight:function(){var e,t=this.instance.wtOverlays.topOverlay.trimmingContainer,n=0;return t===window?n=document.documentElement.clientHeight:(e=h(t),n=e>0&&t.clientHeight>0?t.clientHeight:1/0),n},getWorkspaceWidth:function(){var e,t,n=this.instance.getSetting("totalColumns"),o=this.instance.wtOverlays.leftOverlay.trimmingContainer,r=this.instance.getSetting("stretchH"),i=document.documentElement.offsetWidth;return e=Handsontable.freezeOverlays?Math.min(i-this.getWorkspaceOffset().left,i):Math.min(this.getContainerFillWidth(),i-this.getWorkspaceOffset().left,i),o===window&&n>0&&this.sumColumnWidths(0,n-1)>e?document.documentElement.clientWidth:o!==window&&(t=c(this.instance.wtOverlays.leftOverlay.trimmingContainer,"overflow"),"scroll"==t||"hidden"==t||"auto"==t)?Math.max(e,o.clientWidth):"none"!==r&&r?e:Math.max(e,f(this.instance.wtTable.TABLE))},hasVerticalScroll:function(){return this.getWorkspaceActualHeight()>this.getWorkspaceHeight()},hasHorizontalScroll:function(){return this.getWorkspaceActualWidth()>this.getWorkspaceWidth()},sumColumnWidths:function(e,t){for(var n=0;t>e;)n+=this.wot.wtTable.getColumnWidth(e),e++;return n},getContainerFillWidth:function(){if(this.containerWidth)return this.containerWidth;var e,t,n=this.instance.wtTable.holder;return t=document.createElement("div"),t.style.width="100%",t.style.height="1px",n.appendChild(t),e=t.offsetWidth,this.containerWidth=e,n.removeChild(t),e},getWorkspaceOffset:function(){return d(this.wot.wtTable.TABLE)},getWorkspaceActualHeight:function(){return h(this.wot.wtTable.TABLE)},getWorkspaceActualWidth:function(){return f(this.wot.wtTable.TABLE)||f(this.wot.wtTable.TBODY)||f(this.wot.wtTable.THEAD)},getColumnHeaderHeight:function(){return isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=h(this.wot.wtTable.THEAD)),this.columnHeaderHeight},getViewportHeight:function(){var e,t=this.getWorkspaceHeight();return t===1/0?t:(e=this.getColumnHeaderHeight(),e>0&&(t-=e),t)},getRowHeaderWidth:function(){if(this.wot.cloneSource)return this.wot.cloneSource.wtViewport.getRowHeaderWidth();if(isNaN(this.rowHeaderWidth)){var e=this.instance.getSetting("rowHeaders");if(e.length){var t=this.instance.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(var n=0,o=e.length;o>n;n++)t?(this.rowHeaderWidth+=f(t),t=t.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0}return this.rowHeaderWidth},getViewportWidth:function(){var e,t=this.getWorkspaceWidth();return t===1/0?t:(e=this.getRowHeaderWidth(),e>0?t-e:t)},createRowsCalculator:function(){var e,t,n,o,r,i,s,l=void 0!==arguments[0]?arguments[0]:!1,c=this;return this.rowHeaderWidth=NaN,e=this.wot.wtSettings.settings.renderAllRows?1/0:this.getViewportHeight(),t=u(this.wot.wtOverlays.mainTableScrollableElement)-this.wot.wtOverlays.topOverlay.getTableParentOffset(),0>t&&(t=0),n=this.wot.getSetting("fixedRowsTop"),r=this.wot.getSetting("fixedRowsBottom"),s=this.wot.getSetting("totalRows"),n&&(i=this.wot.wtOverlays.topOverlay.sumCellSizes(0,n),t+=i,e-=i),r&&this.wot.wtOverlays.bottomOverlay.clone&&(i=this.wot.wtOverlays.bottomOverlay.sumCellSizes(s-r,s),e-=i),o=this.wot.wtTable.holder.clientHeight===this.wot.wtTable.holder.offsetHeight?0:a(),new m(e,t,this.wot.getSetting("totalRows"),function(e){return c.wot.wtTable.getRowHeight(e)},l?null:this.wot.wtSettings.settings.viewportRowCalculatorOverride,l,o)},createColumnsCalculator:function(){var e,t,n=void 0!==arguments[0]?arguments[0]:!1,o=this,r=this.getViewportWidth();if(this.columnHeaderHeight=NaN,e=this.wot.wtOverlays.leftOverlay.getScrollPosition()-this.wot.wtOverlays.leftOverlay.getTableParentOffset(),0>e&&(e=0),t=this.wot.getSetting("fixedColumnsLeft")){var i=this.wot.wtOverlays.leftOverlay.sumCellSizes(0,t);e+=i,r-=i}return this.wot.wtTable.holder.clientWidth!==this.wot.wtTable.holder.offsetWidth&&(r-=a()),new p(r,e,this.wot.getSetting("totalColumns"),function(e){return o.wot.wtTable.getColumnWidth(e)},n?null:this.wot.wtSettings.settings.viewportColumnCalculatorOverride,n,this.wot.getSetting("stretchH"))},createRenderCalculators:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e){var t=this.createRowsCalculator(!0),n=this.createColumnsCalculator(!0);this.areAllProposedVisibleRowsAlreadyRendered(t)&&this.areAllProposedVisibleColumnsAlreadyRendered(n)||(e=!1)}return e||(this.rowsRenderCalculator=this.createRowsCalculator(),this.columnsRenderCalculator=this.createColumnsCalculator()),this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,e},createVisibleCalculators:function(){this.rowsVisibleCalculator=this.createRowsCalculator(!0),this.columnsVisibleCalculator=this.createColumnsCalculator(!0)},areAllProposedVisibleRowsAlreadyRendered:function(e){return this.rowsVisibleCalculator?e.startRow0?!1:e.endRow>this.rowsRenderCalculator.endRow||e.endRow===this.rowsRenderCalculator.endRow&&e.endRow0?!1:e.endColumn>this.columnsRenderCalculator.endColumn||e.endColumn===this.columnsRenderCalculator.endColumn&&e.endColumn=0;s--)if(null===e[s])e.splice(s,1);else{var l=e[s][0],a=d.propToCol(e[s][1]),u=m.runHooks("modifyCol",a),c=m.getCellMeta(l,u);if("numeric"===c.type&&"string"==typeof e[s][3]&&e[s][3].length>0&&(/^-?[\d\s]*(\.|\,)?\d*$/.test(e[s][3])||c.format)){var h=e[s][3].length;"undefined"==typeof c.language?R.language("en"):e[s][3].indexOf(".")===h-3&&-1===e[s][3].indexOf(",")?R.language("en"):R.language(c.language),R.validate(e[s][3])&&(e[s][3]=R().unformat(e[s][3]))}m.getCellValidator(c)&&(i.addValidatorToQueue(),m.validateCell(e[s][3],c,function(t,n){return function(o){if("boolean"!=typeof o)throw new Error("Validation error: result is not boolean");o===!1&&n.allowInvalid===!1&&(e.splice(t,1),n.valid=!0,--t),i.removeValidatorFormQueue()}}(s,c),t))}i.checkIfQueueIsEmpty()}function r(e,t){var n=e.length-1;if(!(0>n)){for(;n>=0;n--)if(null!==e[n]){if(null!=e[n][2]||null!=e[n][3]){if(c.settings.allowInsertRow)for(;e[n][0]>m.countRows()-1;)d.createRow();if("array"===m.dataType&&c.settings.allowInsertColumn)for(;d.propToCol(e[n][1])>m.countCols()-1;)d.createCol();d.set(e[n][0],e[n][1],e[n][3])}}else e.splice(n,1);m.forceFullRender=!0,f.adjustRowsAndCols(),Handsontable.hooks.run(m,"beforeChangeRender",e,t),g.refreshBorders(null,!0),m.view.wt.wtOverlays.adjustElementsSize(), +Handsontable.hooks.run(m,"afterChange",e,t||"edit")}}function i(e,t,n){return"object"==typeof e?e:[[e,t,n]]}function s(e){if(e.hasOwnProperty("type")){var t,n={};if("object"==typeof e.type)t=e.type;else if("string"==typeof e.type&&(t=Handsontable.cellTypes[e.type],void 0===t))throw new Error('You declared cell type "'+e.type+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');for(var o in t)t.hasOwnProperty(o)&&!e.hasOwnProperty(o)&&(n[o]=t[o]);return n}}function l(e){return Handsontable.hooks.run(m,"modifyRow",e)}function a(e){return Handsontable.hooks.run(m,"modifyCol",e)}function u(){throw new Error("This method cannot be called because this Handsontable instance has been destroyed")}var c,d,h,f,g,p,m=this,w=function(){},v=A(m);x(w.prototype,Q.prototype),x(w.prototype,t),x(w.prototype,s(t)),this.rootElement=e,this.isHotTableEnv=O(this.rootElement),Handsontable.eventManager.isHotTableEnv=this.isHotTableEnv,this.container=document.createElement("DIV"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),this.guid="ht_"+B(),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid),c={cellSettings:[],columnSettings:[],columnsSettingConflicts:["data","width"],settings:new w,selRange:null,isPopulated:null,scrollable:null,firstRun:!0},f={alter:function(e,t,n,o,r){var i;switch(n=n||1,e){case"insert_row":if(m.getSettings().maxRows===m.countSourceRows())return;i=d.createRow(t,n),i&&(g.isSelected()&&c.selRange.from.row>=t?(c.selRange.from.row=c.selRange.from.row+i,g.transformEnd(i,0)):g.refreshBorders());break;case"insert_col":if(i=d.createCol(t,n)){if(Array.isArray(m.getSettings().colHeaders)){var s=[t,0];s.length+=i,Array.prototype.splice.apply(m.getSettings().colHeaders,s)}g.isSelected()&&c.selRange.from.col>=t?(c.selRange.from.col=c.selRange.from.col+i,g.transformEnd(0,i)):g.refreshBorders()}break;case"remove_row":d.removeRow(t,n),c.cellSettings.splice(t,n);var l=m.countRows(),a=m.getSettings().fixedRowsTop;a>=t+1&&(m.getSettings().fixedRowsTop-=Math.min(n,a-t));var u=m.getSettings().fixedRowsBottom;u&&t+1>=l-u&&(m.getSettings().fixedRowsBottom-=Math.min(n,u-t)),f.adjustRowsAndCols(),g.refreshBorders();break;case"remove_col":d.removeCol(t,n);for(var h=0,p=d.getAll().length;p>h;h++)h in c.cellSettings&&c.cellSettings[h].splice(t,n);var w=m.getSettings().fixedColumnsLeft;w>=t+1&&(m.getSettings().fixedColumnsLeft-=Math.min(n,w-t)),Array.isArray(m.getSettings().colHeaders)&&("undefined"==typeof t&&(t=-1),m.getSettings().colHeaders.splice(t,n)),f.adjustRowsAndCols(),g.refreshBorders();break;default:throw new Error('There is no such action "'+e+'"')}r||f.adjustRowsAndCols()},adjustRowsAndCols:function(){if(c.settings.minRows){var e=m.countRows();if(et;t++)d.createRow(m.countRows(),1,!0)}if(c.settings.minSpareRows){var o=m.countEmptyRows(!0);if(oi-1?(a=i-1,l=!0,h>a&&(h=a)):h>i-1&&(h=i-1,l=!0,a>h&&(a=h)),u>s-1?(u=s-1,l=!0,f>u&&(f=u)):f>s-1&&(f=s-1,l=!0,u>f&&(u=f)),l&&m.selectCell(a,u,h,f)}m.view&&m.view.wt.wtOverlays.adjustElementsSize()},populateFromArray:function(e,t,n,o,r,i,s){var l,a,u,d,h=[],f={};if(a=t.length,0===a)return!1;var g,p,w,v;({row:null===n?null:n.row,col:null===n?null:n.col});switch(r){case"shift_down":for(g=n?n.col-e.col+1:0,p=n?n.row-e.row+1:0,t=G(t),u=0,d=t.length,w=Math.max(d,g);w>u;u++)if(d>u){for(l=0,a=t[u].length;p-a>l;l++)t[u].push(t[u][l%a]);t[u].unshift(e.col+u,e.row,0),m.spliceCol.apply(m,t[u])}else t[u%d][0]=e.col+u,m.spliceCol.apply(m,t[u%d]);break;case"shift_right":for(g=n?n.col-e.col+1:0,p=n?n.row-e.row+1:0,l=0,a=t.length,v=Math.max(a,p);v>l;l++)if(a>l){for(u=0,d=t[l].length;g-d>u;u++)t[l].push(t[l][u%d]);t[l].unshift(e.row+l,e.col,0),m.spliceRow.apply(m,t[l])}else t[l%a][0]=e.row+l,m.spliceRow.apply(m,t[l%a]);break;case"overwrite":default:f.row=e.row,f.col=e.col;var b,C={row:n&&e?n.row-e.row+1:1,col:n&&e?n.col-e.col+1:1},y=0,R=0,E=!0,S=function(e){var n=void 0!==arguments[1]?arguments[1]:null,o=t[e%t.length];return null!==n?o[n%o.length]:o},T=t.length,O=n?n.row-e.row+1:0;for(a=n?O:Math.max(T,O),l=0;a>l&&!(n&&f.row>n.row&&O>T||!c.settings.allowInsertRow&&f.row>m.countRows()-1||f.row>=c.settings.maxRows);l++){var _=l-y,M=S(_).length,H=n?n.col-e.col+1:0;if(d=n?H:Math.max(M,H),f.col=e.col,b=m.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!b.skipRowOnPaste){for(R=0,u=0;d>u&&!(n&&f.col>n.col&&H>M||!c.settings.allowInsertColumn&&f.col>m.countCols()-1||f.col>=c.settings.maxCols);u++)if(b=m.getCellMeta(f.row,f.col),"paste"!==o&&"autofill"!==o||!b.skipColumnOnPaste)if(b.readOnly)f.col++;else{var k=u-R,A=S(_,k),P=m.getDataAtCell(f.row,f.col),x={row:_,col:k};if("autofill"===o){var W=m.runHooks("beforeAutofillInsidePopulate",x,i,t,s,{},C);W&&(A="undefined"==typeof W.value?A:W.value)}if(null!==A&&"object"==typeof A)if(null===P||"object"!=typeof P)E=!1;else{var I=D(P[0]||P),j=D(A[0]||A);N(I,j)?A=L(A):E=!1}else null!==P&&"object"==typeof P&&(E=!1);E&&h.push([f.row,f.col,A]),E=!0,f.col++}else R++,f.col++,d++;f.row++}else y++,f.row++,a++}m.setDataAtCell(h,null,null,o||"populateFromArray")}}},this.selection=g={inProgress:!1,selectedHeader:{cols:!1,rows:!1},setSelectedHeaders:function(e,t){m.selection.selectedHeader.rows=e,m.selection.selectedHeader.cols=t},begin:function(){m.selection.inProgress=!0},finish:function(){var e=m.getSelected();Handsontable.hooks.run(m,"afterSelectionEnd",e[0],e[1],e[2],e[3]),Handsontable.hooks.run(m,"afterSelectionEndByProp",e[0],m.colToProp(e[1]),e[2],m.colToProp(e[3])),m.selection.inProgress=!1},isInProgress:function(){return m.selection.inProgress},setRangeStart:function(e,t){Handsontable.hooks.run(m,"beforeSetRangeStart",e),c.selRange=new X(e,e,e),g.setRangeEnd(e,null,t)},setRangeEnd:function(e,t,n){if(null!==c.selRange){var o,r=!1,i=!0,s=m.view.wt.wtTable.getFirstVisibleRow(),l=m.view.wt.wtTable.getFirstVisibleColumn(),a={row:null,col:null};Handsontable.hooks.run(m,"beforeSetRangeEnd",e),m.selection.begin(),a.row=e.row<0?s:e.row,a.col=e.col<0?l:e.col,c.selRange.to=new Y(a.row,a.col),c.settings.multiSelect||(c.selRange.from=e),m.view.wt.selections.current.clear(),o=m.getCellMeta(c.selRange.highlight.row,c.selRange.highlight.col).disableVisualSelection,"string"==typeof o&&(o=[o]),(o===!1||Array.isArray(o)&&-1===o.indexOf("current"))&&m.view.wt.selections.current.add(c.selRange.highlight),m.view.wt.selections.area.clear(),(o===!1||Array.isArray(o)&&-1===o.indexOf("area"))&&g.isMultiple()&&(m.view.wt.selections.area.add(c.selRange.from),m.view.wt.selections.area.add(c.selRange.to)),(c.settings.currentRowClassName||c.settings.currentColClassName)&&(m.view.wt.selections.highlight.clear(),m.view.wt.selections.highlight.add(c.selRange.from),m.view.wt.selections.highlight.add(c.selRange.to)),Handsontable.hooks.run(m,"afterSelection",c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col),Handsontable.hooks.run(m,"afterSelectionByProp",c.selRange.from.row,d.colToProp(c.selRange.from.col),c.selRange.to.row,d.colToProp(c.selRange.to.col)),(0===c.selRange.from.row&&c.selRange.to.row===m.countRows()-1&&m.countRows()>1||0===c.selRange.from.col&&c.selRange.to.col===m.countCols()-1&&m.countCols()>1)&&(r=!0),(e.row<0||e.col<0)&&(i=!1),t!==!1&&!r&&i&&(c.selRange.from&&!g.isMultiple()?m.view.scrollViewport(c.selRange.from):m.view.scrollViewport(e)),g.refreshBorders(null,n)}},refreshBorders:function(e,t){t||p.destroyEditor(e),m.view.render(),g.isSelected()&&!t&&p.prepareEditor()},isMultiple:function(){var e=!(c.selRange.to.col===c.selRange.from.col&&c.selRange.to.row===c.selRange.from.row),t=Handsontable.hooks.run(m,"afterIsMultipleSelection",e);return e?t:void 0},transformStart:function(e,t,n,o){var r,i,s,l,a=new Y(e,t),u=0,d=0;m.runHooks("modifyTransformStart",a),r=m.countRows(),i=m.countCols(),l=m.getSettings().fixedRowsBottom,c.selRange.highlight.row+e>r-1?n&&c.settings.minSpareRows>0&&!(l&&c.selRange.highlight.row>=r-l-1)?(m.alter("insert_row",r),r=m.countRows()):c.settings.autoWrapCol&&(a.row=1-r,a.col=c.selRange.highlight.col+a.col==i-1?1-i:1):c.settings.autoWrapCol&&c.selRange.highlight.row+a.row<0&&c.selRange.highlight.col+a.col>=0&&(a.row=r-1,a.col=c.selRange.highlight.col+a.col==0?i-1:-1),c.selRange.highlight.col+a.col>i-1?n&&c.settings.minSpareCols>0?(m.alter("insert_col",i),i=m.countCols()):c.settings.autoWrapRow&&(a.row=c.selRange.highlight.row+a.row==r-1?1-r:1,a.col=1-i):c.settings.autoWrapRow&&c.selRange.highlight.col+a.col<0&&c.selRange.highlight.row+a.row>=0&&(a.row=c.selRange.highlight.row+a.row==0?r-1:-1,a.col=i-1),s=new Y(c.selRange.highlight.row+a.row,c.selRange.highlight.col+a.col),s.row<0?(u=-1,s.row=0):s.row>0&&s.row>=r&&(u=1,s.row=r-1),s.col<0?(d=-1,s.col=0):s.col>0&&s.col>=i&&(d=1,s.col=i-1),m.runHooks("afterModifyTransformStart",s,u,d),g.setRangeStart(s,o)},transformEnd:function(e,t){var n,o,r,i=new Y(e,t),s=0,l=0;m.runHooks("modifyTransformEnd",i),n=m.countRows(),o=m.countCols(),r=new Y(c.selRange.to.row+i.row,c.selRange.to.col+i.col),r.row<0?(s=-1,r.row=0):r.row>0&&r.row>=n&&(s=1,r.row=n-1),r.col<0?(l=-1,r.col=0):r.col>0&&r.col>=o&&(l=1,r.col=o-1),m.runHooks("afterModifyTransformEnd",r,s,l),g.setRangeEnd(r,!0)},isSelected:function(){return null!==c.selRange},inInSelection:function(e){return g.isSelected()?c.selRange.includes(e):!1},deselect:function(){g.isSelected()&&(m.selection.inProgress=!1,c.selRange=null,m.view.wt.selections.current.clear(),m.view.wt.selections.area.clear(),(c.settings.currentRowClassName||c.settings.currentColClassName)&&m.view.wt.selections.highlight.clear(),p.destroyEditor(),g.refreshBorders(),Handsontable.hooks.run(m,"afterDeselect"))},selectAll:function(){c.settings.multiSelect&&(g.setRangeStart(new Y(0,0)),g.setRangeEnd(new Y(m.countRows()-1,m.countCols()-1),!1))},empty:function(){if(g.isSelected()){var e,t,n=c.selRange.getTopLeftCorner(),o=c.selRange.getBottomRightCorner(),r=[];for(e=n.row;e<=o.row;e++)for(t=n.col;t<=o.col;t++)m.getCellMeta(e,t).readOnly||r.push([e,t,""]);m.setDataAtCell(r)}}},this.init=function(){h=new z(m,c.settings.data),Handsontable.hooks.run(m,"beforeInit"),Handsontable.mobileBrowser&&S(m.rootElement,"mobile"),this.updateSettings(c.settings,!0),this.view=new F(this),p=new k(m,c,g,d),this.forceFullRender=!0,Handsontable.hooks.run(m,"init"),this.view.render(),"object"==typeof c.firstRun&&(Handsontable.hooks.run(m,"afterChange",c.firstRun[0],c.firstRun[1]),c.firstRun=!1),Handsontable.hooks.run(m,"afterInit")},this.validateCell=function(e,t,n,o){function r(e){var o=t.physicalCol,r=t.physicalRow,i=m.getCell(r,o,!0);i&&m.view.wt.wtSettings.settings.cellRenderer(r,o,i),n(e)}var i=m.getCellValidator(t);"[object RegExp]"===Object.prototype.toString.call(i)&&(i=function(e){return function(t,n){n(e.test(t))}}(i)),"function"==typeof i?(e=Handsontable.hooks.run(m,"beforeValidate",e,t.row,t.prop,o),m._registerTimeout(setTimeout(function(){i.call(t,e,function(n){n=Handsontable.hooks.run(m,"afterValidate",n,e,t.row,t.prop,o),t.valid=n,r(n),Handsontable.hooks.run(m,"postAfterValidate",n,e,t.row,t.prop,o)})},0))):(t.valid=!0,r(t.valid))},this.setDataAtCell=function(e,t,n,s){var l,a,u,c=i(e,t,n),h=[];for(l=0,a=c.length;a>l;l++){if("object"!=typeof c[l])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof c[l][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");u=d.colToProp(c[l][1]),h.push([c[l][0],u,d.get(c[l][0],u),c[l][2]])}s||"object"!=typeof e||(s=t),o(h,s,function(){r(h,s)})},this.setDataAtRowProp=function(e,t,n,s){var l,a,u=i(e,t,n),c=[];for(l=0,a=u.length;a>l;l++)c.push([u[l][0],u[l][1],d.get(u[l][0],u[l][1]),u[l][2]]);s||"object"!=typeof e||(s=t),o(c,s,function(){r(c,s)})},this.listen=function(){Handsontable.activeGuid=m.guid},this.unlisten=function(){Handsontable.activeGuid=null},this.isListening=function(){return Handsontable.activeGuid===m.guid},this.destroyEditor=function(e){g.refreshBorders(e)},this.populateFromArray=function(e,t,n,o,r,i,s,l,a){var u;if("object"!=typeof n||"object"!=typeof n[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");return u="number"==typeof o?new Y(o,r):null,f.populateFromArray(new Y(e,t),n,u,i,s,l,a)},this.spliceCol=function(e,t,n){return d.spliceCol.apply(d,arguments)},this.spliceRow=function(e,t,n){return d.spliceRow.apply(d,arguments)},this.getSelected=function(){return g.isSelected()?[c.selRange.from.row,c.selRange.from.col,c.selRange.to.row,c.selRange.to.col]:void 0},this.getSelectedRange=function(){return g.isSelected()?c.selRange:void 0},this.render=function(){m.view&&(m.renderCall=!0,m.forceFullRender=!0,g.refreshBorders(null,!0))},this.loadData=function(e){function t(){c.cellSettings.length=0}if("object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error("loadData only accepts array of objects or array of arrays ("+typeof e+" given)");e=[];for(var n,o=0,r=c.settings.startRows;r>o;o++){n=[];for(var i=0,s=c.settings.startCols;s>i;i++)n.push(null);e.push(n)}}c.isPopulated=!1,w.prototype.data=e,Array.isArray(c.settings.dataSchema)||Array.isArray(e[0])?m.dataType="array":"function"==typeof c.settings.dataSchema?m.dataType="function":m.dataType="object",d=new H(m,c,w),h.data=e,h.dataType=m.dataType,h.colToProp=d.colToProp.bind(d),h.propToCol=d.propToCol.bind(d),t(),f.adjustRowsAndCols(),Handsontable.hooks.run(m,"afterLoadData",c.firstRun),c.firstRun?c.firstRun=[null,"loadData"]:(Handsontable.hooks.run(m,"afterChange",null,"loadData"),m.render()),c.isPopulated=!0},this.getData=function(e,t,n,o){return"undefined"==typeof e?d.getAll():d.getRange(new Y(e,t),new Y(n,o),d.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,n,o){return d.getCopyableText(new Y(e,t),new Y(n,o))},this.getCopyableData=function(e,t){return d.getCopyable(e,d.colToProp(t))},this.getSchema=function(){return d.getSchema()},this.updateSettings=function(e,t){var n,o;if("undefined"!=typeof e.rows)throw new Error('"rows" setting is no longer supported. do you mean startRows, minRows or maxRows?');if("undefined"!=typeof e.cols)throw new Error('"cols" setting is no longer supported. do you mean startCols, minCols or maxCols?');for(n in e)"data"!==n&&(Handsontable.hooks.getRegistered().indexOf(n)>-1?("function"==typeof e[n]||Array.isArray(e[n]))&&m.addHook(n,e[n]):!t&&e.hasOwnProperty(n)&&(w.prototype[n]=e[n]));if(void 0===e.data&&void 0===c.settings.data?m.loadData(null):void 0!==e.data?m.loadData(e.data):void 0!==e.columns&&d.createMap(),o=m.countCols(),c.cellSettings.length=0,o>0){var r,i;for(n=0;o>n;n++)c.columnSettings[n]=M(w,c.columnsSettingConflicts),r=c.columnSettings[n].prototype,w.prototype.columns&&(i=w.prototype.columns[n],x(r,i),x(r,s(i)))}if("undefined"!=typeof e.cell)for(n in e.cell)if(e.cell.hasOwnProperty(n)){var l=e.cell[n];m.setCellMetaObject(l.row,l.col,l)}if(Handsontable.hooks.run(m,"afterCellMetaReset"),"undefined"!=typeof e.className&&(w.prototype.className&&_(m.rootElement,w.prototype.className),e.className&&S(m.rootElement,e.className)),"undefined"!=typeof e.height){var a=e.height;"function"==typeof a&&(a=a()),m.rootElement.style.height=a+"px"}if("undefined"!=typeof e.width){var u=e.width;"function"==typeof u&&(u=u()),m.rootElement.style.width=u+"px"}a&&(m.rootElement.style.overflow="hidden"),t||Handsontable.hooks.run(m,"afterUpdateSettings"),f.adjustRowsAndCols(),m.view&&!c.firstRun&&(m.forceFullRender=!0,g.refreshBorders(null,!0))},this.getValue=function(){var e=m.getSelected();if(w.prototype.getValue){if("function"==typeof w.prototype.getValue)return w.prototype.getValue.call(m);if(e)return m.getData()[e[0]][w.prototype.getValue]}else if(e)return m.getDataAtCell(e[0],e[1])},this.getSettings=function(){return c.settings},this.clear=function(){g.selectAll(),g.empty()},this.alter=function(e,t,n,o,r){f.alter(e,t,n,o,r)},this.getCell=function(e,t,n){return m.view.getCellAtCoords(new Y(e,t),n)},this.getCoords=function(e){return this.view.wt.wtTable.getCoords.call(this.view.wt.wtTable,e)},this.colToProp=function(e){return d.colToProp(e)},this.propToCol=function(e){return d.propToCol(e)},this.getDataAtCell=function(e,t){return d.get(e,d.colToProp(t))},this.getDataAtRowProp=function(e,t){return d.get(e,t)},this.getDataAtCol=function(e){var t=[];return t.concat.apply(t,d.getRange(new Y(0,e),new Y(c.settings.data.length-1,e),d.DESTINATION_RENDERER))},this.getDataAtProp=function(e){var t,n=[];return t=d.getRange(new Y(0,d.propToCol(e)),new Y(c.settings.data.length-1,d.propToCol(e)),d.DESTINATION_RENDERER),n.concat.apply(n,t)},this.getSourceData=function(e,t,n,o){var r;return r=void 0===e?h.getData():h.getByRange(new Y(e,t),new Y(n,o))},this.getSourceDataAtCol=function(e){return h.getAtColumn(e)},this.getSourceDataAtRow=function(e){return h.getAtRow(e)},this.getSourceDataAtCell=function(e,t){return h.getAtCell(e,t)},this.getDataAtRow=function(e){var t=d.getRange(new Y(e,0),new Y(e,this.countCols()-1),d.DESTINATION_RENDERER);return t[0]},this.getDataType=function(e,t,n,o){var r=this,i=null,s=null;void 0===e&&(e=0,n=this.countRows(),t=0,o=this.countCols()),void 0===n&&(n=e),void 0===o&&(o=t);var l="mixed";return V(Math.min(e,n),Math.max(e,n),function(e){var n=!0;return V(Math.min(t,o),Math.max(t,o),function(t){var o=r.getCellMeta(e,t);return s=o.type,i?n=i===s:i=s,n}),l=n?s:"mixed",n}),l},this.removeCellMeta=function(e,t,n){var o=m.getCellMeta(e,t);void 0!=o[n]&&delete c.cellSettings[e][t][n]},this.setCellMetaObject=function(e,t,n){if("object"==typeof n)for(var o in n)if(n.hasOwnProperty(o)){var r=n[o];this.setCellMeta(e,t,o,r)}},this.setCellMeta=function(e,t,n,o){c.cellSettings[e]||(c.cellSettings[e]=[]),c.cellSettings[e][t]||(c.cellSettings[e][t]=new c.columnSettings[t]),c.cellSettings[e][t][n]=o,Handsontable.hooks.run(m,"afterSetCellMeta",e,t,n,o)},this.getCellsMeta=function(){return W(c.cellSettings)},this.getCellMeta=function(e,t){var n,o=d.colToProp(t),r=e,i=t;if(e=l(e),t=a(t),c.columnSettings[t]||(c.columnSettings[t]=M(w,c.columnsSettingConflicts)),c.cellSettings[e]||(c.cellSettings[e]=[]),c.cellSettings[e][t]||(c.cellSettings[e][t]=new c.columnSettings[t]),n=c.cellSettings[e][t],n.row=e,n.col=t,n.physicalRow=r,n.physicalCol=i,n.prop=o,n.instance=m,Handsontable.hooks.run(m,"beforeGetCellMeta",e,t,n),x(n,s(n)),n.cells){var u=n.cells.call(n,e,t,o);u&&(x(n,u),x(n,s(u)))}return Handsontable.hooks.run(m,"afterGetCellMeta",e,t,n),n},this.isColumnModificationAllowed=function(){return!("object"===m.dataType||m.getSettings().columns)};var b=$("renderer");this.getCellRenderer=function(e,t){var n=b.call(this,e,t);return j(n)},this.getCellEditor=$("editor"),this.getCellValidator=$("validator"),this.validateCells=function(e){var t=new n;t.onQueueEmpty=e;for(var o=m.countRows()-1;o>=0;){for(var r=m.countCols()-1;r>=0;)t.addValidatorToQueue(),m.validateCell(m.getDataAtCell(o,r),m.getCellMeta(o,r),function(e){if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");e===!1&&(t.valid=!1),t.removeValidatorFormQueue()},"validateCells"),r--;o--}t.checkIfQueueIsEmpty()},this.getRowHeader=function(e){var t=c.settings.rowHeaders;return void 0!==e&&(e=Handsontable.hooks.run(m,"modifyRowHeader",e)),void 0===e?(t=[],V(m.countRows()-1,function(e){t.push(m.getRowHeader(e))})):Array.isArray(t)&&void 0!==t[e]?t=t[e]:"function"==typeof t?t=t(e):t&&"string"!=typeof t&&"number"!=typeof t&&(t=e+1),t},this.hasRowHeaders=function(){return!!c.settings.rowHeaders},this.hasColHeaders=function(){if(void 0!==c.settings.colHeaders&&null!==c.settings.colHeaders)return!!c.settings.colHeaders;for(var e=0,t=m.countCols();t>e;e++)if(m.getColHeader(e))return!0;return!1},this.getColHeader=function(e){if(e=Handsontable.hooks.run(m,"modifyColHeader",e),void 0===e){for(var t=[],n=0,o=m.countCols();o>n;n++)t.push(m.getColHeader(n));return t}var r=e;return e=Handsontable.hooks.run(m,"modifyCol",e),c.settings.columns&&c.settings.columns[e]&&c.settings.columns[e].title?c.settings.columns[e].title:Array.isArray(c.settings.colHeaders)&&void 0!==c.settings.colHeaders[e]?c.settings.colHeaders[e]:"function"==typeof c.settings.colHeaders?c.settings.colHeaders(e):c.settings.colHeaders&&"string"!=typeof c.settings.colHeaders&&"number"!=typeof c.settings.colHeaders?K(r):c.settings.colHeaders},this._getColWidthFromSettings=function(e){var t=m.getCellMeta(0,e),n=t.width;if((void 0===n||n===c.settings.width)&&(n=t.colWidths),void 0!==n&&null!==n){switch(typeof n){case"object":n=n[e];break;case"function":n=n(e)}"string"==typeof n&&(n=parseInt(n,10))}return n},this.getColWidth=function(e){var t=m._getColWidthFromSettings(e);return t=Handsontable.hooks.run(m,"modifyColWidth",t,e),void 0===t&&(t=q.DEFAULT_WIDTH),t},this._getRowHeightFromSettings=function(e){var t=c.settings.rowHeights;if(void 0!==t&&null!==t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){var t=m._getRowHeightFromSettings(e);return t=Handsontable.hooks.run(m,"modifyRowHeight",t,e)},this.countSourceRows=function(){return m.getSourceData()?m.getSourceData().length:0},this.countRows=function(){return d.getLength()},this.countCols=function(){return"object"===m.dataType||"function"===m.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:d.colToPropCache.length:"array"===m.dataType?c.settings.columns&&c.settings.columns.length?c.settings.columns.length:c.settings.data&&c.settings.data[0]&&c.settings.data[0].length?c.settings.data[0].length:0:void 0},this.getColspanOffset=function(e,t){var n=0;if(m.colspanArray){for(var o=0;e>o;o++)n+=m.colspanArray[t][o]-1||0;return n}for(var n=0,r=m.view.wt.wtTable.THEAD.childNodes.length-t-1,i=m.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(r+1,10)+")"),s=m.view.wt.wtSettings.settings.rowHeaders().length,o=s;s+e>o;o++)i.childNodes[o].hasAttribute("colspan")&&(n+=parseInt(i.childNodes[o].getAttribute("colspan"),10)-1);return n},this.getHeaderColspan=function(e,t){var n=m.view.wt.wtTable.THEAD.childNodes.length-t-1,o=m.view.wt.wtSettings.settings.rowHeaders().length,r=m.view.wt.wtTable.THEAD.querySelector("tr:nth-child("+parseInt(n+1,10)+")"),i=o+e-m.view.wt.wtViewport.columnsRenderCalculator.startColumn;return r.childNodes[i].hasAttribute("colspan")?parseInt(r.childNodes[i].getAttribute("colspan"),10):0},this.rowOffset=function(){return m.view.wt.wtTable.getFirstRenderedRow()},this.colOffset=function(){return m.view.wt.wtTable.getFirstRenderedColumn()},this.countRenderedRows=function(){return m.view.wt.drawn?m.view.wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return m.view.wt.drawn?m.view.wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return m.view.wt.drawn?m.view.wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return m.view.wt.drawn?m.view.wt.wtTable.getVisibleColumnsCount():-1},this.countEmptyRows=function(e){for(var t,n=m.countRows()-1,o=0;n>=0;){if(t=Handsontable.hooks.run(this,"modifyRow",n),m.isEmptyRow(t))o++;else if(e)break;n--}return o},this.countEmptyCols=function(e){if(m.countRows()<1)return 0;for(var t=m.countCols()-1,n=0;t>=0;){if(m.isEmptyCol(t))n++;else if(e)break;t--}return n},this.isEmptyRow=function(e){return c.settings.isEmptyRow.call(m,e)},this.isEmptyCol=function(e){return c.settings.isEmptyCol.call(m,e)},this.selectCell=function(e,t,n,o,r,i){var s;if(i="undefined"==typeof i||i===!0,"number"!=typeof e||0>e||e>=m.countRows())return!1;if("number"!=typeof t||0>t||t>=m.countCols())return!1;if("undefined"!=typeof n){if("number"!=typeof n||0>n||n>=m.countRows())return!1;if("number"!=typeof o||0>o||o>=m.countCols())return!1}return s=new Y(e,t),c.selRange=new X(s,s,s),i&&m.listen(),"undefined"==typeof n?g.setRangeEnd(c.selRange.from,r):g.setRangeEnd(new Y(n,o),r),m.selection.finish(),!0},this.selectCellByProp=function(e,t,n,o,r){return arguments[1]=d.propToCol(arguments[1]),"undefined"!=typeof arguments[3]&&(arguments[3]=d.propToCol(arguments[3])),m.selectCell.apply(m,arguments)},this.deselectCell=function(){g.deselect()},this.destroy=function(){m._clearTimeouts(),m.view&&m.view.destroy(),h&&h.destroy(),h=null,T(m.rootElement),v.destroy(),Handsontable.hooks.run(m,"afterDestroy"),Handsontable.hooks.destroy(m);for(var e in m)m.hasOwnProperty(e)&&("function"==typeof m[e]?m[e]=u:"guid"!==e&&(m[e]=null));c=null,d=null,f=null,g=null,p=null,m=null,w=null},this.getActiveEditor=function(){return p.getActiveEditor()},this.getPlugin=function(e){return I(this,e)},this.getInstance=function(){return m},this.addHook=function(e,t){Handsontable.hooks.add(e,t,m)},this.addHookOnce=function(e,t){Handsontable.hooks.once(e,t,m)},this.removeHook=function(e,t){Handsontable.hooks.remove(e,t,m)},this.runHooks=function(e,t,n,o,r,i,s){return Handsontable.hooks.run(m,e,t,n,o,r,i,s)},this.timeouts=[],this._registerTimeout=function(e){this.timeouts.push(e)},this._clearTimeouts=function(){for(var e=0,t=this.timeouts.length;t>e;e++)clearTimeout(this.timeouts[e])},this.version=Handsontable.version,Handsontable.hooks.run(m,"construct")};var Q=function(){};Q.prototype={data:void 0,dataSchema:void 0,width:void 0,height:void 0,startRows:5,startCols:5,rowHeaders:null,colHeaders:null,colWidths:void 0,columns:void 0,cells:void 0,cell:[],comments:!1,customBorders:!1,minRows:0,minCols:0,maxRows:1/0,maxCols:1/0,minSpareRows:0,minSpareCols:0,allowInsertRow:!0,allowInsertColumn:!0,allowRemoveRow:!0,allowRemoveColumn:!0,multiSelect:!0,fillHandle:!0,fixedRowsTop:0,fixedRowsBottom:0,fixedColumnsLeft:0,outsideClickDeselects:!0,enterBeginsEditing:!0,enterMoves:{row:1,col:0},tabMoves:{row:0,col:1},autoWrapRow:!1,autoWrapCol:!1,copyRowsLimit:1e3,copyColsLimit:1e3,pasteMode:"overwrite",persistentState:!1,currentRowClassName:void 0,currentColClassName:void 0,className:void 0,tableClassName:void 0,stretchH:"none",isEmptyRow:function(e){var t,n,o,r;for(t=0,n=this.countCols();n>t;t++)if(o=this.getDataAtCell(e,t),""!==o&&null!==o&&"undefined"!=typeof o)return"object"==typeof o?(r=this.getCellMeta(e,t),N(this.getSchema()[r.prop],o)):!1;return!0},isEmptyCol:function(e){var t,n,o;for(t=0,n=this.countRows();n>t;t++)if(o=this.getDataAtCell(t,e),""!==o&&null!==o&&"undefined"!=typeof o)return!1;return!0},observeDOMVisibility:!0,allowInvalid:!0,invalidCellClassName:"htInvalid",placeholder:!1,placeholderCellClassName:"htPlaceholder",readOnlyCellClassName:"htDimmed",renderer:void 0,commentedCellClassName:"htCommentCell",fragmentSelection:!1,readOnly:!1,skipColumnOnPaste:!1,search:!1,type:"text",copyable:!0,editor:void 0,autoComplete:void 0,visibleRows:10,trimDropdown:!0,debug:!1,wordWrap:!0,noWordWrapClassName:"htNoWrap",contextMenu:void 0,contextMenuCopyPaste:void 0,copyPaste:void 0,undo:void 0,columnSorting:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,mergeCells:!1,viewportRowRenderingOffset:"auto",viewportColumnRenderingOffset:"auto",validator:void 0,disableVisualSelection:!1,sortIndicator:!1,manualColumnFreeze:void 0,trimWhitespace:!0,settings:void 0,source:void 0,title:void 0,checkedTemplate:void 0,uncheckedTemplate:void 0,label:void 0,format:void 0,language:void 0,selectOptions:void 0,autoColumnSize:void 0,autoRowSize:void 0,dateFormat:void 0,correctFormat:!1,defaultDate:void 0,strict:void 0,renderAllRows:void 0},Handsontable.DefaultSettings=Q},{"3rdparty/walkontable/src/calculator/viewportColumns":3,"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/selection":18,dataMap:26,dataSource:27,editorManager:28,eventManager:41,"helpers/array":42,"helpers/data":44,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/setting":51,"helpers/string":52,numeral:"numeral",plugins:57,renderers:88,tableView:97}],26:[function(e,t,n){"use strict";function o(e,t,n){this.instance=e,this.priv=t,this.GridSettings=n,this.dataSource=this.instance.getSettings().data,this.dataSource[0]?this.duckSchema=this.recursiveDuckSchema(this.dataSource[0]):this.duckSchema={},this.createMap()}Object.defineProperties(n,{DataMap:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u,c,d=(r=e("SheetClip"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("helpers/data"),i&&i.__esModule&&i||{"default":i}).cellMethodLookupFactory,f=(s=e("helpers/setting"),s&&s.__esModule&&s||{"default":s}).columnFactory,g=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),p=g.duckSchema,m=g.deepExtend,w=(a=e("helpers/array"),a&&a.__esModule&&a||{"default":a}),v=w.extendArray,b=w.to2dArray,C=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,y=(c=e("multiMap"),c&&c.__esModule&&c||{"default":c}).MultiMap;o.prototype.DESTINATION_RENDERER=1,o.prototype.DESTINATION_CLIPBOARD_GENERATOR=2,o.prototype.recursiveDuckSchema=function(e){return p(e)},o.prototype.recursiveDuckColumns=function(e,t,n){var o,r;if("undefined"==typeof t&&(t=0,n=""),"object"==typeof e&&!Array.isArray(e))for(r in e)e.hasOwnProperty(r)&&(null===e[r]?(o=n+r,this.colToPropCache.push(o),this.propToColCache.set(o,t),t++):t=this.recursiveDuckColumns(e[r],t,r+"."));return t},o.prototype.createMap=function(){var e,t,n=this.getSchema();if("undefined"==typeof n)throw new Error("trying to create `columns` definition but you didnt' provide `schema` nor `data`");this.colToPropCache=[],this.propToColCache=new y;var o=this.instance.getSettings().columns;if(o)for(e=0,t=o.length;t>e;e++)"undefined"!=typeof o[e].data&&(this.colToPropCache[e]=o[e].data,this.propToColCache.set(o[e].data,e));else this.recursiveDuckColumns(n)},o.prototype.colToProp=function(e){return e=Handsontable.hooks.run(this.instance,"modifyCol",e),this.colToPropCache&&"undefined"!=typeof this.colToPropCache[e]?this.colToPropCache[e]:e},o.prototype.propToCol=function(e){var t;return t="undefined"==typeof this.propToColCache.get(e)?e:this.propToColCache.get(e),t=Handsontable.hooks.run(this.instance,"modifyCol",t)},o.prototype.getSchema=function(){var e=this.instance.getSettings().dataSchema;return e?"function"==typeof e?e():e:this.duckSchema},o.prototype.createRow=function(e,t,n){var o,r,i=this.instance.countCols(),s=0;t||(t=1),("number"!=typeof e||e>=this.instance.countSourceRows())&&(e=this.instance.countSourceRows()),r=e;for(var l=this.instance.getSettings().maxRows;t>s&&this.instance.countSourceRows()a;a++)o.push(null)}else"function"===this.instance.dataType?o=this.instance.getSettings().dataSchema(e):(o={},m(o,this.getSchema()));e===this.instance.countSourceRows()?this.dataSource.push(o):this.dataSource.splice(e,0,o),s++,r++}return Handsontable.hooks.run(this.instance,"afterCreateRow",e,s,n),this.instance.forceFullRender=!0,s},o.prototype.createCol=function(e,t,n){if(!this.instance.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");var o,r,i=this.instance.countSourceRows(),s=this.dataSource,l=0; +t||(t=1),r=e;for(var a=this.instance.getSettings().maxCols;t>l&&this.instance.countCols()=this.instance.countCols()){for(var u=0;i>u;u++)"undefined"==typeof s[u]&&(s[u]=[]),s[u].push(null);this.priv.columnSettings.push(o)}else{for(var u=0;i>u;u++)s[u].splice(r,0,null);this.priv.columnSettings.splice(r,0,o)}l++,r++}return Handsontable.hooks.run(this.instance,"afterCreateCol",e,l,n),this.instance.forceFullRender=!0,l},o.prototype.removeRow=function(e,t){t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countSourceRows()+e)%this.instance.countSourceRows();var n=this.physicalRowsToLogical(e,t),o=Handsontable.hooks.run(this.instance,"beforeRemoveRow",e,t,n);if(o!==!1){var r=this.dataSource,i=r.filter(function(e,t){return-1==n.indexOf(t)});r.length=0,Array.prototype.push.apply(r,i),Handsontable.hooks.run(this.instance,"afterRemoveRow",e,t,n),this.instance.forceFullRender=!0}},o.prototype.removeCol=function(e,t){if("object"===this.instance.dataType||this.instance.getSettings().columns)throw new Error("cannot remove column with object data source or columns option specified");t||(t=1),"number"!=typeof e&&(e=-t),e=(this.instance.countCols()+e)%this.instance.countCols();var n=Handsontable.hooks.run(this.instance,"beforeRemoveCol",e,t);if(n!==!1){for(var o=this.dataSource,r=0,i=this.instance.countSourceRows();i>r;r++)o[r].splice(e,t);this.priv.columnSettings.splice(e,t),Handsontable.hooks.run(this.instance,"afterRemoveCol",e,t),this.instance.forceFullRender=!0}},o.prototype.spliceCol=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getDataAtCol(e),i=r.slice(t,t+n),s=r.slice(t+n);v(o,s);for(var l=0;n>l;)o.push(null),l++;return b(o),this.instance.populateFromArray(t,e,o,null,null,"spliceCol"),i},o.prototype.spliceRow=function(e,t,n){var o=4<=arguments.length?[].slice.call(arguments,3):[],r=this.instance.getSourceDataAtRow(e),i=r.slice(t,t+n),s=r.slice(t+n);v(o,s);for(var l=0;n>l;)o.push(null),l++;return this.instance.populateFromArray(e,t,[o],null,null,"spliceRow"),i},o.prototype.get=function(e,t){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e),"string"==typeof t&&t.indexOf(".")>-1){var n=t.split("."),o=this.dataSource[e];if(!o)return null;for(var r=0,i=n.length;i>r;r++)if(o=o[n[r]],"undefined"==typeof o)return null;return o}return"function"==typeof t?t(this.dataSource.slice(e,e+1)[0]):this.dataSource[e]&&this.dataSource[e].hasOwnProperty&&this.dataSource[e].hasOwnProperty(t)?this.dataSource[e][t]:null};var R=h("copyable",!1);o.prototype.getCopyable=function(e,t){return R.call(this.instance,e,this.propToCol(t))?this.get(e,t):""},o.prototype.set=function(e,t,n,o){if(e=Handsontable.hooks.run(this.instance,"modifyRow",e,o||"datamapGet"),"string"==typeof t&&t.indexOf(".")>-1){for(var r=t.split("."),i=this.dataSource[e],s=0,l=r.length-1;l>s;s++)"undefined"==typeof i[r[s]]&&(i[r[s]]={}),i=i[r[s]];i[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(e,e+1)[0],n):this.dataSource[e][t]=n},o.prototype.physicalRowsToLogical=function(e,t){for(var n,o=this.instance.countSourceRows(),r=(o+e)%o,i=[],s=t;o>r&&s;)n=Handsontable.hooks.run(this.instance,"modifyRow",r),i.push(n),s--,r++;return i},o.prototype.clear=function(){for(var e=0;e=o;o++){l=[];var c=Handsontable.hooks.run(this.instance,"modifyRow",o);for(i=Math.min(e.col,t.col);s>=i;i++){if(null===c)break;l.push(u.call(this,o,this.colToProp(i)))}null!==c&&a.push(l)}return a},o.prototype.getText=function(e,t){return d.stringify(this.getRange(e,t,this.DESTINATION_RENDERER))},o.prototype.getCopyableText=function(e,t){return d.stringify(this.getRange(e,t,this.DESTINATION_CLIPBOARD_GENERATOR))},Handsontable.DataMap=o},{SheetClip:"SheetClip","helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51,multiMap:55}],27:[function(e,t,n){"use strict";Object.defineProperties(n,{DataSource:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,l,a=((o=e("helpers/data"),o&&o.__esModule&&o||{"default":o}).cellMethodLookupFactory,(r=e("helpers/setting"),r&&r.__esModule&&r||{"default":r}).columnFactory,i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}),u=(a.duckSchema,a.deepExtend,a.getProperty),c=(s=e("helpers/array"),s&&s.__esModule&&s||{"default":s}),d=(c.extendArray,c.arrayEach),h=(l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).rangeEach,f=function(e,t){this.hot=e,this.data=t,this.dataType="array",this.colToProp=function(){},this.propToCol=function(){}};$traceurRuntime.createClass(f,{getData:function(){return this.data},getAtColumn:function(e){var t=this,n=[];return d(this.data,function(o){var r=t.colToProp(e);o="string"==typeof r?u(o,r):o[r],n.push(o)}),n},getAtRow:function(e){return this.data[e]},getAtCell:function(e,t){return this.data[e][this.colToProp(t)]},getByRange:function(e,t){var n=this,o=Math.min(e.row,t.row),r=Math.min(e.col,t.col),i=Math.max(e.row,t.row),s=Math.max(e.col,t.col),l=[];return h(o,i,function(e){var t,o=n.getAtRow(e);"array"===n.dataType?t=o.slice(r,s):"object"===n.dataType&&(t={},h(r,s,function(e){var r=n.colToProp(e);t[r]=o[r]})),l.push(t)}),l},destroy:function(){this.data=null,this.hot=null}},{})},{"helpers/array":42,"helpers/data":44,"helpers/number":49,"helpers/object":50,"helpers/setting":51}],28:[function(e,t,n){"use strict";function o(e,t,n){function o(e){var o="function"==typeof t.settings.enterMoves?t.settings.enterMoves(event):t.settings.enterMoves;e?n.transformStart(-o.row,-o.col):n.transformStart(o.row,o.col,!0)}function r(e){e?n.transformEnd(-1,0):n.transformStart(-1,0)}function i(e){e?n.transformEnd(1,0):n.transformStart(1,0)}function s(e){e?n.transformEnd(0,1):n.transformStart(0,1)}function l(e){e?n.transformEnd(0,-1):n.transformStart(0,-1)}function a(a){var c,g;if(e.isListening()&&(Handsontable.hooks.run(e,"beforeKeyDown",a),!y&&!w(a)&&(t.lastKeyCode=a.keyCode,n.isSelected()))){if(c=(a.ctrlKey||a.metaKey)&&!a.altKey,b&&!b.isWaiting()&&!(h(a.keyCode)||f(a.keyCode)||c||C.isEditorOpened()))return void C.openEditor("",a);switch(g=a.shiftKey?n.setRangeEnd:n.setRangeStart,a.keyCode){case d.A:!C.isEditorOpened()&&c&&(n.selectAll(),a.preventDefault(),p(a));break;case d.ARROW_UP:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),r(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_DOWN:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),i(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_RIGHT:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),s(a.shiftKey),a.preventDefault(),p(a);break;case d.ARROW_LEFT:C.isEditorOpened()&&!b.isWaiting()&&C.closeEditorAndSaveChanges(c),l(a.shiftKey),a.preventDefault(),p(a);break;case d.TAB:var v="function"==typeof t.settings.tabMoves?t.settings.tabMoves(a):t.settings.tabMoves;a.shiftKey?n.transformStart(-v.row,-v.col):n.transformStart(v.row,v.col,!0),a.preventDefault(),p(a);break;case d.BACKSPACE:case d.DELETE:n.empty(a),C.prepareEditor(),a.preventDefault();break;case d.F2:C.openEditor(null,a),b&&b.enableFullEditMode(),a.preventDefault();break;case d.ENTER:C.isEditorOpened()?(b&&b.state!==Handsontable.EditorState.WAITING&&C.closeEditorAndSaveChanges(c),o(a.shiftKey)):e.getSettings().enterBeginsEditing?(C.openEditor(null,a),b&&b.enableFullEditMode()):o(a.shiftKey),a.preventDefault(),m(a);break;case d.ESCAPE:C.isEditorOpened()&&C.closeEditorAndRestoreOriginalValue(c),a.preventDefault();break;case d.HOME:g(a.ctrlKey||a.metaKey?new u(0,t.selRange.from.col):new u(t.selRange.from.row,0)),a.preventDefault(),p(a);break;case d.END:g(a.ctrlKey||a.metaKey?new u(e.countRows()-1,t.selRange.from.col):new u(t.selRange.from.row,e.countCols()-1)),a.preventDefault(),p(a);break;case d.PAGE_UP:n.transformStart(-e.countVisibleRows(),0),a.preventDefault(),p(a);break;case d.PAGE_DOWN:n.transformStart(e.countVisibleRows(),0),a.preventDefault(),p(a)}}}function c(){function t(e,t,n){"TD"==n.nodeName&&(C.openEditor(),b&&b.enableFullEditMode())}e.addHook("afterDocumentKeyDown",a),g.addEventListener(document.documentElement,"keydown",function(t){e.runHooks("afterDocumentKeyDown",t)}),e.view.wt.update("onCellDblClick",t),e.addHook("afterDestroy",function(){y=!0})}var g,b,C=this,y=!1;g=v(e),this.destroyEditor=function(e){this.closeEditor(e)},this.getActiveEditor=function(){return b},this.prepareEditor=function(){var n,o,r,i,s,l,a;return b&&b.isWaiting()?void this.closeEditor(!1,!1,function(e){e&&C.prepareEditor()}):(n=t.selRange.highlight.row,o=t.selRange.highlight.col,r=e.colToProp(o),i=e.getCell(n,o),s=e.getDataAtCell(n,o),l=e.getCellMeta(n,o),a=e.getCellEditor(l),void(a?(b=Handsontable.editors.getEditor(a,e),b.prepare(n,o,r,i,s,l)):b=void 0))},this.isEditorOpened=function(){return b&&b.isOpened()},this.openEditor=function(e,t){b&&!b.cellProperties.readOnly?b.beginEditing(e,t):b&&b.cellProperties.readOnly&&t&&t.keyCode===d.ENTER&&o()},this.closeEditor=function(e,t,n){b?b.finishEditing(e,t,n):n&&n(!1)},this.closeEditorAndSaveChanges=function(e){return this.closeEditor(!1,e)},this.closeEditorAndRestoreOriginalValue=function(e){return this.closeEditor(!0,e)},c()}Object.defineProperties(n,{EditorManager:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u=(r=e("3rdparty/walkontable/src/cell/coords"),r&&r.__esModule&&r||{"default":r}).WalkontableCellCoords,c=(i=e("helpers/unicode"),i&&i.__esModule&&i||{"default":i}),d=c.KEY_CODES,h=c.isMetaKey,f=c.isCtrlKey,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=g.stopPropagation,m=g.stopImmediatePropagation,w=g.isImmediatePropagationStopped,v=((l=e("editors"),l&&l.__esModule&&l||{"default":l}).getEditor,(a=e("eventManager"),a&&a.__esModule&&a||{"default":a}).eventManager);Handsontable.EditorManager=o},{"3rdparty/walkontable/src/cell/coords":5,editors:29,eventManager:41,"helpers/dom/event":46,"helpers/unicode":53}],29:[function(e,t,n){"use strict";function o(e){var t,n;n={},t=e,this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in n||(n[e.guid]=new t(e)),n[e.guid]}}function r(e,t){var n=new o(t);"string"==typeof e&&(c[e]=n,Handsontable.editors[u(e)+"Editor"]=t),d.set(t,n)}function i(e,t){var n;if("function"==typeof e)d.get(e)||r(null,e),n=d.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');n=c[e]}if(!n)throw Error('No editor registered under name "'+e+'"');return n.getInstance(t)}function s(e){var t;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter ');if(t=c[e],!t)throw Error('No editor registered under name "'+e+'"');return t.getConstructor()}function l(e){return c[e]?!0:!1}Object.defineProperties(n,{registerEditor:{get:function(){return r}},getEditor:{get:function(){return i}},hasEditor:{get:function(){return l}},getEditorConstructor:{get:function(){return s}},__esModule:{value:!0}});var a,u=(a=e("helpers/string"),a&&a.__esModule&&a||{"default":a}).toUpperCaseFirst,c={},d=new WeakMap;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.registerEditor=r,Handsontable.editors.getEditor=i},{"helpers/string":52}],30:[function(e,t,n){"use strict";function o(e){this.instance=e,this.state=Handsontable.EditorState.VIRGIN,this._opened=!1,this._fullEditMode=!1,this._closeCallback=null,this.init()}Object.defineProperties(n,{BaseEditor:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify,l=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords;Handsontable.editors=Handsontable.editors||{},Handsontable.editors.BaseEditor=o,Handsontable.EditorState={VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"},o.prototype._fireCallbacks=function(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)},o.prototype.init=function(){},o.prototype.getValue=function(){throw Error("Editor getValue() method unimplemented")},o.prototype.setValue=function(e){throw Error("Editor setValue() method unimplemented")},o.prototype.open=function(){throw Error("Editor open() method unimplemented")},o.prototype.close=function(){throw Error("Editor close() method unimplemented")},o.prototype.prepare=function(e,t,n,o,r,i){this.TD=o,this.row=e,this.col=t,this.prop=n,this.originalValue=r,this.cellProperties=i,this.state=Handsontable.EditorState.VIRGIN},o.prototype.extend=function(){function e(){n.apply(this,arguments)}function t(e,t){function n(){}return n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e,e}var n=this.constructor;return t(e,n)},o.prototype.saveValue=function(e,t){var n,o;t?(n=this.instance.getSelected(),n[0]>n[2]&&(o=n[0],n[0]=n[2],n[2]=o),n[1]>n[3]&&(o=n[1],n[1]=n[3],n[3]=o),this.instance.populateFromArray(n[0],n[1],e,n[2],n[3],"edit")):this.instance.populateFromArray(this.row,this.col,e,null,null,"edit")},o.prototype.beginEditing=function(e,t){this.state==Handsontable.EditorState.VIRGIN&&(this.instance.view.scrollViewport(new l(this.row,this.col)),this.instance.view.render(),this.state=Handsontable.EditorState.EDITING,e="string"==typeof e?e:this.originalValue,this.setValue(s(e)),this.open(t),this._opened=!0,this.focus(),this.instance.view.render())},o.prototype.finishEditing=function(e,t,n){var o,r=this;if(n){var i=this._closeCallback;this._closeCallback=function(e){i&&i(e),n(e)}}if(!this.isWaiting()){if(this.state==Handsontable.EditorState.VIRGIN)return void this.instance._registerTimeout(setTimeout(function(){r._fireCallbacks(!0)},0));if(this.state==Handsontable.EditorState.EDITING){if(e)return this.cancelChanges(),void this.instance.view.render();o=this.instance.getSettings().trimWhitespace?[["string"==typeof this.getValue()?String.prototype.trim.call(this.getValue()||""):this.getValue()]]:[[this.getValue()]],this.state=Handsontable.EditorState.WAITING,this.saveValue(o,t),this.instance.getCellValidator(this.cellProperties)?this.instance.addHookOnce("postAfterValidate",function(e){r.state=Handsontable.EditorState.FINISHED,r.discardEditor(e)}):(this.state=Handsontable.EditorState.FINISHED,this.discardEditor(!0))}}},o.prototype.cancelChanges=function(){this.state=Handsontable.EditorState.FINISHED,this.discardEditor()},o.prototype.discardEditor=function(e){this.state===Handsontable.EditorState.FINISHED&&(e===!1&&this.cellProperties.allowInvalid!==!0?(this.instance.selectCell(this.row,this.col),this.focus(),this.state=Handsontable.EditorState.EDITING,this._fireCallbacks(!1)):(this.close(),this._opened=!1,this._fullEditMode=!1,this.state=Handsontable.EditorState.VIRGIN,this._fireCallbacks(!0)))},o.prototype.enableFullEditMode=function(){this._fullEditMode=!0},o.prototype.isInFullEditMode=function(){return this._fullEditMode},o.prototype.isOpened=function(){return this._opened},o.prototype.isWaiting=function(){return this.state===Handsontable.EditorState.WAITING},o.prototype.checkEditorSection=function(){var e=this.instance.countRows(),t="";return this.row=e-this.instance.getSettings().fixedRowsBottom?t=this.col"+l+"")))},autoColumnSize:!0,modifyColWidth:function(e,t){var o=this.getPlugin("autoColumnSize").widths;return o[t]&&(e=o[t]),n?e:e+15}}),this.htEditor.view.wt.wtTable.holder.parentNode.style["padding-right"]=v()+2+"px",O&&(O=!1),t.instance._registerTimeout(setTimeout(function(){t.queryChoices(t.TEXTAREA.value)},0))},T.prototype.close=function(){S.prototype.close.apply(this,arguments)},T.prototype.queryChoices=function(e){if(this.query=e,"function"==typeof this.cellProperties.source){var t=this;this.cellProperties.source(e,function(e){t.updateChoicesList(e)})}else if(Array.isArray(this.cellProperties.source)){var n;if(e&&this.cellProperties.filter!==!1){var o=this.cellProperties.filteringCaseSensitive===!0,r=e.toLowerCase();n=this.cellProperties.source.filter(function(t){return o?-1!=t.indexOf(e):-1!=t.toLowerCase().indexOf(r)})}else n=this.cellProperties.source;this.updateChoicesList(n)}else this.updateChoicesList([])},T.prototype.updateChoicesList=function(e){var t,n=w(this.TEXTAREA),o=b(this.TEXTAREA),r=T.sortByRelevance(this.getValue(),e,this.cellProperties.filteringCaseSensitive);if(0==this.cellProperties.filter)t=r[0];else{for(var i=[],s=0,l=r.length;l>s;s++)i.push(e[r[s]]);t=0,e=i}this.choices=e,this.htEditor.loadData(g([e])),this.updateDropdownHeight(),this.cellProperties.strict===!0&&this.highlightBestMatchingChoice(t),this.instance.listen(),this.TEXTAREA.focus(),y(this.TEXTAREA,n,n==o?void 0:o)},T.prototype.updateDropdownHeight=function(){var e=this.htEditor.getColWidth(0)+v()+2,t=void 0===this.cellProperties.trimDropdown?!0:this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view.wt.wtTable.alignOverlaysWithTrimmingContainer()},T.prototype.finishEditing=function(e){e||this.instance.removeHook("beforeKeyDown",o),S.prototype.finishEditing.apply(this,arguments)},T.prototype.highlightBestMatchingChoice=function(e){"number"==typeof e?this.htEditor.selectCell(e,0):this.htEditor.deselectCell()},T.sortByRelevance=function(e,t,n){var o,r,i,s,l,a=[],u=e.length,c=[];if(0===u){for(s=0,l=t.length;l>s;s++)c.push(s);return c}for(s=0,l=t.length;l>s;s++)o=f(t[s]),r=n?o.indexOf(e):o.toLowerCase().indexOf(e.toLowerCase()),-1!=r&&(i=o.length-r-u,a.push({baseIndex:s,index:r,charsLeft:i,value:o}));for(a.sort(function(e,t){return-1===t.index?-1:-1===e.index?1:e.indext.charsLeft?1:0:void 0}),s=0,l=a.length;l>s;s++)c.push(a[s].baseIndex);return c},T.prototype.getDropdownHeight=function(){var e=this.htEditor.getInstance().getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.choices.length>=t?t*e:this.choices.length*e+8},T.prototype.allowKeyEventPropagation=function(e){var t={row:this.htEditor.getSelectedRange()?this.htEditor.getSelectedRange().from.row:-1},n=!1;return e===d.ARROW_DOWN&&t.row-1&&(n=!0),n},E("autocomplete",T)},{editors:29,handsontableEditor:35,"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/unicode":53}],32:[function(e,t,n){"use strict";Object.defineProperties(n,{CheckboxEditor:{get:function(){return u}},__esModule:{value:!0}});var o,r,i,s=(o=e("editors"),o&&o.__esModule&&o||{"default":o}).registerEditor,l=(r=e("_baseEditor"),r&&r.__esModule&&r||{"default":r}).BaseEditor,a=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).hasClass,u=function(){$traceurRuntime.superConstructor(c).apply(this,arguments)},c=u;$traceurRuntime.createClass(u,{beginEditing:function(){var e=this.TD.querySelector('input[type="checkbox"]');a(e,"htBadValue")||e.click()},finishEditing:function(){},init:function(){},open:function(){},close:function(){},getValue:function(){},setValue:function(){},focus:function(){}},{},l),s("checkbox",u)},{_baseEditor:30,editors:29,"helpers/dom/element":45}],33:[function(e,t,n){"use strict";Object.defineProperties(n,{DateEditor:{get:function(){return S}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),f=h.addClass,g=h.outerHeight,p=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).deepExtend,m=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,w=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),v=(w.getEditor,w.registerEditor),b=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}).isMetaKey,C=(a=e("helpers/dom/event"),a&&a.__esModule&&a||{"default":a}).stopPropagation,y=(u=e("textEditor"),u&&u.__esModule&&u||{"default":u}).TextEditor,R=(c=e("moment"),c&&c.__esModule&&c||{"default":c})["default"],E=(d=e("pikaday"),d&&d.__esModule&&d||{"default":d})["default"];Handsontable.editors=Handsontable.editors||{},Handsontable.editors.DateEditor=S;var S=function(e){this.$datePicker=null,this.datePicker=null,this.datePickerStyle=null,this.defaultDateFormat="DD/MM/YYYY",this.isCellEdited=!1,this.parentDestroyed=!1,$traceurRuntime.superConstructor(T).call(this,e)},T=S;$traceurRuntime.createClass(S,{init:function(){var e=this;if("function"!=typeof R)throw new Error("You need to include moment.js to your project.");if("function"!=typeof E)throw new Error("You need to include Pikaday to your project.");$traceurRuntime.superGet(this,T.prototype,"init").call(this),this.instance.addHook("afterDestroy",function(){e.parentDestroyed=!0,e.destroyElements()})},createElements:function(){$traceurRuntime.superGet(this,T.prototype,"createElements").call(this),this.datePicker=document.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,f(this.datePicker,"htDatepickerHolder"),document.body.appendChild(this.datePicker),this.$datePicker=new E(this.getDatePickerConfig());var e=new m(this);e.addEventListener(this.datePicker,"mousedown",function(e){return C(e)}),this.hideDatepicker()},destroyElements:function(){this.$datePicker.destroy()},prepare:function(e,t,n,o,r,i){this._opened=!1,$traceurRuntime.superGet(this,T.prototype,"prepare").call(this,e,t,n,o,r,i)},open:function(){var e=void 0!==arguments[0]?arguments[0]:null;$traceurRuntime.superGet(this,T.prototype,"open").call(this),this.showDatepicker(e)},close:function(){var e=this;this._opened=!1,this.instance._registerTimeout(setTimeout(function(){e.instance.selection.refreshBorders()},0)),$traceurRuntime.superGet(this,T.prototype,"close").call(this)},finishEditing:function(){var e=void 0!==arguments[0]?arguments[0]:!1,t=void 0!==arguments[1]?arguments[1]:!1;if(e){var n=this.originalValue;void 0!==n&&this.setValue(n)}this.hideDatepicker(),$traceurRuntime.superGet(this,T.prototype,"finishEditing").call(this,e,t)},showDatepicker:function(e){this.$datePicker.config(this.getDatePickerConfig());var t,n=this.TD.getBoundingClientRect(),o=this.cellProperties.dateFormat||this.defaultDateFormat,r=this.$datePicker.config(),i=this.instance.view.isMouseDown(),s=e?b(e.keyCode):!1;this.datePickerStyle.top=window.pageYOffset+n.top+g(this.TD)+"px",this.datePickerStyle.left=window.pageXOffset+n.left+"px",this.$datePicker._onInputFocus=function(){},r.format=o,this.originalValue?(t=this.originalValue,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.cellProperties.defaultDate?(t=this.cellProperties.defaultDate,r.defaultDate=t,R(t,o,!0).isValid()&&this.$datePicker.setMoment(R(t,o),!0),s||i||this.setValue("")):this.$datePicker.gotoToday(),this.datePickerStyle.display="block",this.$datePicker.show()},hideDatepicker:function(){this.datePickerStyle.display="none",this.$datePicker.hide()},getDatePickerConfig:function(){var e=this,t=this.TEXTAREA,n={};this.cellProperties&&this.cellProperties.datePickerConfig&&p(n,this.cellProperties.datePickerConfig);var o=n.onSelect,r=n.onClose;return n.field=t,n.trigger=t,n.container=this.datePicker,n.bound=!1,n.format=n.format||this.defaultDateFormat,n.reposition=n.reposition||!1,n.onSelect=function(t){isNaN(t.getTime())||(t=R(t).format(e.cellProperties.dateFormat||e.defaultDateFormat)),e.setValue(t),e.hideDatepicker(),o&&o()},n.onClose=function(){e.parentDestroyed||e.finishEditing(!1),r&&r()},n}},{},y),v("date",S)},{editors:29,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,moment:void 0,pikaday:void 0,textEditor:40}],34:[function(e,t,n){"use strict";Object.defineProperties(n,{DropdownEditor:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("editors"),o&&o.__esModule&&o||{"default":o}),s=(i.getEditor,i.registerEditor),l=(r=e("autocompleteEditor"),r&&r.__esModule&&r||{"default":r}).AutocompleteEditor,a=function(){$traceurRuntime.superConstructor(u).apply(this,arguments)},u=a;$traceurRuntime.createClass(a,{prepare:function(e,t,n,o,r,i){$traceurRuntime.superGet(this,u.prototype,"prepare").call(this,e,t,n,o,r,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}},{},l),Handsontable.hooks.add("beforeValidate",function(e,t,n,o){var r=this.getCellMeta(t,n);r.editor===Handsontable.editors.DropdownEditor&&void 0===r.strict&&(r.filter=!1,r.strict=!0)}),s("dropdown",a)},{autocompleteEditor:31,editors:29}],35:[function(e,t,n){"use strict";Object.defineProperties(n,{HandsontableEditor:{get:function(){return v}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).extend,d=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).setCaretPosition,h=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),f=h.stopImmediatePropagation,g=h.isImmediatePropagationStopped,p=(l=e("editors"),l&&l.__esModule&&l||{"default":l}),m=(p.getEditor,p.registerEditor),w=(a=e("textEditor"),a&&a.__esModule&&a||{"default":a}).TextEditor,v=w.prototype.extend();v.prototype.createElements=function(){w.prototype.createElements.apply(this,arguments);var e=document.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()},v.prototype.prepare=function(e,t,n,o,r,i){w.prototype.prepare.apply(this,arguments);var s=this,l={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,afterOnCellMouseDown:function(){var e=this.getValue();void 0!==e&&s.setValue(e),s.instance.destroyEditor()}};this.cellProperties.handsontable&&c(l,i.handsontable),this.htOptions=l};var b=function(e){if(!g(e)){var t,n=this.getActiveEditor(),o=n.htEditor.getInstance();if(e.keyCode==u.ARROW_DOWN)if(o.getSelected()){var r=o.getSelected()[0],i=o.countRows()-1;t=Math.min(i,r+1)}else t=0;else if(e.keyCode==u.ARROW_UP&&o.getSelected()){var r=o.getSelected()[0];t=r-1}void 0!==t&&(0>t?o.deselectCell():o.selectCell(t,0),o.getData().length&&(e.preventDefault(),f(e),n.instance.listen(),n.TEXTAREA.focus()))}};v.prototype.open=function(){this.instance.addHook("beforeKeyDown",b),w.prototype.open.apply(this,arguments),this.htEditor&&this.htEditor.destroy(),this.htEditor=new Handsontable(this.htContainer,this.htOptions),this.cellProperties.strict?(this.htEditor.selectCell(0,0),this.TEXTAREA.style.visibility="hidden"):(this.htEditor.deselectCell(),this.TEXTAREA.style.visibility="visible"),d(this.TEXTAREA,0,this.TEXTAREA.value.length)},v.prototype.close=function(){this.instance.removeHook("beforeKeyDown",b),this.instance.listen(),w.prototype.close.apply(this,arguments)},v.prototype.focus=function(){this.instance.listen(),w.prototype.focus.apply(this,arguments)},v.prototype.beginEditing=function(e){var t=this.instance.getSettings().onBeginEditing;t&&t()===!1||w.prototype.beginEditing.apply(this,arguments)},v.prototype.finishEditing=function(e,t){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor&&this.htEditor.getSelected()){var n=this.htEditor.getInstance().getValue();void 0!==n&&this.setValue(n)}return w.prototype.finishEditing.apply(this,arguments)},v.prototype.assignHooks=function(){var e=this;this.instance.addHook("afterDestroy",function(){e.htEditor&&e.htEditor.destroy()})},m("handsontable",v)},{editors:29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,textEditor:40}],36:[function(e,t,n){"use strict";Object.defineProperties(n,{MobileTextEditor:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/unicode"),o&&o.__esModule&&o||{"default":o}).KEY_CODES,c=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),d=c.stopImmediatePropagation,h=c.isImmediatePropagationStopped,f=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),g=f.addClass,p=f.getScrollLeft,m=f.getScrollTop,w=f.hasClass,v=f.isChildOf,b=f.offset,C=f.outerHeight,y=f.outerWidth,R=f.removeClass,E=f.setCaretPosition,S=(s=e("editors"),s&&s.__esModule&&s||{"default":s}),T=(S.getEditor,S.registerEditor),O=(l=e("_baseEditor"),l&&l.__esModule&&l||{"default":l}).BaseEditor,_=(a=e("eventManager"),a&&a.__esModule&&a||{"default":a}).eventManager,M=O.prototype.extend(),H={},k=function(){this.controls={},this.controls.leftButton=document.createElement("DIV"),this.controls.leftButton.className="leftButton",this.controls.rightButton=document.createElement("DIV"),this.controls.rightButton.className="rightButton",this.controls.upButton=document.createElement("DIV"),this.controls.upButton.className="upButton",this.controls.downButton=document.createElement("DIV"), +this.controls.downButton.className="downButton";for(var e in this.controls)this.controls.hasOwnProperty(e)&&this.positionControls.appendChild(this.controls[e])};M.prototype.valueChanged=function(){return this.initValue!=this.getValue()},M.prototype.init=function(){var e=this;this.eventManager=_(this.instance),this.createElements(),this.bindEvents(),this.instance.addHook("afterDestroy",function(){e.destroy()})},M.prototype.getValue=function(){return this.TEXTAREA.value},M.prototype.setValue=function(e){this.initValue=e,this.TEXTAREA.value=e},M.prototype.createElements=function(){this.editorContainer=document.createElement("DIV"),this.editorContainer.className="htMobileEditorContainer",this.cellPointer=document.createElement("DIV"),this.cellPointer.className="cellPointer",this.moveHandle=document.createElement("DIV"),this.moveHandle.className="moveHandle",this.inputPane=document.createElement("DIV"),this.inputPane.className="inputs",this.positionControls=document.createElement("DIV"),this.positionControls.className="positionControls",this.TEXTAREA=document.createElement("TEXTAREA"),g(this.TEXTAREA,"handsontableInput"),this.inputPane.appendChild(this.TEXTAREA),this.editorContainer.appendChild(this.cellPointer),this.editorContainer.appendChild(this.moveHandle),this.editorContainer.appendChild(this.inputPane),this.editorContainer.appendChild(this.positionControls),k.call(this),document.body.appendChild(this.editorContainer)},M.prototype.onBeforeKeyDown=function(e){var t=this,n=t.getActiveEditor();if(e.target===n.TEXTAREA&&!h(e))switch(e.keyCode){case u.ENTER:n.close(),e.preventDefault();break;case u.BACKSPACE:d(e)}},M.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),g(this.editorContainer,"active"),R(this.cellPointer,"hidden"),this.updateEditorPosition()},M.prototype.focus=function(){this.TEXTAREA.focus(),E(this.TEXTAREA,this.TEXTAREA.value.length)},M.prototype.close=function(){this.TEXTAREA.blur(),this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),R(this.editorContainer,"active")},M.prototype.scrollToView=function(){var e=this.instance.getSelectedRange().highlight;this.instance.view.scrollViewport(e)},M.prototype.hideCellPointer=function(){w(this.cellPointer,"hidden")||g(this.cellPointer,"hidden")},M.prototype.updateEditorPosition=function(e,t){if(e&&t)e=parseInt(e,10),t=parseInt(t,10),this.editorContainer.style.top=t+"px",this.editorContainer.style.left=e+"px";else{var n=this.instance.getSelected(),o=this.instance.getCell(n[0],n[1]);if(H.cellPointer||(H.cellPointer={height:C(this.cellPointer),width:y(this.cellPointer)}),H.editorContainer||(H.editorContainer={width:y(this.editorContainer)}),void 0!==o){var r=this.instance.view.wt.wtOverlays.leftOverlay.trimmingContainer==window?0:p(this.instance.view.wt.wtOverlays.leftOverlay.holder),i=this.instance.view.wt.wtOverlays.topOverlay.trimmingContainer==window?0:m(this.instance.view.wt.wtOverlays.topOverlay.holder),s=b(o),l=y(o),a={x:r,y:i};this.editorContainer.style.top=parseInt(s.top+C(o)-a.y+H.cellPointer.height,10)+"px",this.editorContainer.style.left=parseInt(window.innerWidth/2-H.editorContainer.width/2,10)+"px",s.left+l/2>parseInt(this.editorContainer.style.left,10)+H.editorContainer.width?this.editorContainer.style.left=window.innerWidth-H.editorContainer.width+"px":s.left+l/2n;n++)t[e[n]]=e[n];else"object"==typeof e&&(t=e);return t},S.prototype.getValue=function(){return this.select.value},S.prototype.setValue=function(e){this.select.value=e};var T=function(e){var t=this,n=t.getActiveEditor();switch(e.keyCode){case C.ARROW_UP:var o=n.select.selectedIndex-1;o>=0&&(n.select[o].selected=!0),b(e),e.preventDefault();break;case C.ARROW_DOWN:var r=n.select.selectedIndex+1;r<=n.select.length-1&&(n.select[r].selected=!0),b(e),e.preventDefault()}};S.prototype.open=function(){this._opened=!0,this.refreshDimensions(),this.select.style.display="",this.instance.addHook("beforeKeyDown",T)},S.prototype.close=function(){this._opened=!1,this.select.style.display="none",this.instance.removeHook("beforeKeyDown",T)},S.prototype.focus=function(){this.select.focus()},S.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close();var e,t=w(this.TD)+1,n=m(this.TD)+1,o=p(this.TD),r=p(this.instance.rootElement),i=g(this.TD),s=o.top-r.top-1-(i.scrollTop||0),l=o.left-r.left-1-(i.scrollLeft||0),a=this.checkEditorSection(),u=this.instance.getSettings();u.rowHeaders?1:0,u.colHeaders?1:0;switch(a){case"top":e=f(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=f(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=f(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=f(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=f(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}0===this.instance.getSelected()[0]&&(s+=1),0===this.instance.getSelected()[1]&&(l+=1);var c=this.select.style;e&&-1!=e?c[e[0]]=e[1]:v(this.select);var d=h(this.TD);parseInt(d.borderTopWidth,10)>0&&(n-=1),parseInt(d.borderLeftWidth,10)>0&&(t-=1),c.height=n+"px",c.minWidth=t+"px",c.top=s+"px",c.left=l+"px",c.margin="0px"}},S.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=101;break;case"corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.select.style.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.select.style.zIndex=""}return-1!=e&&-2!=e?e:void 0},R("select",S)},{_baseEditor:30,editors:29,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],40:[function(e,t,n){"use strict";Object.defineProperties(n,{TextEditor:{get:function(){return k}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),d=c.addClass,h=c.getCaretPosition,f=c.getComputedStyle,g=c.getCssTransform,p=c.getScrollableElement,m=c.innerWidth,w=c.offset,v=c.resetCssTransform,b=c.setCaretPosition,C=(r=e("autoResize"),r&&r.__esModule&&r||{"default":r})["default"],y=(i=e("_baseEditor"),i&&i.__esModule&&i||{"default":i}).BaseEditor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,E=(l=e("editors"),l&&l.__esModule&&l||{"default":l}),S=(E.getEditor,E.registerEditor),T=(a=e("helpers/unicode"),a&&a.__esModule&&a||{"default":a}).KEY_CODES,O=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}),_=O.stopPropagation,M=O.stopImmediatePropagation,H=O.isImmediatePropagationStopped,k=y.prototype.extend();k.prototype.init=function(){var e=this;this.createElements(),this.eventManager=R(this),this.bindEvents(),this.autoResize=C(),this.instance.addHook("afterDestroy",function(){e.destroy()})},k.prototype.getValue=function(){return this.TEXTAREA.value},k.prototype.setValue=function(e){this.TEXTAREA.value=e};var A=function(e){var t,n=this,o=n.getActiveEditor();if(t=(e.ctrlKey||e.metaKey)&&!e.altKey,e.target===o.TEXTAREA&&!H(e)){if(17===e.keyCode||224===e.keyCode||91===e.keyCode||93===e.keyCode)return void M(e);switch(e.keyCode){case T.ARROW_RIGHT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ARROW_LEFT:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ARROW_UP:case T.ARROW_DOWN:o.isInFullEditMode()&&(!o.isWaiting()&&!o.allowKeyEventPropagation||!o.isWaiting()&&o.allowKeyEventPropagation&&!o.allowKeyEventPropagation(e.keyCode))&&M(e);break;case T.ENTER:var r=o.instance.getSelected(),i=!(r[0]===r[2]&&r[1]===r[3]);if(t&&!i||e.altKey){if(o.isOpened()){var s=h(o.TEXTAREA),l=o.getValue(),a=l.slice(0,s)+"\n"+l.slice(s);o.setValue(a),b(o.TEXTAREA,s+1)}else o.beginEditing(o.originalValue+"\n");M(e)}e.preventDefault();break;case T.A:case T.X:case T.C:case T.V:t&&M(e);break;case T.BACKSPACE:case T.DELETE:case T.HOME:case T.END:M(e)}-1===[T.ARROW_UP,T.ARROW_RIGHT,T.ARROW_DOWN,T.ARROW_LEFT].indexOf(e.keyCode)&&o.autoResize.resize(String.fromCharCode(e.keyCode))}};k.prototype.open=function(){this.refreshDimensions(),this.instance.addHook("beforeKeyDown",A)},k.prototype.close=function(e){this.textareaParentStyle.display="none",this.autoResize.unObserve(),document.activeElement===this.TEXTAREA&&this.instance.listen(),this.instance.removeHook("beforeKeyDown",A)},k.prototype.focus=function(){this.TEXTAREA.focus(),b(this.TEXTAREA,this.TEXTAREA.value.length)},k.prototype.createElements=function(){this.TEXTAREA=document.createElement("TEXTAREA"),d(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.TEXTAREA_PARENT=document.createElement("DIV"),d(this.TEXTAREA_PARENT,"handsontableInputHolder"),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.textareaParentStyle.top=0,this.textareaParentStyle.left=0,this.textareaParentStyle.display="none",this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.instance.rootElement.appendChild(this.TEXTAREA_PARENT);var e=this;this.instance._registerTimeout(setTimeout(function(){e.refreshDimensions()},0))},k.prototype.getEditedCell=function(){var e,t=this.checkEditorSection();switch(t){case"top":e=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=101;break;case"top-left-corner":e=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"bottom-left-corner":e=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=103;break;case"left":e=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;case"bottom":e=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.textareaParentStyle.zIndex=102;break;default:e=this.instance.getCell(this.row,this.col),this.textareaParentStyle.zIndex=""}return-1!=e&&-2!=e?e:void 0},k.prototype.refreshDimensions=function(){if(this.state===Handsontable.EditorState.EDITING){if(this.TD=this.getEditedCell(),!this.TD)return void this.close(!0);var e,t=w(this.TD),n=w(this.instance.rootElement),o=p(this.TD),r=this.instance.countRows(),i=t.top-n.top-1-(o.scrollTop||0),s=t.left-n.left-1-(o.scrollLeft||0),l=this.instance.getSettings(),a=(l.rowHeaders?1:0,l.colHeaders?1:0),u=this.checkEditorSection(),c=this.TD.style.backgroundColor;switch(u){case"top":e=g(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=g(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=g(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=g(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=g(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(a&&0===this.instance.getSelected()[0]||l.fixedRowsBottom&&this.instance.getSelected()[0]===r-l.fixedRowsBottom)&&(i+=1),0===this.instance.getSelected()[1]&&(s+=1),e&&-1!=e?this.textareaParentStyle[e[0]]=e[1]:v(this.textareaParentStyle),this.textareaParentStyle.top=i+"px",this.textareaParentStyle.left=s+"px";var d=this.TD.offsetTop-this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition(),h=this.TD.offsetLeft-this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),b=m(this.TD)-8,C=this.instance.view.maximumVisibleElementWidth(h)-9,y=this.TD.scrollHeight+1,R=Math.max(this.instance.view.maximumVisibleElementHeight(d)-2,23),E=f(this.TD);this.TEXTAREA.style.fontSize=E.fontSize,this.TEXTAREA.style.fontFamily=E.fontFamily,this.TEXTAREA.style.backgroundColor="",this.TEXTAREA.style.backgroundColor=c?c:f(this.TEXTAREA).backgroundColor,this.autoResize.init(this.TEXTAREA,{minHeight:Math.min(y,R),maxHeight:R,minWidth:Math.min(b,C),maxWidth:C},!0),this.textareaParentStyle.display="block"}},k.prototype.bindEvents=function(){var e=this;this.eventManager.addEventListener(this.TEXTAREA,"cut",function(e){_(e)}),this.eventManager.addEventListener(this.TEXTAREA,"paste",function(e){_(e)}),this.instance.addHook("afterScrollVertically",function(){e.refreshDimensions()}),this.instance.addHook("afterColumnResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterRowResize",function(){e.refreshDimensions(),e.focus()}),this.instance.addHook("afterDestroy",function(){e.eventManager.destroy()})},k.prototype.destroy=function(){this.eventManager.destroy()},S("text",k)},{_baseEditor:30,autoResize:"autoResize",editors:29,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/unicode":53}],41:[function(e,t,n){"use strict";function o(e,t){var n,o,r,i,s,l="HOT-TABLE";if(t.isTargetWebComponent=!1,t.realTarget=t.target,!Handsontable.eventManager.isHotTableEnv)return t;for(t=a(t),s=t.path?t.path.length:0;s--;){if(t.path[s].nodeName===l)n=!0;else if(n&&t.path[s].shadowRoot){i=t.path[s];break}0!==s||i||(i=t.path[s])}return i||(i=t.target),t.isTargetWebComponent=!0,c()?t.realTarget=t.srcElement||t.toElement:(e instanceof Handsontable.Core||e instanceof Walkontable)&&(e instanceof Handsontable.Core?o=e.view?e.view.wt.wtTable.TABLE:null:e instanceof Walkontable&&(o=e.wtTable.TABLE.parentNode.parentNode),r=u(t.target,[l],o),r?t.realTarget=o.querySelector(l)||t.target:t.realTarget=t.target),Object.defineProperty(t,"target",{get:function(){return a(i)},enumerable:!0,configurable:!0}),t}function r(e){return new d(e)}Object.defineProperties(n,{EventManager:{get:function(){return d}},eventManager:{get:function(){return r}},__esModule:{value:!0}});var i,s,l=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),a=l.polymerWrap,u=l.closest,c=(s=e("helpers/browser"),s&&s.__esModule&&s||{"default":s}).isWebComponentSupportedNatively,d=function(){var e=void 0!==arguments[0]?arguments[0]:null;this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])};$traceurRuntime.createClass(d,{addEventListener:function(e,t,n){function r(e){void 0==e.target&&void 0!=e.srcElement&&(e.definePoperty?e.definePoperty("target",{value:e.srcElement}):e.target=e.srcElement),void 0==e.preventDefault&&(e.definePoperty?e.definePoperty("preventDefault",{value:function(){this.returnValue=!1}}):e.preventDefault=function(){this.returnValue=!1}),e=o(s,e),n.call(this,e)}var i=this,s=this.context;return this.context.eventListeners.push({element:e,event:t,callback:n,callbackProxy:r}),window.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r),Handsontable.countEventManagerListeners++,function(){i.removeEventListener(e,t,n)}},removeEventListener:function(e,t,n){for(var o,r=this.context.eventListeners.length;r--;)if(o=this.context.eventListeners[r],o.event==t&&o.element==e){if(n&&n!=o.callback)continue;this.context.eventListeners.splice(r,1),o.element.removeEventListener?o.element.removeEventListener(o.event,o.callbackProxy,!1):o.element.detachEvent("on"+o.event,o.callbackProxy),Handsontable.countEventManagerListeners--}},clearEvents:function(){if(this.context)for(var e=this.context.eventListeners.length;e--;){var t=this.context.eventListeners[e];t&&this.removeEventListener(t.element,t.event,t.callback)}},clear:function(){this.clearEvents()},destroy:function(){this.clearEvents(),this.context=null},fireEvent:function(e,t){var n,o={bubbles:!0,cancelable:"mousemove"!==t,view:window,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};document.createEvent?(n=document.createEvent("MouseEvents"),n.initMouseEvent(t,o.bubbles,o.cancelable,o.view,o.detail,o.screenX,o.screenY,o.clientX,o.clientY,o.ctrlKey,o.altKey,o.shiftKey,o.metaKey,o.button,o.relatedTarget||document.body.parentNode)):n=document.createEventObject(),e.dispatchEvent?e.dispatchEvent(n):e.fireEvent("on"+t,n)}},{}),window.Handsontable=window.Handsontable||{},Handsontable.countEventManagerListeners=0,Handsontable.eventManager=r},{"helpers/browser":43,"helpers/dom/element":45}],42:[function(e,t,n){"use strict";function o(e){for(var t=0,n=e.length;n>t;)e[t]=[e[t]],t++}function r(e,t){for(var n=0,o=t.length;o>n;)e.push(t[n]),n++}function i(e){var t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;for(var n=e.length,o=e[0].length,r=0;n>r;r++)for(var i=0;o>i;i++)t[i]||(t[i]=[]),t[i][r]=e[r][i];return t}function s(e,t,n,o){var r=-1,i=e.length;for(o&&i&&(n=e[++r]);++rt?e:t},Array.isArray(e)?e[0]:void 0)}function h(e){return s(e,function(e,t){return t>e?e:t},Array.isArray(e)?e[0]:void 0)}function f(e){return e.length?c(e)/e.length:0}function g(e){return s(e,function(e,t){return e.concat(Array.isArray(t)?g(t):t)},[])}function p(e){var t=[];return u(e,function(e){-1===t.indexOf(e)&&t.push(e)}),t}Object.defineProperties(n,{to2dArray:{get:function(){return o}},extendArray:{get:function(){return r}},pivot:{get:function(){return i}},arrayReduce:{get:function(){return s}},arrayFilter:{get:function(){return l}},arrayMap:{get:function(){return a}},arrayEach:{get:function(){return u}},arraySum:{get:function(){return c}},arrayMax:{get:function(){return d}},arrayMin:{get:function(){return h}},arrayAvg:{get:function(){return f}},arrayFlatten:{get:function(){return g}},arrayUnique:{get:function(){return p}},__esModule:{value:!0}})},{}],43:[function(e,t,n){"use strict";function o(){return f}function r(){return g}function i(){return p}function s(){return m}function l(e){return e||(e=navigator.userAgent),/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e)}function a(){return"ontouchstart"in window}function u(){var e=document.createElement("div");return e.createShadowRoot&&e.createShadowRoot.toString().match(/\[native code\]/)?!0:!1}function c(){var e=document.createElement("TABLE");e.style.borderSpacing=0,e.style.borderWidth=0,e.style.padding=0;var t=document.createElement("TBODY");e.appendChild(t),t.appendChild(document.createElement("TR")),t.firstChild.appendChild(document.createElement("TD")),t.firstChild.firstChild.innerHTML="t
t";var n=document.createElement("CAPTION");n.innerHTML="c
c
c
c",n.style.padding=0,n.style.margin=0,e.insertBefore(n,t),document.body.appendChild(e),h=e.offsetHeight<2*e.lastChild.offsetHeight,document.body.removeChild(e)}function d(){return void 0===h&&c(),h}Object.defineProperties(n,{isIE8:{get:function(){return o}},isIE9:{get:function(){return r}},isSafari:{get:function(){return i}},isChrome:{get:function(){return s}},isMobileBrowser:{get:function(){return l}},isTouchSupported:{get:function(){return a}},isWebComponentSupportedNatively:{get:function(){return u}},hasCaptionProblem:{get:function(){return d}},__esModule:{value:!0}});var h,f=!document.createTextNode("test").textContent,g=!!document.documentMode,p=/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),m=/Chrome/.test(navigator.userAgent)&&/Google/.test(navigator.vendor)},{}],44:[function(e,t,n){"use strict";function o(e){for(var t,n=e+1,o="";n>0;)t=(n-1)%26,o=String.fromCharCode(65+t)+o,n=parseInt((n-t)/26,10);return o}function r(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s=[];for(r=0;t>r;r++)s.push(o(r)+(n+1));i.push(s)}return i}function i(e,t){e="number"==typeof e?e:100,t="number"==typeof t?t:4;var n,r,i=[];for(n=0;e>n;n++){var s={};for(r=0;t>r;r++)s["prop"+r]=o(r)+(n+1);i.push(s)}return i}function s(e,t){for(var n,o=[],r=0;e>r;r++){n=[];for(var i=0;t>i;i++)n.push("");o.push(n)}return o}function l(e){var t,n,o,r,i=[],s=0;for(t=0,n=e.length;n>t;t++)for(o=0,r=e[t].length;r>o;o++)o==s&&(i.push([]),s++),i[o].push(e[t][o]);return i}function a(e,t){function n(e){var t=Handsontable.cellTypes[e];if("undefined"==typeof t)throw new Error('You declared cell type "'+e+'" as a string that is not mapped to a known object. Cell type must be an object or a string mapped to an object in Handsontable.cellTypes');return t}return t="undefined"==typeof t?!0:t,function(o,r){return function i(o){if(o){if(o.hasOwnProperty(e)&&void 0!==o[e])return o[e];if(o.hasOwnProperty("type")&&o.type){var r;if("string"!=typeof o.type)throw new Error("Cell type must be a string ");if(r=n(o.type),r.hasOwnProperty(e))return r[e];if(t)return}return i(c(o))}}("number"==typeof o?this.getCellMeta(o,r):o)}}Object.defineProperties(n,{spreadsheetColumnLabel:{get:function(){return o}},createSpreadsheetData:{get:function(){return r}},createSpreadsheetObjectData:{get:function(){return i}},createEmptySpreadsheetData:{get:function(){return s}},translateRowsToColumns:{get:function(){return l}},cellMethodLookupFactory:{get:function(){return a}},__esModule:{value:!0}});var u,c=(u=e("object"),u&&u.__esModule&&u||{"default":u}).getPrototypeOf},{object:50}],45:[function(e,t,n){"use strict";function o(e,t,n){for(;null!=e&&e!==n;){if(e.nodeType===Node.ELEMENT_NODE&&(t.indexOf(e.nodeName)>-1||t.indexOf(e)>-1))return e;e=e.host&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE?e.host:e.parentNode}return null}function r(e,t){var n=e.parentNode,o=[];for("string"==typeof t?o=Array.prototype.slice.call(document.querySelectorAll(t),0):o.push(t);null!=n;){if(o.indexOf(n)>-1)return!0;n=n.parentNode}return!1}function i(e){function t(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName===o.toUpperCase()}var n,o="hot-table",r=!1;for(n=s(e);null!=n;){if(t(n)){r=!0;break}if(n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(r=t(n.host))break;n=n.host}n=n.parentNode}return r}function s(e){return"undefined"!=typeof Polymer&&"function"==typeof wrap?wrap(e):e}function l(e){return"undefined"!=typeof Polymer&&"function"==typeof unwrap?unwrap(e):e}function a(e){var t=0;if(e.previousSibling)for(;e=e.previousSibling;)++t;return t}function u(e,t){var n=document.querySelector(".ht_clone_"+e);return n?n.contains(t):null}function c(e){var t=0,n=[];if(!e||!e.length)return n;for(;e[t];)n.push(e[t]),t++;return n}function d(e,t){return Y(e,t)}function h(e,t){return X(e,t)}function f(e,t){return q(e,t)}function g(e,t){if(3===e.nodeType)t.removeChild(e);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(e.nodeName)>-1)for(var n=e.childNodes,o=n.length-1;o>=0;o--)g(n[o],e)}function p(e){for(var t;t=e.lastChild;)e.removeChild(t)}function m(e,t){se.test(t)?e.innerHTML=t:w(e,t)}function w(e,t){var n=e.firstChild;n&&3===n.nodeType&&null===n.nextSibling?le?n.textContent=t:n.data=t:(p(e),e.appendChild(document.createTextNode(t)))}function v(e){for(var t=e;l(t)!==document.documentElement;){if(null===t)return!1;if(t.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(t.host){if(t.host.impl)return v(t.host.impl);if(t.host)return v(t.host);throw new Error("Lost in Web Components world")}return!1}if("none"===t.style.display)return!1;t=t.parentNode}return!0}function b(e){var t,n,o,r,i;if(r=document.documentElement,te()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName)return i=e.getBoundingClientRect(),{top:i.top+(window.pageYOffset||r.scrollTop)-(r.clientTop||0),left:i.left+(window.pageXOffset||r.scrollLeft)-(r.clientLeft||0)};for(t=e.offsetLeft,n=e.offsetTop,o=e;(e=e.offsetParent)&&e!==document.body;)t+=e.offsetLeft,n+=e.offsetTop,o=e;return o&&"fixed"===o.style.position&&(t+=window.pageXOffset||r.scrollLeft,n+=window.pageYOffset||r.scrollTop),{left:t,top:n}}function C(){var e=window.scrollY;return void 0===e&&(e=document.documentElement.scrollTop),e}function y(){var e=window.scrollX;return void 0===e&&(e=document.documentElement.scrollLeft),e}function R(e){return e===window?C():e.scrollTop}function E(e){return e===window?y():e.scrollLeft}function S(e){for(var t,n,o,r=e.parentNode,i=["auto","scroll"],s="",l="",a="",u="";r&&r.style&&document.body!==r;){if(t=r.style.overflow,n=r.style.overflowX,o=r.style.overflowY,"scroll"==t||"scroll"==n||"scroll"==o)return r;if(window.getComputedStyle&&(s=window.getComputedStyle(r),l=s.getPropertyValue("overflow"),a=s.getPropertyValue("overflow-y"),u=s.getPropertyValue("overflow-x"),"scroll"===l||"scroll"===u||"scroll"===a))return r;if(r.clientHeight<=r.scrollHeight&&(-1!==i.indexOf(o)||-1!==i.indexOf(t)||-1!==i.indexOf(l)||-1!==i.indexOf(a)))return r;if(r.clientWidth<=r.scrollWidth&&(-1!==i.indexOf(n)||-1!==i.indexOf(t)||-1!==i.indexOf(l)||-1!==i.indexOf(u)))return r;r=r.parentNode}return window}function T(e){for(var t=e.parentNode;t&&t.style&&document.body!==t;){if("visible"!==t.style.overflow&&""!==t.style.overflow)return t;if(window.getComputedStyle){var n=window.getComputedStyle(t);if("visible"!==n.getPropertyValue("overflow")&&""!==n.getPropertyValue("overflow"))return t}t=t.parentNode}return window}function O(e,t){if(e){if(e!==window){var n,o=e.style[t];return""!==o&&void 0!==o?o:(n=_(e),""!==n[t]&&void 0!==n[t]?n[t]:void 0)}if("width"===t)return window.innerWidth+"px";if("height"===t)return window.innerHeight+"px"; +}}function _(e){return e.currentStyle||document.defaultView.getComputedStyle(e)}function M(e){return e.offsetWidth}function H(e){return te()&&e.firstChild&&"CAPTION"===e.firstChild.nodeName?e.offsetHeight+e.firstChild.offsetHeight:e.offsetHeight}function k(e){return e.clientHeight||e.innerHeight}function A(e){return e.clientWidth||e.innerWidth}function P(e,t,n){window.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function x(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)}function D(e){if(e.selectionStart)return e.selectionStart;if(document.selection){e.focus();var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange(),o=n.duplicate();return n.moveToBookmark(t.getBookmark()),o.setEndPoint("EndToStart",n),o.text.length}return 0}function N(e){if(e.selectionEnd)return e.selectionEnd;if(document.selection){var t=document.selection.createRange();if(null==t)return 0;var n=e.createTextRange();return n.text.indexOf(t.text)+t.text.length}}function L(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e}function W(e,t,n){if(void 0===n&&(n=t),e.setSelectionRange){e.focus();try{e.setSelectionRange(t,n)}catch(o){var r=e.parentNode,i=r.style.display;r.style.display="block",e.setSelectionRange(t,n),r.style.display=i}}else if(e.createTextRange){var s=e.createTextRange();s.collapse(!0),s.moveEnd("character",n),s.moveStart("character",t),s.select()}}function I(){var e=document.createElement("p");e.style.width="100%",e.style.height="200px";var t=document.createElement("div");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.visibility="hidden",t.style.width="200px",t.style.height="150px",t.style.overflow="hidden",t.appendChild(e),(document.body||document.documentElement).appendChild(t);var n=e.offsetWidth;t.style.overflow="scroll";var o=e.offsetWidth;return n==o&&(o=t.clientWidth),(document.body||document.documentElement).removeChild(t),n-o}function j(){return void 0===ie&&(ie=I()),ie}function B(e,t,n){J()||Z()?(e.style.top=n,e.style.left=t):ee()?e.style["-webkit-transform"]="translate3d("+t+","+n+",0)":e.style.transform="translate3d("+t+","+n+",0)"}function V(e){var t;return e.style.transform&&""!==(t=e.style.transform)?["transform",t]:e.style["-webkit-transform"]&&""!==(t=e.style["-webkit-transform"])?["-webkit-transform",t]:-1}function F(e){e.transform&&""!==e.transform?e.transform="":e["-webkit-transform"]&&""!==e["-webkit-transform"]&&(e["-webkit-transform"]="")}function z(e){var t=["INPUT","SELECT","TEXTAREA"];return t.indexOf(e.nodeName)>-1||"true"===e.contentEditable}function U(e){return z(e)&&-1==e.className.indexOf("handsontableInput")&&-1==e.className.indexOf("copyPaste")}function G(e){return ce.call(window,e)}function $(e){de.call(window,e)}Object.defineProperties(n,{closest:{get:function(){return o}},isChildOf:{get:function(){return r}},isChildOfWebComponentTable:{get:function(){return i}},polymerWrap:{get:function(){return s}},polymerUnwrap:{get:function(){return l}},index:{get:function(){return a}},overlayContainsElement:{get:function(){return u}},hasClass:{get:function(){return d}},addClass:{get:function(){return h}},removeClass:{get:function(){return f}},removeTextNodes:{get:function(){return g}},empty:{get:function(){return p}},HTML_CHARACTERS:{get:function(){return se}},fastInnerHTML:{get:function(){return m}},fastInnerText:{get:function(){return w}},isVisible:{get:function(){return v}},offset:{get:function(){return b}},getWindowScrollTop:{get:function(){return C}},getWindowScrollLeft:{get:function(){return y}},getScrollTop:{get:function(){return R}},getScrollLeft:{get:function(){return E}},getScrollableElement:{get:function(){return S}},getTrimmingContainer:{get:function(){return T}},getStyle:{get:function(){return O}},getComputedStyle:{get:function(){return _}},outerWidth:{get:function(){return M}},outerHeight:{get:function(){return H}},innerHeight:{get:function(){return k}},innerWidth:{get:function(){return A}},addEvent:{get:function(){return P}},removeEvent:{get:function(){return x}},getCaretPosition:{get:function(){return D}},getSelectionEndPosition:{get:function(){return N}},getSelectionText:{get:function(){return L}},setCaretPosition:{get:function(){return W}},getScrollbarWidth:{get:function(){return j}},setOverlayPosition:{get:function(){return B}},getCssTransform:{get:function(){return V}},resetCssTransform:{get:function(){return F}},isInput:{get:function(){return z}},isOutsideInput:{get:function(){return U}},requestAnimationFrame:{get:function(){return G}},cancelAnimationFrame:{get:function(){return $}},__esModule:{value:!0}});var K,Y,X,q,Q=(K=e("../browser"),K&&K.__esModule&&K||{"default":K}),J=Q.isIE8,Z=Q.isIE9,ee=Q.isSafari,te=Q.hasCaptionProblem,ne=document.documentElement.classList?!0:!1;if(ne){var oe=function(){var e=document.createElement("div");return e.classList.add("test","test2"),e.classList.contains("test2")}();Y=function(e,t){return""===t?!1:e.classList.contains(t)},X=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),oe)e.classList.add.apply(e.classList,t);else for(;t&&t[n];)e.classList.add(t[n]),n++},q=function(e,t){var n=0;if("string"==typeof t&&(t=t.split(" ")),t=c(t),oe)e.classList.remove.apply(e.classList,t);else for(;t&&t[n];)e.classList.remove(t[n]),n++}}else{var re=function(e){return new RegExp("(\\s|^)"+e+"(\\s|$)")};Y=function(e,t){return e.className.match(re(t))?!0:!1},X=function(e,t){var n=0,o=e.className;if("string"==typeof t&&(t=t.split(" ")),""===o)o=t.join(" ");else for(;t&&t[n];)re(t[n]).test(o)||(o+=" "+t[n]),n++;e.className=o},q=function(e,t){var n=0,o=e.className;for("string"==typeof t&&(t=t.split(" "));t&&t[n];)o=o.replace(re(t[n])," ").trim(),n++;e.className!==o&&(e.className=o)}}for(var ie,se=/(<(.*)>|&(.*);)/,le=document.createTextNode("test").textContent?!0:!1,ae=0,ue=["ms","moz","webkit","o"],ce=window.requestAnimationFrame,de=window.cancelAnimationFrame,he=0;he=t&&n(o)!==!1;);}function s(e,t){return t=parseInt(t.toString().replace("%",""),10),t=parseInt(e*t/100)}Object.defineProperties(n,{isNumeric:{get:function(){return o}},rangeEach:{get:function(){return r}},rangeEachReverse:{get:function(){return i}},valueAccordingPercent:{get:function(){return s}},__esModule:{value:!0}})},{}],50:[function(e,t,n){"use strict";function o(e){var t;return Array.isArray(e)?t=[]:(t={},g(e,function(e,n){e&&"object"==typeof e&&!Array.isArray(e)?t[n]=o(e):Array.isArray(e)?e.length&&"object"==typeof e[0]&&!Array.isArray(e[0])?t[n]=[o(e[0])]:t[n]=[]:t[n]=null})),t}function r(e,t){return t.prototype.constructor=t,e.prototype=new t,e.prototype.constructor=e,e}function i(e,t){return g(t,function(t,n){e[n]=t}),e}function s(e,t){g(t,function(n,o){t[o]&&"object"==typeof t[o]?(e[o]||(Array.isArray(t[o])?e[o]=[]:e[o]={}),s(e[o],t[o])):e[o]=t[o]})}function l(e){return"object"==typeof e?JSON.parse(JSON.stringify(e)):e}function a(e){var t={};return g(e,function(e,n){return t[n]=e}),t}function u(e){for(var t=[],n=1;no;o++)n.prototype[t[o]]=void 0;return n}Object.defineProperties(n,{columnFactory:{get:function(){return o}},__esModule:{value:!0}});var r,i=(r=e("object"),r&&r.__esModule&&r||{"default":r}).inherit},{object:50}],52:[function(e,t,n){"use strict";function o(e){return e[0].toUpperCase()+e.substr(1)}function r(e,t){var n=!0;return h(t.length-1,function(o){return e.charAt(o)!==t.charAt(o)?(n=!1,!1):void 0}),n}function i(e,t){var n=!0,o=t.length-1,r=e.length-1;return h(o,function(i){var s=r-i,l=o-i;return e.charAt(s)!==t.charAt(l)?(n=!1,!1):void 0}),n}function s(){for(var e=[],t=0;t=48&&57>=e||e>=96&&111>=e||e>=186&&192>=e||e>=219&&222>=e||e>=226||e>=65&&90>=e}function r(e){var t=[u.ARROW_DOWN,u.ARROW_UP,u.ARROW_LEFT,u.ARROW_RIGHT,u.HOME,u.END,u.DELETE,u.BACKSPACE,u.F1,u.F2,u.F3,u.F4,u.F5,u.F6,u.F7,u.F8,u.F9,u.F10,u.F11,u.F12,u.TAB,u.PAGE_DOWN,u.PAGE_UP,u.ENTER,u.ESCAPE,u.SHIFT,u.CAPS_LOCK,u.ALT];return-1!==t.indexOf(e)}function i(e){return-1!==[u.CONTROL_LEFT,224,u.COMMAND_LEFT,u.COMMAND_RIGHT].indexOf(e)}function s(e,t){var n=t.split("|"),o=!1;return a(n,function(t){return e===u[t]?(o=!0,!1):void 0}),o}Object.defineProperties(n,{KEY_CODES:{get:function(){return u}},isPrintableChar:{get:function(){return o}},isMetaKey:{get:function(){return r}},isCtrlKey:{get:function(){return i}},isKey:{get:function(){return s}},__esModule:{value:!0}});var l,a=(l=e("array"),l&&l.__esModule&&l||{"default":l}).arrayEach,u={MOUSE_LEFT:1,MOUSE_RIGHT:3,MOUSE_MIDDLE:2,BACKSPACE:8,COMMA:188,INSERT:45,DELETE:46,END:35,ENTER:13,ESCAPE:27,CONTROL_LEFT:91,COMMAND_LEFT:17,COMMAND_RIGHT:93,ALT:18,HOME:36,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,SPACE:32,SHIFT:16,CAPS_LOCK:20,TAB:9,ARROW_RIGHT:39,ARROW_LEFT:37,ARROW_UP:38,ARROW_DOWN:40,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,A:65,X:88,C:67,V:86}},{array:42}],54:[function(e,t,n){"use strict";Object.defineProperties(n,{localHooks:{get:function(){return a}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/array"),o&&o.__esModule&&o||{"default":o}).arrayEach,s=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}).defineGetter,l="localHooks",a={_localHooks:Object.create(null),addLocalHook:function(e,t){this._localHooks[e]||(this._localHooks[e]=[]),this._localHooks[e].push(t)},runLocalHooks:function(e){for(var t=[],n=1;n=0?(t.skip=!0,!0):!1},has:function(e){var t=void 0!==arguments[1]?arguments[1]:null,n=this.getBucket(t);return void 0!==n[e]&&n[e].length?!0:!1},run:function(e,t,n,o,r,i,s,l){var a=this.globalBucket[t],u=-1,c=a?a.length:0;if(c)for(;++u=0},getRegistered:function(){return i}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.Hooks=a},{"helpers/array":42,"helpers/object":50}],57:[function(e,t,n){"use strict";function o(e,t){e=c(e),Handsontable.plugins[e]=t,Handsontable.hooks.add("construct",function(){var n;d.has(this)||d.set(this,{}),n=d.get(this),n[e]||(n[e]=new t(this))}),Handsontable.hooks.add("afterDestroy",function(){if(d.has(this)){var e=d.get(this);u(e,function(e){return e.destroy()}),d["delete"](this)}})}function r(e,t){if("string"!=typeof t)throw Error('Only strings can be passed as "plugin" parameter');var n=c(t);return d.has(e)&&d.get(e)[n]?d.get(e)[n]:void 0}function i(e){return d.has(e)?Object.keys(d.get(e)):[]}function s(e,t){var n=null;return d.has(e)&&u(d.get(e),function(e,o){e===t&&(n=o)}),n}Object.defineProperties(n,{registerPlugin:{get:function(){return o}},getPlugin:{get:function(){return r}},getRegistredPluginNames:{get:function(){return i}},getPluginName:{get:function(){return s}},__esModule:{value:!0}});var l,a,u=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}).objectEach,c=(a=e("helpers/string"),a&&a.__esModule&&a||{"default":a}).toUpperCaseFirst,d=new WeakMap;Handsontable.plugins=Handsontable.plugins||{},Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.registerPlugin=o},{"helpers/object":50,"helpers/string":52}],58:[function(e,t,n){"use strict";Object.defineProperties(n,{"default":{get:function(){return m}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/object"),o&&o.__esModule&&o||{"default":o}),l=s.defineGetter,a=s.objectEach,u=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}),d=c.getRegistredPluginNames,h=c.getPluginName,f=new WeakMap,g=null,p=function(e){var t=this;l(this,"hot",e,{writable:!1}),f.set(this,{hooks:{}}),g=null,this.pluginName=null,this.pluginsInitializedCallbacks=[],this.isPluginsReady=!1,this.enabled=!1,this.initialized=!1,this.hot.addHook("afterPluginsInitialized",function(){return t.onAfterPluginsInitialized()}),this.hot.addHook("afterUpdateSettings",function(){return t.onUpdateSettings()}),this.hot.addHook("beforeInit",function(){return t.init()})};$traceurRuntime.createClass(p,{init:function(){this.pluginName=h(this.hot,this),this.isEnabled&&this.isEnabled()&&this.enablePlugin(),g||(g=d(this.hot)),g.indexOf(this.pluginName)>=0&&g.splice(g.indexOf(this.pluginName),1),g.length||this.hot.runHooks("afterPluginsInitialized"),this.initialized=!0},enablePlugin:function(){this.enabled=!0},disablePlugin:function(){this.eventManager&&this.eventManager.clear(),this.clearHooks(),this.enabled=!1},addHook:function(e,t){var n=f.get(this).hooks[e]=f.get(this).hooks[e]||[];this.hot.addHook(e,t),n.push(t),f.get(this).hooks[e]=n},removeHooks:function(e){var t=this;u(f.get(this).hooks[e]||[],function(n){t.hot.removeHook(e,n)})},clearHooks:function(){var e=this,t=f.get(this).hooks;a(t,function(t,n){return e.removeHooks(n)}),t.length=0},callOnPluginsReady:function(e){this.isPluginsReady?e():this.pluginsInitializedCallbacks.push(e)},onAfterPluginsInitialized:function(){u(this.pluginsInitializedCallbacks,function(e){return e()}),this.pluginsInitializedCallbacks.length=0,this.isPluginsReady=!0},onUpdateSettings:function(){this.isEnabled&&(this.enabled&&!this.isEnabled()&&this.disablePlugin(),!this.enabled&&this.isEnabled()&&this.enablePlugin(),this.enabled&&this.isEnabled()&&this.updatePlugin())},updatePlugin:function(){},destroy:function(){var e=this;this.eventManager&&this.eventManager.destroy(),this.clearHooks(),a(this,function(t,n){"hot"!==n&&(e[n]=null)}),delete this.hot}},{});var m=p;Handsontable.plugins.BasePlugin=p},{"helpers/array":42,"helpers/object":50,plugins:57}],59:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoColumnSize:{get:function(){return A}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],g=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),p=g.arrayEach,m=g.arrayFilter,w=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),v=w.cancelAnimationFrame,b=w.requestAnimationFrame,C=w.isVisible,y=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,R=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),E=R.isObject,S=(R.objectEach,a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}),T=S.valueAccordingPercent,O=S.rangeEach,_=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,M=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,H=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,k=(h=e("3rdparty/walkontable/src/calculator/viewportColumns"),h&&h.__esModule&&h||{"default":h}).WalkontableViewportColumnsCalculator,A=function(e){var t=this;$traceurRuntime.superConstructor(P).call(this,e),this.widths=[],this.ghostTable=new y(this.hot),this.samplesGenerator=new M(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeColumnResize",function(e,n,o){return t.onBeforeColumnResize(e,n,o)})},P=A;$traceurRuntime.createClass(A,{isEnabled:function(){return this.hot.getSettings().autoColumnSize!==!1&&!this.hot.getSettings().colWidths},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("modifyColWidth",function(t,n){return e.getColumnWidth(n,t)}),$traceurRuntime.superGet(this,P.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,P.prototype,"disablePlugin").call(this)},calculateColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countRows()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),O(e.from,e.to,function(e){if(n||void 0===o.widths[e]&&!o.hot._getColWidthFromSettings(e)){var r=o.samplesGenerator.generateColumnSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addColumn(t,e)})}}),this.ghostTable.columns.length&&(this.ghostTable.getWidths(function(e,t){return o.widths[e]=t}),this.ghostTable.clean())},calculateAllColumnsWidth:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=this,n=0,o=this.hot.countCols()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateColumnsWidth({from:n,to:Math.min(n+P.CALCULATION_STEP,o)},e),n=n+P.CALCULATION_STEP+1,void(o>n?r=b(i):(v(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(v(r),void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateColumnsWidth({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllColumnsWidth:function(){this.hot.view&&C(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllColumnsWidth())},getSyncCalculationLimit:function(){var e=P.SYNC_CALCULATION_LIMIT,t=this.hot.countCols()-1;return E(this.hot.getSettings().autoColumnSize)&&(e=this.hot.getSettings().autoColumnSize.syncLimit,H(e)?e=T(t,e):e>>=0),Math.min(e,t)},getColumnWidth:function(e){var t=arguments[1],n=void 0!==arguments[2]?arguments[2]:!0,o=t;return void 0===o&&(o=this.widths[e],n&&"number"==typeof o&&(o=Math.max(o,k.DEFAULT_WIDTH))),o},getFirstVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getFirstVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getFirstRenderedColumn():-1},getLastVisibleColumn:function(){var e=this.hot.view.wt;return e.wtViewport.columnsVisibleCalculator?e.wtTable.getLastVisibleColumn():e.wtViewport.columnsRenderCalculator?e.wtTable.getLastRenderedColumn():-1},clearCache:function(){this.widths.length=0},isNeedRecalculate:function(){return m(this.widths,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateColumnsWidth({from:this.getFirstVisibleColumn(),to:this.getLastVisibleColumn()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllColumnsWidth()},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllColumnsWidth():setTimeout(function(){e.hot&&e.recalculateAllColumnsWidth()},0)},onBeforeChange:function(e){var t=this;p(e,function(e){return t.widths[e[1]]=void 0})},onBeforeColumnResize:function(e,t,n){return n&&(this.calculateColumnsWidth(e,void 0,!0),t=this.getColumnWidth(e,void 0,!1)),t},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,P.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 50}},f),_("autoColumnSize",A)},{"3rdparty/walkontable/src/calculator/viewportColumns":3,_base:58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,plugins:57,"utils/ghostTable":98,"utils/samplesGenerator":99}],60:[function(e,t,n){"use strict";Object.defineProperties(n,{AutoRowSize:{get:function(){return M}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],f=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}),g=(f.arrayEach,f.arrayFilter),p=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),m=p.cancelAnimationFrame,w=p.requestAnimationFrame,v=p.isVisible,b=(s=e("utils/ghostTable"),s&&s.__esModule&&s||{"default":s}).GhostTable,C=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),y=C.isObject,R=(C.objectEach,a=e("helpers/number"),a&&a.__esModule&&a||{"default":a}),E=R.valueAccordingPercent,S=R.rangeEach,T=(u=e("plugins"),u&&u.__esModule&&u||{"default":u}).registerPlugin,O=(c=e("utils/samplesGenerator"),c&&c.__esModule&&c||{"default":c}).SamplesGenerator,_=(d=e("helpers/string"),d&&d.__esModule&&d||{"default":d}).isPercentValue,M=function(e){var t=this;$traceurRuntime.superConstructor(H).call(this,e),this.heights=[],this.ghostTable=new b(this.hot),this.samplesGenerator=new O(function(e,n){return t.hot.getDataAtCell(e,n)}),this.firstCalculation=!0,this.inProgress=!1,this.addHook("beforeRowResize",function(e,n,o){return t.onBeforeRowResize(e,n,o)})},H=M;$traceurRuntime.createClass(M,{isEnabled:function(){return this.hot.getSettings().autoRowSize===!0||y(this.hot.getSettings().autoRowSize)},enablePlugin:function(){var e=this;this.enabled||(this.addHook("afterLoadData",function(){return e.onAfterLoadData()}),this.addHook("beforeChange",function(t){return e.onBeforeChange(t)}),this.addHook("beforeColumnMove",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnResize",function(){return e.recalculateAllRowsHeight()}),this.addHook("beforeColumnSort",function(){return e.clearCache()}),this.addHook("beforeRender",function(t){return e.onBeforeRender(t)}),this.addHook("beforeRowMove",function(t,n){return e.onBeforeRowMove(t,n)}),this.addHook("modifyRowHeight",function(t,n){return e.getRowHeight(n,t)}),$traceurRuntime.superGet(this,H.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,H.prototype,"disablePlugin").call(this)},calculateRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countRows()-1},t=void 0!==arguments[1]?arguments[1]:{from:0,to:this.hot.countCols()-1},n=void 0!==arguments[2]?arguments[2]:!1,o=this;"number"==typeof e&&(e={from:e,to:e}),"number"==typeof t&&(t={from:t,to:t}),S(e.from,e.to,function(e){if(n||void 0===o.heights[e]){var r=o.samplesGenerator.generateRowSamples(e,t);r.forEach(function(e,t){return o.ghostTable.addRow(t,e)})}}),this.ghostTable.rows.length&&(this.ghostTable.getHeights(function(e,t){return o.heights[e]=t}),this.ghostTable.clean())},calculateAllRowsHeight:function(){var e=void 0!==arguments[0]?arguments[0]:{from:0,to:this.hot.countCols()-1},t=this,n=0,o=this.hot.countRows()-1,r=null;this.inProgress=!0;var i=function(){return t.hot?(t.calculateRowsHeight({from:n,to:Math.min(n+H.CALCULATION_STEP,o)},e),n=n+H.CALCULATION_STEP+1,void(o>n?r=w(i):(m(r),t.inProgress=!1,t.hot.view.wt.wtOverlays.adjustElementsSize(!0),t.hot.view.wt.wtOverlays.leftOverlay.needFullRender&&t.hot.view.wt.wtOverlays.leftOverlay.clone.draw()))):(m(r), +void(t.inProgress=!1))};this.firstCalculation&&this.getSyncCalculationLimit()&&(this.calculateRowsHeight({from:0,to:this.getSyncCalculationLimit()},e),this.firstCalculation=!1,n=this.getSyncCalculationLimit()+1),o>n?i():this.inProgress=!1},recalculateAllRowsHeight:function(){v(this.hot.view.wt.wtTable.TABLE)&&(this.clearCache(),this.calculateAllRowsHeight())},getSyncCalculationLimit:function(){var e=H.SYNC_CALCULATION_LIMIT,t=this.hot.countRows()-1;return y(this.hot.getSettings().autoRowSize)&&(e=this.hot.getSettings().autoRowSize.syncLimit,_(e)?e=E(t,e):e>>=0),Math.min(e,t)},getRowHeight:function(e){var t=arguments[1],n=t;return void 0!==this.heights[e]&&this.heights[e]>(t||0)&&(n=this.heights[e]),n},getFirstVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getFirstVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getFirstRenderedRow():-1},getLastVisibleRow:function(){var e=this.hot.view.wt;return e.wtViewport.rowsVisibleCalculator?e.wtTable.getLastVisibleRow():e.wtViewport.rowsRenderCalculator?e.wtTable.getLastRenderedRow():-1},clearCache:function(){this.heights.length=0},clearCacheByRange:function(e){var t=this;"number"==typeof e&&(e={from:e,to:e}),S(Math.min(e.from,e.to),Math.max(e.from,e.to),function(e){return t.heights[e]=void 0})},isNeedRecalculate:function(){return g(this.heights,function(e){return void 0===e}).length?!0:!1},onBeforeRender:function(){var e=this.hot.renderCall;this.calculateRowsHeight({from:this.getFirstVisibleRow(),to:this.getLastVisibleRow()},void 0,e),this.isNeedRecalculate()&&!this.inProgress&&this.calculateAllRowsHeight()},onBeforeRowMove:function(e,t){this.clearCacheByRange({from:e,to:t}),this.calculateAllRowsHeight()},onBeforeRowResize:function(e,t,n){return n&&(this.calculateRowsHeight(e,void 0,!0),t=this.getRowHeight(e)),t},onAfterLoadData:function(){var e=this;this.hot.view?this.recalculateAllRowsHeight():setTimeout(function(){e.hot&&e.recalculateAllRowsHeight()},0)},onBeforeChange:function(e){var t=null;1===e.length?t=e[0][0]:e.length>1&&(t={from:e[0][0],to:e[e.length-1][0]}),null!==t&&this.clearCacheByRange(t)},destroy:function(){this.ghostTable.clean(),$traceurRuntime.superGet(this,H.prototype,"destroy").call(this)}},{get CALCULATION_STEP(){return 50},get SYNC_CALCULATION_LIMIT(){return 500}},h),T("autoRowSize",M)},{_base:58,"helpers/array":42,"helpers/dom/element":45,"helpers/number":49,"helpers/object":50,"helpers/string":52,plugins:57,"utils/ghostTable":98,"utils/samplesGenerator":99}],61:[function(e,t,n){"use strict";function o(e,t,n,o){var r,i,s,l,a,u=n.length,c=n?n[0].length:0,d=[],h=[];if(r=t.row-e.row,i=t.col-e.col,-1!==["down","up"].indexOf(o)){for(var f=0;i>=f;f++)s=parseInt(n[0][f],10),l=parseInt(n[u-1][f],10),a=("down"===o?l-s:s-l)/(u-1)||0,h.push(a);d.push(h)}if(-1!==["right","left"].indexOf(o))for(var g=0;r>=g;g++)s=parseInt(n[g][0],10),l=parseInt(n[g][c-1],10),a=("right"===o?l-s:s-l)/(c-1)||0,h=[],h.push(a),d.push(h);return d}function r(e){function t(t){return e.autofill?void(e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged>1&&e.autofill.apply(),e.autofill.handle.isDragged=0,l=!1)):!0}function n(e){var t,n;return s.instance.autofill?(t=c(s.instance.table).top-(window.pageYOffset||document.documentElement.scrollTop)+d(s.instance.table),n=c(s.instance.table).left-(window.pageXOffset||document.documentElement.scrollLeft)+h(s.instance.table),s.addingStarted===!1&&s.instance.autofill.handle.isDragged>0&&e.clientY>t&&e.clientX<=n?(s.instance.mouseDragOutside=!0,s.addingStarted=!0):s.instance.mouseDragOutside=!1,void(s.instance.mouseDragOutside&&setTimeout(function(){s.addingStarted=!1,s.instance.alter("insert_row")},200))):!1}var o,r,i,s=this,l=!1;this.instance=e,this.addingStarted=!1,i=f(e),i.addEventListener(document,"mouseup",t),i.addEventListener(document,"mousemove",n),o=this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown,this.instance.view.wt.wtSettings.settings.onCellCornerMouseDown=function(t){e.autofill.handle.isDragged=1,l=!0,o(t)},r=this.instance.view.wt.wtSettings.settings.onCellMouseOver,this.instance.view.wt.wtSettings.settings.onCellMouseOver=function(t,n,o,i){e.autofill&&l&&!e.view.isMouseDown()&&e.autofill.handle&&e.autofill.handle.isDragged&&(e.autofill.handle.isDragged++,e.autofill.showBorder(n),e.autofill.checkIfNewRowNeeded()),r(t,n,o,i)},this.instance.view.wt.wtSettings.settings.onCellCornerDblClick=function(){e.autofill.selectAdjacent()}}Object.defineProperties(n,{Autofill:{get:function(){return r}},__esModule:{value:!0}});var i,s,l,a,u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}),c=u.offset,d=u.outerHeight,h=u.outerWidth,f=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).eventManager,g=((l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,(a=e("3rdparty/walkontable/src/cell/coords"),a&&a.__esModule&&a||{"default":a}).WalkontableCellCoords);r.prototype.init=function(){this.handle={}},r.prototype.disable=function(){this.handle.disabled=!0},r.prototype.selectAdjacent=function(){var e,t,n,o,r;e=this.instance.selection.isMultiple()?this.instance.view.wt.selections.area.getCorners():this.instance.view.wt.selections.current.getCorners(),t=this.instance.getData();e:for(n=e[2]+1;nt[3]?(s="right",n=new g(e[0],t[3]+1),r=new g(e[2],e[3])):e[0]t[2]&&e[1]===t[1]&&(s="down",n=new g(t[2]+1,e[1]),r=new g(e[2],e[3])),n&&n.row>-1&&n.col>-1?(a={from:this.instance.getSelectedRange().from,to:this.instance.getSelectedRange().to},i=this.instance.getData(a.from.row,a.from.col,a.to.row,a.to.col),l=o(n,r,i,s),Handsontable.hooks.run(this.instance,"beforeAutofill",n,r,i),this.instance.populateFromArray(n.row,n.col,i,r.row,r.col,"autofill",null,s,l),this.instance.selection.setRangeStart(new g(e[0],e[1])),this.instance.selection.setRangeEnd(new g(e[2],e[3]))):this.instance.selection.refreshBorders())},r.prototype.showBorder=function(e){var t=this.instance.getSelectedRange().getTopLeftCorner(),n=this.instance.getSelectedRange().getBottomRightCorner();if("horizontal"!==this.instance.getSettings().fillHandle&&(n.rowe.row))e=new g(e.row,n.col);else{if("vertical"===this.instance.getSettings().fillHandle)return;e=new g(n.row,e.col)}this.instance.view.wt.selections.fill.clear(),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().from),this.instance.view.wt.selections.fill.add(this.instance.getSelectedRange().to),this.instance.view.wt.selections.fill.add(e),this.instance.view.render()},r.prototype.checkIfNewRowNeeded=function(){var e,t,n=this.instance.countRows(),o=this;this.instance.view.wt.selections.fill.cellRange&&this.addingStarted===!1&&(t=this.instance.getSelected(),e=this.instance.view.wt.selections.fill.getCorners(),t[2]n[1]?e?1:-1:0}},dateSort:function(e){return function(t,n){if(t[1]===n[1])return 0;if(null===t[1]||""===t[1])return 1;if(null===n[1]||""===n[1])return-1;var o=new Date(t[1]),r=new Date(n[1]);return r>o?e?-1:1:o>r?e?1:-1:0}},sort:function(){if("undefined"==typeof this.hot.sortOrder)return void(this.hot.sortIndex.length=0);var e,t;this.hot.sortingEnabled=!1,this.hot.sortIndex.length=0;for(var n=this.hot.colOffset(),o=0,r=this.hot.countRows()-this.hot.getSettings().minSpareRows;r>o;o++)this.hot.sortIndex.push([o,this.hot.getDataAtCell(o,this.hot.sortColumn+n)]);switch(e=this.hot.getCellMeta(0,this.hot.sortColumn),this.sortIndicators[this.hot.sortColumn]=e.sortIndicator,e.type){case"date":t=this.dateSort;break;default:t=this.defaultSort}this.hot.sortIndex.sort(t(this.hot.sortOrder));for(var o=this.hot.sortIndex.length;o=0&&-1===r&&u(n,"columnSorting"),f(n,"descending"),f(n,"ascending"),this.sortIndicators[e]&&e===this.hot.sortColumn&&("ascending"===this.sortOrderClass?u(n,"ascending"):"descending"===this.sortOrderClass&&u(n,"descending")))},isSorted:function(){return"undefined"!=typeof this.hot.sortColumn},afterCreateRow:function(e,t){if(this.isSorted()){for(var n=0;n=e&&(this.hot.sortIndex[n][0]+=t);for(var n=0;t>n;n++)this.hot.sortIndex.splice(e+n,0,[e+n,this.hot.getSourceData()[e+n][this.hot.sortColumn+this.hot.colOffset()]]);this.saveSortingState()}},afterRemoveRow:function(e,t){function n(e){return m(o,function(t,n){return e>n&&t++,t},0)}if(this.isSorted()){var o=this.hot.sortIndex.splice(e,t);o=p(o,function(e){return e[0]}),this.hot.sortIndex=p(this.hot.sortIndex,function(e,t){var o=n(e[0]);return o&&(e[0]-=o),e}),this.saveSortingState()}}},{},v),b("columnSorting",C)},{_base:58,eventManager:41,"helpers/array":42,"helpers/dom/element":45,plugins:57}],63:[function(e,t,n){"use strict";Object.defineProperties(n,{CommentEditor:{get:function(){return i}},__esModule:{value:!0}});var o,r=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).addClass,i=function(){this.editor=this.createEditor(),this.editorStyle=this.editor.style,this.editorStyle.position="absolute",this.editorStyle.zIndex=100,this.hide()},s=i;$traceurRuntime.createClass(i,{setPosition:function(e,t){this.editorStyle.left=e+"px",this.editorStyle.top=t+"px"},show:function(){this.editorStyle.display="block"},hide:function(){this.editorStyle.display="none"},isVisible:function(){return"block"===this.editorStyle.display},setValue:function(){var e=void 0!==arguments[0]?arguments[0]:"";e=e||"",this.getInputElement().value=e},getValue:function(){return this.getInputElement().value},isFocused:function(){return document.activeElement===this.getInputElement()},focus:function(){this.getInputElement().focus()},createEditor:function(){var e,t,n=document.querySelector("."+s.CLASS_EDITOR_CONTAINER);return n||(n=document.createElement("div"),r(n,s.CLASS_EDITOR_CONTAINER),document.body.appendChild(n)),e=document.createElement("div"),r(e,s.CLASS_EDITOR),t=document.createElement("textarea"),r(t,s.CLASS_INPUT),e.appendChild(t),n.appendChild(e),e},getInputElement:function(){return this.editor.querySelector("."+s.CLASS_INPUT)},destroy:function(){this.editor.parentNode.removeChild(this.editor),this.editor=null,this.editorStyle=null}},{get CLASS_EDITOR_CONTAINER(){return"htCommentsContainer"},get CLASS_EDITOR(){return"htComments"},get CLASS_INPUT(){return"htCommentTextArea"},get CLASS_CELL(){return"htCommentCell"}})},{"helpers/dom/element":45}],64:[function(e,t,n){"use strict";Object.defineProperties(n,{Comments:{get:function(){return R}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),c=u.addClass,d=u.closest,h=u.getWindowScrollLeft,f=u.getWindowScrollTop,g=u.hasClass,p=u.offset,m=(r=e("eventManager"),r&&r.__esModule&&r||{"default":r}).EventManager,w=(i=e("3rdparty/walkontable/src/cell/coords"),i&&i.__esModule&&i||{"default":i}).WalkontableCellCoords,v=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}),b=v.registerPlugin,C=(v.getPlugin,(l=e("_base"),l&&l.__esModule&&l||{"default":l})["default"]),y=(a=e("commentEditor"),a&&a.__esModule&&a||{"default":a}).CommentEditor,R=function(e){$traceurRuntime.superConstructor(E).call(this,e),this.editor=null,this.eventManager=null,this.range={},this.mouseDown=!1,this.contextMenuEvent=!1,this.timer=null},E=R;$traceurRuntime.createClass(R,{isEnabled:function(){return this.hot.getSettings().comments},enablePlugin:function(){var e=this;this.enabled||(this.editor||(this.editor=new y),this.eventManager||(this.eventManager=new m(this)),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addToContextMenu(t)}),this.addHook("afterRenderer",function(t,n,o,r,i,s){return e.onAfterRenderer(t,s)}),this.addHook("afterScrollVertically",function(){return e.refreshEditorPosition()}),this.addHook("afterColumnResize",function(){return e.refreshEditorPosition()}),this.addHook("afterRowResize",function(){return e.refreshEditorPosition()}),this.registerListeners(),$traceurRuntime.superGet(this,E.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,E.prototype,"disablePlugin").call(this)},registerListeners:function(){var e=this;this.eventManager.addEventListener(document,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(document,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(document,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(document,"mouseup",function(t){return e.onMouseUp(t)}),this.eventManager.addEventListener(this.editor.getInputElement(),"blur",function(t){return e.onEditorBlur(t)})},setRange:function(e){this.range=e},clearRange:function(){this.range={}},targetIsCellWithComment:function(e){return g(e.target,"htCommentCell")&&d(e.target,[this.hot.rootElement])?!0:!1},targetIsCommentTextArea:function(e){return this.editor.getInputElement()===e.target},saveComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.editor.getValue(),t=this.range.from.row,n=this.range.from.col;this.hot.setCellMeta(t,n,"comment",e),this.hot.render()},saveCommentAtCell:function(e,t){this.setRange({from:new w(e,t)}),this.saveComment()},removeComment:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');this.hot.removeCellMeta(this.range.from.row,this.range.from.col,"comment"),this.hot.render(),this.hide()},removeCommentAtCell:function(e,t){this.setRange({from:new w(e,t)}),this.removeComment()},show:function(){if(!this.range.from)throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');var e=this.hot.getCellMeta(this.range.from.row,this.range.from.col);return this.refreshEditorPosition(!0),this.editor.setValue(e.comment||""),this.editor.show(),!0},showAtCell:function(e,t){return this.setRange({from:new w(e,t)}),this.show()},hide:function(){this.editor.hide()},refreshEditorPosition:function(){var e=void 0!==arguments[0]?arguments[0]:!1;if(e||this.range.from&&this.editor.isVisible()){var t=this.hot.view.wt.wtTable.getCell(this.range.from),n=p(t),o=this.hot.getColWidth(this.range.from.col),r=n.top,i=n.left,s=0,l=0;this.hot.view.wt.wtViewport.hasVerticalScroll()&&(r-=this.hot.view.wt.wtOverlays.topOverlay.getScrollPosition(),s=20),this.hot.view.wt.wtViewport.hasHorizontalScroll()&&(i-=this.hot.view.wt.wtOverlays.leftOverlay.getScrollPosition(),l=20);var a=i+o,u=r,c=this.hot.view.wt.wtTable.holder.getBoundingClientRect(),d={left:c.left+h()+l,right:c.right+h()-15,top:c.top+f()+s,bottom:c.bottom+f()};a<=d.left||a>d.right||u<=d.top||u>d.bottom?this.hide():this.editor.setPosition(a,u)}},onMouseDown:function(e){this.mouseDown=!0,this.hot.view&&this.hot.view.wt&&(this.contextMenuEvent||this.targetIsCommentTextArea(e)||this.targetIsCellWithComment(e)||this.hide(),this.contextMenuEvent=!1)},onMouseOver:function(e){if(!this.mouseDown&&!this.editor.isFocused())if(this.targetIsCellWithComment(e)){var t=this.hot.view.wt.wtTable.getCoords(e.target),n={from:new w(t.row,t.col)};this.setRange(n),this.show()}else this.targetIsCommentTextArea(e)||this.editor.isFocused()||this.hide()},onMouseMove:function(e){var t=this;this.targetIsCommentTextArea(e)&&(this.mouseDown=!0,clearTimeout(this.timer),this.timer=setTimeout(function(){t.mouseDown=!1},200))},onMouseUp:function(e){this.mouseDown=!1},onAfterRenderer:function(e,t){t.comment&&c(e,t.commentedCellClassName)},onEditorBlur:function(e){this.saveComment()},checkSelectionCommentsConsistency:function(){var e=this.hot.getSelectedRange();if(!e)return!1;var t=!1,n=e.from;return this.hot.getCellMeta(n.row,n.col).comment&&(t=!0),t},onContextMenuAddComment:function(){var e=this,t=this.hot.getSelectedRange();this.contextMenuEvent=!0,this.setRange({from:t.from}),this.show(),setTimeout(function(){e.hot&&(e.hot.deselectCell(),e.editor.focus())},10)},onContextMenuRemoveComment:function(e,t){this.contextMenuEvent=!0,this.removeCommentAtCell(t.start.row,t.start.col)},addToContextMenu:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"commentsAddEdit",name:function(){return t.checkSelectionCommentsConsistency()?"Edit Comment":"Add Comment"},callback:function(){return t.onContextMenuAddComment()},disabled:function(){return this.getSelected()?!1:!0}},{key:"commentsRemove",name:function(){return"Delete Comment"},callback:function(e,n){return t.onContextMenuRemoveComment(e,n)},disabled:function(){return!t.checkSelectionCommentsConsistency()}})},destroy:function(){this.editor&&this.editor.destroy(),$traceurRuntime.superGet(this,E.prototype,"destroy").call(this)}},{},C),b("comments",R)},{"3rdparty/walkontable/src/cell/coords":5,_base:58,commentEditor:63,eventManager:41,"helpers/dom/element":45,plugins:57}],65:[function(e,t,n){"use strict";function o(e,t){var n;return i(t,function(t){var o=t.key?t.key.split(":"):null;return Array.isArray(o)&&o[1]===e?(n=t,!1):void 0}),n}Object.defineProperties(n,{CommandExecutor:{get:function(){return s}},__esModule:{value:!0}});var r,i=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,s=function(e){this.hot=e,this.commands={},this.commonCallback=null};$traceurRuntime.createClass(s,{registerCommand:function(e,t){this.commands[e]=t},setCommonCallback:function(e){this.commonCallback=e},execute:function(e){for(var t=[],n=1;n0;if(s)return}}else if(!(t(i)||v(i,"current")&&v(i,"wtBorder")))return;this.open(e)},onMenuAfterOpen:function(){this.hot.runHooks("afterContextMenuShow",this)},onMenuAfterClose:function(){this.hot.listen(),this.hot.runHooks("afterContextMenuHide",this)},destroy:function(){this.close(),this.menu&&this.menu.destroy(),$traceurRuntime.superGet(this,W.prototype,"destroy").call(this)}},{get DEFAULT_ITEMS(){return[T,O,N,_,M,N,H,k,N,A,P,N,x,N,D]}},g),L.SEPARATOR={name:N},Handsontable.hooks.register("afterContextMenuDefaultOptions"),Handsontable.hooks.register("afterContextMenuShow"),Handsontable.hooks.register("afterContextMenuHide"),Handsontable.hooks.register("afterContextMenuExecute"),R("contextMenu",L)},{_base:58,commandExecutor:65,eventManager:41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,itemsFactory:68,menu:69,plugins:57,predefinedItems:70}],67:[function(e,t,n){"use strict";Object.defineProperties(n,{Cursor:{get:function(){return d}},__esModule:{value:!0}});var o,r,i=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),s=i.getWindowScrollLeft,l=i.getWindowScrollTop,a=(r=e("helpers/dom/event"),r&&r.__esModule&&r||{"default":r}),u=a.pageX,c=a.pageY,d=function(e){var t,n,o,r,i,a,d,h,f=l(),g=s();this.type=this.getSourceType(e),"literal"===this.type?(t=parseInt(e.top,10),o=parseInt(e.left,10),d=e.height,h=e.width):"event"===this.type&&(t=parseInt(c(e),10),o=parseInt(u(e),10),d=e.target.clientHeight,h=e.target.clientWidth),n=t-f,r=o-g,i=f,a=g,this.top=t,this.topRelative=n,this.left=o,this.leftRelative=r,this.scrollTop=i,this.scrollLeft=a,this.cellHeight=d,this.cellWidth=h};$traceurRuntime.createClass(d,{getSourceType:function(e){var t="literal";return e instanceof Event&&(t="event"),t},fitsAbove:function(e){return this.topRelative>=e.offsetHeight},fitsBelow:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerHeight;return this.topRelative+e.offsetHeight<=t},fitsOnRight:function(e){var t=void 0!==arguments[1]?arguments[1]:window.innerWidth;return this.leftRelative+this.cellWidth+e.offsetWidth<=t},fitsOnLeft:function(e){return this.leftRelative>=e.offsetWidth}},{}),Handsontable.plugins.utils=Handsontable.plugins.utils||{},Handsontable.plugins.utils.Cursor=d},{"helpers/dom/element":45,"helpers/dom/event":46}],68:[function(e,t,n){"use strict";function o(){var e=void 0!==arguments[0]?arguments[0]:null,t=void 0!==arguments[1]?arguments[1]:[],n=void 0!==arguments[2]?arguments[2]:{},o=[];return e&&e.items?e=e.items:Array.isArray(e)||(e=t),u(e)?a(e,function(e,t){var r=n["string"==typeof e?e:t];r||(r=e),u(e)?c(r,e):"string"==typeof r&&(r={name:r}),void 0===r.key&&(r.key=t),o.push(r)}):d(e,function(e,t){var r=n[e];!r&&g.indexOf(e)>=0||(r||(r={name:e,key:t+""}),u(e)&&c(r,e),void 0===r.key&&(r.key=t),o.push(r))}),o[0].name===f&&o.shift(),o}Object.defineProperties(n,{ItemsFactory:{get:function(){return m}},__esModule:{value:!0}});var r,i,s,l=(r=e("helpers/object"),r&&r.__esModule&&r||{"default":r}),a=l.objectEach,u=l.isObject,c=l.extend,d=(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,h=(s=e("predefinedItems"),s&&s.__esModule&&s||{"default":s}),f=h.SEPARATOR,g=h.ITEMS,p=h.predefinedItems,m=function(e){var t=void 0!==arguments[1]?arguments[1]:null;this.hot=e,this.predefinedItems=p(),this.defaultOrderPattern=t};$traceurRuntime.createClass(m,{setPredefinedItems:function(e){var t=this,n={};this.defaultOrderPattern.length=0,a(e,function(e,o){var r="";e.name===f?(n[f]=e,r=f):isNaN(parseInt(o,10))?(e.key=void 0===e.key?o:e.key,n[o]=e,r=e.key):(n[e.key]=e,r=e.key),t.defaultOrderPattern.push(r)}),this.predefinedItems=n},getVisibleItems:function(){var e=void 0!==arguments[0]?arguments[0]:null,t=this,n={};return a(this.predefinedItems,function(e,o){(!e.hidden||e.hidden&&!e.hidden.apply(t.hot))&&(n[o]=e)}),o(e,this.defaultOrderPattern,n)},getItems:function(){var e=void 0!==arguments[0]?arguments[0]:null;return o(e,this.defaultOrderPattern,this.predefinedItems)}},{})},{"helpers/array":42,"helpers/object":50,predefinedItems:70}],69:[function(e,t,n){"use strict";Object.defineProperties(n,{Menu:{get:function(){ +return W}},__esModule:{value:!0}});var o,r,i,s,l,a,u,c,d,h,f=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),g=f.addClass,p=f.empty,m=f.fastInnerHTML,w=(f.getComputedStyle,f.getScrollbarWidth),v=(f.getWindowScrollLeft,f.getWindowScrollTop,f.hasClass,f.isChildOf),b=f.removeClass,C=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,y=(i=e("cursor"),i&&i.__esModule&&i||{"default":i}).Cursor,R=(s=e("eventManager"),s&&s.__esModule&&s||{"default":s}).EventManager,E=(l=e("helpers/object"),l&&l.__esModule&&l||{"default":l}),S=(E.extend,E.isObject,E.objectEach,E.mixin),T=(a=e("utils"),a&&a.__esModule&&a||{"default":a}),O=T.isSeparator,_=T.isDisabled,M=T.isSelectionDisabled,H=T.hasSubMenu,k=T.normalizeSelection,A=(u=e("helpers/unicode"),u&&u.__esModule&&u||{"default":u}).KEY_CODES,P=(c=e("mixins/localHooks"),c&&c.__esModule&&c||{"default":c}).localHooks,x=(d=e("predefinedItems"),d&&d.__esModule&&d||{"default":d}),D=x.SEPARATOR,N=(x.predefinedItems,h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),L=(N.stopPropagation,N.stopImmediatePropagation),W=(N.pageX,N.pageY,function(e){var t=void 0!==arguments[1]?arguments[1]:{parent:null,name:null,className:"",keepInViewport:!0};this.hot=e,this.options=t,this.eventManager=new R(this),this.container=this.createContainer(this.options.name),this.hotMenu=null,this.hotSubMenus={},this.parentMenu=this.options.parent||null,this.menuItems=null,this.origOutsideClickDeselects=null,this._afterScrollCallback=null,this.registerEvents()}),I=W;$traceurRuntime.createClass(W,{registerEvents:function(){var e=this;this.eventManager.addEventListener(document.documentElement,"mousedown",function(t){return e.onDocumentMouseDown(t)})},setMenuItems:function(e){this.menuItems=e},isSubMenu:function(){return null!==this.parentMenu},open:function(){var e=this;this.container.removeAttribute("style"),this.container.style.display="block";var t={data:this.menuItems,colHeaders:!1,colWidths:[200],autoRowSize:!1,readOnly:!0,copyPaste:!1,columns:[{data:"name",renderer:function(t,n,o,r,i,s){return e.menuItemRenderer(t,n,o,r,i,s)}}],renderAllRows:!0,fragmentSelection:"cell",beforeKeyDown:function(t){return e.onBeforeKeyDown(t)},afterOnCellMouseOver:function(t,n,o){return e.openSubMenu(n.row)}};this.origOutsideClickDeselects=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1,this.hotMenu=new Handsontable.Core(this.container,t),this.hotMenu.addHook("afterInit",function(){return e.onAfterInit()}),this.hotMenu.init(),this.hotMenu.listen(),this.blockMainTableCallbacks(),this.runLocalHooks("afterOpen")},close:function(){var e=void 0!==arguments[0]?arguments[0]:!1;this.isOpened()&&(e&&this.parentMenu?this.parentMenu.close():(this.closeAllSubMenus(),this.container.style.display="none",this.releaseMainTableCallbacks(),this.hotMenu.destroy(),this.hotMenu=null,this.hot.getSettings().outsideClickDeselects=this.origOutsideClickDeselects,this.runLocalHooks("afterClose")))},openSubMenu:function(e){var t=this.hotMenu.getCell(e,0);if(this.closeAllSubMenus(),!t||!H(t))return!1;var n=this.hotMenu.getSourceDataAtRow(e),o=new I(this.hot,{parent:this,name:n.name,className:this.options.className});return o.setMenuItems(n.submenu.items),o.open(),o.setPosition(t.getBoundingClientRect()),this.hotSubMenus[n.key]=o,o},closeSubMenu:function(e){var t=this.hotMenu.getSourceDataAtRow(e),n=this.hotSubMenus[t.key];n&&(n.destroy(),delete this.hotSubMenus[t.key])},closeAllSubMenus:function(){var e=this;C(this.hotMenu.getData(),function(t,n){return e.closeSubMenu(n)})},isAllSubMenusClosed:function(){return 0===Object.keys(this.hotSubMenus).length},destroy:function(){this.clearLocalHooks(),this.close(),this.parentMenu=null,this.eventManager.destroy()},isOpened:function(){return null!==this.hotMenu},executeCommand:function(e){if(this.isOpened()&&this.hotMenu.getSelected()){var t=this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelected()[0]);if(this.runLocalHooks("select",t,e),t.isCommand!==!1){var n=this.hot.getSelectedRange(),o=n?k(n):{};this.runLocalHooks("executeCommand",t.key,o,e),this.isSubMenu()&&this.parentMenu.runLocalHooks("executeCommand",t.key,o,e),this.close(!0)}}},setPosition:function(e){var t=new y(e);this.options.keepInViewport?(t.fitsBelow(this.container)?this.setPositionBelowCursor(t):t.fitsAbove(this.container)?this.setPositionAboveCursor(t):this.setPositionBelowCursor(t),t.fitsOnRight(this.container)?this.setPositionOnRightOfCursor(t):this.setPositionOnLeftOfCursor(t)):(this.setPositionBelowCursor(t),this.setPositionOnRightOfCursor(t))},setPositionAboveCursor:function(e){var t=e.top-this.container.offsetHeight;this.isSubMenu()&&(t=window.scrollY+e.top+e.cellHeight-this.container.offsetHeight+3),this.container.style.top=t+"px"},setPositionBelowCursor:function(e){var t=e.top-1;this.isSubMenu()&&(t=e.top+window.scrollY-1),this.container.style.top=t+"px"},setPositionOnRightOfCursor:function(e){var t;t=this.isSubMenu()?window.scrollX+1+e.left+e.cellWidth:1+e.left,this.container.style.left=t+"px"},setPositionOnLeftOfCursor:function(e){this.container.style.left=e.left-this.container.offsetWidth+w()+4+"px"},selectFirstCell:function(){var e=this.hotMenu.getCell(0,0);O(e)||_(e)||M(e)?this.selectNextCell(0,0):this.hotMenu.selectCell(0,0)},selectLastCell:function(){var e=this.hotMenu.countRows()-1,t=this.hotMenu.getCell(e,0);O(t)||_(t)||M(t)?this.selectPrevCell(e,0):this.hotMenu.selectCell(e,0)},selectNextCell:function(e,t){var n=e+1,o=n=0?this.hotMenu.getCell(n,t):null;o&&(O(o)||_(o)||M(o)?this.selectPrevCell(n,t):this.hotMenu.selectCell(n,t))},menuItemRenderer:function(e,t,n,o,r,i){var s=this,l=e.getSourceDataAtRow(n),a=document.createElement("div"),u=function(e){return e.hasOwnProperty("submenu")},c=function(e){return new RegExp(D,"i").test(e.name)},d=function(e){return e.disabled===!0||"function"==typeof e.disabled&&e.disabled.call(s.hot)===!0},h=function(e){return"function"==typeof e.hidden&&e.hidden.call(s.hot)===!0},f=function(e){return e.disableSelection},w=h(l);"function"==typeof i&&(i=i.call(this.hot)),p(t),g(a,"htItemWrapper"),t.appendChild(a),c(l)?g(t,"htSeparator"):w||"function"!=typeof l.renderer?m(a,i):(g(t,"htCustomMenuRenderer"),t.appendChild(l.renderer(e,a,n,o,r,i))),w?t.parentNode&&g(t.parentNode,"htHidden"):d(l)?(g(t,"htDisabled"),this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()})):f(l)?(g(t,"htSelectionDisabled"),this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()})):u(l)?(g(t,"htSubmenu"),f(l)?this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(a,"mouseenter",function(){return e.selectCell(n,o,void 0,void 0,void 0,!1)})):(b(t,"htSubmenu"),b(t,"htDisabled"),f(l)?this.eventManager.addEventListener(a,"mouseenter",function(){return e.deselectCell()}):this.eventManager.addEventListener(a,"mouseenter",function(){return e.selectCell(n,o,void 0,void 0,void 0,!1)}))},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:null;e&&(e=e.replace(/ /g,"_"),e=this.options.className+"Sub_"+e);var t;return t=e?document.querySelector("."+this.options.className+"."+e):document.querySelector("."+this.options.className),t||(t=document.createElement("div"),g(t,"htMenu "+this.options.className),e&&g(t,e),document.getElementsByTagName("body")[0].appendChild(t)),t},blockMainTableCallbacks:function(){this._afterScrollCallback=function(){},this.hot.addHook("afterScrollVertically",this._afterScrollCallback),this.hot.addHook("afterScrollHorizontally",this._afterScrollCallback)},releaseMainTableCallbacks:function(){this._afterScrollCallback&&(this.hot.removeHook("afterScrollVertically",this._afterScrollCallback),this.hot.removeHook("afterScrollHorizontally",this._afterScrollCallback),this._afterScrollCallback=null)},onBeforeKeyDown:function(e){var t=this.hotMenu.getSelected(),n=!1;switch(e.keyCode){case A.ESCAPE:this.close(),n=!0;break;case A.ENTER:t&&(this.hotMenu.getSourceDataAtRow(t[0]).submenu?n=!0:(this.executeCommand(e),this.close(!0)));break;case A.ARROW_DOWN:t?this.selectNextCell(t[0],t[1]):this.selectFirstCell(),n=!0;break;case A.ARROW_UP:t?this.selectPrevCell(t[0],t[1]):this.selectLastCell(),n=!0;break;case A.ARROW_RIGHT:if(t){var o=this.openSubMenu(t[0]);o&&o.selectFirstCell()}n=!0;break;case A.ARROW_LEFT:t&&this.isSubMenu()&&(this.close(),this.parentMenu&&this.parentMenu.hotMenu.listen(),n=!0)}n&&(e.preventDefault(),L(e))},onAfterInit:function(){var e=this.hotMenu.getSettings().data,t=this.hotMenu.view.wt.wtTable.hider.style,n=this.hotMenu.view.wt.wtTable.holder.style,o=parseInt(t.width,10),r=0;C(e,function(e){return r+=e.name===D?1:26}),n.width=o+22+"px",n.height=r+4+"px"},onDocumentMouseDown:function(e){this.isOpened()&&(this.container&&v(e.target,this.container)&&this.executeCommand(e),(this.isAllSubMenusClosed()||this.isSubMenu())&&!v(e.target,".htMenu")&&v(e.target,document)&&this.close(!0))}},{}),S(W,P)},{cursor:67,eventManager:41,"helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/object":50,"helpers/unicode":53,"mixins/localHooks":54,predefinedItems:70,utils:71}],70:[function(e,t,n){"use strict";function o(){var e={};return c(A,function(t,n){return e[n]=d(t)}),e}function r(e,t){-1===k.indexOf(e)&&(A[e]=t)}var i;Object.defineProperties(n,{ROW_ABOVE:{get:function(){return v}},ROW_BELOW:{get:function(){return b}},COLUMN_LEFT:{get:function(){return C}},COLUMN_RIGHT:{get:function(){return y}},CLEAR_COLUMN:{get:function(){return R}},REMOVE_ROW:{get:function(){return E}},REMOVE_COLUMN:{get:function(){return S}},UNDO:{get:function(){return T}},REDO:{get:function(){return O}},READ_ONLY:{get:function(){return _}},ALIGNMENT:{get:function(){return M}},SEPARATOR:{get:function(){return H}},ITEMS:{get:function(){return k}},predefinedItems:{get:function(){return o}},addItem:{get:function(){return r}},__esModule:{value:!0}});var s,l,a,u=(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}),c=u.objectEach,d=u.clone,h=((l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).rangeEach,a=e("utils"),a&&a.__esModule&&a||{"default":a}),f=h.align,g=h.getAlignmentClasses,p=h.getValidSelection,m=h.checkSelectionConsistency,w=h.markLabelAsSelected,v="row_above",b="row_below",C="col_left",y="col_right",R="clear_column",E="remove_row",S="remove_col",T="undo",O="redo",_="make_read_only",M="alignment",H="---------",k=[v,b,C,y,R,E,S,T,O,_,M,H],A=(i={},Object.defineProperty(i,H,{value:{name:H},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,v,{value:{key:v,name:"Insert row above",callback:function(e,t){this.alter("insert_row",t.start.row)},disabled:function(){var e=p(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,b,{value:{key:b,name:"Insert row below",callback:function(e,t){this.alter("insert_row",t.end.row+1)},disabled:function(){var e=p(this);if(!e)return!0;var t=this.countRows(),n=[0,e[1],t-1,e[1]];return n.join(",")===e.join(",")&&t>1},hidden:function(){return!this.getSettings().allowInsertRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,C,{value:{key:C,name:"Insert column on the left",callback:function(e,t){this.alter("insert_col",t.start.col)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,y,{value:{key:y,name:"Insert column on the right",callback:function(e,t){this.alter("insert_col",t.end.col+1)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n},hidden:function(){return!this.getSettings().allowInsertColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,R,{value:{key:R,name:"Clear column",callback:function(e,t){var n=t.start.col;this.countRows()&&this.populateFromArray(0,n,[[null]],Math.max(t.start.row,t.end.row),n)},disabled:function(){var e=p(this);if(!e)return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||this.countCols()>=this.getSettings().maxCols||n}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,E,{value:{key:E,name:"Remove row",callback:function(e,t){var n=t.end.row-t.start.row+1;this.alter("remove_row",t.start.row,n)},disabled:function(){var e=p(this);if(!e)return!0;var t=[0,e[1],this.countRows()-1,e[1]];return t.join(",")===e.join(",")},hidden:function(){return!this.getSettings().allowRemoveRow}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,S,{value:{key:S,name:"Remove column",callback:function(e,t){var n=t.end.col-t.start.col+1;this.alter("remove_col",t.start.col,n)},disabled:function(){var e=p(this);if(!e)return!0;if(!this.isColumnModificationAllowed())return!0;var t=[e[0],0,e[0],this.countCols()-1],n=t.join(",")==e.join(",");return e[1]<0||n},hidden:function(){return!this.getSettings().allowRemoveColumn}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,T,{value:{key:T,name:"Undo",callback:function(){this.undo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isUndoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,O,{value:{key:O,name:"Redo",callback:function(){this.redo()},disabled:function(){return this.undoRedo&&!this.undoRedo.isRedoAvailable()}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,_,{value:{key:_,name:function(){var e=this,t="Read only",n=m(this.getSelectedRange(),function(t,n){return e.getCellMeta(t,n).readOnly});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=m(t,function(t,n){return e.getCellMeta(t,n).readOnly});t.forAll(function(t,o){e.getCellMeta(t,o).readOnly=n?!1:!0}),this.render()},disabled:function(){return this.getSelectedRange()?!1:!0}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,M,{value:{key:M,name:"Alignment",disabled:function(){return this.getSelectedRange()?!1:!0},submenu:{items:[{key:M+":left",name:function(){var e=this,t="Left",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htLeft")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htLeft";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":center",name:function(){var e=this,t="Center",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htCenter")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htCenter";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":right",name:function(){var e=this,t="Right",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htRight")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htRight";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":justify",name:function(){var e=this,t="Justify",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htJustify")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="horizontal",r="htJustify";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{name:H},{key:M+":top",name:function(){var e=this,t="Top",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htTop")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htTop";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":middle",name:function(){var e=this,t="Middle",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htMiddle")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htMiddle";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1},{key:M+":bottom",name:function(){var e=this,t="Bottom",n=m(this.getSelectedRange(),function(t,n){var o=e.getCellMeta(t,n).className;return o&&-1!==o.indexOf("htBottom")?!0:void 0});return n&&(t=w(t)),t},callback:function(){var e=this,t=this.getSelectedRange(),n=g(t,function(t,n){return e.getCellMeta(t,n).className}),o="vertical",r="htBottom";this.runHooks("beforeCellAlignment",n,t,o,r),f(t,o,r,function(t,n){return e.getCellMeta(t,n)}),this.render()},disabled:!1}]}},configurable:!0,enumerable:!0,writable:!0}),i)},{"helpers/number":49,"helpers/object":50,utils:71}],71:[function(e,t,n){"use strict";function o(e){return{start:e.getTopLeftCorner(),end:e.getBottomRightCorner()}}function r(e){return w(e,"htSeparator")}function i(e){return w(e,"htSubmenu")}function s(e){return w(e,"htDisabled")}function l(e){return w(e,"htSelectionDisabled")}function a(e){var t=e.getSelected();return t?t[0]<0?null:e.countRows()>=e.getSettings().maxRows?null:t:null}function u(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htTop","").replace("htMiddle","").replace("htBottom","").replace(" ",""),e+=" "+t)}function c(e,t){return-1!=e.indexOf(t)?e:(e=e.replace("htLeft","").replace("htCenter","").replace("htRight","").replace("htJustify","").replace(" ",""),e+=" "+t)}function d(e,t){for(var n={},o=e.from.row;o<=e.to.row;o++)for(var r=e.from.col;r<=e.to.col;r++)n[o]||(n[o]=[]),n[o][r]=t(o,r);return n}function h(e,t,n,o){if(e.from.row==e.to.row&&e.from.col==e.to.col)f(e.from.row,e.from.col,t,n,o);else for(var r=e.from.row;r<=e.to.row;r++)for(var i=e.from.col;i<=e.to.col;i++)f(r,i,t,n,o)}function f(e,t,n,o,r){var i=r(e,t),s=o;i.className&&(s="vertical"===n?u(i.className,o):c(i.className,o)),i.className=s}function g(e,t){var n=!1;return e&&e.forAll(function(e,o){return t(e,o)?(n=!0,!1):void 0}),n}function p(e){return''+String.fromCharCode(10003)+""+e}Object.defineProperties(n,{normalizeSelection:{get:function(){return o}},isSeparator:{get:function(){return r}},hasSubMenu:{get:function(){return i}},isDisabled:{get:function(){return s}},isSelectionDisabled:{get:function(){return l}},getValidSelection:{get:function(){return a}},prepareVerticalAlignClass:{get:function(){return u}},prepareHorizontalAlignClass:{get:function(){return c}},getAlignmentClasses:{get:function(){return d}},align:{get:function(){return h}},checkSelectionConsistency:{get:function(){return g}},markLabelAsSelected:{get:function(){return p}},__esModule:{value:!0}});var m,w=(m=e("helpers/dom/element"),m&&m.__esModule&&m||{"default":m}).hasClass},{"helpers/dom/element":45}],72:[function(e,t,n){"use strict";Object.defineProperties(n,{ContextMenuCopyPaste:{get:function(){return p}},__esModule:{value:!0}});var o,r,i,s,l,a,u=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}).removeClass,c=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,d=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,h=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,f=(l=e("_base"),l&&l.__esModule&&l||{"default":l})["default"],g=(a=e("zeroclipboard"),a&&a.__esModule&&a||{"default":a})["default"],p=function(e){$traceurRuntime.superConstructor(m).call(this,e),this.eventManager=new d(this),this.swfPath=null,this.outsideClickDeselectsCache=null},m=p;$traceurRuntime.createClass(p,{isEnabled:function(){return this.hot.getSettings().contextMenuCopyPaste},enablePlugin:function(){var e=this;if(!this.enabled){"object"==typeof this.hot.getSettings().contextMenuCopyPaste&&(this.swfPath=this.hot.getSettings().contextMenuCopyPaste.swfPath),"undefined"==typeof g&&console.error("To be able to use the Copy/Paste feature from the context menu, you need to manually include ZeroClipboard.js file to your website.");try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(t){"undefined"==typeof navigator.mimeTypes["application/x-shockwave-flash"]&&console.error("To be able to use the Copy/Paste feature from the context menu, your browser needs to have Flash Plugin installed.")}this.swfPath&&g.config({swfPath:this.swfPath}),this.hot.addHook("afterContextMenuShow",function(){return e.onAfterContextMenuShow()}),this.hot.addHook("afterContextMenuDefaultOptions",function(t){return e.onAfterContextMenuDefaultOptions(t)}),this.registerEvents(),$traceurRuntime.superGet(this,m.prototype,"enablePlugin").call(this)}},disablePlugin:function(){$traceurRuntime.superGet(this,m.prototype,"disablePlugin").call(this)},registerEvents:function(){var e=this;this.eventManager.addEventListener(document,"mouseenter",function(){return e.removeCurrentClass()}),this.eventManager.addEventListener(document,"mouseleave",function(){return e.removeZeroClipboardClass()})},getCopyValue:function(){return this.hot.copyPaste.setCopyableText(),this.hot.copyPaste.copyPasteInstance.elTextarea.value},onAfterContextMenuDefaultOptions:function(e){e.items.unshift({key:"copy",name:"Copy"},{key:"paste",name:"Paste",callback:function(){this.copyPaste.triggerPaste()}},Handsontable.plugins.ContextMenu.SEPARATOR)},onAfterContextMenuShow:function(){var e=this,t=this.hot.getPlugin("contextMenu"),n=t.menu.hotMenu.getSourceData();c(n,function(n,o){if("copy"===n.key){var r=new g(t.menu.hotMenu.getCell(o,0));return r.off(),r.on("copy",function(t){var n=t.clipboardData;n.setData("text/plain",e.getCopyValue()),e.hot.getSettings().outsideClickDeselects=e.outsideClickDeselectsCache}),!1}})},removeCurrentClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.current");t&&u(t,"current")}this.outsideClickDeselectsCache=this.hot.getSettings().outsideClickDeselects,this.hot.getSettings().outsideClickDeselects=!1},removeZeroClipboardClass:function(){var e=this.hot.getPlugin("contextMenu");if(e.menu.isOpened()){var t=e.menu.hotMenu.rootElement.querySelector("td.zeroclipboard-is-hover");t&&u(t,"zeroclipboard-is-hover")}this.hot.getSettings().outsideClickDeselects=this.outsideClickDeselectsCache}},{},f),h("contextMenuCopyPaste",p)},{_base:58,eventManager:41,"helpers/array":42,"helpers/dom/element":45,plugins:57,zeroclipboard:void 0}],73:[function(e,t,n){"use strict";function o(e){function t(){e.isListening()&&e.selection.empty()}function n(t){var n,o,r,i,s,l,a,u,c,d;if(e.isListening()&&e.selection.isSelected()){n=t,o=w.parse(n),r=e.getSelected(),i=new M(r[0],r[1]),s=new M(r[2],r[3]),l=new H(i,i,s),a=l.getTopLeftCorner(),u=l.getBottomRightCorner(),c=a,d=new M(Math.max(u.row,o.length-1+a.row),Math.max(u.col,o[0].length-1+a.col));var h=s.row-i.row>=o.length-1,f=s.col-i.col>=o[0].length-1;e.addHookOnce("afterChange",function(t,n){var o=t?t.length:0;if(o){var r={row:0,col:0},i=-1;y(t,function(e,n){var s=o>n+1?t[n+1]:null;s&&(h||(r.row=r.row+Math.max(s[0]-e[0]-1,0)),!f&&e[1]>i&&(i=e[1],r.col=r.col+Math.max(s[1]-e[1]-1,0)))}),e.selectCell(c.row,c.col,d.row+r.row,d.col+r.col)}}),e.populateFromArray(c.row,c.col,o,d.row,d.col,"paste",e.getSettings().pasteMode)}}function o(t){if(e.getSelected()&&!(e.getActiveEditor()&&e.getActiveEditor().isOpened()||T(t))){if(C(t.keyCode)){if(e.getSettings().fragmentSelection&&O())return;return r.setCopyableText(),void S(t)}var n=(t.ctrlKey||t.metaKey)&&!t.altKey;t.keyCode==b.A&&n&&e._registerTimeout(setTimeout(_(r.setCopyableText,r),0))}}var r=this;this.copyPasteInstance=m(),this.copyPasteInstance.onCut(t),this.copyPasteInstance.onPaste(n),this.onPaste=n,e.addHook("beforeKeyDown",o),this.destroy=function(){this.copyPasteInstance&&(this.copyPasteInstance.removeCallback(t),this.copyPasteInstance.removeCallback(n),this.copyPasteInstance.destroy(),this.copyPasteInstance=null),e.removeHook("beforeKeyDown",o)},e.addHook("afterDestroy",_(this.destroy,this)),this.triggerPaste=_(this.copyPasteInstance.triggerPaste,this.copyPasteInstance),this.triggerCut=_(this.copyPasteInstance.triggerCut,this.copyPasteInstance),this.setCopyableText=function(){var t=e.getSettings(),n=t.copyRowsLimit,o=t.copyColsLimit,r=e.getSelectedRange(),i=r.getTopLeftCorner(),s=r.getBottomRightCorner(),l=i.row,a=i.col,u=s.row,c=s.col,d=Math.min(u,l+n-1),h=Math.min(c,a+o-1),f=[];f.push({startRow:l,startCol:a,endRow:d,endCol:h}),f=Handsontable.hooks.run(e,"modifyCopyableRange",f);var g=this.getRangedCopyableData(f);e.copyPaste.copyPasteInstance.copyable(g),(u!==d||c!==h)&&Handsontable.hooks.run(e,"afterCopyLimit",u-l+1,c-a+1,n,o)},this.getRangedCopyableData=function(t){var n=[],o=[],r=[];return y(t,function(e){R(e.startRow,e.endRow,function(e){-1===o.indexOf(e)&&o.push(e)}),R(e.startCol,e.endCol,function(e){-1===r.indexOf(e)&&r.push(e)})}),y(o,function(t){var o=[];y(r,function(n){o.push(e.getCopyableData(t,n))}),n.push(o)}),w.stringify(n)}}function r(){var e=this,t=e.getSettings().copyPaste!==!1;t&&!e.copyPaste?e.copyPaste=new o(e):!t&&e.copyPaste&&(e.copyPaste.destroy(),e.copyPaste=null)}Object.defineProperties(n,{CopyPastePlugin:{get:function(){return o}},__esModule:{value:!0}});var i,s,l,a,u,c,d,h,f,g,p,m=(i=e("copyPaste"),i&&i.__esModule&&i||{"default":i})["default"],w=(s=e("SheetClip"),s&&s.__esModule&&s||{"default":s})["default"],v=(l=e("helpers/unicode"),l&&l.__esModule&&l||{"default":l}),b=v.KEY_CODES,C=v.isCtrlKey,y=(a=e("helpers/array"),a&&a.__esModule&&a||{"default":a}).arrayEach,R=(u=e("helpers/number"),u&&u.__esModule&&u||{"default":u}).rangeEach,E=(c=e("helpers/dom/event"),c&&c.__esModule&&c||{"default":c}),S=E.stopImmediatePropagation,T=E.isImmediatePropagationStopped,O=(d=e("helpers/dom/element"),d&&d.__esModule&&d||{"default":d}).getSelectionText,_=(h=e("helpers/function"),h&&h.__esModule&&h||{"default":h}).proxy,M=((f=e("plugins"),f&&f.__esModule&&f||{"default":f}).registerPlugin,(g=e("3rdparty/walkontable/src/cell/coords"),g&&g.__esModule&&g||{"default":g}).WalkontableCellCoords),H=(p=e("3rdparty/walkontable/src/cell/range"),p&&p.__esModule&&p||{"default":p}).WalkontableCellRange;Handsontable.hooks.add("afterInit",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterCopyLimit"),Handsontable.hooks.register("modifyCopyableRange")},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,SheetClip:"SheetClip",copyPaste:"copyPaste","helpers/array":42,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/function":47,"helpers/number":49,"helpers/unicode":53,plugins:57}],74:[function(e,t,n){"use strict";function o(){}var r,i,s,l,a=((r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,(i=e("3rdparty/walkontable/src/cell/range"),i&&i.__esModule&&i||{"default":i}).WalkontableCellRange),u=(s=e("3rdparty/walkontable/src/selection"),s&&s.__esModule&&s||{"default":s}).WalkontableSelection,c=function(e){return"boolean"==typeof e&&e===!0?!0:"object"==typeof e&&e.length>0?!0:!1},d=function(){c(this.getSettings().customBorders)&&(this.customBorders||(l=this,this.customBorders=new o))},h=function(e){for(var t=0;t=0?l.view.wt.selections[o]=n:l.view.wt.selections.push(n)},g=function(e,t,n){var o=C(e,t);o=y(o,n),this.setCellMeta(e,t,"borders",o),f(o)},p=function(e){for(var t=e.range,n=t.from.row;n<=t.to.row;n++)for(var o=t.from.col;o<=t.to.col;o++){var r=C(n,o),i=0;n==t.from.row&&(i++,e.hasOwnProperty("top")&&(r.top=e.top)),n==t.to.row&&(i++,e.hasOwnProperty("bottom")&&(r.bottom=e.bottom)),o==t.from.col&&(i++,e.hasOwnProperty("left")&&(r.left=e.left)),o==t.to.col&&(i++,e.hasOwnProperty("right")&&(r.right=e.right)),i>0&&(this.setCellMeta(n,o,"borders",r),f(r))}},m=function(e,t){return"border_row"+e+"col"+t},w=function(){return{width:1,color:"#000"}},v=function(){return{hide:!0}},b=function(){return{width:1,color:"#000",cornerVisible:!1}},C=function(e,t){return{className:m(e,t),border:b(),row:e,col:t,top:v(),right:v(),bottom:v(),left:v()}},y=function(e,t){return t.hasOwnProperty("border")&&(e.border=t.border),t.hasOwnProperty("top")&&(e.top=t.top),t.hasOwnProperty("right")&&(e.right=t.right),t.hasOwnProperty("bottom")&&(e.bottom=t.bottom),t.hasOwnProperty("left")&&(e.left=t.left),e},R=function(e){for(var t=document.querySelectorAll("."+e),n=0;n'+String.fromCharCode(10003)+""+e},M=function(e){this.getSettings().customBorders&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"borders",name:"Borders",submenu:{items:[{key:"borders:top",name:function(){var e="Top",t=O(this,"top");return t&&(e=_(e)),e},callback:function(){var e=O(this,"top");T.call(this,this.getSelectedRange(),"top",e)},disabled:!1},{key:"borders:right",name:function(){var e="Right",t=O(this,"right");return t&&(e=_(e)),e},callback:function(){var e=O(this,"right");T.call(this,this.getSelectedRange(),"right",e)},disabled:!1},{key:"borders:bottom",name:function(){var e="Bottom",t=O(this,"bottom");return t&&(e=_(e)),e},callback:function(){var e=O(this,"bottom");T.call(this,this.getSelectedRange(),"bottom",e)},disabled:!1},{key:"borders:left",name:function(){var e="Left",t=O(this,"left");return t&&(e=_(e)),e},callback:function(){var e=O(this,"left");T.call(this,this.getSelectedRange(),"left",e)},disabled:!1},{key:"borders:no_borders",name:"Remove border(s)",callback:function(){T.call(this,this.getSelectedRange(),"noBorders")},disabled:function(){return!O(this)}}]}}))};Handsontable.hooks.add("beforeInit",d),Handsontable.hooks.add("afterContextMenuDefaultOptions",M), +Handsontable.hooks.add("afterInit",function(){var e=this.getSettings().customBorders;if(e){for(var t=0;tthis.boundaries.bottom&&(o=t-this.boundaries.bottom),ethis.boundaries.right&&(n=e-this.boundaries.right),this.callback(n,o)};var l,a=function(e){e.dragToScrollListening=!1;var t=e.view.wt.wtTable.holder;l=new o,t!==window&&(l.setBoundaries(t.getBoundingClientRect()),l.setCallback(function(e,n){0>e?t.scrollLeft-=50:e>0&&(t.scrollLeft+=50),0>n?t.scrollTop-=20:n>0&&(t.scrollTop+=20)}),e.dragToScrollListening=!0)};Handsontable.hooks.add("afterInit",function(){var e=this,t=s(this);t.addEventListener(document,"mouseup",function(){e.dragToScrollListening=!1}),t.addEventListener(document,"mousemove",function(t){e.dragToScrollListening&&l.check(t.clientX,t.clientY)})}),Handsontable.hooks.add("afterDestroy",function(){s(this).clear()}),Handsontable.hooks.add("afterOnCellMouseDown",function(){a(this)}),Handsontable.hooks.add("afterOnCellCornerMouseDown",function(){a(this)}),Handsontable.plugins.DragToScroll=o},{eventManager:41,plugins:57}],76:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnFreeze:{get:function(){return l}},__esModule:{value:!0}});var o,r,i=(o=e("_base"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("plugins"),r&&r.__esModule&&r||{"default":r}).registerPlugin,l=function(e){$traceurRuntime.superConstructor(a).call(this,e)},a=l;$traceurRuntime.createClass(l,{isEnabled:function(){return!!this.hot.getSettings().manualColumnFreeze},enablePlugin:function(){var e=this;this.enabled||(this.addHook("modifyCol",function(t){return e.onModifyCol(t)}),this.addHook("afterContextMenuDefaultOptions",function(t){return e.addContextMenuEntry(t)}),$traceurRuntime.superGet(this,a.prototype,"enablePlugin").call(this))},disablePlugin:function(){$traceurRuntime.superGet(this,a.prototype,"disablePlugin").call(this)},init:function(){$traceurRuntime.superGet(this,a.prototype,"init").call(this),"undefined"==typeof this.hot.manualColumnPositionsPluginUsages?this.hot.manualColumnPositionsPluginUsages=["manualColumnFreeze"]:this.hot.manualColumnPositionsPluginUsages.push("manualColumnFreeze"),this.fixedColumnsCount=this.hot.getSettings().fixedColumnsLeft},onModifyCol:function(e){return this.hot.manualColumnPositionsPluginUsages.length>1?e:this.getModifiedColumnIndex(e)},getModifiedColumnIndex:function(e){return this.hot.manualColumnPositions[e]},addContextMenuEntry:function(e){var t=this;e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR,{key:"freeze_column",name:function(){var e=t.hot.getSelected()[1];return e>t.fixedColumnsCount-1?"Freeze this column":"Unfreeze this column"},disabled:function(){var e=t.hot.getSelected();return e[1]!==e[3]},callback:function(){var e=t.hot.getSelected()[1];e>t.fixedColumnsCount-1?t.freezeColumn(e):t.unfreezeColumn(e)}})},freezeColumn:function(e){if(!(e<=this.fixedColumnsCount-1)){var t=this.getModifiedColumnIndex(e)||e;this.checkPositionData(t),this.modifyColumnOrder(t,e,null,"freeze"),this.addFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},unfreezeColumn:function(e){if(!(e>this.fixedColumnsCount-1)){var t=this.getBestColumnReturnPosition(e),n=this.getModifiedColumnIndex(e)||e;this.checkPositionData(n),this.modifyColumnOrder(n,e,t,"unfreeze"),this.removeFixedColumn(),this.hot.view.wt.wtOverlays.leftOverlay.refresh(),this.hot.view.wt.wtOverlays.adjustElementsSize()}},addFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount+1}),this.fixedColumnsCount++},removeFixedColumn:function(){this.hot.updateSettings({fixedColumnsLeft:this.fixedColumnsCount-1}),this.fixedColumnsCount--},checkPositionData:function(e){this.hot.manualColumnPositions&&0!==this.hot.manualColumnPositions.length||this.hot.manualColumnPositions||(this.hot.manualColumnPositions=[]),e?this.hot.manualColumnPositions[e]||this.createPositionData(e+1):this.createPositionData(this.hot.countCols())},createPositionData:function(e){if(this.hot.manualColumnPositions.lengtht;t++)this.hot.manualColumnPositions[t]=t},modifyColumnOrder:function(e,t,n,o){null==n&&(n=e),"freeze"===o?this.hot.manualColumnPositions.splice(this.fixedColumnsCount,0,this.hot.manualColumnPositions.splice(t,1)[0]):"unfreeze"===o&&this.hot.manualColumnPositions.splice(n,0,this.hot.manualColumnPositions.splice(t,1)[0])},getBestColumnReturnPosition:function(e){for(var t=this.fixedColumnsCount,n=this.getModifiedColumnIndex(t),o=this.getModifiedColumnIndex(e);o>n;)t++,n=this.getModifiedColumnIndex(t);return t-1}},{},i),s("manualColumnFreeze",l)},{_base:58,plugins:57}],77:[function(e,t,n){"use strict";function o(){function e(e){p=this,m=e;var t=this.view.wt.wtTable.getCoords(e).col;if(t>=0){f=t;var n=m.getBoundingClientRect();a=n.left,w.style.top=n.top+"px",w.style.left=a+"px",p.rootElement.appendChild(w)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?w.style.left=n.left+n.width-o+"px":w.style.left=n.left+"px"}function n(){var e=this;u(w,"active"),u(v,"active");var t=m.getBoundingClientRect();v.style.width=t.width+"px",v.style.height=e.view.maximumVisibleElementHeight(0)+"px",v.style.top=w.style.top,v.style.left=a+"px",e.rootElement.appendChild(v)}function o(e){v.style.left=a+e+"px"}function r(){d(w,"active"),d(v,"active")}var i,s,l,a,f,p,m,w=document.createElement("DIV"),v=document.createElement("DIV"),b=h(this);w.className="manualColumnMover",v.className="manualColumnMoverGuide";var C=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualColumnPositions",e.manualColumnPositions)},y=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualColumnPositions",t),t.value},R=function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,R(e)):!1},E=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:E(e.parentNode):null},S=function(){var a,u=this;b.addEventListener(u.rootElement,"mouseover",function(n){if(R(n.target)){var o=E(n.target);if(o)if(a){var r=u.view.wt.wtTable.getCoords(o).col;r>=0&&(s=r,t(n.target,s-i))}else e.call(u,o)}}),b.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualColumnMover")&&(l=g(e),n.call(u),a=u,i=f,s=f)}),b.addEventListener(window,"mousemove",function(e){a&&o(g(e)-l)}),b.addEventListener(window,"mouseup",function(t){a&&(r(),a=!1,O(u.manualColumnPositions,u.countCols()),u.manualColumnPositions.splice(s,0,u.manualColumnPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeColumnMove",i,s),u.forceFullRender=!0,u.view.render(),C.call(u),Handsontable.hooks.run(u,"afterColumnMove",i,s),e.call(u,m))}),u.addHook("afterDestroy",T)},T=function(){b.clear()},O=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualColumnPositions=[]},this.init=function(e){var t=this,n=!!this.getSettings().manualColumnMove;if(n){var o=this.getSettings().manualColumnMove,r=y.call(t);"undefined"!=typeof r?this.manualColumnPositions=r:Array.isArray(o)?this.manualColumnPositions=o:this.manualColumnPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===b.context.eventListeners.length)&&("undefined"==typeof t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages=["manualColumnMove"]:t.manualColumnPositionsPluginUsages.push("manualColumnMove"),S.call(this),this.manualColumnPositions.length>0&&(this.forceFullRender=!0,this.render()))}else{var i=t.manualColumnPositionsPluginUsages?t.manualColumnPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(T.call(this),this.manualColumnPositions=[],t.manualColumnPositionsPluginUsages[i]=void 0)}},this.modifyCol=function(e){return this.getSettings().manualColumnMove?("undefined"==typeof this.manualColumnPositions[e]&&O(this.manualColumnPositions,e+1),this.manualColumnPositions[e]):e},this.afterRemoveCol=function(e,t){if(this.getSettings().manualColumnMove){var n,o=this.manualColumnPositions;n=o.splice(e,t),o=o.map(function(e){var t,o=e;for(t=0;tn[t]&&o--;return o}),this.manualColumnPositions=o}},this.afterCreateCol=function(e,t){if(this.getSettings().manualColumnMove){var n=this.manualColumnPositions;if(n.length){for(var o=[],r=0;t>r;r++)o.push(e+r);e>=n.length?n.concat(o):(n=n.map(function(n){return n>=e?n+t:n}),n.splice.apply(n,[e,0].concat(o))),this.manualColumnPositions=n}}}}Object.defineProperties(n,{ManualColumnMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=a.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=f.pageX,p=(f.pageY,(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",p.beforeInit),Handsontable.hooks.add("afterInit",function(){p.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){p.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyCol",p.modifyCol),Handsontable.hooks.add("afterRemoveCol",p.afterRemoveCol),Handsontable.hooks.add("afterCreateCol",p.afterCreateCol),Handsontable.hooks.register("beforeColumnMove"),Handsontable.hooks.register("afterColumnMove")},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],78:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualColumnResize:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=g.pageX,m=(g.pageY,(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin),w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.currentTH=null,this.currentCol=null,this.currentWidth=null,this.newSize=null,this.startY=null,this.startWidth=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualColumnWidths=[],c(this.handle,"manualColumnResizer"),c(this.guide,"manualColumnResizerGuide")},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return this.hot.getSettings().manualColumnResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualColumnWidths=[];var t=this.hot.getSettings().manualColumnResize,n=this.loadManualColumnWidths();this.addHook("modifyColWidth",function(t,n){return e.onModifyColWidth(t,n)}),"undefined"!=typeof n?this.manualColumnWidths=n:Array.isArray(t)?this.manualColumnWidths=t:this.manualColumnWidths=[],Handsontable.hooks.register("beforeColumnResize"),Handsontable.hooks.register("afterColumnResize"),this.bindEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualColumnResize;Array.isArray(e)?this.manualColumnWidths=e:this.manualColumnWidths=[]},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},saveManualColumnWidths:function(){this.hot.runHooks("persistentStateSave","manualColumnWidths",this.manualColumnWidths)},loadManualColumnWidths:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualColumnWidths",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).col;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentCol=t,this.startOffset=n.left-6,this.startWidth=parseInt(n.width,10),this.handle.style.top=n.top+"px",this.handle.style.left=this.startOffset+this.startWidth+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.left=this.startOffset+this.currentWidth+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.height=this.hot.view.maximumVisibleElementHeight(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.left=this.handle.style.left},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfColumnHeader:function(e){return"BODY"!=e.tagName?"THEAD"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfColumnHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfColumnHeader(e.target)){var t=this.getTHFromTargetElement(e.target);if(!t)return;var n=t.getAttribute("colspan");!t||null!==n&&1!==n||this.pressed||this.setupHandlePosition(t)}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualColumnResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null===this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startX=p(e),this.newSize=this.startWidth)},onMouseMove:function(e){this.pressed&&(this.currentWidth=this.startWidth+(p(e)-this.startX),this.newSize=this.setManualSize(this.currentCol,this.currentWidth),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startWidth&&(this.hot.runHooks("beforeColumnResize",this.currentCol,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",this.currentCol,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return t=Math.max(t,20),e=this.hot.runHooks("modifyCol",e),this.manualColumnWidths[e]=t,t},onModifyColWidth:function(e,t){return this.enabled&&(t=this.hot.runHooks("modifyCol",t),this.hot.getSettings().manualColumnResize&&this.manualColumnWidths[t])?this.manualColumnWidths[t]:e}},{},a),m("manualColumnResize",w)},{"_base.js":58,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],79:[function(e,t,n){"use strict";function o(){function e(e){var t=this;p=e;var n=this.view.wt.wtTable.getCoords(e).row;if(n>=0){f=n;var o=p.getBoundingClientRect();a=o.top,m.style.top=a+"px",m.style.left=o.left+"px",t.rootElement.appendChild(m)}}function t(e,t){var n=e.getBoundingClientRect(),o=6;t>0?m.style.top=n.top+n.height-o+"px":m.style.top=n.top+"px"}function n(){var e=this;u(m,"active"),u(w,"active");var t=p.getBoundingClientRect();w.style.width=e.view.maximumVisibleElementWidth(0)+"px",w.style.height=t.height+"px",w.style.top=a+"px",w.style.left=m.style.left,e.rootElement.appendChild(w)}function o(e){w.style.top=a+e+"px"}function r(){d(m,"active"),d(w,"active")}var i,s,l,a,f,p,m=document.createElement("DIV"),w=document.createElement("DIV"),v=h(this);m.className="manualRowMover",w.className="manualRowMoverGuide";var b=function(){var e=this;Handsontable.hooks.run(e,"persistentStateSave","manualRowPositions",e.manualRowPositions)},C=function(){var e=this,t={};return Handsontable.hooks.run(e,"persistentStateLoad","manualRowPositions",t),t.value},y=function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,y(e)):!1},R=function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:R(e.parentNode):null},E=function(){var a,u=this;v.addEventListener(u.rootElement,"mouseover",function(n){if(y(n.target)){var o=R(n.target);o&&(a?(s=u.view.wt.wtTable.getCoords(o).row,t(o,s-i)):e.call(u,o))}}),v.addEventListener(u.rootElement,"mousedown",function(e){c(e.target,"manualRowMover")&&(l=g(e),n.call(u),a=u,i=f,s=f)}),v.addEventListener(window,"mousemove",function(e){a&&o(g(e)-l)}),v.addEventListener(window,"mouseup",function(t){a&&(r(),a=!1,T(u.manualRowPositions,u.countRows()),u.manualRowPositions.splice(s,0,u.manualRowPositions.splice(i,1)[0]),Handsontable.hooks.run(u,"beforeRowMove",i,s),u.forceFullRender=!0,u.view.render(),b.call(u),Handsontable.hooks.run(u,"afterRowMove",i,s),e.call(u,p))}),u.addHook("afterDestroy",S)},S=function(){v.clear()},T=function(e,t){if(e.lengthn;n++)e[n]=n};this.beforeInit=function(){this.manualRowPositions=[]},this.init=function(e){var t=this,n=!!t.getSettings().manualRowMove;if(n){var o=t.getSettings().manualRowMove,r=C.call(t);"undefined"==typeof t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages=["manualColumnMove"]:t.manualRowPositionsPluginUsages.push("manualColumnMove"),"undefined"!=typeof r?this.manualRowPositions=r:Array.isArray(o)?this.manualRowPositions=o:this.manualRowPositions=[],("afterInit"===e||"afterUpdateSettings"===e&&0===v.context.eventListeners.length)&&(E.call(this),this.manualRowPositions.length>0&&(t.forceFullRender=!0,t.render()))}else{var i=t.manualRowPositionsPluginUsages?t.manualRowPositionsPluginUsages.indexOf("manualColumnMove"):-1;i>-1&&(S.call(this),t.manualRowPositions=[],t.manualRowPositionsPluginUsages[i]=void 0)}},this.modifyRow=function(e){var t=this;return t.getSettings().manualRowMove?("undefined"==typeof t.manualRowPositions[e]&&T(this.manualRowPositions,e+1),t.manualRowPositions[e]):e}}Object.defineProperties(n,{ManualRowMove:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=a.removeClass,h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,f=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),g=(f.pageX,f.pageY),p=((l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,new o);Handsontable.hooks.add("beforeInit",p.beforeInit),Handsontable.hooks.add("afterInit",function(){p.init.call(this,"afterInit")}),Handsontable.hooks.add("afterUpdateSettings",function(){p.init.call(this,"afterUpdateSettings")}),Handsontable.hooks.add("modifyRow",p.modifyRow),Handsontable.hooks.register("beforeRowMove"),Handsontable.hooks.register("afterRowMove")},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],80:[function(e,t,n){"use strict";Object.defineProperties(n,{ManualRowResize:{get:function(){return w}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("_base.js"),o&&o.__esModule&&o||{"default":o})["default"],u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=u.addClass,d=u.hasClass,h=u.removeClass,f=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,g=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),p=(g.pageX,g.pageY),m=(l=e("plugins"),l&&l.__esModule&&l||{"default":l}).registerPlugin,w=function(e){$traceurRuntime.superConstructor(v).call(this,e),this.currentTH=null,this.currentRow=null,this.currentHeight=null,this.newSize=null,this.startY=null,this.startHeight=null,this.startOffset=null,this.handle=document.createElement("DIV"),this.guide=document.createElement("DIV"),this.eventManager=f(this),this.pressed=null,this.dblclick=0,this.autoresizeTimeout=null,this.manualRowHeights=[],c(this.handle,"manualRowResizer"),c(this.guide,"manualRowResizerGuide")},v=w;$traceurRuntime.createClass(w,{isEnabled:function(){return this.hot.getSettings().manualRowResize},enablePlugin:function(){var e=this;if(!this.enabled){this.manualRowHeights=[];var t=this.hot.getSettings().manualRowResize,n=this.loadManualRowHeights();"undefined"!=typeof n?this.manualRowHeights=n:Array.isArray(t)?this.manualRowHeights=t:this.manualRowHeights=[],this.addHook("modifyRowHeight",function(t,n){return e.onModifyRowHeight(t,n)}),Handsontable.hooks.register("beforeRowResize"),Handsontable.hooks.register("afterRowResize"),this.bindEvents(),$traceurRuntime.superGet(this,v.prototype,"enablePlugin").call(this)}},updatePlugin:function(){var e=this.hot.getSettings().manualRowResize;Array.isArray(e)?this.manualRowHeights=e:this.manualRowHeights=[]},disablePlugin:function(){$traceurRuntime.superGet(this,v.prototype,"disablePlugin").call(this)},saveManualRowHeights:function(){this.hot.runHooks("persistentStateSave","manualRowHeights",this.manualRowHeights)},loadManualRowHeights:function(){var e={};return this.hot.runHooks("persistentStateLoad","manualRowHeights",e),e.value},setupHandlePosition:function(e){this.currentTH=e;var t=this.hot.view.wt.wtTable.getCoords(e).row;if(t>=0){var n=this.currentTH.getBoundingClientRect();this.currentRow=t,this.startOffset=n.top-6,this.startHeight=parseInt(n.height,10),this.handle.style.left=n.left+"px",this.handle.style.top=this.startOffset+this.startHeight+"px",this.hot.rootElement.appendChild(this.handle)}},refreshHandlePosition:function(){this.handle.style.top=this.startOffset+this.currentHeight+"px"},setupGuidePosition:function(){c(this.handle,"active"),c(this.guide,"active"),this.guide.style.top=this.handle.style.top,this.guide.style.left=this.handle.style.left,this.guide.style.width=this.hot.view.maximumVisibleElementWidth(0)+"px",this.hot.rootElement.appendChild(this.guide)},refreshGuidePosition:function(){this.guide.style.top=this.handle.style.top},hideHandleAndGuide:function(){h(this.handle,"active"),h(this.guide,"active")},checkIfRowHeader:function(e){return"BODY"!=e.tagName?"TBODY"==e.parentNode.tagName?!0:(e=e.parentNode,this.checkIfRowHeader(e)):!1},getTHFromTargetElement:function(e){return"TABLE"!=e.tagName?"TH"==e.tagName?e:this.getTHFromTargetElement(e.parentNode):null},onMouseOver:function(e){if(this.checkIfRowHeader(e.target)){var t=this.getTHFromTargetElement(e.target);t&&(this.pressed||this.setupHandlePosition(t))}},afterMouseDownTimeout:function(){if(this.dblclick>=2){var e=this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize,!0);void 0!==e&&(this.newSize=e),this.setManualSize(this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize,!0)}this.dblclick=0,this.autoresizeTimeout=null},onMouseDown:function(e){var t=this;d(e.target,"manualRowResizer")&&(this.setupGuidePosition(),this.pressed=this.hot,null==this.autoresizeTimeout&&(this.autoresizeTimeout=setTimeout(function(){return t.afterMouseDownTimeout()},500),this.hot._registerTimeout(this.autoresizeTimeout)),this.dblclick++,this.startY=p(e),this.newSize=this.startHeight)},onMouseMove:function(e){this.pressed&&(this.currentHeight=this.startHeight+(p(e)-this.startY),this.newSize=this.setManualSize(this.currentRow,this.currentHeight),this.refreshHandlePosition(),this.refreshGuidePosition())},onMouseUp:function(e){this.pressed&&(this.hideHandleAndGuide(),this.pressed=!1,this.newSize!=this.startHeight&&(this.hot.runHooks("beforeRowResize",this.currentRow,this.newSize),this.hot.forceFullRender=!0,this.hot.view.render(),this.hot.view.wt.wtOverlays.adjustElementsSize(!0),this.saveManualRowHeights(),this.hot.runHooks("afterRowResize",this.currentRow,this.newSize)),this.setupHandlePosition(this.currentTH))},bindEvents:function(){var e=this;this.eventManager.addEventListener(this.hot.rootElement,"mouseover",function(t){return e.onMouseOver(t)}),this.eventManager.addEventListener(this.hot.rootElement,"mousedown",function(t){return e.onMouseDown(t)}),this.eventManager.addEventListener(window,"mousemove",function(t){return e.onMouseMove(t)}),this.eventManager.addEventListener(window,"mouseup",function(t){return e.onMouseUp(t)})},setManualSize:function(e,t){return e=this.hot.runHooks("modifyRow",e),this.manualRowHeights[e]=t,t},onModifyRowHeight:function(e,t){if(this.enabled){var n=this.hot.getPlugin("autoRowSize"),o=n?n.heights[t]:null;t=this.hot.runHooks("modifyRow",t);var r=this.manualRowHeights[t];if(void 0!==r&&(r===o||r>(e||0)))return r}return e}},{},a),m("manualRowResize",w)},{"_base.js":58,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,plugins:57}],81:[function(e,t,n){"use strict";function o(){var e=[];return e.getInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row<=e&&this[n].row+this[n].rowspan-1>=e&&this[n].col<=t&&this[n].col+this[n].colspan-1>=t)return this[n]},e.setInfo=function(e){for(var t=0,n=this.length;n>t;t++)if(this[t].row===e.row&&this[t].col===e.col)return void(this[t]=e);this.push(e)},e.removeInfo=function(e,t){for(var n=0,o=this.length;o>n;n++)if(this[n].row===e&&this[n].col===t){this.splice(n,1);break}},e}function r(e){if(this.mergedCellInfoCollection=new o,Array.isArray(e))for(var t=0,n=e.length;n>t;t++)this.mergedCellInfoCollection.setInfo(e[t])}function i(e,t){var n=this.getSettings().mergeCells;if(n&&!this.selection.isMultiple()){var o=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);o&&(e[0]=o.row,e[1]=o.col,e[2]=o.row+o.rowspan-1,e[3]=o.col+o.colspan-1)}}function s(e,t){this.mergeCells&&this.mergeCells.shiftCollection("right",e,t)}function l(e,t){this.mergeCells&&this.mergeCells.shiftCollection("left",e,t)}function a(e,t){this.mergeCells&&this.mergeCells.shiftCollection("down",e,t)}function u(e,t){this.mergeCells&&this.mergeCells.shiftCollection("up",e,t)}Object.defineProperties(n,{MergeCells:{get:function(){return r}},__esModule:{value:!0}});var c,d,h,f,g,p=((c=e("plugins"),c&&c.__esModule&&c||{"default":c}).registerPlugin,(d=e("helpers/dom/event"),d&&d.__esModule&&d||{"default":d}).stopImmediatePropagation),m=(h=e("3rdparty/walkontable/src/cell/coords"),h&&h.__esModule&&h||{"default":h}).WalkontableCellCoords,w=(f=e("3rdparty/walkontable/src/cell/range"),f&&f.__esModule&&f||{"default":f}).WalkontableCellRange,v=(g=e("3rdparty/walkontable/src/table"),g&&g.__esModule&&g||{"default":g}).WalkontableTable;r.prototype.canMergeRange=function(e){return!e.isSingle()},r.prototype.mergeRange=function(e){if(this.canMergeRange(e)){var t=e.getTopLeftCorner(),n=e.getBottomRightCorner(),o={};o.row=t.row,o.col=t.col,o.rowspan=n.row-t.row+1,o.colspan=n.col-t.col+1,this.mergedCellInfoCollection.setInfo(o)}},r.prototype.mergeOrUnmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.from.row,e.from.col);t?this.unmergeSelection(e.from):this.mergeSelection(e)},r.prototype.mergeSelection=function(e){this.mergeRange(e)},r.prototype.unmergeSelection=function(e){var t=this.mergedCellInfoCollection.getInfo(e.row,e.col);this.mergedCellInfoCollection.removeInfo(t.row,t.col)},r.prototype.applySpanProperties=function(e,t,n){var o=this.mergedCellInfoCollection.getInfo(t,n);o?o.row===t&&o.col===n?(e.setAttribute("rowspan",o.rowspan),e.setAttribute("colspan",o.colspan)):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"),e.style.display="none"):(e.removeAttribute("rowspan"),e.removeAttribute("colspan"))},r.prototype.modifyTransform=function(e,t,n){var o=function(e,t){return t.row>=e.row&&t.row<=e.row+e.rowspan-1?!0:!1},r=function(e,t){return t.col>=e.col&&t.col<=e.col+e.colspan-1?!0:!1},i=function(e){return new m(t.to.row+e.row,t.to.col+e.col)},s={row:n.row,col:n.col};if("modifyTransformStart"==e){this.lastDesiredCoords||(this.lastDesiredCoords=new m(null,null));for(var l,a=new m(t.highlight.row,t.highlight.col),u=this.mergedCellInfoCollection.getInfo(a.row,a.col),c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var h=this.mergedCellInfoCollection[c];if(h=new m(h.row+h.rowspan-1,h.col+h.colspan-1),t.includes(h)){l=!0;break}}if(u){var f=new m(u.row,u.col),g=new m(u.row+u.rowspan-1,u.col+u.colspan-1),p=new w(f,f,g);p.includes(this.lastDesiredCoords)||(this.lastDesiredCoords=new m(null,null)),s.row=this.lastDesiredCoords.row?this.lastDesiredCoords.row-a.row:s.row,s.col=this.lastDesiredCoords.col?this.lastDesiredCoords.col-a.col:s.col,n.row>0?s.row=u.row+u.rowspan-1-a.row+n.row:n.row<0&&(s.row=a.row-u.row+n.row),n.col>0?s.col=u.col+u.colspan-1-a.col+n.col:n.col<0&&(s.col=a.col-u.col+n.col)}var v=new m(t.highlight.row+s.row,t.highlight.col+s.col),b=this.mergedCellInfoCollection.getInfo(v.row,v.col);b&&(this.lastDesiredCoords=v,s={row:b.row-a.row,col:b.col-a.col})}else if("modifyTransformEnd"==e)for(var c=0,d=this.mergedCellInfoCollection.length;d>c;c++){var C=this.mergedCellInfoCollection[c],f=new m(C.row,C.col),g=new m(C.row+C.rowspan-1,C.col+C.colspan-1),y=new w(f,f,g),R=t.getBordersSharedWith(y);if(y.isEqual(t))t.setDirection("NW-SE");else if(R.length>0){var E=t.highlight.isEqual(y.from);R.indexOf("top")>-1?t.to.isSouthEastOf(y.from)&&E?t.setDirection("NW-SE"):t.to.isSouthWestOf(y.from)&&E&&t.setDirection("NE-SW"):R.indexOf("bottom")>-1&&(t.to.isNorthEastOf(y.from)&&E?t.setDirection("SW-NE"):t.to.isNorthWestOf(y.from)&&E&&t.setDirection("SE-NW"))}var v=i(s),S=o(C,v),T=r(C,v);t.includesRange(y)&&(y.includes(v)||S||T)&&(S&&(s.row<0?s.row-=C.rowspan-1:s.row>0&&(s.row+=C.rowspan-1)),T&&(s.col<0?s.col-=C.colspan-1:s.col>0&&(s.col+=C.colspan-1)))}0!==s.row&&(n.row=s.row),0!==s.col&&(n.col=s.col)},r.prototype.shiftCollection=function(e,t,n){var o=[0,0];switch(e){case"right":o[0]+=1;break;case"left":o[0]-=1;break;case"down":o[1]+=1;break;case"up":o[1]-=1}for(var r=0;rn;n++)e.mergeCells.mergedCellInfoCollection.setInfo(t[n])}else e.mergeCells=new r(t);else e.mergeCells&&(e.mergeCells.mergedCellInfoCollection=new o)},R=function(e){if(this.mergeCells){var t=(e.ctrlKey||e.metaKey)&&!e.altKey;t&&77===e.keyCode&&(this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render(),p(e))}},E=function(e){this.getSettings().mergeCells&&(e.items.push(Handsontable.plugins.ContextMenu.SEPARATOR),e.items.push({key:"mergeCells",name:function(){var e=this.getSelected(),t=this.mergeCells.mergedCellInfoCollection.getInfo(e[0],e[1]);return t?"Unmerge cells":"Merge cells"; +},callback:function(){this.mergeCells.mergeOrUnmergeSelection(this.getSelectedRange()),this.render()},disabled:function(){return!1}}))},S=function(e,t,n,o,r,i){this.mergeCells&&this.mergeCells.applySpanProperties(e,t,n)},T=function(e){return function(t){var n=this.getSettings().mergeCells;if(n){var o=this.getSelectedRange();if(this.mergeCells.modifyTransform(e,o,t),"modifyTransformEnd"===e){var r=this.countRows(),i=this.countCols();o.from.row<0?o.from.row=0:o.from.row>0&&o.from.row>=r&&(o.from.row=o.from-1),o.from.col<0?o.from.col=0:o.from.col>0&&o.from.col>=i&&(o.from.col=i-1)}}}},O=function(e){this.lastDesiredCoords=null;var t=this.getSettings().mergeCells;if(t){var n=this.getSelectedRange();n.highlight=new m(n.highlight.row,n.highlight.col),n.to=e;var o=!1;do{o=!1;for(var r=0,i=this.mergeCells.mergedCellInfoCollection.length;i>r;r++){var s=this.mergeCells.mergedCellInfoCollection[r],l=new m(s.row,s.col),a=new m(s.row+s.rowspan-1,s.col+s.colspan-1),u=new w(l,l,a);n.expandByRange(u)&&(e.row=n.to.row,e.col=n.to.col,o=!0)}}while(o)}},_=function(e,t){if(t&&"area"==t){var n=this.getSettings().mergeCells;if(n)for(var o=this.getSelectedRange(),r=new w(o.from,o.from,o.from),i=new w(o.to,o.to,o.to),s=0,l=this.mergeCells.mergedCellInfoCollection.length;l>s;s++){var a=this.mergeCells.mergedCellInfoCollection[s],u=new m(a.row,a.col),c=new m(a.row+a.rowspan-1,a.col+a.colspan-1),d=new w(u,u,c);r.expandByRange(d)&&(e[0]=r.from.row,e[1]=r.from.col),i.expandByRange(d)&&(e[2]=i.from.row,e[3]=i.from.col)}}},M=function(e,t,n){var o=this.getSettings().mergeCells;if(o){var r=this.mergeCells.mergedCellInfoCollection.getInfo(e,t);!r||r.row==e&&r.col==t||(n.copyable=!1)}},H=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countCols(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(e.startRow,r),n&&n.rowe.endRow)return e.endRow=i,H.call(this,e)}}},k=function(e){var t=this.getSettings().mergeCells;if(t)for(var n,o=this.countRows(),r=0;o>r;r++){if(n=this.mergeCells.mergedCellInfoCollection.getInfo(r,e.startColumn),n&&n.cole.endColumn)return e.endColumn=i,k.call(this,e)}}},A=function(e){if(e&&this.mergeCells){var t=this.mergeCells.mergedCellInfoCollection,n=this.getSelectedRange();for(var o in t)if(n.highlight.row==t[o].row&&n.highlight.col==t[o].col&&n.to.row==t[o].row+t[o].rowspan-1&&n.to.col==t[o].col+t[o].colspan-1)return!1}return e};Handsontable.hooks.add("beforeInit",b),Handsontable.hooks.add("afterInit",C),Handsontable.hooks.add("afterUpdateSettings",y),Handsontable.hooks.add("beforeKeyDown",R),Handsontable.hooks.add("modifyTransformStart",T("modifyTransformStart")),Handsontable.hooks.add("modifyTransformEnd",T("modifyTransformEnd")),Handsontable.hooks.add("beforeSetRangeEnd",O),Handsontable.hooks.add("beforeDrawBorders",_),Handsontable.hooks.add("afterIsMultipleSelection",A),Handsontable.hooks.add("afterRenderer",S),Handsontable.hooks.add("afterContextMenuDefaultOptions",E),Handsontable.hooks.add("afterGetCellMeta",M),Handsontable.hooks.add("afterViewportRowCalculatorOverride",H),Handsontable.hooks.add("afterViewportColumnCalculatorOverride",k),Handsontable.hooks.add("afterAutofillApplyValues",i),Handsontable.hooks.add("afterCreateCol",s),Handsontable.hooks.add("afterRemoveCol",l),Handsontable.hooks.add("afterCreateRow",a),Handsontable.hooks.add("afterRemoveRow",u),Handsontable.MergeCells=r},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/cell/range":6,"3rdparty/walkontable/src/table":20,"helpers/dom/event":46,plugins:57}],82:[function(e,t,n){"use strict";Object.defineProperties(n,{MultipleSelectionHandles:{get:function(){return g}},__esModule:{value:!0}});var o,r,i,s,l=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),a=l.getWindowScrollTop,u=l.hasClass,c=l.getWindowScrollLeft,d=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],h=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).EventManager,f=(s=e("plugins"),s&&s.__esModule&&s||{"default":s}).registerPlugin,g=function(e){$traceurRuntime.superConstructor(p).call(this,e),this.dragged=[],this.eventManager=null,this.lastSetCell=null},p=g;$traceurRuntime.createClass(g,{isEnabled:function(){return Handsontable.mobileBrowser},enablePlugin:function(){this.enabled||(this.eventManager||(this.eventManager=new h(this)),this.registerListeners(),$traceurRuntime.superGet(this,p.prototype,"enablePlugin").call(this))},registerListeners:function(){function e(e){if(1===t.dragged.length)return t.dragged.splice(0,t.dragged.length),!0;var n=t.dragged.indexOf(e);return-1==n?!1:void(0===n?t.dragged=t.dragged.slice(0,1):1==n&&(t.dragged=t.dragged.slice(-1)))}var t=this;this.eventManager.addEventListener(this.hot.rootElement,"touchstart",function(e){var n;return u(e.target,"topLeftSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("topLeft"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):u(e.target,"bottomRightSelectionHandle-HitArea")?(n=t.hot.getSelectedRange(),t.dragged.push("bottomRight"),t.touchStartRange={width:n.getWidth(),height:n.getHeight(),direction:n.getDirection()},e.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchend",function(n){return u(n.target,"topLeftSelectionHandle-HitArea")?(e.call(t,"topLeft"),t.touchStartRange=void 0,n.preventDefault(),!1):u(n.target,"bottomRightSelectionHandle-HitArea")?(e.call(t,"bottomRight"),t.touchStartRange=void 0,n.preventDefault(),!1):void 0}),this.eventManager.addEventListener(this.hot.rootElement,"touchmove",function(e){var n,o,r,i,s,l,u,d=a(),h=c();0!==t.dragged.length&&(n=document.elementFromPoint(e.touches[0].screenX-h,e.touches[0].screenY-d),n&&n!==t.lastSetCell&&(("TD"==n.nodeName||"TH"==n.nodeName)&&(o=t.hot.getCoords(n),-1==o.col&&(o.col=0),r=t.hot.getSelectedRange(),i=r.getWidth(),s=r.getHeight(),l=r.getDirection(),1==i&&1==s&&t.hot.selection.setRangeEnd(o),u=t.getCurrentRangeCoords(r,o,t.touchStartRange.direction,l,t.dragged[0]),null!==u.start&&t.hot.selection.setRangeStart(u.start),t.hot.selection.setRangeEnd(u.end),t.lastSetCell=n),e.preventDefault()))})},getCurrentRangeCoords:function(e,t,n,o,r){var i=e.getTopLeftCorner(),s=e.getBottomRightCorner(),l=e.getBottomLeftCorner(),a=e.getTopRightCorner(),u={start:null,end:null};switch(n){case"NE-SW":switch(o){case"NE-SW":case"NW-SE":u="topLeft"==r?{start:new WalkontableCellCoords(t.row,e.highlight.col),end:new WalkontableCellCoords(l.row,t.col)}:{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,i.col)};break;case"SE-NW":"bottomRight"==r&&(u={start:new WalkontableCellCoords(s.row,t.col),end:new WalkontableCellCoords(t.row,i.col)})}break;case"NW-SE":switch(o){case"NE-SW":"topLeft"==r?u={start:t,end:l}:u.end=t;break;case"NW-SE":"topLeft"==r?u={start:t,end:s}:u.end=t;break;case"SE-NW":"topLeft"==r?u={start:t,end:i}:u.end=t;break;case"SW-NE":"topLeft"==r?u={start:t,end:a}:u.end=t}break;case"SW-NE":switch(o){case"NW-SE":u="bottomRight"==r?{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(l.row,t.col)}:{start:new WalkontableCellCoords(i.row,t.col),end:new WalkontableCellCoords(t.row,s.col)};break;case"SW-NE":u="topLeft"==r?{start:new WalkontableCellCoords(e.highlight.row,t.col),end:new WalkontableCellCoords(t.row,s.col)}:{start:new WalkontableCellCoords(t.row,i.col),end:new WalkontableCellCoords(i.row,t.col)};break;case"SE-NW":"bottomRight"==r?u={start:new WalkontableCellCoords(t.row,a.col),end:new WalkontableCellCoords(i.row,t.col)}:"topLeft"==r&&(u={start:l,end:t})}break;case"SE-NW":switch(o){case"NW-SE":case"NE-SW":case"SW-NE":"topLeft"==r&&(u.end=t);break;case"SE-NW":"topLeft"==r?u.end=t:u={start:t,end:i}}}return u},isDragged:function(){return this.dragged.length>0}},{},d),f("multipleSelectionHandles",g)},{_base:58,eventManager:41,"helpers/dom/element":45,plugins:57}],83:[function(e,t,n){"use strict";function o(){}function r(){var e=this,t=e.getSettings().observeChanges;t?(e.observer&&l.call(e),i.call(e),u.call(e)):t||l.call(e)}function i(){var e=this;e.observeChangesActive=!0,e.pauseObservingChanges=function(){e.observeChangesActive=!1},e.resumeObservingChanges=function(){e.observeChangesActive=!0},e.observedData=e.getSourceData(),e.observer=g.observe(e.observedData,function(t){e.observeChangesActive&&(s.call(e,t),e.render()),e.runHooks("afterChangesObserved")})}function s(e){function t(e){var t;return t=o(e),t=n(t)}function n(e){var t=[];return e.filter(function(e){var n=r(e.path);if(-1!=["add","remove"].indexOf(e.op)&&!isNaN(n.col)){if(-1!=t.indexOf(n.col))return!1;t.push(n.col)}return!0})}function o(e){return e.filter(function(e){return!/[\/]length/gi.test(e.path)})}function r(e){var t=e.match(/^\/(\d+)\/?(.*)?$/);return{row:parseInt(t[1],10),col:/^\d*$/.test(t[2])?parseInt(t[2],10):t[2]}}for(var i=this,s=t(e),l=0,a=s.length;a>l;l++){var u=s[l],c=r(u.path);switch(u.op){case"add":isNaN(c.col)?i.runHooks("afterCreateRow",c.row):i.runHooks("afterCreateCol",c.col);break;case"remove":isNaN(c.col)?i.runHooks("afterRemoveRow",c.row,1):i.runHooks("afterRemoveCol",c.col,1);break;case"replace":i.runHooks("afterChange",[c.row,c.col,null,u.value],"external")}}}function l(){var e=this;e.observer&&(a.call(e),c.call(e))}function a(){var e=this;g.unobserve(e.observedData,e.observer),delete e.observedData,delete e.observeChangesActive,delete e.pauseObservingChanges,delete e.resumeObservingChanges}function u(){var e=this;e.addHook("afterDestroy",l),e.addHook("afterCreateRow",d),e.addHook("afterRemoveRow",d),e.addHook("afterCreateCol",d),e.addHook("afterRemoveCol",d),e.addHook("afterChange",function(e,t){"loadData"!=t&&d.call(this)})}function c(){var e=this;e.removeHook("afterDestroy",l),e.removeHook("afterCreateRow",d),e.removeHook("afterRemoveRow",d),e.removeHook("afterCreateCol",d),e.removeHook("afterRemoveCol",d),e.removeHook("afterChange",d)}function d(){var e=this;e.pauseObservingChanges(),e.addHookOnce("afterChangesObserved",function(){e.resumeObservingChanges()})}Object.defineProperties(n,{ObserveChanges:{get:function(){return o}},__esModule:{value:!0}});var h,f,g=((h=e("plugins"),h&&h.__esModule&&h||{"default":h}).registerPlugin,(f=e("jsonpatch"),f&&f.__esModule&&f||{"default":f})["default"]);Handsontable.hooks.add("afterLoadData",r),Handsontable.hooks.add("afterUpdateSettings",r),Handsontable.hooks.register("afterChangesObserved")},{jsonpatch:"jsonpatch",plugins:57}],84:[function(e,t,n){"use strict";function o(e){var t,n=function(){window.localStorage[e+"__persistentStateKeys"]=JSON.stringify(t)},o=function(){var n=window.localStorage[e+"__persistentStateKeys"],o="string"==typeof n?JSON.parse(n):void 0;t=o?o:[]},r=function(){t=[],n()};o(),this.saveValue=function(o,r){window.localStorage[e+"_"+o]=JSON.stringify(r),-1==t.indexOf(o)&&(t.push(o),n())},this.loadValue=function(t,n){t="undefined"==typeof t?n:t;var o=window.localStorage[e+"_"+t];return"undefined"==typeof o?void 0:JSON.parse(o)},this.reset=function(t){window.localStorage.removeItem(e+"_"+t)},this.resetAll=function(){for(var n=0;nl;l++)for(var a=0;i>a;a++){var u=e.getDataAtCell(l,a),c=e.getCellMeta(l,a),d=c.search.callback||n,h=c.search.queryMethod||o,f=h(t,u);if(f){var g={row:l,col:a,data:u};s.push(g)}d&&d(e,l,a,u,f)}return s}},Handsontable.Search.DEFAULT_CALLBACK=function(e,t,n,o,r){e.getCellMeta(t,n).isSearchResult=r},Handsontable.Search.DEFAULT_QUERY_METHOD=function(e,t){return"undefined"!=typeof e&&null!=e&&e.toLowerCase&&0!==e.length?"undefined"==typeof t||null==t?!1:-1!=t.toString().toLowerCase().indexOf(e.toLowerCase()):!1},Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS="htSearchResult",Handsontable.Search.global=function(){var e=Handsontable.Search.DEFAULT_CALLBACK,t=Handsontable.Search.DEFAULT_QUERY_METHOD,n=Handsontable.Search.DEFAULT_SEARCH_RESULT_CLASS;return{getDefaultCallback:function(){return e},setDefaultCallback:function(t){e=t},getDefaultQueryMethod:function(){return t},setDefaultQueryMethod:function(e){t=e},getDefaultSearchResultClass:function(){return n},setDefaultSearchResultClass:function(e){n=e}}}(),Handsontable.SearchCellDecorator=function(e,t,n,o,r,i,s){var u=null!==s.search&&"object"==typeof s.search&&s.search.searchResultClass||Handsontable.Search.global.getDefaultSearchResultClass();s.isSearchResult?l(t,u):a(t,u)};var h=d("base");c("base",function(e,t,n,o,r,i,s){h.apply(this,arguments),Handsontable.SearchCellDecorator.apply(this,arguments)}),Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/element":45,renderers:88}],86:[function(e,t,n){"use strict";Object.defineProperties(n,{TouchScroll:{get:function(){return d}},__esModule:{value:!0}});var o,r,i,s=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),l=s.addClass,a=s.removeClass,u=(r=e("_base"),r&&r.__esModule&&r||{"default":r})["default"],c=(i=e("plugins"),i&&i.__esModule&&i||{"default":i}).registerPlugin,d=function(e){var t=this;$traceurRuntime.superConstructor(h).call(this,e),this.hot.addHook("afterInit",function(){return t.afterInit()}),this.hot.addHook("afterUpdateSettings",function(){return t.onAfterUpdateSettings()}),this.scrollbars=[],this.clones=[]},h=d;$traceurRuntime.createClass(d,{afterInit:function(){this.registerEvents(),this.onAfterUpdateSettings()},onAfterUpdateSettings:function(){var e=this;this.hot.addHookOnce("afterRender",function(){var t=e.hot.view.wt.wtOverlays;e.scrollbars=[],e.scrollbars.push(t.topOverlay),t.bottomOverlay.clone&&e.scrollbars.push(t.bottomOverlay),e.scrollbars.push(t.leftOverlay),t.topLeftCornerOverlay&&e.scrollbars.push(t.topLeftCornerOverlay),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.scrollbars.push(t.bottomLeftCornerOverlay),e.clones=[],t.topOverlay.needFullRender&&e.clones.push(t.topOverlay.clone.wtTable.holder.parentNode),t.bottomOverlay.needFullRender&&e.clones.push(t.bottomOverlay.clone.wtTable.holder.parentNode),t.leftOverlay.needFullRender&&e.clones.push(t.leftOverlay.clone.wtTable.holder.parentNode),t.topLeftCornerOverlay&&e.clones.push(t.topLeftCornerOverlay.clone.wtTable.holder.parentNode),t.bottomLeftCornerOverlay&&t.bottomLeftCornerOverlay.clone&&e.clones.push(t.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode)})},registerEvents:function(){var e=this;this.hot.addHook("beforeTouchScroll",function(){return e.onBeforeTouchScroll()}),this.hot.addHook("afterMomentumScroll",function(){return e.onAfterMomentumScroll()})},onBeforeTouchScroll:function(){Handsontable.freezeOverlays=!0;for(var e=0,t=this.clones.length;t>e;e++)l(this.clones[e],"hide-tween")},onAfterMomentumScroll:function(){Handsontable.freezeOverlays=!1;for(var e=this,t=0,n=this.clones.length;n>t;t++)a(this.clones[t],"hide-tween");for(var o=0,r=this.clones.length;r>o;o++)l(this.clones[o],"show-tween");setTimeout(function(){for(var t=0,n=e.clones.length;n>t;t++)a(e.clones[t],"show-tween")},400);for(var i=0,s=this.scrollbars.length;s>i;i++)this.scrollbars[i].refresh(),this.scrollbars[i].resetFixedPosition();this.hot.view.wt.wtOverlays.syncScrollWithMaster()}},{},u),c("touchScroll",d)},{_base:58,"helpers/dom/element":45,plugins:57}],87:[function(e,t,n){"use strict";function o(){var e=this,t="undefined"==typeof e.getSettings().undo||e.getSettings().undo;t?e.undoRedo||(e.undoRedo=new Handsontable.UndoRedo(e),s(e),e.addHook("beforeKeyDown",r),e.addHook("afterChange",i)):e.undoRedo&&(delete e.undoRedo,l(e),e.removeHook("beforeKeyDown",r),e.removeHook("afterChange",i))}function r(e){var t=this,n=(e.ctrlKey||e.metaKey)&&!e.altKey;n&&(89===e.keyCode||e.shiftKey&&90===e.keyCode?(t.undoRedo.redo(),f(e)):90===e.keyCode&&(t.undoRedo.undo(),f(e)))}function i(e,t){var n=this;return"loadData"==t?n.undoRedo.clear():void 0}function s(e){e.undo=function(){return e.undoRedo.undo()},e.redo=function(){return e.undoRedo.redo()},e.isUndoAvailable=function(){return e.undoRedo.isUndoAvailable()},e.isRedoAvailable=function(){return e.undoRedo.isRedoAvailable()},e.clearUndo=function(){return e.undoRedo.clear()}}function l(e){delete e.undo,delete e.redo,delete e.isUndoAvailable,delete e.isRedoAvailable,delete e.clearUndo}var a,u,c=(a=e("helpers/object"),a&&a.__esModule&&a||{"default":a}),d=c.inherit,h=c.deepClone,f=(u=e("helpers/dom/event"),u&&u.__esModule&&u||{"default":u}).stopImmediatePropagation;Handsontable.UndoRedo=function(e){var t=this;this.instance=e,this.doneActions=[],this.undoneActions=[],this.ignoreNewActions=!1,e.addHook("afterChange",function(e,n){if(e){var o=new Handsontable.UndoRedo.ChangeAction(e);t.done(o)}}),e.addHook("afterCreateRow",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateRowAction(e,n);t.done(r)}}),e.addHook("beforeRemoveRow",function(e,n){var o=t.instance.getSourceData();e=(o.length+e)%o.length;var r=o.slice(e,e+n),i=new Handsontable.UndoRedo.RemoveRowAction(e,r);t.done(i)}),e.addHook("afterCreateCol",function(e,n,o){if(!o){var r=new Handsontable.UndoRedo.CreateColumnAction(e,n);t.done(r)}}),e.addHook("beforeRemoveCol",function(n,o){var r=t.instance.getSourceData();n=(t.instance.countCols()+n)%t.instance.countCols();for(var i=[],s=0,l=r.length;l>s;s++)i[s]=r[s].slice(n,n+o);var a;Array.isArray(e.getSettings().colHeaders)&&(a=e.getSettings().colHeaders.slice(n,n+i.length));var u=new Handsontable.UndoRedo.RemoveColumnAction(n,i,a);t.done(u)}),e.addHook("beforeCellAlignment",function(e,n,o,r){var i=new Handsontable.UndoRedo.CellAlignmentAction(e,n,o,r);t.done(i)})},Handsontable.UndoRedo.prototype.done=function(e){this.ignoreNewActions||(this.doneActions.push(e),this.undoneActions.length=0)},Handsontable.UndoRedo.prototype.undo=function(){if(this.isUndoAvailable()){var e=this.doneActions.pop();this.ignoreNewActions=!0;var t=this;e.undo(this.instance,function(){t.ignoreNewActions=!1,t.undoneActions.push(e)})}},Handsontable.UndoRedo.prototype.redo=function(){if(this.isRedoAvailable()){var e=this.undoneActions.pop();this.ignoreNewActions=!0;var t=this;e.redo(this.instance,function(){t.ignoreNewActions=!1,t.doneActions.push(e)})}},Handsontable.UndoRedo.prototype.isUndoAvailable=function(){return this.doneActions.length>0},Handsontable.UndoRedo.prototype.isRedoAvailable=function(){return this.undoneActions.length>0},Handsontable.UndoRedo.prototype.clear=function(){this.doneActions.length=0,this.undoneActions.length=0},Handsontable.UndoRedo.Action=function(){},Handsontable.UndoRedo.Action.prototype.undo=function(){},Handsontable.UndoRedo.Action.prototype.redo=function(){},Handsontable.UndoRedo.ChangeAction=function(e){this.changes=e},d(Handsontable.UndoRedo.ChangeAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.ChangeAction.prototype.undo=function(e,t){for(var n=h(this.changes),o=e.countEmptyRows(!0),r=e.countEmptyCols(!0),i=0,s=n.length;s>i;i++)n[i].splice(3,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"undo");for(var i=0,s=n.length;s>i;i++)e.getSettings().minSpareRows&&n[i][0]+1+e.getSettings().minSpareRows===e.countRows()&&o==e.getSettings().minSpareRows&&(e.alter("remove_row",parseInt(n[i][0]+1,10),e.getSettings().minSpareRows),e.undoRedo.doneActions.pop()),e.getSettings().minSpareCols&&n[i][1]+1+e.getSettings().minSpareCols===e.countCols()&&r==e.getSettings().minSpareCols&&(e.alter("remove_col",parseInt(n[i][1]+1,10),e.getSettings().minSpareCols),e.undoRedo.doneActions.pop())},Handsontable.UndoRedo.ChangeAction.prototype.redo=function(e,t){for(var n=h(this.changes),o=0,r=n.length;r>o;o++)n[o].splice(2,1);e.addHookOnce("afterChange",t),e.setDataAtRowProp(n,null,null,"redo")},Handsontable.UndoRedo.CreateRowAction=function(e,t){this.index=e,this.amount=t},d(Handsontable.UndoRedo.CreateRowAction,Handsontable.UndoRedo.Action),Handsontable.UndoRedo.CreateRowAction.prototype.undo=function(e,t){var n=e.countRows(),o=e.getSettings().minSpareRows;this.index>=n&&this.index-or;r++)n=e.getSourceDataAtRow(r),o=[this.index,0],Array.prototype.push.apply(o,this.data[r]),Array.prototype.splice.apply(n,o);"undefined"!=typeof this.headers&&(o=[this.index,0],Array.prototype.push.apply(o,this.headers),Array.prototype.splice.apply(e.getSettings().colHeaders,o)),e.addHookOnce("afterRender",t),e.render()},Handsontable.UndoRedo.RemoveColumnAction.prototype.redo=function(e,t){e.addHookOnce("afterRemoveCol",t),e.alter("remove_col",this.index,this.amount)},Handsontable.hooks.add("afterInit",o),Handsontable.hooks.add("afterUpdateSettings",o)},{"helpers/dom/event":46,"helpers/object":50}],88:[function(e,t,n){"use strict";function o(e,t){var n;a[e]=t,n=l(e)+"Renderer",Handsontable.renderers[n]=t,Handsontable[n]=t}function r(e){if("function"==typeof e)return e;if("string"!=typeof e)throw Error('Only strings and functions can be passed as "renderer" parameter');if(!(e in a))throw Error('No editor registered under name "'+e+'"');return a[e]}function i(e){return e in a}Object.defineProperties(n,{registerRenderer:{get:function(){return o}},getRenderer:{get:function(){return r}},hasRenderer:{get:function(){return i}},__esModule:{value:!0}});var s,l=(s=e("helpers/string"),s&&s.__esModule&&s||{"default":s}).toUpperCaseFirst,a={};Handsontable.renderers=Handsontable.renderers||{},Handsontable.renderers.registerRenderer=o,Handsontable.renderers.getRenderer=r},{"helpers/string":52}],89:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){s.className&&(t.className?t.className=t.className+" "+s.className:t.className=s.className),s.readOnly&&l(t,s.readOnlyCellClassName),s.valid===!1&&s.invalidCellClassName?l(t,s.invalidCellClassName):a(t,s.invalidCellClassName),s.wordWrap===!1&&s.noWordWrapClassName&&l(t,s.noWordWrapClassName),!i&&s.placeholder&&l(t,s.placeholderCellClassName)}Object.defineProperties(n,{cellDecorator:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),l=s.addClass,a=s.removeClass,u=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}).registerRenderer;u("base",o),Handsontable.renderers.cellDecorator=o},{"helpers/dom/element":45,renderers:88}],90:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){var l=(m.cloneNode(!0),w.cloneNode(!0));if(f("text")(e,t,n,o,r,i,s),t.appendChild(l),u(t,"htAutocomplete"),t.firstChild||t.appendChild(document.createTextNode(String.fromCharCode(160))),!e.acArrowListener){var a=d(e);e.acArrowListener=function(r){c(r.target,"htAutocompleteArrow")&&e.view.wt.getSetting("onCellDblClick",null,new p(n,o),t)},a.addEventListener(e.rootElement,"mousedown",e.acArrowListener),e.addHookOnce("afterDestroy",function(){a.destroy()})}}Object.defineProperties(n,{autocompleteRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),u=a.addClass,c=a.hasClass,d=(a.empty,(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager),h=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),f=h.getRenderer,g=h.registerRenderer,p=(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords,m=document.createElement("DIV");m.className="htAutocompleteWrapper";var w=document.createElement("DIV");w.className="htAutocompleteArrow",w.appendChild(document.createTextNode(String.fromCharCode(9660)));g("autocomplete",o)},{"3rdparty/walkontable/src/cell/coords":5,eventManager:41,"helpers/dom/element":45,renderers:88}],91:[function(e,t,n){"use strict";function o(e,t,n,o,l,a,u){function c(e){var t=[y.SPACE,y.ENTER,y.DELETE,y.BACKSPACE];-1===t.indexOf(e.keyCode)||T(e)||f(function(){S(e),e.preventDefault()}),(e.keyCode==y.SPACE||e.keyCode==y.ENTER)&&d(),(e.keyCode==y.DELETE||e.keyCode==y.BACKSPACE)&&d(!1)}function d(){var e=void 0!==arguments[0]?arguments[0]:null;f(function(t){for(var n=0,o=t.length;o>n;n++){if(m(t[n],_)&&null===e)return;h(t[n],e)}})}function h(e){var t=void 0!==arguments[1]?arguments[1]:null;null===t?e.checked=!e.checked:e.checked=t,b.fireEvent(e,"change")}function f(t){for(var n=e.getSelectedRange(),o=n.getTopLeftCorner(),r=n.getBottomRightCorner(),i=o.row;i<=r.row;i++)for(var s=o.col;s<=r.col;s++){var l=e.getCell(i,s),a=e.getCellMeta(i,s),u=l.querySelectorAll("input[type=checkbox]");u.length>0&&!a.readOnly&&t(u)}}var b=new v(e),C=r(),R=u.label,M=!1;if("undefined"==typeof u.checkedTemplate&&(u.checkedTemplate=!0),"undefined"==typeof u.uncheckedTemplate&&(u.uncheckedTemplate=!1),g(t),a===u.checkedTemplate||w(a,u.checkedTemplate)?C.checked=!0:a===u.uncheckedTemplate||w(a,u.uncheckedTemplate)?C.checked=!1:null===a?p(C,"noValue"):(C.style.display="none",p(C,_),M=!0),!M&&R){var H="";R.value?H="function"==typeof R.value?R.value.call(this,n,o,l,a):R.value:R.property&&(H=e.getDataAtRowProp(n,R.property));var k=i(H);"before"===R.position?k.appendChild(C):k.insertBefore(C,k.firstChild),C=k}t.appendChild(C),M&&t.appendChild(document.createTextNode("#bad-value#")),u.readOnly?b.addEventListener(C,"click",s):(b.addEventListener(C,"mousedown",E),b.addEventListener(C,"mouseup",E),b.addEventListener(C,"change",function(t){e.setDataAtRowProp(n,l,t.target.checked?u.checkedTemplate:u.uncheckedTemplate)})),O.has(e)||(O.set(e,!0),e.addHook("beforeKeyDown",c))}function r(){var e=document.createElement("input");return e.className="htCheckboxRendererInput",e.type="checkbox",e.setAttribute("autocomplete","off"),e.cloneNode(!1)}function i(e){var t=document.createElement("label");return t.className="htCheckboxRendererLabel",t.appendChild(document.createTextNode(e)),t.cloneNode(!0)}function s(e){e.preventDefault()}Object.defineProperties(n,{checkboxRenderer:{get:function(){return o}},__esModule:{value:!0}});var l,a,u,c,d,h,f=(l=e("helpers/dom/element"),l&&l.__esModule&&l||{"default":l}),g=f.empty,p=f.addClass,m=f.hasClass,w=(a=e("helpers/string"),a&&a.__esModule&&a||{"default":a}).equalsIgnoreCase,v=(u=e("eventManager"),u&&u.__esModule&&u||{"default":u}).EventManager,b=(c=e("renderers"),c&&c.__esModule&&c||{"default":c}),C=(b.getRenderer,b.registerRenderer),y=(d=e("helpers/unicode"),d&&d.__esModule&&d||{"default":d}).KEY_CODES,R=(h=e("helpers/dom/event"),h&&h.__esModule&&h||{"default":h}),E=R.stopPropagation,S=R.stopImmediatePropagation,T=R.isImmediatePropagationStopped,O=new WeakMap,_="htBadValue";C("checkbox",o)},{eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46,"helpers/string":52,"helpers/unicode":53,renderers:88}],92:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,l){a("base").apply(this,arguments),s(t,i)}Object.defineProperties(n,{htmlRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}).fastInnerHTML,l=(i=e("renderers"),i&&i.__esModule&&i||{"default":i}),a=l.getRenderer,u=l.registerRenderer;u("html",o)},{"helpers/dom/element":45,renderers:88}],93:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,s){f(i)&&("undefined"!=typeof s.language&&a.language(s.language),i=a(i).format(s.format||"0"),u(t,"htNumeric")),d("text")(e,t,n,o,r,i,s)}Object.defineProperties(n,{numericRenderer:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a=(r=e("numeral"),r&&r.__esModule&&r||{"default":r})["default"],u=(i=e("helpers/dom/element"),i&&i.__esModule&&i||{"default":i}).addClass,c=(s=e("renderers"),s&&s.__esModule&&s||{"default":s}),d=c.getRenderer,h=c.registerRenderer,f=(l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).isNumeric;h("numeric",o)},{"helpers/dom/element":45,"helpers/number":49,numeral:"numeral",renderers:88}],94:[function(e,t,n){"use strict";function o(e,t,n,o,r,i,l){a("text").apply(this,arguments),i=t.innerHTML;var u,c=l.hashLength||i.length,d=l.hashSymbol||"*";for(u="";u.split(d).length-13?("function"==typeof o&&(e.__proto__=o),e.prototype=d(l(o),i(t))):e.prototype=t,f(e,"prototype",{configurable:!1,writable:!1}),h(e,i(n))}function l(e){if("function"==typeof e){var t=e.prototype;if(u(t)===t||null===t)return e.prototype;throw new c("super prototype must be an Object or null")}if(null===e)return null;throw new c("Super expression must either be null or a function, not "+typeof e+".")}function a(e,t,o){null!==p(t)&&n(e,t,"constructor",o)}var u=Object,c=TypeError,d=u.create,h=$traceurRuntime.defineProperties,f=$traceurRuntime.defineProperty,g=$traceurRuntime.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=$traceurRuntime.toProperty,w=Object,v=w.getOwnPropertyNames,b=w.getOwnPropertySymbols;$traceurRuntime.createClass=s,$traceurRuntime.defaultSuperCall=a,$traceurRuntime.superCall=n,$traceurRuntime.superConstructor=t,$traceurRuntime.superGet=o,$traceurRuntime.superSet=r}()},{}],97:[function(e,t,n){"use strict";function o(e){var t=this;this.eventManager=C(e),this.instance=e,this.settings=e.getSettings(),this.selectionMouseDown=!1;var n=e.rootElement.getAttribute("style");n&&e.rootElement.setAttribute("data-originalstyle",n),d(e.rootElement,"handsontable");var o=document.createElement("TABLE");d(o,"htCore"),e.getSettings().tableClassName&&d(o,e.getSettings().tableClassName),this.THEAD=document.createElement("THEAD"),o.appendChild(this.THEAD),this.TBODY=document.createElement("TBODY"),o.appendChild(this.TBODY),e.table=o,e.container.insertBefore(o,e.container.firstChild),this.eventManager.addEventListener(e.rootElement,"mousedown",function(e){this.selectionMouseDown=!0,t.isTextSelectionAllowed(e.target)||(i(),e.preventDefault(),window.focus())}),this.eventManager.addEventListener(e.rootElement,"mouseup",function(e){this.selectionMouseDown=!1}),this.eventManager.addEventListener(e.rootElement,"mousemove",function(e){this.selectionMouseDown&&!t.isTextSelectionAllowed(e.target)&&(i(),e.preventDefault())}),this.eventManager.addEventListener(document.documentElement,"keyup",function(t){e.selection.isInProgress()&&!t.shiftKey&&e.selection.finish()});var r;this.isMouseDown=function(){return r},this.eventManager.addEventListener(document.documentElement,"mouseup",function(t){e.selection.isInProgress()&&1===t.which&&e.selection.finish(),r=!1,b(document.activeElement)&&e.unlisten()}),this.eventManager.addEventListener(document.documentElement,"mousedown",function(n){var o=n.target,i=n.x||n.clientX,s=n.y||n.clientY;if(!r&&e.rootElement){if(o===e.view.wt.wtTable.holder){var l=p();if(document.elementFromPoint(i+l,s)!==e.view.wt.wtTable.holder||document.elementFromPoint(i,s+l)!==e.view.wt.wtTable.holder)return}else for(;o!==document.documentElement;){if(null===o){if(n.isTargetWebComponent)break;return}if(o===e.rootElement)return;o=o.parentNode}t.settings.outsideClickDeselects?e.deselectCell():e.destroyEditor()}}),this.eventManager.addEventListener(o,"selectstart",function(e){t.settings.fragmentSelection||v(e.target)||e.preventDefault()});var i=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},s=[new T({className:"current",border:{width:2,color:"#5292F7",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&!e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&!e.selection.isMultiple()}}}),new T({className:"area",border:{width:1,color:"#89AFF9",cornerVisible:function(){return t.settings.fillHandle&&!t.isCellEdited()&&e.selection.isMultiple()},multipleSelectionHandlesVisible:function(){return!t.isCellEdited()&&e.selection.isMultiple()}}}),new T({className:"highlight",highlightRowClassName:t.settings.currentRowClassName,highlightColumnClassName:t.settings.currentColClassName}),new T({className:"fill",border:{width:1,color:"red"}})];s.current=s[0],s.area=s[1],s.highlight=s[2],s.fill=s[3];var l={debug:function(){return t.settings.debug},externalRowCalculator:this.instance.getPlugin("autoRowSize")&&this.instance.getPlugin("autoRowSize").isEnabled(),table:o,stretchH:this.settings.stretchH,data:e.getDataAtCell,totalRows:function(){return e.countRows()},totalColumns:function(){return e.countCols()},fixedColumnsLeft:function(){return t.settings.fixedColumnsLeft},fixedRowsTop:function(){return t.settings.fixedRowsTop},fixedRowsBottom:function(){return t.settings.fixedRowsBottom},minSpareRows:function(){return t.settings.minSpareRows},renderAllRows:t.settings.renderAllRows,rowHeaders:function(){var n=[];return e.hasRowHeaders()&&n.push(function(e,n){t.appendRowHeader(e,n)}),Handsontable.hooks.run(e,"afterGetRowHeaderRenderers",n),n},columnHeaders:function(){var n=[];return e.hasColHeaders()&&n.push(function(e,n){t.appendColHeader(e,n)}),Handsontable.hooks.run(e,"afterGetColumnHeaderRenderers",n),n},columnWidth:e.getColWidth,rowHeight:e.getRowHeight,cellRenderer:function(e,n,o){var r=t.instance.colToProp(n),i=t.instance.getCellMeta(e,n),s=t.instance.getCellRenderer(i),l=t.instance.getDataAtRowProp(e,r);s(t.instance,o,e,n,r,l,i),Handsontable.hooks.run(t.instance,"afterRenderer",o,e,n,r,l,i)},selections:s,hideBorderOnMouseDownOver:function(){return t.settings.fragmentSelection},onCellMouseDown:function(n,o,i,s){var l,a,u=i.parentNode,c=u.parentNode;if(e.listen(),t.activeWt=s,r=!0,Handsontable.hooks.run(e,"beforeOnCellMouseDown",n,o,i),e.selection.setSelectedHeaders(!1,!1),!E(n)){if(2===n.button&&e.selection.inInSelection(o));else n.shiftKey?o.row>=0&&o.col>=0&&e.selection.setRangeEnd(o):(o.row<0||o.col<0)&&(o.row>=0||o.col>=0)?(o.row<0&&(l=c.childNodes.length-Array.prototype.indexOf.call(c.childNodes,u)-1,a=e.getHeaderColspan(o.col,l),e.selection.setSelectedHeaders(!1,!0),e.selectCell(0,o.col,e.countRows()-1,o.col+Math.max(0,a-1))),o.col<0&&(e.selection.setSelectedHeaders(!0,!1),e.selectCell(o.row,0,o.row,e.countCols()-1))):(o.row=o.row<0?0:o.row,o.col=o.col<0?0:o.col,e.selection.setRangeStart(o));Handsontable.hooks.run(e,"afterOnCellMouseDown",n,o,i),t.activeWt=t.wt}},onCellMouseOver:function(n,o,i,s){t.activeWt=s,o.row>=0&&o.col>=0?r&&e.selection.setRangeEnd(o):r&&(o.row<0&&(e.selection.selectedHeader.cols?(e.selection.setRangeEnd(new S(e.countRows()-1,o.col)),e.selection.setSelectedHeaders(!1,!0)):e.selection.setRangeEnd(new S(o.row,o.col))),o.col<0&&(e.selection.selectedHeader.rows?(e.selection.setRangeEnd(new S(o.row,e.countCols()-1)),e.selection.setSelectedHeaders(!0,!1)):e.selection.setRangeEnd(new S(o.row,o.col)))),Handsontable.hooks.run(e,"afterOnCellMouseOver",n,o,i),t.activeWt=t.wt},onCellCornerMouseDown:function(t){t.preventDefault(),Handsontable.hooks.run(e,"afterOnCellCornerMouseDown",t)},beforeDraw:function(e){t.beforeRender(e)},onDraw:function(e){t.onDraw(e)},onScrollVertically:function(){e.runHooks("afterScrollVertically")},onScrollHorizontally:function(){e.runHooks("afterScrollHorizontally")},onBeforeDrawBorders:function(t,n){e.runHooks("beforeDrawBorders",t,n)},onBeforeTouchScroll:function(){e.runHooks("beforeTouchScroll")},onAfterMomentumScroll:function(){e.runHooks("afterMomentumScroll")},viewportRowCalculatorOverride:function(n){var o=e.countRows(),r=t.settings.viewportRowRenderingOffset;if("auto"===r&&t.settings.fixedRowsTop&&(r=10),"number"==typeof r&&(n.startRow=Math.max(n.startRow-r,0),n.endRow=Math.min(n.endRow+r,o-1)),"auto"===r){var i=n.startRow+n.endRow-n.startRow,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startRow-s,0),n.endRow=Math.min(n.endRow+s,o-1)}e.runHooks("afterViewportRowCalculatorOverride",n)},viewportColumnCalculatorOverride:function(n){var o=e.countCols(),r=t.settings.viewportColumnRenderingOffset;if("auto"===r&&t.settings.fixedColumnsLeft&&(r=10),"number"==typeof r&&(n.startColumn=Math.max(n.startColumn-r,0),n.endColumn=Math.min(n.endColumn+r,o-1)),"auto"===r){var i=n.startColumn+n.endColumn-n.startColumn,s=Math.ceil(i/o*12);n.startRow=Math.max(n.startColumn-s,0),n.endColumn=Math.min(n.endColumn+s,o-1)}e.runHooks("afterViewportColumnCalculatorOverride",n)}};Handsontable.hooks.run(e,"beforeInitWalkontable",l),this.wt=new O(l),this.activeWt=this.wt,this.eventManager.addEventListener(t.wt.wtTable.spreader,"mousedown",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(t.wt.wtTable.spreader,"contextmenu",function(e){e.target===t.wt.wtTable.spreader&&3===e.which&&R(e)}),this.eventManager.addEventListener(document.documentElement,"click",function(){t.settings.observeDOMVisibility&&t.wt.drawInterrupted&&(t.instance.forceFullRender=!0,t.render())})}Object.defineProperties(n,{TableView:{get:function(){return o}},__esModule:{value:!0}});var r,i,s,l,a,u,c=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),d=c.addClass,h=c.empty,f=c.fastInnerHTML,g=c.fastInnerText,p=c.getScrollbarWidth,m=c.hasClass,w=c.isChildOf,v=c.isInput,b=c.isOutsideInput,C=(i=e("eventManager"),i&&i.__esModule&&i||{"default":i}).eventManager,y=(s=e("helpers/dom/event"),s&&s.__esModule&&s||{"default":s}),R=y.stopPropagation,E=y.isImmediatePropagationStopped,S=(l=e("3rdparty/walkontable/src/cell/coords"),l&&l.__esModule&&l||{"default":l}).WalkontableCellCoords,T=(a=e("3rdparty/walkontable/src/selection"),a&&a.__esModule&&a||{"default":a}).WalkontableSelection,O=(u=e("3rdparty/walkontable/src/core"),u&&u.__esModule&&u||{"default":u}).Walkontable;Handsontable.TableView=o,o.prototype.isTextSelectionAllowed=function(e){if(v(e))return!0;var t=w(e,this.instance.view.wt.wtTable.spreader);return this.settings.fragmentSelection===!0&&t?!0:"cell"===this.settings.fragmentSelection&&this.isSelectedOnlyCell()&&t?!0:!1},o.prototype.isSelectedOnlyCell=function(){var e=this.instance.getSelected()||[],t=e[0],n=e[1],o=e[2],r=e[3];return void 0!==t&&t===o&&n===r},o.prototype.isCellEdited=function(){var e=this.instance.getActiveEditor();return e&&e.isOpened()},o.prototype.beforeRender=function(e){e&&Handsontable.hooks.run(this.instance,"beforeRender",this.instance.forceFullRender)},o.prototype.onDraw=function(e){e&&Handsontable.hooks.run(this.instance,"afterRender",this.instance.forceFullRender)},o.prototype.render=function(){this.wt.draw(!this.instance.forceFullRender),this.instance.forceFullRender=!1,this.instance.renderCall=!1},o.prototype.getCellAtCoords=function(e,t){var n=this.wt.getCell(e,t);return 0>n?null:n},o.prototype.scrollViewport=function(e){this.wt.scrollViewport(e)},o.prototype.appendRowHeader=function(e,t){if(t.firstChild){var n=t.firstChild;if(!m(n,"relative"))return h(t),void this.appendRowHeader(e,t);this.updateCellHeader(n.querySelector(".rowHeader"),e,this.instance.getRowHeader)}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="rowHeader",this.updateCellHeader(r,e,this.instance.getRowHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetRowHeader",e,t)},o.prototype.appendColHeader=function(e,t){if(t.firstChild){var n=t.firstChild;m(n,"relative")?this.updateCellHeader(n.querySelector(".colHeader"),e,this.instance.getColHeader):(h(t),this.appendColHeader(e,t))}else{var o=document.createElement("div"),r=document.createElement("span");o.className="relative",r.className="colHeader",this.updateCellHeader(r,e,this.instance.getColHeader),o.appendChild(r),t.appendChild(o)}Handsontable.hooks.run(this.instance,"afterGetColHeader",e,t)},o.prototype.updateCellHeader=function(e,t,n){t>-1?f(e,n(t)):(g(e,String.fromCharCode(160)),d(e,"cornerHeader"))},o.prototype.maximumVisibleElementWidth=function(e){var t=this.wt.wtViewport.getWorkspaceWidth(),n=t-e;return n>0?n:0},o.prototype.maximumVisibleElementHeight=function(e){var t=this.wt.wtViewport.getWorkspaceHeight(),n=t-e;return n>0?n:0},o.prototype.mainViewIsActive=function(){return this.wt===this.activeWt},o.prototype.destroy=function(){this.wt.destroy(),this.eventManager.destroy()}},{"3rdparty/walkontable/src/cell/coords":5,"3rdparty/walkontable/src/core":7,"3rdparty/walkontable/src/selection":18,eventManager:41,"helpers/dom/element":45,"helpers/dom/event":46}],98:[function(e,t,n){"use strict";Object.defineProperties(n,{GhostTable:{get:function(){return f}},__esModule:{value:!0}});var o,r,i,s,l,a=(o=e("helpers/dom/element"),o&&o.__esModule&&o||{"default":o}),u=a.addClass,c=a.outerHeight,d=a.outerWidth,h=(r=e("helpers/array"),r&&r.__esModule&&r||{"default":r}).arrayEach,f=((i=e("helpers/object"),i&&i.__esModule&&i||{"default":i}).objectEach,(s=e("helpers/number"),s&&s.__esModule&&s||{"default":s}).rangeEach,(l=e("helpers/mixed"),l&&l.__esModule&&l||{"default":l}).stringify,function(e){this.hot=e,this.container=null,this.injected=!1,this.rows=[],this.columns=[],this.samples=null});$traceurRuntime.createClass(f,{addRow:function(e,t){if(this.columns.length)throw new Error("Doesn't support multi-dimensional table");this.rows.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={row:e};this.rows.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),this.table.colGroup.appendChild(this.createColGroupsCol()),this.table.tr.appendChild(this.createRow(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},addColumn:function(e,t){if(this.rows.length)throw new Error("Doesn't support multi-dimensional table");this.columns.length||(this.container=this.createContainer(this.hot.rootElement.className));var n={col:e};this.columns.push(n),this.samples=t,this.table=this.createTable(this.hot.table.className),null!==this.hot.getColHeader(e)&&this.hot.view.appendColHeader(e,this.table.th),this.table.tBody.appendChild(this.createCol(e)),this.container.container.appendChild(this.table.fragment),n.table=this.table.table},getHeights:function(e){this.injected||this.injectTable(),h(this.rows,function(t){e(t.row,c(t.table)-1)})},getWidths:function(e){this.injected||this.injectTable(),h(this.columns,function(t){e(t.col,d(t.table))})},createColGroupsCol:function(){var e=this,t=document,n=t.createDocumentFragment();return n.appendChild(this.createColElement(-1)),this.samples.forEach(function(t){h(t.strings,function(t){n.appendChild(e.createColElement(t.col))})}),n},createRow:function(e){var t=this,n=document,o=n.createDocumentFragment(),r=n.createElement("th");return null!==this.hot.getRowHeader(e)&&this.hot.view.appendRowHeader(e,r),o.appendChild(r),this.samples.forEach(function(r){h(r.strings,function(r){var i=r.col,s=t.hot.getCellMeta(e,i);s.col=i,s.row=e;var l=t.hot.getCellRenderer(s),a=n.createElement("td");l(t.hot,a,e,i,t.hot.colToProp(i),r.value,s),o.appendChild(a)})}),o},createCol:function(e){var t=this,n=document,o=n.createDocumentFragment();return this.samples.forEach(function(r){h(r.strings,function(r){var i=r.row,s=t.hot.getCellMeta(i,e);s.col=e,s.row=i;var l=t.hot.getCellRenderer(s),a=n.createElement("td"),u=n.createElement("tr");l(t.hot,a,i,e,t.hot.colToProp(i),r.value,s),u.appendChild(a),o.appendChild(u)})}),o},clean:function(){this.rows.length=0,this.columns.length=0,this.samples&&this.samples.clear(),this.samples=null,this.removeTable()},injectTable:function(){var e=void 0!==arguments[0]?arguments[0]:null;this.injected||((e||this.hot.rootElement).appendChild(this.container.fragment),this.injected=!0)},removeTable:function(){this.injected&&this.container.container.parentNode&&(this.container.container.parentNode.removeChild(this.container.container),this.container=null,this.injected=!1)},createColElement:function(e){var t=document,n=t.createElement("col");return n.style.width=this.hot.view.wt.wtTable.getStretchedColumnWidth(e)+"px",n},createTable:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("table"),r=t.createElement("thead"),i=t.createElement("tbody"),s=t.createElement("colgroup"),l=t.createElement("tr"),a=t.createElement("th");return this.isVertical()&&o.appendChild(s),this.isHorizontal()&&(l.appendChild(a),r.appendChild(l),o.style.tableLayout="auto",o.style.width="auto"),o.appendChild(r),this.isVertical()&&i.appendChild(l),o.appendChild(i),u(o,e),n.appendChild(o),{fragment:n,table:o,tHead:r,tBody:i,colGroup:s,tr:l,th:a}},createContainer:function(){var e=void 0!==arguments[0]?arguments[0]:"",t=document,n=t.createDocumentFragment(),o=t.createElement("div");return e="htGhostTable htAutoSize "+e.trim(),u(o,e),n.appendChild(o),{fragment:n,container:o}},isVertical:function(){return this.rows.length&&!this.columns.length?!0:!1},isHorizontal:function(){return this.columns.length&&!this.rows.length?!0:!1}},{}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.GhostTable=f},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],99:[function(e,t,n){"use strict";var o;Object.defineProperties(n,{SamplesGenerator:{get:function(){return h}},__esModule:{value:!0}});var r,i,s,l,a,u=(r=e("helpers/dom/element"),r&&r.__esModule&&r||{"default":r}),c=(u.addClass,u.outerHeight,u.outerWidth,(i=e("helpers/array"),i&&i.__esModule&&i||{"default":i}).arrayEach,(s=e("helpers/object"),s&&s.__esModule&&s||{"default":s}).objectEach,(l=e("helpers/number"),l&&l.__esModule&&l||{"default":l}).rangeEach),d=(a=e("helpers/mixed"),a&&a.__esModule&&a||{"default":a}).stringify,h=function(e){this.samples=null,this.dataFactory=e},f=h;$traceurRuntime.createClass(h,(o={},Object.defineProperty(o,"generateRowSamples",{value:function(e,t){return this.generateSamples("row",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateColumnSamples",{value:function(e,t){return this.generateSamples("col",t,e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSamples",{value:function(e,t,n){var o=this,r=new Map;return"number"==typeof n&&(n={from:n,to:n}),c(n.from,n.to,function(n){var i=o.generateSample(e,t,n);r.set(n,i)}),r},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(o,"generateSample",{value:function(e,t,n){var o=this,r=new Map;return c(t.from,t.to,function(t){var i,s;if("row"===e)s=o.dataFactory(n,t);else{if("col"!==e)throw new Error("Unsupported sample type");s=o.dataFactory(t,n)}Array.isArray(s)||(s=d(s));var l=s.length;r.has(l)||r.set(l,{needed:f.SAMPLE_COUNT,strings:[]});var a=r.get(l);if(a.needed){var u="row"===e?"col":"row";a.strings.push((i={},Object.defineProperty(i,"value",{value:s,configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(i,u,{value:t,configurable:!0,enumerable:!0,writable:!0}),i)),a.needed--}}),r},configurable:!0,enumerable:!0,writable:!0}),o),{get SAMPLE_COUNT(){return 3}}),Handsontable.utils=Handsontable.utils||{},Handsontable.utils.SamplesGenerator=h},{"helpers/array":42,"helpers/dom/element":45,"helpers/mixed":48,"helpers/number":49,"helpers/object":50}],100:[function(e,t,n){"use strict";function o(e,t){var n=e,o="string"==typeof n?n.toLowerCase():null;return function(e){for(var r=!1,s=0,l=e.length;l>s;s++){if(n===e[s]){r=!0;break}if(o===i(e[s]).toLowerCase()){r=!0;break}}t(r)}}var r,i=(r=e("helpers/mixed"),r&&r.__esModule&&r||{"default":r}).stringify;Handsontable.AutocompleteValidator=function(e,t){this.strict&&this.source?"function"==typeof this.source?this.source(e,o(e,t)):o(e,t)(this.source):t(!0)}},{"helpers/mixed":48}],101:[function(e,t,n){"use strict";var o,r,i=(o=e("moment"),o&&o.__esModule&&o||{"default":o})["default"],s=(r=e("editors"),r&&r.__esModule&&r||{"default":r}).getEditor;Handsontable.DateValidator=function(e,t){var n=!0,o=s("date",this.instance);null===e&&(e="");var r=i(new Date(e)).isValid(),a=i(e,this.dateFormat||o.defaultDateFormat,!0).isValid();if(r||(n=!1),!r&&a&&(n=!0),r&&!a)if(this.correctFormat===!0){var u=l(e,this.dateFormat);this.instance.setDataAtCell(this.row,this.col,u,"dateValidator"),n=!0}else n=!1;t(n)};var l=function(e,t){var n=i(new Date(e)),o=n.format("YYYY"),r=i().format("YYYY");return o.substr(0,2)!==r.substr(0,2)?e.match(new RegExp(o))||n.year(o.replace(o.substr(0,2),r.substr(0,2))):o.length>4&&n.year((n.year()+"").substr(0,4)),n.format(t)}},{editors:29,moment:void 0}],102:[function(e,t,n){"use strict";Handsontable.NumericValidator=function(e,t){null===e&&(e=""),t(/^-?\d*(\.|\,)?\d*$/.test(e))}},{}],SheetClip:[function(e,t,n){"use strict";!function(e){function t(e){return e.split('"').length-1}var o={parse:function(e){var n,o,r,i,s,l,a,u=[],c=0;for(r=e.split("\n"),r.length>1&&""===r[r.length-1]&&r.pop(),n=0,o=r.length;o>n;n+=1){for(r[n]=r[n].split(" "),i=0,s=r[n].length;s>i;i+=1)u[c]||(u[c]=[]),l&&0===i?(a=u[c].length-1,u[c][a]=u[c][a]+"\n"+r[n][0],l&&1&t(r[n][0])&&(l=!1,u[c][a]=u[c][a].substring(0,u[c][a].length-1).replace(/""/g,'"'))):i===s-1&&0===r[n][i].indexOf('"')&&1&t(r[n][i])?(u[c].push(r[n][i].substring(1).replace(/""/g,'"')),l=!0):(u[c].push(r[n][i].replace(/""/g,'"')),l=!1);l||(c+=1)}return u},stringify:function(e){var t,n,o,r,i,s="";for(t=0,n=e.length;n>t;t+=1){for(r=e[t].length,o=0;r>o;o+=1)o>0&&(s+=" "),i=e[t][o],s+="string"==typeof i?i.indexOf("\n")>-1?'"'+i.replace(/"/g,'""')+'"':i:null===i||void 0===i?"":i;s+="\n"}return s}};"undefined"!=typeof n?(n.parse=o.parse,n.stringify=o.stringify):e.SheetClip=o}(window)},{}],autoResize:[function(e,t,n){"use strict";function o(){var e,t={minHeight:200,maxHeight:300,minWidth:100,maxWidth:300},n=document.body,o=document.createTextNode(""),r=document.createElement("SPAN"),i=function(e,t,n){window.attachEvent?e.attachEvent("on"+t,n):e.addEventListener(t,n,!1)},s=function(e,t,n){window.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n)},l=function(i){var s,l;i?/^[a-zA-Z \.,\\\/\|0-9]$/.test(i)||(i="."):i="",void 0!==o.textContent?o.textContent=e.value+i:o.data=e.value+i,r.style.fontSize=Handsontable.Dom.getComputedStyle(e).fontSize,r.style.fontFamily=Handsontable.Dom.getComputedStyle(e).fontFamily,r.style.whiteSpace="pre",n.appendChild(r),s=r.clientWidth+2,n.removeChild(r),e.style.height=t.minHeight+"px",t.minWidth>s?e.style.width=t.minWidth+"px":s>t.maxWidth?e.style.width=t.maxWidth+"px":e.style.width=s+"px",l=e.scrollHeight?e.scrollHeight-1:0,t.minHeight>l?e.style.height=t.minHeight+"px":t.maxHeight-1||"true"===e.contentEditable}var n=this,o=!1;if(e.metaKey?o=!0:e.ctrlKey&&-1===navigator.userAgent.indexOf("Mac")&&(o=!0),o){if(document.activeElement!==this.elTextarea&&(""!==this.getSelectionText()||t()))return;this.selectNodeText(this.elTextarea),setTimeout(function(){document.activeElement!==n.elTextarea&&n.selectNodeText(n.elTextarea)},0)}!o||67!==e.keyCode&&86!==e.keyCode&&88!==e.keyCode||(88===e.keyCode?setTimeout(function(){n.triggerCut(e)},0):86===e.keyCode&&setTimeout(function(){n.triggerPaste(e)},0))},r.prototype.selectNodeText=function(e){e&&e.select()},r.prototype.getSelectionText=function(){var e="";return window.getSelection?e=window.getSelection().toString():document.selection&&"Control"!==document.selection.type&&(e=document.selection.createRange().text),e},r.prototype.copyable=function(e){if("string"!=typeof e&&void 0===e.toString)throw new Error("copyable requires string parameter");this.elTextarea.value=e,this.selectNodeText(this.elTextarea)},r.prototype.onCut=function(e){this.cutCallbacks.push(e)},r.prototype.onPaste=function(e){this.pasteCallbacks.push(e)},r.prototype.removeCallback=function(e){var t,n;for(t=0,n=this.copyCallbacks.length;n>t;t++)if(this.copyCallbacks[t]===e)return this.copyCallbacks.splice(t,1),!0;for(t=0,n=this.cutCallbacks.length;n>t;t++)if(this.cutCallbacks[t]===e)return this.cutCallbacks.splice(t,1),!0;for(t=0,n=this.pasteCallbacks.length;n>t;t++)if(this.pasteCallbacks[t]===e)return this.pasteCallbacks.splice(t,1),!0;return!1},r.prototype.triggerCut=function(e){var t=this;t.cutCallbacks&&setTimeout(function(){ +for(var n=0,o=t.cutCallbacks.length;o>n;n++)t.cutCallbacks[n](e)},50)},r.prototype.triggerPaste=function(e,t){var n=this;n.pasteCallbacks&&setTimeout(function(){for(var o=t||n.elTextarea.value,r=0,i=n.pasteCallbacks.length;i>r;r++)n.pasteCallbacks[r](o,e)},50)},r.prototype.destroy=function(){this.hasBeenDestroyed()||0!==--this.refCounter||(this.elDiv&&this.elDiv.parentNode&&(this.elDiv.parentNode.removeChild(this.elDiv),this.elDiv=null,this.elTextarea=null),document.documentElement.removeEventListener("keydown",this.onKeyDownRef),this.onKeyDownRef=null)},r.prototype.hasBeenDestroyed=function(){return!this.refCounter}},{}],es6collections:[function(e,t,n){"use strict";!function(e){function t(e,t){function o(e){return this&&this.constructor===o?(this._keys=[],this._values=[],this._itp=[],this.objectOnly=t,void(e&&n.call(this,e))):new o(e)}return t||b(e,"size",{get:m}),e.constructor=o,o.prototype=e,o}function n(e){this.add?e.forEach(this.add,this):e.forEach(function(e){this.set(e[0],e[1])},this)}function o(e){return this.has(e)&&(this._keys.splice(v,1),this._values.splice(v,1),this._itp.forEach(function(e){v-1}function r(e){return this.has(e)?this._values[v]:void 0}function i(e,t){if(this.objectOnly&&t!==Object(t))throw new TypeError("Invalid value used as weak collection key");if(t!=t||0===t)for(v=e.length;v--&&!C(e[v],t););else v=e.indexOf(t);return v>-1}function s(e){return i.call(this,this._values,e)}function l(e){return i.call(this,this._keys,e)}function a(e,t){return this.has(e)?this._values[v]=t:this._values[this._keys.push(e)-1]=t,this}function u(e){return this.has(e)||this._values.push(e),this}function c(){this._values.length=0}function d(){return p(this._itp,this._keys)}function h(){return p(this._itp,this._values)}function f(){return p(this._itp,this._keys,this._values)}function g(){return p(this._itp,this._values,this._values)}function p(e,t,n){var o=[0],r=!1;return e.push(o),{next:function(){var i,s=o[0];return!r&&st;t++)if(v[t].obj===e)return v[t]}function i(e){for(var t=0,n=v.length;n>t;t++)v[t]===e&&v.splice(t,1)}function s(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].callback===t)return e.observers[n].observer}function l(e,t){for(var n=0,o=e.observers.length;o>n;n++)if(e.observers[n].observer===t)return e.observers.splice(n,1),void(e.observers.length||i(e))}function a(e,t){h(t),Object.observe?d(t,e):clearTimeout(t.next);var n=r(e);l(n,t)}function u(e,t){var n,i=[],l=e,a=r(e);if(a?n=s(a,t):(a=new b(e),v.push(a)),n)return n;if(Object.observe)n=function(r){d(n,e),c(n,e);for(var s=0,a=r.length;a>s;){if(("length"!==r[s].name||!R(r[s].object))&&"__Jasmine_been_here_before__"!==r[s].name){var u=r[s].type;switch(u){case"new":u="add";break;case"deleted":u="delete";break;case"updated":u="update"}w[u].call(r[s],i,o(l,r[s].object))}s++}i&&t&&t(i),n.patches=i,i=[]};else if(n={},a.value=JSON.parse(JSON.stringify(e)),t){n.callback=t,n.next=null;var u=this.intervals||[100,1e3,1e4,6e4],f=0,g=function(){h(n)},p=function(){clearTimeout(n.next),n.next=setTimeout(function(){g(),f=0,n.next=setTimeout(m,u[f++])},0)},m=function(){g(),f==u.length&&(f=u.length-1),n.next=setTimeout(m,u[f++])};"undefined"!=typeof window&&(window.addEventListener?(window.addEventListener("mousedown",p),window.addEventListener("mouseup",p),window.addEventListener("keydown",p)):(window.attachEvent("onmousedown",p),window.attachEvent("onmouseup",p),window.attachEvent("onkeydown",p))),n.next=setTimeout(m,u[f++])}return n.patches=i,n.object=e,a.observers.push(new C(t,n)),c(n,e)}function c(e,t){if(Object.observe){Object.observe(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&c(e,o)}}return e}function d(e,t){if(Object.observe){Object.unobserve(t,e);for(var n in t)if(t.hasOwnProperty(n)){var o=t[n];o&&"object"==typeof o&&d(e,o)}}return e}function h(e){if(Object.observe)Object.deliverChangeRecords(e);else{for(var t,n=0,o=v.length;o>n;n++)if(v[n].obj===e.object){t=v[n];break}t&&f(t.value,e.object,e.patches,"")}var r=e.patches;return r.length>0&&(e.patches=[],e.callback&&e.callback(r)),r}function f(e,n,o,r){for(var i=y(n),s=y(e),l=!1,a=!1,u=s.length-1;u>=0;u--){var c=s[u],d=e[c];if(n.hasOwnProperty(c)){var h=n[c];d instanceof Object?f(d,h,o,r+"/"+t(c)):d!=h&&(l=!0,o.push({op:"replace",path:r+"/"+t(c),value:h}),e[c]=h)}else o.push({op:"remove",path:r+"/"+t(c)}),delete e[c],a=!0}if(a||i.length!=s.length)for(var u=0;ur;){n=t[r];for(var s=n.path.split("/"),l=e,a=1,u=s.length;;)if(R(l)){var c=parseInt(s[a],10);if(a++,a>=u){o=m[n.op].call(n,l,c,e);break}l=l[c]}else{var d=s[a];if(-1!=d.indexOf("~")&&(d=d.replace(/~1/g,"/").replace(/~0/g,"~")),a++,a>=u){o=p[n.op].call(n,l,d,e);break}l=l[d]}r++}return o}var p={add:function(e,t){return e[t]=this.value,!0},remove:function(e,t){return delete e[t],!0},replace:function(e,t){return e[t]=this.value,!0},move:function(e,t,n){var o={op:"_get",path:this.from};return g(n,[o]),g(n,[{op:"remove",path:this.from}]),g(n,[{op:"add",path:this.path,value:o.value}]),!0},copy:function(e,t,n){var o={op:"_get",path:this.from};return g(n,[o]),g(n,[{op:"add",path:this.path,value:o.value}]),!0},test:function(e,t){return JSON.stringify(e[t])===JSON.stringify(this.value)},_get:function(e,t){this.value=e[t]}},m={add:function(e,t){return e.splice(t,0,this.value),!0},remove:function(e,t){return e.splice(t,1),!0},replace:function(e,t){return e[t]=this.value,!0},move:p.move,copy:p.copy,test:p.test,_get:p._get},w={add:function(e,n){var o={op:"add",path:n+t(this.name),value:this.object[this.name]};e.push(o)},"delete":function(e,n){var o={op:"remove",path:n+t(this.name)};e.push(o)},update:function(e,n){var o={op:"replace",path:n+t(this.name),value:this.object[this.name]};e.push(o)}},v=[];e.intervals;var b=function(){function e(e){this.observers=[],this.obj=e}return e}(),C=function(){function e(e,t){this.callback=e,this.observer=t}return e}();e.unobserve=a,e.observe=u,e.generate=h;var y;y=Object.keys?Object.keys:function(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t};var R;R=Array.isArray?Array.isArray:function(e){return e.push&&"number"==typeof e.length},e.apply=g}(o||(o={})),"undefined"!=typeof n&&(n.apply=o.apply,n.observe=o.observe,n.unobserve=o.unobserve,n.generate=o.generate)},{}],numeral:[function(t,n,o){"use strict";(function(){function t(e){this._value=e}function o(e,t,n,o){var r,i,s=Math.pow(10,t);return i=(n(e*s)/s).toFixed(t),o&&(r=new RegExp("0{1,"+o+"}$"),i=i.replace(r,"")),i}function r(e,t,n){var o;return o=t.indexOf("$")>-1?s(e,t,n):t.indexOf("%")>-1?l(e,t,n):t.indexOf(":")>-1?a(e,t):c(e._value,t,n)}function i(e,t){var n,o,r,i,s,l=t,a=["KB","MB","GB","TB","PB","EB","ZB","YB"],c=!1;if(t.indexOf(":")>-1)e._value=u(t);else if(t===v)e._value=0;else{for("."!==m[w].delimiters.decimal&&(t=t.replace(/\./g,"").replace(m[w].delimiters.decimal,".")),n=new RegExp("[^a-zA-Z]"+m[w].abbreviations.thousand+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),o=new RegExp("[^a-zA-Z]"+m[w].abbreviations.million+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),r=new RegExp("[^a-zA-Z]"+m[w].abbreviations.billion+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),i=new RegExp("[^a-zA-Z]"+m[w].abbreviations.trillion+"(?:\\)|(\\"+m[w].currency.symbol+")?(?:\\))?)?$"),s=0;s<=a.length&&!(c=t.indexOf(a[s])>-1?Math.pow(1024,s+1):!1);s++);e._value=(c?c:1)*(l.match(n)?Math.pow(10,3):1)*(l.match(o)?Math.pow(10,6):1)*(l.match(r)?Math.pow(10,9):1)*(l.match(i)?Math.pow(10,12):1)*(t.indexOf("%")>-1?.01:1)*((t.split("-").length+Math.min(t.split("(").length-1,t.split(")").length-1))%2?1:-1)*Number(t.replace(/[^0-9\.]+/g,"")),e._value=c?Math.ceil(e._value):e._value}return e._value}function s(e,t,n){var o,r,i=t.indexOf("$"),s=t.indexOf("("),l=t.indexOf("-"),a="";return t.indexOf(" $")>-1?(a=" ",t=t.replace(" $","")):t.indexOf("$ ")>-1?(a=" ",t=t.replace("$ ","")):t=t.replace("$",""),r=c(e._value,t,n),1>=i?r.indexOf("(")>-1||r.indexOf("-")>-1?(r=r.split(""),o=1,(s>i||l>i)&&(o=0),r.splice(o,0,m[w].currency.symbol+a),r=r.join("")):r=m[w].currency.symbol+a+r:r.indexOf(")")>-1?(r=r.split(""),r.splice(-1,0,a+m[w].currency.symbol),r=r.join("")):r=r+a+m[w].currency.symbol,r}function l(e,t,n){var o,r="",i=100*e._value;return t.indexOf(" %")>-1?(r=" ",t=t.replace(" %","")):t=t.replace("%",""),o=c(i,t,n),o.indexOf(")")>-1?(o=o.split(""),o.splice(-1,0,r+"%"),o=o.join("")):o=o+r+"%",o}function a(e){var t=Math.floor(e._value/60/60),n=Math.floor((e._value-60*t*60)/60),o=Math.round(e._value-60*t*60-60*n);return t+":"+(10>n?"0"+n:n)+":"+(10>o?"0"+o:o)}function u(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}function c(e,t,n){var r,i,s,l,a,u,c=!1,d=!1,h=!1,f="",g=!1,p=!1,b=!1,C=!1,y=!1,R="",E="",S=Math.abs(e),T=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],O="",_=!1;if(0===e&&null!==v)return v;if(t.indexOf("(")>-1?(c=!0,t=t.slice(1,-1)):t.indexOf("+")>-1&&(d=!0,t=t.replace(/\+/g,"")),t.indexOf("a")>-1&&(g=t.indexOf("aK")>=0,p=t.indexOf("aM")>=0,b=t.indexOf("aB")>=0,C=t.indexOf("aT")>=0,y=g||p||b||C,t.indexOf(" a")>-1?(f=" ",t=t.replace(" a","")):t=t.replace("a",""),S>=Math.pow(10,12)&&!y||C?(f+=m[w].abbreviations.trillion,e/=Math.pow(10,12)):S=Math.pow(10,9)&&!y||b?(f+=m[w].abbreviations.billion,e/=Math.pow(10,9)):S=Math.pow(10,6)&&!y||p?(f+=m[w].abbreviations.million,e/=Math.pow(10,6)):(S=Math.pow(10,3)&&!y||g)&&(f+=m[w].abbreviations.thousand,e/=Math.pow(10,3))),t.indexOf("b")>-1)for(t.indexOf(" b")>-1?(R=" ",t=t.replace(" b","")):t=t.replace("b",""),s=0;s<=T.length;s++)if(r=Math.pow(1024,s),i=Math.pow(1024,s+1),e>=r&&i>e){R+=T[s],r>0&&(e/=r);break}return t.indexOf("o")>-1&&(t.indexOf(" o")>-1?(E=" ",t=t.replace(" o","")):t=t.replace("o",""),E+=m[w].ordinal(e)),t.indexOf("[.]")>-1&&(h=!0,t=t.replace("[.]",".")),l=e.toString().split(".")[0],a=t.split(".")[1],u=t.indexOf(","),a?(a.indexOf("[")>-1?(a=a.replace("]",""),a=a.split("["),O=o(e,a[0].length+a[1].length,n,a[1].length)):O=o(e,a.length,n),l=O.split(".")[0],O=O.split(".")[1].length?m[w].delimiters.decimal+O.split(".")[1]:"",h&&0===Number(O.slice(1))&&(O="")):l=o(e,null,n),l.indexOf("-")>-1&&(l=l.slice(1),_=!0),u>-1&&(l=l.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+m[w].delimiters.thousands)),0===t.indexOf(".")&&(l=""),(c&&_?"(":"")+(!c&&_?"-":"")+(!_&&d?"+":"")+l+O+(E?E:"")+(f?f:"")+(R?R:"")+(c&&_?")":"")}function d(e,t){m[e]=t}function h(e){var t=e.toString().split(".");return t.length<2?1:Math.pow(10,t[1].length)}function f(){var e=Array.prototype.slice.call(arguments);return e.reduce(function(e,t){var n=h(e),o=h(t);return n>o?n:o},-(1/0))}var g,p="1.5.3",m={},w="en",v=null,b="0,0",C="undefined"!=typeof n&&n.exports;g=function(e){return g.isNumeral(e)?e=e.value():0===e||"undefined"==typeof e?e=0:Number(e)||(e=g.fn.unformat(e)),new t(Number(e))},g.version=p,g.isNumeral=function(e){return e instanceof t},g.language=function(e,t){if(!e)return w;if(e&&!t){if(!m[e])throw new Error("Unknown language : "+e);w=e}return(t||!m[e])&&d(e,t),g},g.languageData=function(e){if(!e)return m[w];if(!m[e])throw new Error("Unknown language : "+e);return m[e]},g.language("en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),g.zeroFormat=function(e){v="string"==typeof e?e:null},g.defaultFormat=function(e){b="string"==typeof e?e:"0.0"},g.validate=function(e,t){var n,o,r,i,s,l,a,u;if("string"!=typeof e&&(e+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",e)),e=e.trim(),""===e)return!1;e=e.replace(/^[+-]?/,"");try{a=g.languageData(t)}catch(c){a=g.languageData(g.language())}return r=a.currency.symbol,s=a.abbreviations,n=a.delimiters.decimal,o="."===a.delimiters.thousands?"\\.":a.delimiters.thousands,u=e.match(/^[^\d\.\,]+/),null!==u&&(e=e.substr(1),u[0]!==r)?!1:(u=e.match(/[^\d]+$/),null!==u&&(e=e.slice(0,-1),u[0]!==s.thousand&&u[0]!==s.million&&u[0]!==s.billion&&u[0]!==s.trillion)?!1:e.match(/^\d+$/)?!0:(l=new RegExp(o+"{2}"),e.match(/[^\d.,]/g)?!1:(i=e.split(n),i.length>2?!1:i.length<2?!!i[0].match(/^\d+.*\d$/)&&!i[0].match(l):""===i[0]?!i[0].match(l)&&!!i[1].match(/^\d+$/):1===i[0].length?!!i[0].match(/^\d+$/)&&!i[0].match(l)&&!!i[1].match(/^\d+$/):!!i[0].match(/^\d+.*\d$/)&&!i[0].match(l)&&!!i[1].match(/^\d+$/))))},"function"!=typeof Array.prototype.reduce&&(Array.prototype.reduce=function(e,t){if(null===this||"undefined"==typeof this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!=typeof e)throw new TypeError(e+" is not a function");var n,o,r=this.length>>>0,i=!1;for(1n;++n)this.hasOwnProperty(n)&&(i?o=e(o,this[n],n,this):(o=this[n],i=!0));if(!i)throw new TypeError("Reduce of empty array with no initial value");return o}),g.fn=t.prototype={clone:function(){return g(this)},format:function(e,t){return r(this,e?e:b,void 0!==t?t:Math.round)},unformat:function(e){return"[object Number]"===Object.prototype.toString.call(e)?e:i(this,e?e:b)},value:function(){return this._value},valueOf:function(){return this._value},set:function(e){return this._value=Number(e),this},add:function(e){function t(e,t,o,r){return e+n*t}var n=f.call(null,this._value,e);return this._value=[this._value,e].reduce(t,0)/n,this},subtract:function(e){function t(e,t,o,r){return e-n*t}var n=f.call(null,this._value,e);return this._value=[e].reduce(t,this._value*n)/n,this},multiply:function(e){function t(e,t,n,o){var r=f(e,t);return e*r*(t*r)/(r*r)}return this._value=[this._value,e].reduce(t,1),this},divide:function(e){function t(e,t,n,o){var r=f(e,t);return e*r/(t*r)}return this._value=[this._value,e].reduce(t),this},difference:function(e){return Math.abs(g(this._value).subtract(e).value())}},C&&(n.exports=g),"undefined"==typeof ender&&(this.numeral=g),"function"==typeof e&&e.amd&&e([],function(){return g})}).call(window)},{}]},{},[23,59,61,60,62,83,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,84,85,86,87,100,101,102,90,91,92,93,94,95,31,35,32,33,40,34,36,37,38,39])("numeral")}); \ No newline at end of file diff --git a/handsontable.jquery.json b/handsontable.jquery.json index fb993a1fc40..10c38338d00 100644 --- a/handsontable.jquery.json +++ b/handsontable.jquery.json @@ -1,7 +1,7 @@ { "name": "handsontable", "title": "Handsontable", - "version": "0.19.0", + "version": "0.20.0", "author": { "name": "Marcin Warpechowski", "email": "hello@handsontable.com", diff --git a/package.json b/package.json index 2f3bf54f244..55e0d5ecff3 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "url": "https://github.com/handsontable/handsontable/issues" }, "author": "Handsoncode ", - "version": "0.19.0", + "version": "0.20.0", "keywords": [ "data", "grid", diff --git a/test/jasmine/SpecRunner.html b/test/jasmine/SpecRunner.html index 86865d0633a..8ec2a5257f6 100644 --- a/test/jasmine/SpecRunner.html +++ b/test/jasmine/SpecRunner.html @@ -182,6 +182,8 @@ + +