handsontable 0.0.0-next-8752a62-20250304 → 0.0.0-next-0f5e803-20250304
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- package/3rdparty/walkontable/src/viewport.js +1 -1
- package/3rdparty/walkontable/src/viewport.mjs +1 -1
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/dataMap/dataMap.js +4 -12
- package/dataMap/dataMap.mjs +4 -12
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +30 -32
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +9 -9
- package/dist/handsontable.js +30 -32
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +7 -7
- package/editors/autocompleteEditor/autocompleteEditor.js +8 -13
- package/editors/autocompleteEditor/autocompleteEditor.mjs +9 -14
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +1 -1
- package/plugins/undoRedo/actions/removeColumn.js +3 -1
- package/plugins/undoRedo/actions/removeColumn.mjs +3 -1
- package/styles/handsontable.css +2 -2
- package/styles/handsontable.min.css +2 -2
- package/styles/ht-theme-horizon.css +2 -2
- package/styles/ht-theme-horizon.min.css +2 -2
- package/styles/ht-theme-main.css +2 -2
- package/styles/ht-theme-main.min.css +2 -2
- package/tableView.js +9 -0
- package/tableView.mjs +9 -0
package/base.js
CHANGED
|
@@ -45,8 +45,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
|
|
|
45
45
|
Handsontable.CellCoords = _src.CellCoords;
|
|
46
46
|
Handsontable.CellRange = _src.CellRange;
|
|
47
47
|
Handsontable.packageName = 'handsontable';
|
|
48
|
-
Handsontable.buildDate = "04/03/2025
|
|
49
|
-
Handsontable.version = "0.0.0-next-
|
|
48
|
+
Handsontable.buildDate = "04/03/2025 13:40:31";
|
|
49
|
+
Handsontable.version = "0.0.0-next-0f5e803-20250304";
|
|
50
50
|
Handsontable.languages = {
|
|
51
51
|
dictionaryKeys: _registry.dictionaryKeys,
|
|
52
52
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
package/base.mjs
CHANGED
|
@@ -35,8 +35,8 @@ Handsontable.hooks = Hooks.getSingleton();
|
|
|
35
35
|
Handsontable.CellCoords = CellCoords;
|
|
36
36
|
Handsontable.CellRange = CellRange;
|
|
37
37
|
Handsontable.packageName = 'handsontable';
|
|
38
|
-
Handsontable.buildDate = "04/03/2025
|
|
39
|
-
Handsontable.version = "0.0.0-next-
|
|
38
|
+
Handsontable.buildDate = "04/03/2025 13:40:36";
|
|
39
|
+
Handsontable.version = "0.0.0-next-0f5e803-20250304";
|
|
40
40
|
Handsontable.languages = {
|
|
41
41
|
dictionaryKeys,
|
|
42
42
|
getLanguageDictionary,
|
package/dataMap/dataMap.js
CHANGED
|
@@ -117,7 +117,7 @@ class DataMap {
|
|
|
117
117
|
this.metaManager = metaManager;
|
|
118
118
|
this.tableMeta = metaManager.getTableMeta();
|
|
119
119
|
this.dataSource = data;
|
|
120
|
-
this.
|
|
120
|
+
this.refreshDuckSchema();
|
|
121
121
|
this.createMap();
|
|
122
122
|
}
|
|
123
123
|
|
|
@@ -480,14 +480,10 @@ class DataMap {
|
|
|
480
480
|
// List of removed indexes might be changed in the `beforeRemoveRow` hook. There may be new values.
|
|
481
481
|
const numberOfRemovedIndexes = removedPhysicalIndexes.length;
|
|
482
482
|
this.filterData(rowIndex, numberOfRemovedIndexes, removedPhysicalIndexes);
|
|
483
|
-
|
|
484
|
-
// TODO: Function `removeRow` should validate fully, probably above.
|
|
485
483
|
if (rowIndex < this.hot.countRows()) {
|
|
486
484
|
this.hot.rowIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
487
|
-
const
|
|
488
|
-
|
|
489
|
-
// All rows have been removed. There shouldn't be any columns.
|
|
490
|
-
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && customDefinedColumns === false) {
|
|
485
|
+
const preserveColumns = (0, _mixed.isDefined)(this.tableMeta.columns) || (0, _mixed.isDefined)(this.tableMeta.dataSchema) || this.tableMeta.colHeaders;
|
|
486
|
+
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && !preserveColumns) {
|
|
491
487
|
this.hot.columnIndexMapper.setIndexesSequence([]);
|
|
492
488
|
}
|
|
493
489
|
}
|
|
@@ -550,13 +546,9 @@ class DataMap {
|
|
|
550
546
|
}
|
|
551
547
|
}
|
|
552
548
|
}
|
|
553
|
-
|
|
554
|
-
// TODO: Function `removeCol` should validate fully, probably above.
|
|
555
549
|
if (columnIndex < this.hot.countCols()) {
|
|
556
550
|
this.hot.columnIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
557
|
-
|
|
558
|
-
// All columns have been removed. There shouldn't be any rows.
|
|
559
|
-
if (this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
551
|
+
if (!this.tableMeta.rowHeaders && this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
560
552
|
this.hot.rowIndexMapper.setIndexesSequence([]);
|
|
561
553
|
}
|
|
562
554
|
}
|
package/dataMap/dataMap.mjs
CHANGED
|
@@ -113,7 +113,7 @@ class DataMap {
|
|
|
113
113
|
this.metaManager = metaManager;
|
|
114
114
|
this.tableMeta = metaManager.getTableMeta();
|
|
115
115
|
this.dataSource = data;
|
|
116
|
-
this.
|
|
116
|
+
this.refreshDuckSchema();
|
|
117
117
|
this.createMap();
|
|
118
118
|
}
|
|
119
119
|
|
|
@@ -476,14 +476,10 @@ class DataMap {
|
|
|
476
476
|
// List of removed indexes might be changed in the `beforeRemoveRow` hook. There may be new values.
|
|
477
477
|
const numberOfRemovedIndexes = removedPhysicalIndexes.length;
|
|
478
478
|
this.filterData(rowIndex, numberOfRemovedIndexes, removedPhysicalIndexes);
|
|
479
|
-
|
|
480
|
-
// TODO: Function `removeRow` should validate fully, probably above.
|
|
481
479
|
if (rowIndex < this.hot.countRows()) {
|
|
482
480
|
this.hot.rowIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
483
|
-
const
|
|
484
|
-
|
|
485
|
-
// All rows have been removed. There shouldn't be any columns.
|
|
486
|
-
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && customDefinedColumns === false) {
|
|
481
|
+
const preserveColumns = isDefined(this.tableMeta.columns) || isDefined(this.tableMeta.dataSchema) || this.tableMeta.colHeaders;
|
|
482
|
+
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && !preserveColumns) {
|
|
487
483
|
this.hot.columnIndexMapper.setIndexesSequence([]);
|
|
488
484
|
}
|
|
489
485
|
}
|
|
@@ -546,13 +542,9 @@ class DataMap {
|
|
|
546
542
|
}
|
|
547
543
|
}
|
|
548
544
|
}
|
|
549
|
-
|
|
550
|
-
// TODO: Function `removeCol` should validate fully, probably above.
|
|
551
545
|
if (columnIndex < this.hot.countCols()) {
|
|
552
546
|
this.hot.columnIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
553
|
-
|
|
554
|
-
// All columns have been removed. There shouldn't be any rows.
|
|
555
|
-
if (this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
547
|
+
if (!this.tableMeta.rowHeaders && this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
556
548
|
this.hot.rowIndexMapper.setIndexesSequence([]);
|
|
557
549
|
}
|
|
558
550
|
}
|
package/dist/handsontable.css
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
27
27
|
*
|
|
28
|
-
* Version: 0.0.0-next-
|
|
29
|
-
* Release date: 20/02/2025 (built at 04/03/2025
|
|
28
|
+
* Version: 0.0.0-next-0f5e803-20250304
|
|
29
|
+
* Release date: 20/02/2025 (built at 04/03/2025 13:40:57)
|
|
30
30
|
*/
|
|
31
31
|
/**
|
|
32
32
|
* Fix for bootstrap styles
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
27
27
|
*
|
|
28
|
-
* Version: 0.0.0-next-
|
|
29
|
-
* Release date: 20/02/2025 (built at 04/03/2025
|
|
28
|
+
* Version: 0.0.0-next-0f5e803-20250304
|
|
29
|
+
* Release date: 20/02/2025 (built at 04/03/2025 13:40:57)
|
|
30
30
|
*/
|
|
31
31
|
/**
|
|
32
32
|
* Fix for bootstrap styles
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
27
27
|
*
|
|
28
|
-
* Version: 0.0.0-next-
|
|
29
|
-
* Release date: 20/02/2025 (built at 04/03/2025
|
|
28
|
+
* Version: 0.0.0-next-0f5e803-20250304
|
|
29
|
+
* Release date: 20/02/2025 (built at 04/03/2025 13:40:40)
|
|
30
30
|
*/
|
|
31
31
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
32
32
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
@@ -42855,8 +42855,8 @@ Handsontable.hooks = _hooks.Hooks.getSingleton();
|
|
|
42855
42855
|
Handsontable.CellCoords = _src.CellCoords;
|
|
42856
42856
|
Handsontable.CellRange = _src.CellRange;
|
|
42857
42857
|
Handsontable.packageName = 'handsontable';
|
|
42858
|
-
Handsontable.buildDate = "04/03/2025
|
|
42859
|
-
Handsontable.version = "0.0.0-next-
|
|
42858
|
+
Handsontable.buildDate = "04/03/2025 13:40:40";
|
|
42859
|
+
Handsontable.version = "0.0.0-next-0f5e803-20250304";
|
|
42860
42860
|
Handsontable.languages = {
|
|
42861
42861
|
dictionaryKeys: _registry.dictionaryKeys,
|
|
42862
42862
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
|
@@ -54175,7 +54175,7 @@ const domMessages = {
|
|
|
54175
54175
|
function _injectProductInfo(key, element) {
|
|
54176
54176
|
const hasValidType = !isEmpty(key);
|
|
54177
54177
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
|
54178
|
-
const hotVersion = "0.0.0-next-
|
|
54178
|
+
const hotVersion = "0.0.0-next-0f5e803-20250304";
|
|
54179
54179
|
let keyValidityDate;
|
|
54180
54180
|
let consoleMessageState = 'invalid';
|
|
54181
54181
|
let domMessageState = 'invalid';
|
|
@@ -70223,6 +70223,15 @@ class TableView {
|
|
|
70223
70223
|
return this._wt.wtTable.getHeight();
|
|
70224
70224
|
}
|
|
70225
70225
|
|
|
70226
|
+
/**
|
|
70227
|
+
* Gets the table's offset.
|
|
70228
|
+
*
|
|
70229
|
+
* @returns {{ left: number, top: number }}
|
|
70230
|
+
*/
|
|
70231
|
+
getTableOffset() {
|
|
70232
|
+
return this._wt.wtViewport.getWorkspaceOffset();
|
|
70233
|
+
}
|
|
70234
|
+
|
|
70226
70235
|
/**
|
|
70227
70236
|
* Gets the row header width. If there are multiple row headers, the width of
|
|
70228
70237
|
* the sum of all of them is returned.
|
|
@@ -82757,7 +82766,7 @@ class Viewport {
|
|
|
82757
82766
|
* @returns {number}
|
|
82758
82767
|
*/
|
|
82759
82768
|
getWorkspaceOffset() {
|
|
82760
|
-
return (0, _element.offset)(this.wtTable.
|
|
82769
|
+
return (0, _element.offset)(this.wtTable.holder);
|
|
82761
82770
|
}
|
|
82762
82771
|
|
|
82763
82772
|
/**
|
|
@@ -89851,7 +89860,7 @@ class DataMap {
|
|
|
89851
89860
|
this.metaManager = metaManager;
|
|
89852
89861
|
this.tableMeta = metaManager.getTableMeta();
|
|
89853
89862
|
this.dataSource = data;
|
|
89854
|
-
this.
|
|
89863
|
+
this.refreshDuckSchema();
|
|
89855
89864
|
this.createMap();
|
|
89856
89865
|
}
|
|
89857
89866
|
|
|
@@ -90214,14 +90223,10 @@ class DataMap {
|
|
|
90214
90223
|
// List of removed indexes might be changed in the `beforeRemoveRow` hook. There may be new values.
|
|
90215
90224
|
const numberOfRemovedIndexes = removedPhysicalIndexes.length;
|
|
90216
90225
|
this.filterData(rowIndex, numberOfRemovedIndexes, removedPhysicalIndexes);
|
|
90217
|
-
|
|
90218
|
-
// TODO: Function `removeRow` should validate fully, probably above.
|
|
90219
90226
|
if (rowIndex < this.hot.countRows()) {
|
|
90220
90227
|
this.hot.rowIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
90221
|
-
const
|
|
90222
|
-
|
|
90223
|
-
// All rows have been removed. There shouldn't be any columns.
|
|
90224
|
-
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && customDefinedColumns === false) {
|
|
90228
|
+
const preserveColumns = (0, _mixed.isDefined)(this.tableMeta.columns) || (0, _mixed.isDefined)(this.tableMeta.dataSchema) || this.tableMeta.colHeaders;
|
|
90229
|
+
if (this.hot.rowIndexMapper.getNotTrimmedIndexesLength() === 0 && !preserveColumns) {
|
|
90225
90230
|
this.hot.columnIndexMapper.setIndexesSequence([]);
|
|
90226
90231
|
}
|
|
90227
90232
|
}
|
|
@@ -90284,13 +90289,9 @@ class DataMap {
|
|
|
90284
90289
|
}
|
|
90285
90290
|
}
|
|
90286
90291
|
}
|
|
90287
|
-
|
|
90288
|
-
// TODO: Function `removeCol` should validate fully, probably above.
|
|
90289
90292
|
if (columnIndex < this.hot.countCols()) {
|
|
90290
90293
|
this.hot.columnIndexMapper.removeIndexes(removedPhysicalIndexes);
|
|
90291
|
-
|
|
90292
|
-
// All columns have been removed. There shouldn't be any rows.
|
|
90293
|
-
if (this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
90294
|
+
if (!this.tableMeta.rowHeaders && this.hot.columnIndexMapper.getNotTrimmedIndexesLength() === 0) {
|
|
90294
90295
|
this.hot.rowIndexMapper.setIndexesSequence([]);
|
|
90295
90296
|
}
|
|
90296
90297
|
}
|
|
@@ -102319,21 +102320,16 @@ class AutocompleteEditor extends _handsontableEditor.HandsontableEditor {
|
|
|
102319
102320
|
* @returns {boolean}
|
|
102320
102321
|
*/
|
|
102321
102322
|
flipDropdownIfNeeded() {
|
|
102322
|
-
const
|
|
102323
|
-
const
|
|
102324
|
-
|
|
102325
|
-
if (
|
|
102326
|
-
|
|
102323
|
+
const editorRect = this.getEditedCellRect();
|
|
102324
|
+
const editorHeight = editorRect.height;
|
|
102325
|
+
let spaceAbove = editorRect.top;
|
|
102326
|
+
if (this.hot.view.isVerticallyScrollableByWindow()) {
|
|
102327
|
+
const topOffset = this.hot.view.getTableOffset().top - this.hot.rootWindow.scrollY;
|
|
102328
|
+
spaceAbove = Math.max(spaceAbove + topOffset, 0);
|
|
102327
102329
|
}
|
|
102328
|
-
const textareaOffset = (0, _element.offset)(this.TEXTAREA);
|
|
102329
|
-
const textareaHeight = (0, _element.outerHeight)(this.TEXTAREA);
|
|
102330
102330
|
const dropdownHeight = this.getHeight();
|
|
102331
|
-
const
|
|
102332
|
-
const
|
|
102333
|
-
const containerOffset = (0, _element.offset)(trimmingContainer);
|
|
102334
|
-
const spaceAbove = textareaOffset.top - containerOffset.top - headersHeight + trimmingContainerScrollTop;
|
|
102335
|
-
const spaceBelow = trimmingContainer.scrollHeight - spaceAbove - headersHeight - textareaHeight;
|
|
102336
|
-
const flipNeeded = dropdownHeight > spaceBelow && spaceAbove > spaceBelow;
|
|
102331
|
+
const spaceBelow = this.hot.view.getWorkspaceHeight() - spaceAbove - editorHeight;
|
|
102332
|
+
const flipNeeded = dropdownHeight > spaceBelow && spaceAbove > spaceBelow + editorHeight;
|
|
102337
102333
|
if (flipNeeded) {
|
|
102338
102334
|
this.flipDropdown(dropdownHeight);
|
|
102339
102335
|
} else {
|
|
@@ -152755,6 +152751,7 @@ class RemoveColumnAction extends _base.BaseAction {
|
|
|
152755
152751
|
index,
|
|
152756
152752
|
indexes,
|
|
152757
152753
|
data,
|
|
152754
|
+
amount,
|
|
152758
152755
|
headers,
|
|
152759
152756
|
columnPositions,
|
|
152760
152757
|
rowPositions,
|
|
@@ -152801,7 +152798,7 @@ class RemoveColumnAction extends _base.BaseAction {
|
|
|
152801
152798
|
this.index = index;
|
|
152802
152799
|
this.indexes = indexes;
|
|
152803
152800
|
this.data = data;
|
|
152804
|
-
this.amount =
|
|
152801
|
+
this.amount = amount;
|
|
152805
152802
|
this.headers = headers;
|
|
152806
152803
|
this.columnPositions = columnPositions.slice(0);
|
|
152807
152804
|
this.rowPositions = rowPositions.slice(0);
|
|
@@ -152839,6 +152836,7 @@ class RemoveColumnAction extends _base.BaseAction {
|
|
|
152839
152836
|
index: columnIndex,
|
|
152840
152837
|
indexes,
|
|
152841
152838
|
data: removedData,
|
|
152839
|
+
amount,
|
|
152842
152840
|
headers,
|
|
152843
152841
|
columnPositions: columnsMap,
|
|
152844
152842
|
rowPositions: rowsMap,
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
27
27
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
28
28
|
*
|
|
29
|
-
* Version: 0.0.0-next-
|
|
30
|
-
* Release date: 20/02/2025 (built at 04/03/2025
|
|
29
|
+
* Version: 0.0.0-next-0f5e803-20250304
|
|
30
|
+
* Release date: 20/02/2025 (built at 04/03/2025 13:41:31)
|
|
31
31
|
*/.handsontable .table td,.handsontable .table th{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child td,.handsontable .table caption+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table thead:first-child tr:first-child td,.handsontable .table thead:first-child tr:first-child th{border-top:1px solid #ccc}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered td,.handsontable .table-bordered th{border-left:none}.handsontable .table-bordered td:first-child,.handsontable .table-bordered th:first-child{border-left:1px solid #ccc}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{position:relative;width:0}.handsontable .wtSpreader{height:auto;position:relative;width:0}.handsontable div,.handsontable input,.handsontable table,.handsontable tbody,.handsontable td,.handsontable textarea,.handsontable th,.handsontable thead{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:auto}.handsontable table.htCore{border-collapse:separate;border-spacing:0;border-width:0;cursor:default;margin:0;max-height:none;max-width:none;outline-width:0;table-layout:fixed;width:0}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable td,.handsontable th{background-color:#fff;border-bottom:1px solid #ccc;border-left-width:0;border-right:1px solid #ccc;border-top-width:0;empty-cells:show;height:22px;line-height:21px;outline:none;outline-width:0;overflow:hidden;padding:0 4px;vertical-align:top;white-space:pre-wrap}[dir=rtl].handsontable td,[dir=rtl].handsontable th{border-left:1px solid #ccc;border-right-width:0}.handsontable th:last-child{border-bottom:1px solid #ccc;border-left:none;border-right:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-left:1px solid #ccc;border-right:none}.handsontable td:first-of-type,.handsontable th:first-child{border-left:1px solid #ccc}[dir=rtl].handsontable td:first-of-type,[dir=rtl].handsontable th:first-child{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-left:1px solid #ccc;border-right-width:0}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child td,.handsontable tr:first-child th{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left:1px solid #ccc;border-right-width:0}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;font-weight:400;text-align:center;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{font-size:0;position:absolute}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{cursor:crosshair;font-size:0}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_clone_bottom,.ht_clone_inline_start,.ht_clone_top,.ht_master{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_clone_inline_start table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_master table.htCore>thead{visibility:hidden}.ht_clone_bottom .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_top .wtHolder{overflow:hidden}.handsontable{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;position:relative;touch-action:manipulation}.handsontable a{color:#104acc}.handsontable.htAutoSize{left:-99000px;position:absolute;top:-99000px;visibility:hidden}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:hsla(0,0%,100%,0)}.hot-display-license-info{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.handsontable .htFocusCatcher{border:0;height:0;margin:0;opacity:0;padding:0;position:absolute;width:0;z-index:-1}.handsontable .manualColumnResizer{cursor:col-resize;height:25px;position:absolute;top:0;width:5px;z-index:210}.handsontable .manualRowResizer{cursor:row-resize;height:5px;left:0;position:absolute;width:50px;z-index:210}.handsontable .manualColumnResizer.active,.handsontable .manualColumnResizer:hover,.handsontable .manualRowResizer.active,.handsontable .manualRowResizer:hover{background-color:#34a9db}.handsontable .manualColumnResizerGuide{background-color:#34a9db;border-left:none;border-right:1px dashed #777;display:none;margin-left:5px;margin-right:unset;position:absolute;right:unset;top:0;width:0}[dir=rtl].handsontable .manualColumnResizerGuide{border-left:1px dashed #777;border-right:none;left:unset;margin-left:unset;margin-right:5px}.handsontable .manualRowResizerGuide{background-color:#34a9db;border-bottom:1px dashed #777;bottom:0;display:none;height:0;left:0;margin-top:5px;position:absolute}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{background:#005eff;bottom:0;content:"";left:0;position:absolute;right:0;top:0}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{background-color:#fff;border:none;border-radius:0;box-shadow:inset 0 0 0 2px #5292f7;box-sizing:border-box!important;color:#000;display:block;font-family:inherit;font-size:inherit;line-height:21px;margin:0;outline-width:0;padding:1px 5px 0;resize:none}.handsontableInput:focus{outline:none}.handsontableInputHolder{left:0;position:absolute;top:0}.htSelectEditor{position:absolute;select{-webkit-appearance:menulist-button!important;border:2px solid #4b89ff;box-sizing:border-box!important;height:100%;width:100%}}.htSelectEditor select:focus{outline:none}.htSelectEditor .htAutocompleteArrow{display:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{color:#777;content:"▶";font-size:9px;position:absolute;right:5px}[dir=rtl].handsontable .htSubmenu :after{content:""}[dir=rtl].handsontable .htSubmenu :before{color:#777;content:"◀";font-size:9px;left:5px;position:absolute}.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.listbox{margin:0}.handsontable.listbox .ht_master table{background:#fff;border:1px solid #ccc;border-collapse:separate}.handsontable.listbox td,.handsontable.listbox th,.handsontable.listbox tr:first-child td,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th{border-color:transparent!important}.handsontable.listbox td,.handsontable.listbox th{text-overflow:ellipsis;white-space:nowrap}.handsontable.listbox td.htDimmed{color:inherit;cursor:default;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.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}.handsontable.mobile .handsontableInput:focus{-webkit-appearance:none;-webkit-box-shadow:inset 0 0 0 2px #5292f7;-moz-box-shadow:inset 0 0 0 2px #5292f7;box-shadow:inset 0 0 0 2px #5292f7}.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea,.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea,[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea{left:unset;right:-10000px}.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 .htAutocompleteArrow{color:#bbb;cursor:default;float:right;font-size:10px;text-align:center;width:16px}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td.htInvalid .htAutocompleteArrow{color:#555}.handsontable td.htInvalid .htAutocompleteArrow:hover{color:#1a1a1a}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;font-size:inherit;vertical-align:middle}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .collapsibleIndicator{background:#eee;border:1px solid #a6a6a6;border-radius:10px;-webkit-box-shadow:0 0 0 6px #eee;-moz-box-shadow:0 0 0 6px #eee;box-shadow:0 0 0 3px #eee;color:#222;cursor:pointer;font-size:10px;height:10px;left:unset;line-height:8px;position:absolute;right:5px;text-align:center;top:50%;transform:translateY(-50%);width:10px}[dir=rtl].handsontable .collapsibleIndicator{left:5px;right:unset}.handsontable[dir=ltr] thead th:has(.collapsibleIndicator) div.htRight span.colHeader{margin-right:20px}.handsontable[dir=rtl] thead th:has(.collapsibleIndicator) div.htLeft span.colHeader{margin-left:20px}.handsontable .columnSorting{position:relative}.handsontable[dir=ltr] div.htRight span[class*=ascending],.handsontable[dir=ltr] div.htRight span[class*=descending]{margin-left:-10px;margin-right:10px}.handsontable[dir=rtl] div.htLeft span[class*=ascending],.handsontable[dir=rtl] div.htLeft span[class*=descending]{margin-left:10px;margin-right:-10px}.handsontable[dir=ltr] div.htRight span[class*=ascending]:only-child,.handsontable[dir=ltr] div.htRight span[class*=descending]:only-child{margin-left:-15px;margin-right:15px}.handsontable[dir=rtl] div.htLeft span[class*=ascending]:only-child,.handsontable[dir=rtl] div.htLeft span[class*=descending]:only-child{margin-left:15px;margin-right:-15px}.handsontable .columnSorting.sortAction:hover{cursor:pointer;text-decoration:underline}.handsontable span.colHeader.columnSorting:before{background-position-x:right;background-repeat:no-repeat;background-size:contain;content:"";height:10px;left:unset;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;top:50%;width:5px}[dir=rtl].handsontable span.colHeader.columnSorting:before{background-position-x:left;left:-9px;padding-left:0;padding-right:8px;right:unset}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:"*";display:inline-block;padding-right:20px;position:relative}.handsontable.htGhostTable table thead th{border-bottom-width:0}.handsontable.htGhostTable table tbody tr td,.handsontable.htGhostTable table tbody tr th{border-top-width:0}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{border-left:6px solid transparent;border-right:none;border-top:6px solid #000;content:"";left:unset;position:absolute;right:0;top:0}[dir=rtl].handsontable .htCommentCell:after{border-left:none;border-right:6px solid transparent;left:0;right:unset}.htCommentsContainer .htComments{display:none;position:absolute;z-index:1059}.htCommentsContainer .htCommentTextArea{-webkit-appearance:none;background-color:#fff;border:none;border-left:3px solid #ccc;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:12px;height:90px;outline:0!important;padding:5px;width:215px}[dir=rtl].htCommentsContainer .htCommentTextArea{border-left:none;border-right:3px solid #ccc}.htCommentsContainer .htCommentTextArea:focus{border-left:3px solid #5292f7;border-right:none;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239),inset 0 0 0 1px #5292f7}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-left:none;border-right:3px solid #5292f7}
|
|
32
32
|
/*!
|
|
33
33
|
* Handsontable ContextMenu
|