handsontable 0.0.0-next-9ec04ce-20221121
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/SheetClip/SheetClip.js +128 -0
- package/3rdparty/SheetClip/SheetClip.mjs +123 -0
- package/3rdparty/SheetClip/index.js +7 -0
- package/3rdparty/SheetClip/index.mjs +1 -0
- package/3rdparty/autoResize/autoResize.js +164 -0
- package/3rdparty/autoResize/autoResize.mjs +160 -0
- package/3rdparty/autoResize/index.js +6 -0
- package/3rdparty/autoResize/index.mjs +1 -0
- package/3rdparty/walkontable/src/border.js +746 -0
- package/3rdparty/walkontable/src/border.mjs +741 -0
- package/3rdparty/walkontable/src/calculator/constants.js +30 -0
- package/3rdparty/walkontable/src/calculator/constants.mjs +23 -0
- package/3rdparty/walkontable/src/calculator/index.js +22 -0
- package/3rdparty/walkontable/src/calculator/index.mjs +4 -0
- package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +18 -0
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +297 -0
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +292 -0
- package/3rdparty/walkontable/src/calculator/viewportRows.js +175 -0
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +170 -0
- package/3rdparty/walkontable/src/cell/coords.d.ts +16 -0
- package/3rdparty/walkontable/src/cell/coords.js +185 -0
- package/3rdparty/walkontable/src/cell/coords.mjs +180 -0
- package/3rdparty/walkontable/src/cell/range.d.ts +59 -0
- package/3rdparty/walkontable/src/cell/range.js +888 -0
- package/3rdparty/walkontable/src/cell/range.mjs +882 -0
- package/3rdparty/walkontable/src/core/_base.js +395 -0
- package/3rdparty/walkontable/src/core/_base.mjs +390 -0
- package/3rdparty/walkontable/src/core/clone.js +59 -0
- package/3rdparty/walkontable/src/core/clone.mjs +54 -0
- package/3rdparty/walkontable/src/core/core.js +130 -0
- package/3rdparty/walkontable/src/core/core.mjs +125 -0
- package/3rdparty/walkontable/src/event.js +401 -0
- package/3rdparty/walkontable/src/event.mjs +396 -0
- package/3rdparty/walkontable/src/facade/core.js +236 -0
- package/3rdparty/walkontable/src/facade/core.mjs +231 -0
- package/3rdparty/walkontable/src/filter/column.js +107 -0
- package/3rdparty/walkontable/src/filter/column.mjs +102 -0
- package/3rdparty/walkontable/src/filter/row.js +107 -0
- package/3rdparty/walkontable/src/filter/row.mjs +102 -0
- package/3rdparty/walkontable/src/index.d.ts +1 -0
- package/3rdparty/walkontable/src/index.js +37 -0
- package/3rdparty/walkontable/src/index.mjs +10 -0
- package/3rdparty/walkontable/src/overlay/_base.js +363 -0
- package/3rdparty/walkontable/src/overlay/_base.mjs +357 -0
- package/3rdparty/walkontable/src/overlay/bottom.js +397 -0
- package/3rdparty/walkontable/src/overlay/bottom.mjs +391 -0
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +140 -0
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +134 -0
- package/3rdparty/walkontable/src/overlay/constants.js +26 -0
- package/3rdparty/walkontable/src/overlay/constants.mjs +15 -0
- package/3rdparty/walkontable/src/overlay/index.js +34 -0
- package/3rdparty/walkontable/src/overlay/index.mjs +7 -0
- package/3rdparty/walkontable/src/overlay/inlineStart.js +385 -0
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +379 -0
- package/3rdparty/walkontable/src/overlay/top.js +415 -0
- package/3rdparty/walkontable/src/overlay/top.mjs +409 -0
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +130 -0
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +124 -0
- package/3rdparty/walkontable/src/overlays.js +675 -0
- package/3rdparty/walkontable/src/overlays.mjs +670 -0
- package/3rdparty/walkontable/src/renderer/_base.js +83 -0
- package/3rdparty/walkontable/src/renderer/_base.mjs +78 -0
- package/3rdparty/walkontable/src/renderer/cells.js +127 -0
- package/3rdparty/walkontable/src/renderer/cells.mjs +122 -0
- package/3rdparty/walkontable/src/renderer/colGroup.js +101 -0
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +96 -0
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +115 -0
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +110 -0
- package/3rdparty/walkontable/src/renderer/index.js +118 -0
- package/3rdparty/walkontable/src/renderer/index.mjs +107 -0
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +119 -0
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +114 -0
- package/3rdparty/walkontable/src/renderer/rows.js +99 -0
- package/3rdparty/walkontable/src/renderer/rows.mjs +94 -0
- package/3rdparty/walkontable/src/renderer/table.js +317 -0
- package/3rdparty/walkontable/src/renderer/table.mjs +313 -0
- package/3rdparty/walkontable/src/scroll.js +316 -0
- package/3rdparty/walkontable/src/scroll.mjs +311 -0
- package/3rdparty/walkontable/src/selection.js +349 -0
- package/3rdparty/walkontable/src/selection.mjs +343 -0
- package/3rdparty/walkontable/src/settings.js +306 -0
- package/3rdparty/walkontable/src/settings.mjs +302 -0
- package/3rdparty/walkontable/src/table/bottom.js +56 -0
- package/3rdparty/walkontable/src/table/bottom.mjs +50 -0
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +57 -0
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +51 -0
- package/3rdparty/walkontable/src/table/inlineStart.js +53 -0
- package/3rdparty/walkontable/src/table/inlineStart.mjs +47 -0
- package/3rdparty/walkontable/src/table/master.js +132 -0
- package/3rdparty/walkontable/src/table/master.mjs +126 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +93 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +88 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +93 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +88 -0
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +85 -0
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +80 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +90 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +85 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +85 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +80 -0
- package/3rdparty/walkontable/src/table/top.js +56 -0
- package/3rdparty/walkontable/src/table/top.mjs +50 -0
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +57 -0
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +51 -0
- package/3rdparty/walkontable/src/table.js +1171 -0
- package/3rdparty/walkontable/src/table.mjs +1165 -0
- package/3rdparty/walkontable/src/types.js +98 -0
- package/3rdparty/walkontable/src/types.mjs +97 -0
- package/3rdparty/walkontable/src/utils/column.js +121 -0
- package/3rdparty/walkontable/src/utils/column.mjs +117 -0
- package/3rdparty/walkontable/src/utils/nodesPool.js +48 -0
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +44 -0
- package/3rdparty/walkontable/src/utils/orderView/constants.js +30 -0
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +23 -0
- package/3rdparty/walkontable/src/utils/orderView/index.js +8 -0
- package/3rdparty/walkontable/src/utils/orderView/index.mjs +3 -0
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +81 -0
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +76 -0
- package/3rdparty/walkontable/src/utils/orderView/view.js +216 -0
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +211 -0
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +68 -0
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +64 -0
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +137 -0
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +132 -0
- package/3rdparty/walkontable/src/utils/row.js +43 -0
- package/3rdparty/walkontable/src/utils/row.mjs +39 -0
- package/3rdparty/walkontable/src/viewport.js +491 -0
- package/3rdparty/walkontable/src/viewport.mjs +486 -0
- package/CHANGELOG.md +716 -0
- package/LICENSE.txt +25 -0
- package/README.md +140 -0
- package/base.d.ts +3 -0
- package/base.js +54 -0
- package/base.mjs +44 -0
- package/cellTypes/autocompleteType/autocompleteType.d.ts +17 -0
- package/cellTypes/autocompleteType/autocompleteType.js +16 -0
- package/cellTypes/autocompleteType/autocompleteType.mjs +10 -0
- package/cellTypes/autocompleteType/index.d.ts +1 -0
- package/cellTypes/autocompleteType/index.js +7 -0
- package/cellTypes/autocompleteType/index.mjs +1 -0
- package/cellTypes/base.d.ts +14 -0
- package/cellTypes/checkboxType/checkboxType.d.ts +14 -0
- package/cellTypes/checkboxType/checkboxType.js +14 -0
- package/cellTypes/checkboxType/checkboxType.mjs +8 -0
- package/cellTypes/checkboxType/index.d.ts +1 -0
- package/cellTypes/checkboxType/index.js +7 -0
- package/cellTypes/checkboxType/index.mjs +1 -0
- package/cellTypes/dateType/dateType.d.ts +17 -0
- package/cellTypes/dateType/dateType.js +17 -0
- package/cellTypes/dateType/dateType.mjs +11 -0
- package/cellTypes/dateType/index.d.ts +1 -0
- package/cellTypes/dateType/index.js +7 -0
- package/cellTypes/dateType/index.mjs +1 -0
- package/cellTypes/dropdownType/dropdownType.d.ts +17 -0
- package/cellTypes/dropdownType/dropdownType.js +17 -0
- package/cellTypes/dropdownType/dropdownType.mjs +11 -0
- package/cellTypes/dropdownType/index.d.ts +1 -0
- package/cellTypes/dropdownType/index.js +7 -0
- package/cellTypes/dropdownType/index.mjs +1 -0
- package/cellTypes/handsontableType/handsontableType.d.ts +14 -0
- package/cellTypes/handsontableType/handsontableType.js +15 -0
- package/cellTypes/handsontableType/handsontableType.mjs +9 -0
- package/cellTypes/handsontableType/index.d.ts +1 -0
- package/cellTypes/handsontableType/index.js +7 -0
- package/cellTypes/handsontableType/index.mjs +1 -0
- package/cellTypes/index.d.ts +47 -0
- package/cellTypes/index.js +52 -0
- package/cellTypes/index.mjs +26 -0
- package/cellTypes/numericType/index.d.ts +1 -0
- package/cellTypes/numericType/index.js +7 -0
- package/cellTypes/numericType/index.mjs +1 -0
- package/cellTypes/numericType/numericType.d.ts +17 -0
- package/cellTypes/numericType/numericType.js +17 -0
- package/cellTypes/numericType/numericType.mjs +11 -0
- package/cellTypes/passwordType/index.d.ts +1 -0
- package/cellTypes/passwordType/index.js +7 -0
- package/cellTypes/passwordType/index.mjs +1 -0
- package/cellTypes/passwordType/passwordType.d.ts +14 -0
- package/cellTypes/passwordType/passwordType.js +15 -0
- package/cellTypes/passwordType/passwordType.mjs +9 -0
- package/cellTypes/registry.d.ts +18 -0
- package/cellTypes/registry.js +60 -0
- package/cellTypes/registry.mjs +51 -0
- package/cellTypes/textType/index.d.ts +1 -0
- package/cellTypes/textType/index.js +7 -0
- package/cellTypes/textType/index.mjs +1 -0
- package/cellTypes/textType/textType.d.ts +14 -0
- package/cellTypes/textType/textType.js +14 -0
- package/cellTypes/textType/textType.mjs +8 -0
- package/cellTypes/timeType/index.d.ts +1 -0
- package/cellTypes/timeType/index.js +7 -0
- package/cellTypes/timeType/index.mjs +1 -0
- package/cellTypes/timeType/timeType.d.ts +17 -0
- package/cellTypes/timeType/timeType.js +16 -0
- package/cellTypes/timeType/timeType.mjs +10 -0
- package/common.d.ts +74 -0
- package/core.d.ts +167 -0
- package/core.js +4684 -0
- package/core.mjs +4679 -0
- package/dataMap/dataMap.js +975 -0
- package/dataMap/dataMap.mjs +970 -0
- package/dataMap/dataSource.js +325 -0
- package/dataMap/dataSource.mjs +320 -0
- package/dataMap/index.js +16 -0
- package/dataMap/index.mjs +7 -0
- package/dataMap/metaManager/index.js +339 -0
- package/dataMap/metaManager/index.mjs +334 -0
- package/dataMap/metaManager/lazyFactoryMap.js +370 -0
- package/dataMap/metaManager/lazyFactoryMap.mjs +366 -0
- package/dataMap/metaManager/metaLayers/cellMeta.js +275 -0
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +270 -0
- package/dataMap/metaManager/metaLayers/columnMeta.js +153 -0
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +148 -0
- package/dataMap/metaManager/metaLayers/globalMeta.js +103 -0
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +98 -0
- package/dataMap/metaManager/metaLayers/tableMeta.js +73 -0
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +69 -0
- package/dataMap/metaManager/metaSchema.js +4610 -0
- package/dataMap/metaManager/metaSchema.mjs +4605 -0
- package/dataMap/metaManager/mods/dynamicCellMeta.js +107 -0
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +101 -0
- package/dataMap/metaManager/mods/extendMetaProperties.js +104 -0
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +99 -0
- package/dataMap/metaManager/utils.js +99 -0
- package/dataMap/metaManager/utils.mjs +91 -0
- package/dataMap/replaceData.js +119 -0
- package/dataMap/replaceData.mjs +115 -0
- package/dist/README.md +54 -0
- package/dist/handsontable.css +1941 -0
- package/dist/handsontable.full.css +2172 -0
- package/dist/handsontable.full.js +150392 -0
- package/dist/handsontable.full.min.css +47 -0
- package/dist/handsontable.full.min.js +869 -0
- package/dist/handsontable.js +94075 -0
- package/dist/handsontable.min.css +43 -0
- package/dist/handsontable.min.js +31 -0
- package/dist/languages/all.js +583 -0
- package/dist/languages/all.min.js +1 -0
- package/dist/languages/ar-AR.js +157 -0
- package/dist/languages/ar-AR.min.js +1 -0
- package/dist/languages/cs-CZ.js +157 -0
- package/dist/languages/cs-CZ.min.js +1 -0
- package/dist/languages/de-CH.js +158 -0
- package/dist/languages/de-CH.min.js +1 -0
- package/dist/languages/de-DE.js +159 -0
- package/dist/languages/de-DE.min.js +1 -0
- package/dist/languages/en-US.js +160 -0
- package/dist/languages/en-US.min.js +1 -0
- package/dist/languages/es-MX.js +161 -0
- package/dist/languages/es-MX.min.js +1 -0
- package/dist/languages/fr-FR.js +162 -0
- package/dist/languages/fr-FR.min.js +1 -0
- package/dist/languages/it-IT.js +164 -0
- package/dist/languages/it-IT.min.js +1 -0
- package/dist/languages/ja-JP.js +161 -0
- package/dist/languages/ja-JP.min.js +1 -0
- package/dist/languages/ko-KR.js +161 -0
- package/dist/languages/ko-KR.min.js +1 -0
- package/dist/languages/lv-LV.js +161 -0
- package/dist/languages/lv-LV.min.js +1 -0
- package/dist/languages/nb-NO.js +161 -0
- package/dist/languages/nb-NO.min.js +1 -0
- package/dist/languages/nl-NL.js +161 -0
- package/dist/languages/nl-NL.min.js +1 -0
- package/dist/languages/pl-PL.js +161 -0
- package/dist/languages/pl-PL.min.js +1 -0
- package/dist/languages/pt-BR.js +161 -0
- package/dist/languages/pt-BR.min.js +1 -0
- package/dist/languages/ru-RU.js +161 -0
- package/dist/languages/ru-RU.min.js +1 -0
- package/dist/languages/sr-SP.js +161 -0
- package/dist/languages/sr-SP.min.js +1 -0
- package/dist/languages/zh-CN.js +161 -0
- package/dist/languages/zh-CN.min.js +1 -0
- package/dist/languages/zh-TW.js +161 -0
- package/dist/languages/zh-TW.min.js +1 -0
- package/editorManager.js +522 -0
- package/editorManager.mjs +514 -0
- package/editors/autocompleteEditor/autocompleteEditor.d.ts +29 -0
- package/editors/autocompleteEditor/autocompleteEditor.js +584 -0
- package/editors/autocompleteEditor/autocompleteEditor.mjs +578 -0
- package/editors/autocompleteEditor/index.d.ts +1 -0
- package/editors/autocompleteEditor/index.js +7 -0
- package/editors/autocompleteEditor/index.mjs +1 -0
- package/editors/baseEditor/baseEditor.d.ts +45 -0
- package/editors/baseEditor/baseEditor.js +688 -0
- package/editors/baseEditor/baseEditor.mjs +679 -0
- package/editors/baseEditor/index.d.ts +1 -0
- package/editors/baseEditor/index.js +8 -0
- package/editors/baseEditor/index.mjs +1 -0
- package/editors/checkboxEditor/checkboxEditor.d.ts +12 -0
- package/editors/checkboxEditor/checkboxEditor.js +85 -0
- package/editors/checkboxEditor/checkboxEditor.mjs +79 -0
- package/editors/checkboxEditor/index.d.ts +1 -0
- package/editors/checkboxEditor/index.js +7 -0
- package/editors/checkboxEditor/index.mjs +1 -0
- package/editors/dateEditor/dateEditor.d.ts +18 -0
- package/editors/dateEditor/dateEditor.js +325 -0
- package/editors/dateEditor/dateEditor.mjs +318 -0
- package/editors/dateEditor/index.d.ts +1 -0
- package/editors/dateEditor/index.js +7 -0
- package/editors/dateEditor/index.mjs +1 -0
- package/editors/dropdownEditor/dropdownEditor.d.ts +7 -0
- package/editors/dropdownEditor/dropdownEditor.js +81 -0
- package/editors/dropdownEditor/dropdownEditor.mjs +74 -0
- package/editors/dropdownEditor/index.d.ts +1 -0
- package/editors/dropdownEditor/index.js +7 -0
- package/editors/dropdownEditor/index.mjs +1 -0
- package/editors/handsontableEditor/handsontableEditor.d.ts +10 -0
- package/editors/handsontableEditor/handsontableEditor.js +306 -0
- package/editors/handsontableEditor/handsontableEditor.mjs +300 -0
- package/editors/handsontableEditor/index.d.ts +1 -0
- package/editors/handsontableEditor/index.js +7 -0
- package/editors/handsontableEditor/index.mjs +1 -0
- package/editors/index.d.ts +56 -0
- package/editors/index.js +63 -0
- package/editors/index.mjs +30 -0
- package/editors/numericEditor/index.d.ts +1 -0
- package/editors/numericEditor/index.js +7 -0
- package/editors/numericEditor/index.mjs +1 -0
- package/editors/numericEditor/numericEditor.d.ts +7 -0
- package/editors/numericEditor/numericEditor.js +49 -0
- package/editors/numericEditor/numericEditor.mjs +43 -0
- package/editors/passwordEditor/index.d.ts +1 -0
- package/editors/passwordEditor/index.js +7 -0
- package/editors/passwordEditor/index.mjs +1 -0
- package/editors/passwordEditor/passwordEditor.d.ts +7 -0
- package/editors/passwordEditor/passwordEditor.js +68 -0
- package/editors/passwordEditor/passwordEditor.mjs +62 -0
- package/editors/registry.d.ts +29 -0
- package/editors/registry.js +106 -0
- package/editors/registry.mjs +94 -0
- package/editors/selectEditor/index.d.ts +1 -0
- package/editors/selectEditor/index.js +7 -0
- package/editors/selectEditor/index.mjs +1 -0
- package/editors/selectEditor/selectEditor.d.ts +16 -0
- package/editors/selectEditor/selectEditor.js +302 -0
- package/editors/selectEditor/selectEditor.mjs +296 -0
- package/editors/textEditor/caretPositioner.js +37 -0
- package/editors/textEditor/caretPositioner.mjs +33 -0
- package/editors/textEditor/index.d.ts +1 -0
- package/editors/textEditor/index.js +7 -0
- package/editors/textEditor/index.mjs +1 -0
- package/editors/textEditor/textEditor.d.ts +24 -0
- package/editors/textEditor/textEditor.js +612 -0
- package/editors/textEditor/textEditor.mjs +605 -0
- package/editors/timeEditor/index.d.ts +1 -0
- package/editors/timeEditor/index.js +7 -0
- package/editors/timeEditor/index.mjs +1 -0
- package/editors/timeEditor/timeEditor.d.ts +7 -0
- package/editors/timeEditor/timeEditor.js +70 -0
- package/editors/timeEditor/timeEditor.mjs +64 -0
- package/eventManager.d.ts +13 -0
- package/eventManager.js +236 -0
- package/eventManager.mjs +231 -0
- package/handsontable-non-commercial-license.pdf +0 -0
- package/helpers/array.d.ts +18 -0
- package/helpers/array.js +353 -0
- package/helpers/array.mjs +333 -0
- package/helpers/browser.d.ts +25 -0
- package/helpers/browser.js +231 -0
- package/helpers/browser.mjs +210 -0
- package/helpers/console.d.ts +4 -0
- package/helpers/console.js +65 -0
- package/helpers/console.mjs +56 -0
- package/helpers/data.d.ts +12 -0
- package/helpers/data.js +247 -0
- package/helpers/data.mjs +234 -0
- package/helpers/date.d.ts +1 -0
- package/helpers/date.js +22 -0
- package/helpers/date.mjs +18 -0
- package/helpers/dom/element.d.ts +49 -0
- package/helpers/dom/element.js +1117 -0
- package/helpers/dom/element.mjs +1064 -0
- package/helpers/dom/event.d.ts +4 -0
- package/helpers/dom/event.js +46 -0
- package/helpers/dom/event.mjs +39 -0
- package/helpers/dom/index.d.ts +2 -0
- package/helpers/feature.d.ts +11 -0
- package/helpers/feature.js +184 -0
- package/helpers/feature.mjs +172 -0
- package/helpers/function.d.ts +10 -0
- package/helpers/function.js +319 -0
- package/helpers/function.mjs +307 -0
- package/helpers/index.d.ts +14 -0
- package/helpers/mixed.d.ts +5 -0
- package/helpers/mixed.js +230 -0
- package/helpers/mixed.mjs +220 -0
- package/helpers/number.d.ts +5 -0
- package/helpers/number.js +142 -0
- package/helpers/number.mjs +134 -0
- package/helpers/object.d.ts +16 -0
- package/helpers/object.js +371 -0
- package/helpers/object.mjs +352 -0
- package/helpers/string.d.ts +7 -0
- package/helpers/string.js +115 -0
- package/helpers/string.mjs +104 -0
- package/helpers/templateLiteralTag.d.ts +1 -0
- package/helpers/templateLiteralTag.js +26 -0
- package/helpers/templateLiteralTag.mjs +22 -0
- package/helpers/unicode.d.ts +73 -0
- package/helpers/unicode.js +158 -0
- package/helpers/unicode.mjs +148 -0
- package/helpers/wrappers/jquery.js +50 -0
- package/helpers/wrappers/jquery.mjs +46 -0
- package/i18n/constants.js +162 -0
- package/i18n/constants.mjs +82 -0
- package/i18n/index.d.ts +2 -0
- package/i18n/index.js +18 -0
- package/i18n/index.mjs +2 -0
- package/i18n/languages/ar-AR.js +25 -0
- package/i18n/languages/ar-AR.mjs +15 -0
- package/i18n/languages/cs-CZ.js +24 -0
- package/i18n/languages/cs-CZ.mjs +14 -0
- package/i18n/languages/de-CH.d.ts +5 -0
- package/i18n/languages/de-CH.js +24 -0
- package/i18n/languages/de-CH.mjs +14 -0
- package/i18n/languages/de-DE.d.ts +5 -0
- package/i18n/languages/de-DE.js +24 -0
- package/i18n/languages/de-DE.mjs +14 -0
- package/i18n/languages/en-US.d.ts +5 -0
- package/i18n/languages/en-US.js +24 -0
- package/i18n/languages/en-US.mjs +14 -0
- package/i18n/languages/es-MX.d.ts +5 -0
- package/i18n/languages/es-MX.js +24 -0
- package/i18n/languages/es-MX.mjs +13 -0
- package/i18n/languages/fr-FR.d.ts +5 -0
- package/i18n/languages/fr-FR.js +24 -0
- package/i18n/languages/fr-FR.mjs +14 -0
- package/i18n/languages/index.d.ts +35 -0
- package/i18n/languages/index.js +42 -0
- package/i18n/languages/index.mjs +20 -0
- package/i18n/languages/it-IT.d.ts +5 -0
- package/i18n/languages/it-IT.js +24 -0
- package/i18n/languages/it-IT.mjs +14 -0
- package/i18n/languages/ja-JP.d.ts +5 -0
- package/i18n/languages/ja-JP.js +24 -0
- package/i18n/languages/ja-JP.mjs +14 -0
- package/i18n/languages/ko-KR.d.ts +5 -0
- package/i18n/languages/ko-KR.js +24 -0
- package/i18n/languages/ko-KR.mjs +14 -0
- package/i18n/languages/lv-LV.d.ts +5 -0
- package/i18n/languages/lv-LV.js +24 -0
- package/i18n/languages/lv-LV.mjs +14 -0
- package/i18n/languages/nb-NO.d.ts +5 -0
- package/i18n/languages/nb-NO.js +24 -0
- package/i18n/languages/nb-NO.mjs +14 -0
- package/i18n/languages/nl-NL.d.ts +5 -0
- package/i18n/languages/nl-NL.js +24 -0
- package/i18n/languages/nl-NL.mjs +14 -0
- package/i18n/languages/pl-PL.d.ts +5 -0
- package/i18n/languages/pl-PL.js +24 -0
- package/i18n/languages/pl-PL.mjs +14 -0
- package/i18n/languages/pt-BR.d.ts +5 -0
- package/i18n/languages/pt-BR.js +24 -0
- package/i18n/languages/pt-BR.mjs +14 -0
- package/i18n/languages/ru-RU.d.ts +5 -0
- package/i18n/languages/ru-RU.js +24 -0
- package/i18n/languages/ru-RU.mjs +14 -0
- package/i18n/languages/sr-SP.js +24 -0
- package/i18n/languages/sr-SP.mjs +14 -0
- package/i18n/languages/zh-CN.d.ts +5 -0
- package/i18n/languages/zh-CN.js +24 -0
- package/i18n/languages/zh-CN.mjs +14 -0
- package/i18n/languages/zh-TW.d.ts +5 -0
- package/i18n/languages/zh-TW.js +24 -0
- package/i18n/languages/zh-TW.mjs +14 -0
- package/i18n/phraseFormatters/index.js +31 -0
- package/i18n/phraseFormatters/index.mjs +26 -0
- package/i18n/phraseFormatters/pluralize.js +21 -0
- package/i18n/phraseFormatters/pluralize.mjs +17 -0
- package/i18n/phraseFormatters/substituteVariables.js +22 -0
- package/i18n/phraseFormatters/substituteVariables.mjs +18 -0
- package/i18n/registry.d.ts +13 -0
- package/i18n/registry.js +180 -0
- package/i18n/registry.mjs +155 -0
- package/i18n/utils.js +90 -0
- package/i18n/utils.mjs +83 -0
- package/index.d.ts +520 -0
- package/index.js +130 -0
- package/index.mjs +112 -0
- package/languages/all.js +583 -0
- package/languages/ar-AR.js +157 -0
- package/languages/ar-AR.mjs +17 -0
- package/languages/cs-CZ.js +157 -0
- package/languages/cs-CZ.mjs +16 -0
- package/languages/de-CH.js +158 -0
- package/languages/de-CH.mjs +16 -0
- package/languages/de-DE.js +159 -0
- package/languages/de-DE.mjs +16 -0
- package/languages/en-US.js +160 -0
- package/languages/en-US.mjs +16 -0
- package/languages/es-MX.js +161 -0
- package/languages/es-MX.mjs +15 -0
- package/languages/fr-FR.js +162 -0
- package/languages/fr-FR.mjs +16 -0
- package/languages/index.js +583 -0
- package/languages/index.mjs +20 -0
- package/languages/it-IT.js +164 -0
- package/languages/it-IT.mjs +16 -0
- package/languages/ja-JP.js +161 -0
- package/languages/ja-JP.mjs +16 -0
- package/languages/ko-KR.js +161 -0
- package/languages/ko-KR.mjs +16 -0
- package/languages/lv-LV.js +161 -0
- package/languages/lv-LV.mjs +16 -0
- package/languages/nb-NO.js +161 -0
- package/languages/nb-NO.mjs +16 -0
- package/languages/nl-NL.js +161 -0
- package/languages/nl-NL.mjs +16 -0
- package/languages/pl-PL.js +161 -0
- package/languages/pl-PL.mjs +16 -0
- package/languages/pt-BR.js +161 -0
- package/languages/pt-BR.mjs +16 -0
- package/languages/ru-RU.js +161 -0
- package/languages/ru-RU.mjs +16 -0
- package/languages/sr-SP.js +161 -0
- package/languages/sr-SP.mjs +16 -0
- package/languages/zh-CN.js +161 -0
- package/languages/zh-CN.mjs +16 -0
- package/languages/zh-TW.js +161 -0
- package/languages/zh-TW.mjs +16 -0
- package/mixins/hooksRefRegisterer.js +61 -0
- package/mixins/hooksRefRegisterer.mjs +56 -0
- package/mixins/localHooks.js +71 -0
- package/mixins/localHooks.mjs +66 -0
- package/package.json +751 -0
- package/pluginHooks.d.ts +256 -0
- package/pluginHooks.js +2750 -0
- package/pluginHooks.mjs +2744 -0
- package/plugins/autoColumnSize/autoColumnSize.d.ts +27 -0
- package/plugins/autoColumnSize/autoColumnSize.js +796 -0
- package/plugins/autoColumnSize/autoColumnSize.mjs +788 -0
- package/plugins/autoColumnSize/index.d.ts +1 -0
- package/plugins/autoColumnSize/index.js +8 -0
- package/plugins/autoColumnSize/index.mjs +1 -0
- package/plugins/autoRowSize/autoRowSize.d.ts +27 -0
- package/plugins/autoRowSize/autoRowSize.js +735 -0
- package/plugins/autoRowSize/autoRowSize.mjs +727 -0
- package/plugins/autoRowSize/index.d.ts +1 -0
- package/plugins/autoRowSize/index.js +8 -0
- package/plugins/autoRowSize/index.mjs +1 -0
- package/plugins/autofill/autofill.d.ts +18 -0
- package/plugins/autofill/autofill.js +694 -0
- package/plugins/autofill/autofill.mjs +687 -0
- package/plugins/autofill/index.d.ts +1 -0
- package/plugins/autofill/index.js +8 -0
- package/plugins/autofill/index.mjs +1 -0
- package/plugins/autofill/utils.js +134 -0
- package/plugins/autofill/utils.mjs +126 -0
- package/plugins/base/base.d.ts +27 -0
- package/plugins/base/base.js +345 -0
- package/plugins/base/base.mjs +339 -0
- package/plugins/base/index.d.ts +1 -0
- package/plugins/base/index.js +7 -0
- package/plugins/base/index.mjs +1 -0
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.d.ts +9 -0
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +169 -0
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +161 -0
- package/plugins/bindRowsWithHeaders/index.d.ts +1 -0
- package/plugins/bindRowsWithHeaders/index.js +8 -0
- package/plugins/bindRowsWithHeaders/index.mjs +1 -0
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +80 -0
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +75 -0
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +103 -0
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +98 -0
- package/plugins/collapsibleColumns/collapsibleColumns.d.ts +22 -0
- package/plugins/collapsibleColumns/collapsibleColumns.js +592 -0
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +584 -0
- package/plugins/collapsibleColumns/index.d.ts +1 -0
- package/plugins/collapsibleColumns/index.js +8 -0
- package/plugins/collapsibleColumns/index.mjs +1 -0
- package/plugins/columnSorting/columnSorting.d.ts +30 -0
- package/plugins/columnSorting/columnSorting.js +865 -0
- package/plugins/columnSorting/columnSorting.mjs +857 -0
- package/plugins/columnSorting/columnStatesManager.js +273 -0
- package/plugins/columnSorting/columnStatesManager.mjs +268 -0
- package/plugins/columnSorting/domHelpers.js +54 -0
- package/plugins/columnSorting/domHelpers.mjs +49 -0
- package/plugins/columnSorting/index.d.ts +1 -0
- package/plugins/columnSorting/index.js +8 -0
- package/plugins/columnSorting/index.mjs +1 -0
- package/plugins/columnSorting/rootComparator.js +52 -0
- package/plugins/columnSorting/rootComparator.mjs +48 -0
- package/plugins/columnSorting/sortFunction/checkbox.js +64 -0
- package/plugins/columnSorting/sortFunction/checkbox.mjs +58 -0
- package/plugins/columnSorting/sortFunction/date.js +61 -0
- package/plugins/columnSorting/sortFunction/date.mjs +54 -0
- package/plugins/columnSorting/sortFunction/default.js +65 -0
- package/plugins/columnSorting/sortFunction/default.mjs +59 -0
- package/plugins/columnSorting/sortFunction/numeric.js +49 -0
- package/plugins/columnSorting/sortFunction/numeric.mjs +43 -0
- package/plugins/columnSorting/sortService/engine.js +26 -0
- package/plugins/columnSorting/sortService/engine.mjs +18 -0
- package/plugins/columnSorting/sortService/index.js +13 -0
- package/plugins/columnSorting/sortService/index.mjs +3 -0
- package/plugins/columnSorting/sortService/registry.js +37 -0
- package/plugins/columnSorting/sortService/registry.mjs +30 -0
- package/plugins/columnSorting/utils.js +122 -0
- package/plugins/columnSorting/utils.mjs +110 -0
- package/plugins/columnSummary/columnSummary.d.ts +72 -0
- package/plugins/columnSummary/columnSummary.js +544 -0
- package/plugins/columnSummary/columnSummary.mjs +536 -0
- package/plugins/columnSummary/endpoints.js +557 -0
- package/plugins/columnSummary/endpoints.mjs +552 -0
- package/plugins/columnSummary/index.d.ts +1 -0
- package/plugins/columnSummary/index.js +8 -0
- package/plugins/columnSummary/index.mjs +1 -0
- package/plugins/columnSummary/utils.js +13 -0
- package/plugins/columnSummary/utils.mjs +9 -0
- package/plugins/comments/commentEditor.js +241 -0
- package/plugins/comments/commentEditor.mjs +236 -0
- package/plugins/comments/comments.d.ts +50 -0
- package/plugins/comments/comments.js +942 -0
- package/plugins/comments/comments.mjs +932 -0
- package/plugins/comments/displaySwitch.js +115 -0
- package/plugins/comments/displaySwitch.mjs +109 -0
- package/plugins/comments/index.d.ts +1 -0
- package/plugins/comments/index.js +8 -0
- package/plugins/comments/index.mjs +1 -0
- package/plugins/contextMenu/commandExecutor.js +113 -0
- package/plugins/contextMenu/commandExecutor.mjs +108 -0
- package/plugins/contextMenu/contextMenu.d.ts +65 -0
- package/plugins/contextMenu/contextMenu.js +445 -0
- package/plugins/contextMenu/contextMenu.mjs +437 -0
- package/plugins/contextMenu/cursor.js +126 -0
- package/plugins/contextMenu/cursor.mjs +121 -0
- package/plugins/contextMenu/index.d.ts +1 -0
- package/plugins/contextMenu/index.js +8 -0
- package/plugins/contextMenu/index.mjs +1 -0
- package/plugins/contextMenu/itemsFactory.js +136 -0
- package/plugins/contextMenu/itemsFactory.mjs +131 -0
- package/plugins/contextMenu/menu.js +1003 -0
- package/plugins/contextMenu/menu.mjs +997 -0
- package/plugins/contextMenu/predefinedItems/alignment.js +277 -0
- package/plugins/contextMenu/predefinedItems/alignment.mjs +259 -0
- package/plugins/contextMenu/predefinedItems/clearColumn.js +47 -0
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +29 -0
- package/plugins/contextMenu/predefinedItems/columnLeft.js +57 -0
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +39 -0
- package/plugins/contextMenu/predefinedItems/columnRight.js +55 -0
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +37 -0
- package/plugins/contextMenu/predefinedItems/noItems.js +22 -0
- package/plugins/contextMenu/predefinedItems/noItems.mjs +16 -0
- package/plugins/contextMenu/predefinedItems/readOnly.js +69 -0
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +51 -0
- package/plugins/contextMenu/predefinedItems/redo.js +42 -0
- package/plugins/contextMenu/predefinedItems/redo.mjs +24 -0
- package/plugins/contextMenu/predefinedItems/removeColumn.js +79 -0
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +68 -0
- package/plugins/contextMenu/predefinedItems/removeRow.js +78 -0
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +67 -0
- package/plugins/contextMenu/predefinedItems/rowAbove.js +53 -0
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +35 -0
- package/plugins/contextMenu/predefinedItems/rowBelow.js +51 -0
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +33 -0
- package/plugins/contextMenu/predefinedItems/separator.js +16 -0
- package/plugins/contextMenu/predefinedItems/separator.mjs +10 -0
- package/plugins/contextMenu/predefinedItems/undo.js +42 -0
- package/plugins/contextMenu/predefinedItems/undo.mjs +24 -0
- package/plugins/contextMenu/predefinedItems.js +76 -0
- package/plugins/contextMenu/predefinedItems.mjs +57 -0
- package/plugins/contextMenu/utils.js +278 -0
- package/plugins/contextMenu/utils.mjs +261 -0
- package/plugins/copyPaste/clipboardData.js +29 -0
- package/plugins/copyPaste/clipboardData.mjs +25 -0
- package/plugins/copyPaste/contextMenuItem/copy.js +45 -0
- package/plugins/copyPaste/contextMenuItem/copy.mjs +29 -0
- package/plugins/copyPaste/contextMenuItem/cut.js +45 -0
- package/plugins/copyPaste/contextMenuItem/cut.mjs +29 -0
- package/plugins/copyPaste/copyPaste.d.ts +35 -0
- package/plugins/copyPaste/copyPaste.js +721 -0
- package/plugins/copyPaste/copyPaste.mjs +713 -0
- package/plugins/copyPaste/focusableElement.js +210 -0
- package/plugins/copyPaste/focusableElement.mjs +204 -0
- package/plugins/copyPaste/index.d.ts +1 -0
- package/plugins/copyPaste/index.js +8 -0
- package/plugins/copyPaste/index.mjs +1 -0
- package/plugins/copyPaste/pasteEvent.js +17 -0
- package/plugins/copyPaste/pasteEvent.mjs +12 -0
- package/plugins/customBorders/contextMenuItem/bottom.js +39 -0
- package/plugins/customBorders/contextMenuItem/bottom.mjs +23 -0
- package/plugins/customBorders/contextMenuItem/index.js +14 -0
- package/plugins/customBorders/contextMenuItem/index.mjs +6 -0
- package/plugins/customBorders/contextMenuItem/left.js +40 -0
- package/plugins/customBorders/contextMenuItem/left.mjs +24 -0
- package/plugins/customBorders/contextMenuItem/noBorders.js +36 -0
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +20 -0
- package/plugins/customBorders/contextMenuItem/right.js +40 -0
- package/plugins/customBorders/contextMenuItem/right.mjs +24 -0
- package/plugins/customBorders/contextMenuItem/top.js +39 -0
- package/plugins/customBorders/contextMenuItem/top.mjs +23 -0
- package/plugins/customBorders/customBorders.d.ts +38 -0
- package/plugins/customBorders/customBorders.js +887 -0
- package/plugins/customBorders/customBorders.mjs +877 -0
- package/plugins/customBorders/index.d.ts +1 -0
- package/plugins/customBorders/index.js +8 -0
- package/plugins/customBorders/index.mjs +1 -0
- package/plugins/customBorders/utils.js +265 -0
- package/plugins/customBorders/utils.mjs +249 -0
- package/plugins/dragToScroll/dragToScroll.d.ts +15 -0
- package/plugins/dragToScroll/dragToScroll.js +335 -0
- package/plugins/dragToScroll/dragToScroll.mjs +327 -0
- package/plugins/dragToScroll/index.d.ts +1 -0
- package/plugins/dragToScroll/index.js +8 -0
- package/plugins/dragToScroll/index.mjs +1 -0
- package/plugins/dropdownMenu/dropdownMenu.d.ts +24 -0
- package/plugins/dropdownMenu/dropdownMenu.js +511 -0
- package/plugins/dropdownMenu/dropdownMenu.mjs +504 -0
- package/plugins/dropdownMenu/index.d.ts +1 -0
- package/plugins/dropdownMenu/index.js +8 -0
- package/plugins/dropdownMenu/index.mjs +1 -0
- package/plugins/exportFile/dataProvider.js +200 -0
- package/plugins/exportFile/dataProvider.mjs +195 -0
- package/plugins/exportFile/exportFile.d.ts +12 -0
- package/plugins/exportFile/exportFile.js +262 -0
- package/plugins/exportFile/exportFile.mjs +250 -0
- package/plugins/exportFile/index.d.ts +1 -0
- package/plugins/exportFile/index.js +8 -0
- package/plugins/exportFile/index.mjs +1 -0
- package/plugins/exportFile/typeFactory.js +30 -0
- package/plugins/exportFile/typeFactory.mjs +21 -0
- package/plugins/exportFile/types/_base.js +78 -0
- package/plugins/exportFile/types/_base.mjs +73 -0
- package/plugins/exportFile/types/csv.js +131 -0
- package/plugins/exportFile/types/csv.mjs +125 -0
- package/plugins/filters/component/_base.js +169 -0
- package/plugins/filters/component/_base.mjs +163 -0
- package/plugins/filters/component/actionBar.js +161 -0
- package/plugins/filters/component/actionBar.mjs +151 -0
- package/plugins/filters/component/condition.js +325 -0
- package/plugins/filters/component/condition.mjs +316 -0
- package/plugins/filters/component/operators.js +222 -0
- package/plugins/filters/component/operators.mjs +216 -0
- package/plugins/filters/component/value.js +278 -0
- package/plugins/filters/component/value.mjs +269 -0
- package/plugins/filters/condition/beginsWith.js +50 -0
- package/plugins/filters/condition/beginsWith.mjs +39 -0
- package/plugins/filters/condition/between.js +64 -0
- package/plugins/filters/condition/between.mjs +53 -0
- package/plugins/filters/condition/byValue.js +48 -0
- package/plugins/filters/condition/byValue.mjs +42 -0
- package/plugins/filters/condition/contains.js +50 -0
- package/plugins/filters/condition/contains.mjs +39 -0
- package/plugins/filters/condition/date/after.js +55 -0
- package/plugins/filters/condition/date/after.mjs +43 -0
- package/plugins/filters/condition/date/before.js +55 -0
- package/plugins/filters/condition/date/before.mjs +43 -0
- package/plugins/filters/condition/date/today.js +39 -0
- package/plugins/filters/condition/date/today.mjs +20 -0
- package/plugins/filters/condition/date/tomorrow.js +39 -0
- package/plugins/filters/condition/date/tomorrow.mjs +20 -0
- package/plugins/filters/condition/date/yesterday.js +39 -0
- package/plugins/filters/condition/date/yesterday.mjs +20 -0
- package/plugins/filters/condition/empty.js +35 -0
- package/plugins/filters/condition/empty.mjs +17 -0
- package/plugins/filters/condition/endsWith.js +50 -0
- package/plugins/filters/condition/endsWith.mjs +39 -0
- package/plugins/filters/condition/equal.js +49 -0
- package/plugins/filters/condition/equal.mjs +38 -0
- package/plugins/filters/condition/false.js +18 -0
- package/plugins/filters/condition/false.mjs +12 -0
- package/plugins/filters/condition/greaterThan.js +52 -0
- package/plugins/filters/condition/greaterThan.mjs +41 -0
- package/plugins/filters/condition/greaterThanOrEqual.js +52 -0
- package/plugins/filters/condition/greaterThanOrEqual.mjs +41 -0
- package/plugins/filters/condition/lessThan.js +52 -0
- package/plugins/filters/condition/lessThan.mjs +41 -0
- package/plugins/filters/condition/lessThanOrEqual.js +52 -0
- package/plugins/filters/condition/lessThanOrEqual.mjs +41 -0
- package/plugins/filters/condition/none.js +33 -0
- package/plugins/filters/condition/none.mjs +15 -0
- package/plugins/filters/condition/notBetween.js +36 -0
- package/plugins/filters/condition/notBetween.mjs +18 -0
- package/plugins/filters/condition/notContains.js +36 -0
- package/plugins/filters/condition/notContains.mjs +18 -0
- package/plugins/filters/condition/notEmpty.js +36 -0
- package/plugins/filters/condition/notEmpty.mjs +18 -0
- package/plugins/filters/condition/notEqual.js +36 -0
- package/plugins/filters/condition/notEqual.mjs +18 -0
- package/plugins/filters/condition/true.js +18 -0
- package/plugins/filters/condition/true.mjs +12 -0
- package/plugins/filters/conditionCollection.d.ts +32 -0
- package/plugins/filters/conditionCollection.js +343 -0
- package/plugins/filters/conditionCollection.mjs +337 -0
- package/plugins/filters/conditionRegisterer.js +61 -0
- package/plugins/filters/conditionRegisterer.mjs +53 -0
- package/plugins/filters/conditionUpdateObserver.d.ts +10 -0
- package/plugins/filters/conditionUpdateObserver.js +248 -0
- package/plugins/filters/conditionUpdateObserver.mjs +242 -0
- package/plugins/filters/constants.js +103 -0
- package/plugins/filters/constants.mjs +69 -0
- package/plugins/filters/dataFilter.js +98 -0
- package/plugins/filters/dataFilter.mjs +93 -0
- package/plugins/filters/filters.d.ts +56 -0
- package/plugins/filters/filters.js +1037 -0
- package/plugins/filters/filters.mjs +1026 -0
- package/plugins/filters/index.d.ts +1 -0
- package/plugins/filters/index.js +8 -0
- package/plugins/filters/index.mjs +1 -0
- package/plugins/filters/logicalOperationRegisterer.js +50 -0
- package/plugins/filters/logicalOperationRegisterer.mjs +42 -0
- package/plugins/filters/logicalOperations/conjunction.js +36 -0
- package/plugins/filters/logicalOperations/conjunction.mjs +18 -0
- package/plugins/filters/logicalOperations/disjunction.js +36 -0
- package/plugins/filters/logicalOperations/disjunction.mjs +18 -0
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +40 -0
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +22 -0
- package/plugins/filters/ui/_base.js +249 -0
- package/plugins/filters/ui/_base.mjs +231 -0
- package/plugins/filters/ui/input.js +140 -0
- package/plugins/filters/ui/input.mjs +134 -0
- package/plugins/filters/ui/link.js +86 -0
- package/plugins/filters/ui/link.mjs +80 -0
- package/plugins/filters/ui/multipleSelect.js +441 -0
- package/plugins/filters/ui/multipleSelect.mjs +434 -0
- package/plugins/filters/ui/radioInput.js +130 -0
- package/plugins/filters/ui/radioInput.mjs +124 -0
- package/plugins/filters/ui/select.js +269 -0
- package/plugins/filters/ui/select.mjs +261 -0
- package/plugins/filters/utils.js +143 -0
- package/plugins/filters/utils.mjs +134 -0
- package/plugins/formulas/engine/register.js +259 -0
- package/plugins/formulas/engine/register.mjs +247 -0
- package/plugins/formulas/engine/settings.js +115 -0
- package/plugins/formulas/engine/settings.mjs +107 -0
- package/plugins/formulas/formulas.d.ts +31 -0
- package/plugins/formulas/formulas.js +1229 -0
- package/plugins/formulas/formulas.mjs +1221 -0
- package/plugins/formulas/index.d.ts +1 -0
- package/plugins/formulas/index.js +8 -0
- package/plugins/formulas/index.mjs +1 -0
- package/plugins/formulas/utils.js +24 -0
- package/plugins/formulas/utils.mjs +19 -0
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +76 -0
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +67 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +124 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +115 -0
- package/plugins/hiddenColumns/hiddenColumns.d.ts +21 -0
- package/plugins/hiddenColumns/hiddenColumns.js +620 -0
- package/plugins/hiddenColumns/hiddenColumns.mjs +612 -0
- package/plugins/hiddenColumns/index.d.ts +1 -0
- package/plugins/hiddenColumns/index.js +8 -0
- package/plugins/hiddenColumns/index.mjs +1 -0
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +76 -0
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +67 -0
- package/plugins/hiddenRows/contextMenuItem/showRow.js +124 -0
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +115 -0
- package/plugins/hiddenRows/hiddenRows.d.ts +21 -0
- package/plugins/hiddenRows/hiddenRows.js +612 -0
- package/plugins/hiddenRows/hiddenRows.mjs +604 -0
- package/plugins/hiddenRows/index.d.ts +1 -0
- package/plugins/hiddenRows/index.js +8 -0
- package/plugins/hiddenRows/index.mjs +1 -0
- package/plugins/index.d.ts +111 -0
- package/plugins/index.js +115 -0
- package/plugins/index.mjs +75 -0
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +58 -0
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +49 -0
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +58 -0
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +49 -0
- package/plugins/manualColumnFreeze/index.d.ts +1 -0
- package/plugins/manualColumnFreeze/index.js +8 -0
- package/plugins/manualColumnFreeze/index.mjs +1 -0
- package/plugins/manualColumnFreeze/manualColumnFreeze.d.ts +11 -0
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +250 -0
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +242 -0
- package/plugins/manualColumnMove/index.d.ts +1 -0
- package/plugins/manualColumnMove/index.js +8 -0
- package/plugins/manualColumnMove/index.mjs +1 -0
- package/plugins/manualColumnMove/manualColumnMove.d.ts +14 -0
- package/plugins/manualColumnMove/manualColumnMove.js +775 -0
- package/plugins/manualColumnMove/manualColumnMove.mjs +767 -0
- package/plugins/manualColumnMove/ui/_base.js +209 -0
- package/plugins/manualColumnMove/ui/_base.mjs +204 -0
- package/plugins/manualColumnMove/ui/backlight.js +60 -0
- package/plugins/manualColumnMove/ui/backlight.mjs +54 -0
- package/plugins/manualColumnMove/ui/guideline.js +60 -0
- package/plugins/manualColumnMove/ui/guideline.mjs +54 -0
- package/plugins/manualColumnResize/index.d.ts +1 -0
- package/plugins/manualColumnResize/index.js +8 -0
- package/plugins/manualColumnResize/index.mjs +1 -0
- package/plugins/manualColumnResize/manualColumnResize.d.ts +30 -0
- package/plugins/manualColumnResize/manualColumnResize.js +690 -0
- package/plugins/manualColumnResize/manualColumnResize.mjs +680 -0
- package/plugins/manualRowMove/index.d.ts +1 -0
- package/plugins/manualRowMove/index.js +8 -0
- package/plugins/manualRowMove/index.mjs +1 -0
- package/plugins/manualRowMove/manualRowMove.d.ts +14 -0
- package/plugins/manualRowMove/manualRowMove.js +757 -0
- package/plugins/manualRowMove/manualRowMove.mjs +749 -0
- package/plugins/manualRowMove/ui/_base.js +196 -0
- package/plugins/manualRowMove/ui/_base.mjs +191 -0
- package/plugins/manualRowMove/ui/backlight.js +60 -0
- package/plugins/manualRowMove/ui/backlight.mjs +54 -0
- package/plugins/manualRowMove/ui/guideline.js +60 -0
- package/plugins/manualRowMove/ui/guideline.mjs +54 -0
- package/plugins/manualRowResize/index.d.ts +1 -0
- package/plugins/manualRowResize/index.js +8 -0
- package/plugins/manualRowResize/index.mjs +1 -0
- package/plugins/manualRowResize/manualRowResize.d.ts +29 -0
- package/plugins/manualRowResize/manualRowResize.js +652 -0
- package/plugins/manualRowResize/manualRowResize.mjs +642 -0
- package/plugins/mergeCells/calculations/autofill.js +464 -0
- package/plugins/mergeCells/calculations/autofill.mjs +459 -0
- package/plugins/mergeCells/calculations/selection.js +204 -0
- package/plugins/mergeCells/calculations/selection.mjs +199 -0
- package/plugins/mergeCells/cellCoords.js +347 -0
- package/plugins/mergeCells/cellCoords.mjs +342 -0
- package/plugins/mergeCells/cellsCollection.js +344 -0
- package/plugins/mergeCells/cellsCollection.mjs +338 -0
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +55 -0
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +38 -0
- package/plugins/mergeCells/index.d.ts +1 -0
- package/plugins/mergeCells/index.js +8 -0
- package/plugins/mergeCells/index.mjs +1 -0
- package/plugins/mergeCells/mergeCells.d.ts +22 -0
- package/plugins/mergeCells/mergeCells.js +1290 -0
- package/plugins/mergeCells/mergeCells.mjs +1282 -0
- package/plugins/mergeCells/utils.js +30 -0
- package/plugins/mergeCells/utils.mjs +26 -0
- package/plugins/multiColumnSorting/domHelpers.js +44 -0
- package/plugins/multiColumnSorting/domHelpers.mjs +39 -0
- package/plugins/multiColumnSorting/index.d.ts +1 -0
- package/plugins/multiColumnSorting/index.js +8 -0
- package/plugins/multiColumnSorting/index.mjs +1 -0
- package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -0
- package/plugins/multiColumnSorting/multiColumnSorting.js +336 -0
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +329 -0
- package/plugins/multiColumnSorting/rootComparator.js +55 -0
- package/plugins/multiColumnSorting/rootComparator.mjs +51 -0
- package/plugins/multiColumnSorting/utils.js +16 -0
- package/plugins/multiColumnSorting/utils.mjs +12 -0
- package/plugins/multipleSelectionHandles/index.d.ts +1 -0
- package/plugins/multipleSelectionHandles/index.js +8 -0
- package/plugins/multipleSelectionHandles/index.mjs +1 -0
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +21 -0
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +394 -0
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +386 -0
- package/plugins/nestedHeaders/index.d.ts +1 -0
- package/plugins/nestedHeaders/index.js +8 -0
- package/plugins/nestedHeaders/index.mjs +1 -0
- package/plugins/nestedHeaders/nestedHeaders.d.ts +17 -0
- package/plugins/nestedHeaders/nestedHeaders.js +666 -0
- package/plugins/nestedHeaders/nestedHeaders.mjs +658 -0
- package/plugins/nestedHeaders/stateManager/headersTree.js +288 -0
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +283 -0
- package/plugins/nestedHeaders/stateManager/index.js +417 -0
- package/plugins/nestedHeaders/stateManager/index.mjs +412 -0
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +102 -0
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +99 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +98 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +94 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +95 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +91 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +54 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +50 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +40 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +35 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +55 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +51 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +61 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +55 -0
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +122 -0
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +119 -0
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +250 -0
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +245 -0
- package/plugins/nestedHeaders/stateManager/utils.js +75 -0
- package/plugins/nestedHeaders/stateManager/utils.mjs +70 -0
- package/plugins/nestedHeaders/utils/ghostTable.js +167 -0
- package/plugins/nestedHeaders/utils/ghostTable.mjs +162 -0
- package/plugins/nestedRows/data/dataManager.js +809 -0
- package/plugins/nestedRows/data/dataManager.mjs +804 -0
- package/plugins/nestedRows/index.d.ts +1 -0
- package/plugins/nestedRows/index.js +8 -0
- package/plugins/nestedRows/index.mjs +1 -0
- package/plugins/nestedRows/nestedRows.d.ts +12 -0
- package/plugins/nestedRows/nestedRows.js +592 -0
- package/plugins/nestedRows/nestedRows.mjs +584 -0
- package/plugins/nestedRows/ui/_base.js +28 -0
- package/plugins/nestedRows/ui/_base.mjs +23 -0
- package/plugins/nestedRows/ui/collapsing.js +562 -0
- package/plugins/nestedRows/ui/collapsing.mjs +556 -0
- package/plugins/nestedRows/ui/contextMenu.js +147 -0
- package/plugins/nestedRows/ui/contextMenu.mjs +138 -0
- package/plugins/nestedRows/ui/headers.js +157 -0
- package/plugins/nestedRows/ui/headers.mjs +151 -0
- package/plugins/nestedRows/utils/rowMoveController.js +331 -0
- package/plugins/nestedRows/utils/rowMoveController.mjs +327 -0
- package/plugins/persistentState/index.d.ts +1 -0
- package/plugins/persistentState/index.js +8 -0
- package/plugins/persistentState/index.mjs +1 -0
- package/plugins/persistentState/persistentState.d.ts +13 -0
- package/plugins/persistentState/persistentState.js +207 -0
- package/plugins/persistentState/persistentState.mjs +199 -0
- package/plugins/persistentState/storage.js +138 -0
- package/plugins/persistentState/storage.mjs +133 -0
- package/plugins/registry.d.ts +9 -0
- package/plugins/registry.js +150 -0
- package/plugins/registry.mjs +146 -0
- package/plugins/search/index.d.ts +1 -0
- package/plugins/search/index.js +8 -0
- package/plugins/search/index.mjs +1 -0
- package/plugins/search/search.d.ts +28 -0
- package/plugins/search/search.js +377 -0
- package/plugins/search/search.mjs +370 -0
- package/plugins/touchScroll/index.d.ts +1 -0
- package/plugins/touchScroll/index.js +8 -0
- package/plugins/touchScroll/index.mjs +1 -0
- package/plugins/touchScroll/touchScroll.d.ts +13 -0
- package/plugins/touchScroll/touchScroll.js +250 -0
- package/plugins/touchScroll/touchScroll.mjs +243 -0
- package/plugins/trimRows/index.d.ts +1 -0
- package/plugins/trimRows/index.js +8 -0
- package/plugins/trimRows/index.mjs +1 -0
- package/plugins/trimRows/trimRows.d.ts +17 -0
- package/plugins/trimRows/trimRows.js +393 -0
- package/plugins/trimRows/trimRows.mjs +386 -0
- package/plugins/undoRedo/index.d.ts +1 -0
- package/plugins/undoRedo/index.js +18 -0
- package/plugins/undoRedo/index.mjs +2 -0
- package/plugins/undoRedo/undoRedo.d.ts +49 -0
- package/plugins/undoRedo/undoRedo.js +935 -0
- package/plugins/undoRedo/undoRedo.mjs +928 -0
- package/registry.d.ts +6 -0
- package/registry.js +35 -0
- package/registry.mjs +26 -0
- package/renderers/autocompleteRenderer/autocompleteRenderer.d.ts +5 -0
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +59 -0
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +52 -0
- package/renderers/autocompleteRenderer/index.d.ts +1 -0
- package/renderers/autocompleteRenderer/index.js +7 -0
- package/renderers/autocompleteRenderer/index.mjs +1 -0
- package/renderers/base.d.ts +3 -0
- package/renderers/baseRenderer/baseRenderer.d.ts +5 -0
- package/renderers/baseRenderer/baseRenderer.js +46 -0
- package/renderers/baseRenderer/baseRenderer.mjs +39 -0
- package/renderers/baseRenderer/index.d.ts +1 -0
- package/renderers/baseRenderer/index.js +7 -0
- package/renderers/baseRenderer/index.mjs +1 -0
- package/renderers/checkboxRenderer/checkboxRenderer.d.ts +5 -0
- package/renderers/checkboxRenderer/checkboxRenderer.js +398 -0
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +391 -0
- package/renderers/checkboxRenderer/index.d.ts +1 -0
- package/renderers/checkboxRenderer/index.js +7 -0
- package/renderers/checkboxRenderer/index.mjs +1 -0
- package/renderers/htmlRenderer/htmlRenderer.d.ts +5 -0
- package/renderers/htmlRenderer/htmlRenderer.js +25 -0
- package/renderers/htmlRenderer/htmlRenderer.mjs +19 -0
- package/renderers/htmlRenderer/index.d.ts +1 -0
- package/renderers/htmlRenderer/index.js +7 -0
- package/renderers/htmlRenderer/index.mjs +1 -0
- package/renderers/index.d.ts +45 -0
- package/renderers/index.js +48 -0
- package/renderers/index.mjs +24 -0
- package/renderers/numericRenderer/index.d.ts +1 -0
- package/renderers/numericRenderer/index.js +7 -0
- package/renderers/numericRenderer/index.mjs +1 -0
- package/renderers/numericRenderer/numericRenderer.d.ts +5 -0
- package/renderers/numericRenderer/numericRenderer.js +57 -0
- package/renderers/numericRenderer/numericRenderer.mjs +50 -0
- package/renderers/passwordRenderer/index.d.ts +1 -0
- package/renderers/passwordRenderer/index.js +7 -0
- package/renderers/passwordRenderer/index.mjs +1 -0
- package/renderers/passwordRenderer/passwordRenderer.d.ts +5 -0
- package/renderers/passwordRenderer/passwordRenderer.js +32 -0
- package/renderers/passwordRenderer/passwordRenderer.mjs +26 -0
- package/renderers/registry.d.ts +18 -0
- package/renderers/registry.js +48 -0
- package/renderers/registry.mjs +38 -0
- package/renderers/textRenderer/index.d.ts +1 -0
- package/renderers/textRenderer/index.js +7 -0
- package/renderers/textRenderer/index.mjs +1 -0
- package/renderers/textRenderer/textRenderer.d.ts +5 -0
- package/renderers/textRenderer/textRenderer.js +48 -0
- package/renderers/textRenderer/textRenderer.mjs +42 -0
- package/renderers/timeRenderer/index.d.ts +1 -0
- package/renderers/timeRenderer/index.js +7 -0
- package/renderers/timeRenderer/index.mjs +1 -0
- package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
- package/renderers/timeRenderer/timeRenderer.js +26 -0
- package/renderers/timeRenderer/timeRenderer.mjs +20 -0
- package/selection/highlight/constants.js +16 -0
- package/selection/highlight/constants.mjs +6 -0
- package/selection/highlight/highlight.js +330 -0
- package/selection/highlight/highlight.mjs +325 -0
- package/selection/highlight/types/activeHeader.js +38 -0
- package/selection/highlight/types/activeHeader.mjs +32 -0
- package/selection/highlight/types/area.js +49 -0
- package/selection/highlight/types/area.mjs +43 -0
- package/selection/highlight/types/cell.js +46 -0
- package/selection/highlight/types/cell.mjs +40 -0
- package/selection/highlight/types/customSelection.js +41 -0
- package/selection/highlight/types/customSelection.mjs +35 -0
- package/selection/highlight/types/fill.js +41 -0
- package/selection/highlight/types/fill.mjs +35 -0
- package/selection/highlight/types/header.js +49 -0
- package/selection/highlight/types/header.mjs +43 -0
- package/selection/highlight/types/index.js +43 -0
- package/selection/highlight/types/index.mjs +39 -0
- package/selection/highlight/visualSelection.js +277 -0
- package/selection/highlight/visualSelection.mjs +272 -0
- package/selection/index.d.ts +5 -0
- package/selection/index.js +30 -0
- package/selection/index.mjs +6 -0
- package/selection/mouseEventHandler.js +135 -0
- package/selection/mouseEventHandler.mjs +129 -0
- package/selection/range.js +173 -0
- package/selection/range.mjs +168 -0
- package/selection/selection.js +802 -0
- package/selection/selection.mjs +796 -0
- package/selection/transformation.js +169 -0
- package/selection/transformation.mjs +163 -0
- package/selection/utils.js +256 -0
- package/selection/utils.mjs +242 -0
- package/settings.d.ts +210 -0
- package/shortcuts/context.d.ts +20 -0
- package/shortcuts/context.js +241 -0
- package/shortcuts/context.mjs +236 -0
- package/shortcuts/index.d.ts +1 -0
- package/shortcuts/index.js +6 -0
- package/shortcuts/index.mjs +1 -0
- package/shortcuts/keyObserver.js +58 -0
- package/shortcuts/keyObserver.mjs +54 -0
- package/shortcuts/manager.d.ts +10 -0
- package/shortcuts/manager.js +165 -0
- package/shortcuts/manager.mjs +159 -0
- package/shortcuts/recorder.js +165 -0
- package/shortcuts/recorder.mjs +161 -0
- package/shortcuts/utils.js +58 -0
- package/shortcuts/utils.mjs +51 -0
- package/tableView.js +1313 -0
- package/tableView.mjs +1307 -0
- package/translations/changesObservable/observable.js +175 -0
- package/translations/changesObservable/observable.mjs +170 -0
- package/translations/changesObservable/observer.js +100 -0
- package/translations/changesObservable/observer.mjs +94 -0
- package/translations/changesObservable/utils.js +50 -0
- package/translations/changesObservable/utils.mjs +46 -0
- package/translations/index.d.ts +1 -0
- package/translations/index.js +29 -0
- package/translations/index.mjs +4 -0
- package/translations/indexMapper.d.ts +48 -0
- package/translations/indexMapper.js +865 -0
- package/translations/indexMapper.mjs +859 -0
- package/translations/mapCollections/aggregatedCollection.js +139 -0
- package/translations/mapCollections/aggregatedCollection.mjs +134 -0
- package/translations/mapCollections/index.js +18 -0
- package/translations/mapCollections/index.mjs +2 -0
- package/translations/mapCollections/mapCollection.js +164 -0
- package/translations/mapCollections/mapCollection.mjs +156 -0
- package/translations/maps/hidingMap.js +63 -0
- package/translations/maps/hidingMap.mjs +58 -0
- package/translations/maps/index.js +59 -0
- package/translations/maps/index.mjs +29 -0
- package/translations/maps/indexMap.d.ts +10 -0
- package/translations/maps/indexMap.js +203 -0
- package/translations/maps/indexMap.mjs +197 -0
- package/translations/maps/indexesSequence.js +82 -0
- package/translations/maps/indexesSequence.mjs +77 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.js +216 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +211 -0
- package/translations/maps/physicalIndexToValueMap.js +76 -0
- package/translations/maps/physicalIndexToValueMap.mjs +71 -0
- package/translations/maps/trimmingMap.js +63 -0
- package/translations/maps/trimmingMap.mjs +58 -0
- package/translations/maps/utils/actionsOnIndexes.js +42 -0
- package/translations/maps/utils/actionsOnIndexes.mjs +37 -0
- package/translations/maps/utils/index.js +28 -0
- package/translations/maps/utils/index.mjs +22 -0
- package/translations/maps/utils/indexesSequence.js +52 -0
- package/translations/maps/utils/indexesSequence.mjs +47 -0
- package/translations/maps/utils/physicallyIndexed.js +61 -0
- package/translations/maps/utils/physicallyIndexed.mjs +56 -0
- package/utils/dataStructures/linkedList.js +263 -0
- package/utils/dataStructures/linkedList.mjs +258 -0
- package/utils/dataStructures/priorityMap.js +106 -0
- package/utils/dataStructures/priorityMap.mjs +99 -0
- package/utils/dataStructures/queue.js +83 -0
- package/utils/dataStructures/queue.mjs +78 -0
- package/utils/dataStructures/stack.js +83 -0
- package/utils/dataStructures/stack.mjs +78 -0
- package/utils/dataStructures/tree.js +254 -0
- package/utils/dataStructures/tree.mjs +246 -0
- package/utils/dataStructures/uniqueMap.js +144 -0
- package/utils/dataStructures/uniqueMap.mjs +140 -0
- package/utils/dataStructures/uniqueSet.js +78 -0
- package/utils/dataStructures/uniqueSet.mjs +74 -0
- package/utils/ghostTable.js +536 -0
- package/utils/ghostTable.mjs +531 -0
- package/utils/interval.js +134 -0
- package/utils/interval.mjs +129 -0
- package/utils/parseTable.d.ts +5 -0
- package/utils/parseTable.js +305 -0
- package/utils/parseTable.mjs +299 -0
- package/utils/rootInstance.js +48 -0
- package/utils/rootInstance.mjs +38 -0
- package/utils/samplesGenerator.js +210 -0
- package/utils/samplesGenerator.mjs +205 -0
- package/utils/staticRegister.js +92 -0
- package/utils/staticRegister.mjs +86 -0
- package/validators/autocompleteValidator/autocompleteValidator.d.ts +5 -0
- package/validators/autocompleteValidator/autocompleteValidator.js +56 -0
- package/validators/autocompleteValidator/autocompleteValidator.mjs +50 -0
- package/validators/autocompleteValidator/index.d.ts +1 -0
- package/validators/autocompleteValidator/index.js +7 -0
- package/validators/autocompleteValidator/index.mjs +1 -0
- package/validators/base.d.ts +6 -0
- package/validators/dateValidator/dateValidator.d.ts +5 -0
- package/validators/dateValidator/dateValidator.js +77 -0
- package/validators/dateValidator/dateValidator.mjs +69 -0
- package/validators/dateValidator/index.d.ts +1 -0
- package/validators/dateValidator/index.js +8 -0
- package/validators/dateValidator/index.mjs +1 -0
- package/validators/index.d.ts +33 -0
- package/validators/index.js +32 -0
- package/validators/index.mjs +16 -0
- package/validators/numericValidator/index.d.ts +1 -0
- package/validators/numericValidator/index.js +7 -0
- package/validators/numericValidator/index.mjs +1 -0
- package/validators/numericValidator/numericValidator.d.ts +5 -0
- package/validators/numericValidator/numericValidator.js +30 -0
- package/validators/numericValidator/numericValidator.mjs +24 -0
- package/validators/registry.d.ts +18 -0
- package/validators/registry.js +48 -0
- package/validators/registry.mjs +38 -0
- package/validators/timeValidator/index.d.ts +1 -0
- package/validators/timeValidator/index.js +7 -0
- package/validators/timeValidator/index.mjs +1 -0
- package/validators/timeValidator/timeValidator.d.ts +5 -0
- package/validators/timeValidator/timeValidator.js +66 -0
- package/validators/timeValidator/timeValidator.mjs +60 -0
@@ -0,0 +1,1165 @@
|
|
1
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
2
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
3
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
4
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
5
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
6
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
7
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
8
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
9
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
10
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
11
|
+
import "core-js/modules/es.function.name.js";
|
12
|
+
import "core-js/modules/es.array.from.js";
|
13
|
+
import "core-js/modules/es.string.iterator.js";
|
14
|
+
import "core-js/modules/es.array.includes.js";
|
15
|
+
import "core-js/modules/es.object.to-string.js";
|
16
|
+
import "core-js/modules/web.dom-collections.for-each.js";
|
17
|
+
import "core-js/modules/es.symbol.js";
|
18
|
+
import "core-js/modules/es.symbol.description.js";
|
19
|
+
import "core-js/modules/es.symbol.iterator.js";
|
20
|
+
import "core-js/modules/es.array.iterator.js";
|
21
|
+
import "core-js/modules/web.dom-collections.iterator.js";
|
22
|
+
import "core-js/modules/es.array.slice.js";
|
23
|
+
import "core-js/modules/es.regexp.exec.js";
|
24
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
25
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
26
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
27
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
28
|
+
import { hasClass, index, offset, removeClass, removeTextNodes, overlayContainsElement, closest, outerHeight, outerWidth, innerHeight, isVisible as _isVisible } from "../../../helpers/dom/element.mjs";
|
29
|
+
import { isFunction } from "../../../helpers/function.mjs";
|
30
|
+
import ColumnFilter from "./filter/column.mjs";
|
31
|
+
import RowFilter from "./filter/row.mjs";
|
32
|
+
import { Renderer } from "./renderer/index.mjs";
|
33
|
+
import ColumnUtils from "./utils/column.mjs";
|
34
|
+
import RowUtils from "./utils/row.mjs";
|
35
|
+
import { CLONE_TOP, CLONE_BOTTOM, CLONE_INLINE_START, CLONE_TOP_INLINE_START_CORNER, CLONE_BOTTOM_INLINE_START_CORNER } from "./overlay/index.mjs";
|
36
|
+
/**
|
37
|
+
* @todo These mixes are never added to the class Table, however their members are used here.
|
38
|
+
* @todo Continue: Potentially it works only, because some of these mixes are added to every inherited class.
|
39
|
+
* @todo Refactoring, move code from `if(this.isMaster)` into MasterTable, and others like that.
|
40
|
+
* @mixes stickyColumnsStart
|
41
|
+
* @mixes stickyRowsBottom
|
42
|
+
* @mixes stickyRowsTop
|
43
|
+
* @mixes calculatedRows
|
44
|
+
* @mixes calculatedColumns
|
45
|
+
* @abstract
|
46
|
+
*/
|
47
|
+
var Table = /*#__PURE__*/function () {
|
48
|
+
/**
|
49
|
+
* The walkontable settings.
|
50
|
+
*
|
51
|
+
* @protected
|
52
|
+
* @type {Settings}
|
53
|
+
*/
|
54
|
+
|
55
|
+
/**
|
56
|
+
* Indicates if the table has height bigger than 0px.
|
57
|
+
*
|
58
|
+
* @type {boolean}
|
59
|
+
*/
|
60
|
+
|
61
|
+
/**
|
62
|
+
* Indicates if the table has width bigger than 0px.
|
63
|
+
*
|
64
|
+
* @type {boolean}
|
65
|
+
*/
|
66
|
+
|
67
|
+
/**
|
68
|
+
* Indicates if the table is visible. By visible, it means that the holder
|
69
|
+
* element has CSS 'display' property different than 'none'.
|
70
|
+
*
|
71
|
+
* @type {boolean}
|
72
|
+
*/
|
73
|
+
|
74
|
+
/**
|
75
|
+
*
|
76
|
+
* @abstract
|
77
|
+
* @param {TableDao} dataAccessObject The data access object.
|
78
|
+
* @param {FacadeGetter} facadeGetter Function which return proper facade.
|
79
|
+
* @param {DomBindings} domBindings Bindings into DOM.
|
80
|
+
* @param {Settings} wtSettings The Walkontable settings.
|
81
|
+
* @param {'master'|CLONE_TYPES_ENUM} name Overlay name.
|
82
|
+
*/
|
83
|
+
function Table(dataAccessObject, facadeGetter, domBindings, wtSettings, name) {
|
84
|
+
var _this = this;
|
85
|
+
_classCallCheck(this, Table);
|
86
|
+
_defineProperty(this, "wtSettings", null);
|
87
|
+
_defineProperty(this, "domBindings", void 0);
|
88
|
+
_defineProperty(this, "TBODY", null);
|
89
|
+
_defineProperty(this, "THEAD", null);
|
90
|
+
_defineProperty(this, "COLGROUP", null);
|
91
|
+
_defineProperty(this, "hasTableHeight", true);
|
92
|
+
_defineProperty(this, "hasTableWidth", true);
|
93
|
+
_defineProperty(this, "isTableVisible", false);
|
94
|
+
_defineProperty(this, "tableOffset", 0);
|
95
|
+
_defineProperty(this, "holderOffset", 0);
|
96
|
+
this.domBindings = domBindings;
|
97
|
+
/**
|
98
|
+
* Indicates if this instance is of type `MasterTable` (i.e. It is NOT an overlay).
|
99
|
+
*
|
100
|
+
* @type {boolean}
|
101
|
+
*/
|
102
|
+
this.isMaster = name === 'master';
|
103
|
+
this.name = name;
|
104
|
+
this.dataAccessObject = dataAccessObject;
|
105
|
+
this.facadeGetter = facadeGetter;
|
106
|
+
this.wtSettings = wtSettings;
|
107
|
+
|
108
|
+
// legacy support
|
109
|
+
this.instance = this.dataAccessObject.wot; // TODO refactoring: it might be removed here, and provides legacy support through facade.
|
110
|
+
this.wot = this.dataAccessObject.wot;
|
111
|
+
this.TABLE = domBindings.rootTable;
|
112
|
+
removeTextNodes(this.TABLE);
|
113
|
+
|
114
|
+
// TODO refactoring, to recognize the legitimacy of moving them into domBidings
|
115
|
+
this.spreader = this.createSpreader(this.TABLE);
|
116
|
+
this.hider = this.createHider(this.spreader);
|
117
|
+
this.holder = this.createHolder(this.hider);
|
118
|
+
this.wtRootElement = this.holder.parentNode;
|
119
|
+
if (this.isMaster) {
|
120
|
+
this.alignOverlaysWithTrimmingContainer(); // todo wow, It calls method from child class (MasterTable).
|
121
|
+
}
|
122
|
+
|
123
|
+
this.fixTableDomTree();
|
124
|
+
this.rowFilter = null; // TODO refactoring, eliminate all (re)creations of this object, then updates state when needed.
|
125
|
+
this.columnFilter = null; // TODO refactoring, eliminate all (re)creations of this object, then updates state when needed.
|
126
|
+
this.correctHeaderWidth = false;
|
127
|
+
var origRowHeaderWidth = this.wtSettings.getSettingPure('rowHeaderWidth');
|
128
|
+
|
129
|
+
// Fix for jumping row headers (https://github.com/handsontable/handsontable/issues/3850)
|
130
|
+
this.wtSettings.update('rowHeaderWidth', function () {
|
131
|
+
return _this._modifyRowHeaderWidth(origRowHeaderWidth);
|
132
|
+
});
|
133
|
+
this.rowUtils = new RowUtils(this.dataAccessObject, this.wtSettings); // TODO refactoring, It can be passed through IOC.
|
134
|
+
this.columnUtils = new ColumnUtils(this.dataAccessObject, this.wtSettings); // TODO refactoring, It can be passed through IOC.
|
135
|
+
|
136
|
+
this.tableRenderer = new Renderer({
|
137
|
+
// TODO refactoring, It can be passed through IOC.
|
138
|
+
TABLE: this.TABLE,
|
139
|
+
THEAD: this.THEAD,
|
140
|
+
COLGROUP: this.COLGROUP,
|
141
|
+
TBODY: this.TBODY,
|
142
|
+
rowUtils: this.rowUtils,
|
143
|
+
columnUtils: this.columnUtils,
|
144
|
+
cellRenderer: this.wtSettings.getSettingPure('cellRenderer')
|
145
|
+
});
|
146
|
+
}
|
147
|
+
|
148
|
+
/**
|
149
|
+
* Returns a boolean that is true if this Table represents a specific overlay, identified by the overlay name.
|
150
|
+
* For MasterTable, it returns false.
|
151
|
+
*
|
152
|
+
* @param {string} overlayTypeName The overlay type.
|
153
|
+
* @returns {boolean}
|
154
|
+
*/
|
155
|
+
_createClass(Table, [{
|
156
|
+
key: "is",
|
157
|
+
value: function is(overlayTypeName) {
|
158
|
+
// todo refactoring: eliminate all protected and private usages
|
159
|
+
return this.name === overlayTypeName;
|
160
|
+
}
|
161
|
+
|
162
|
+
/**
|
163
|
+
*
|
164
|
+
*/
|
165
|
+
}, {
|
166
|
+
key: "fixTableDomTree",
|
167
|
+
value: function fixTableDomTree() {
|
168
|
+
var rootDocument = this.domBindings.rootDocument;
|
169
|
+
this.TBODY = this.TABLE.querySelector('tbody');
|
170
|
+
if (!this.TBODY) {
|
171
|
+
this.TBODY = rootDocument.createElement('tbody');
|
172
|
+
this.TABLE.appendChild(this.TBODY);
|
173
|
+
}
|
174
|
+
this.THEAD = this.TABLE.querySelector('thead');
|
175
|
+
if (!this.THEAD) {
|
176
|
+
this.THEAD = rootDocument.createElement('thead');
|
177
|
+
this.TABLE.insertBefore(this.THEAD, this.TBODY);
|
178
|
+
}
|
179
|
+
this.COLGROUP = this.TABLE.querySelector('colgroup');
|
180
|
+
if (!this.COLGROUP) {
|
181
|
+
this.COLGROUP = rootDocument.createElement('colgroup');
|
182
|
+
this.TABLE.insertBefore(this.COLGROUP, this.THEAD);
|
183
|
+
}
|
184
|
+
}
|
185
|
+
|
186
|
+
/**
|
187
|
+
* @param {HTMLTableElement} table An element to process.
|
188
|
+
* @returns {HTMLElement}
|
189
|
+
*/
|
190
|
+
}, {
|
191
|
+
key: "createSpreader",
|
192
|
+
value: function createSpreader(table) {
|
193
|
+
var parent = table.parentNode;
|
194
|
+
var spreader;
|
195
|
+
if (!parent || parent.nodeType !== Node.ELEMENT_NODE || !hasClass(parent, 'wtHolder')) {
|
196
|
+
spreader = this.domBindings.rootDocument.createElement('div');
|
197
|
+
spreader.className = 'wtSpreader';
|
198
|
+
if (parent) {
|
199
|
+
// if TABLE is detached (e.g. in Jasmine test), it has no parentNode so we cannot attach holder to it
|
200
|
+
parent.insertBefore(spreader, table);
|
201
|
+
}
|
202
|
+
spreader.appendChild(table);
|
203
|
+
}
|
204
|
+
spreader.style.position = 'relative';
|
205
|
+
return spreader;
|
206
|
+
}
|
207
|
+
|
208
|
+
/**
|
209
|
+
* @param {HTMLElement} spreader An element to the hider element is injected.
|
210
|
+
* @returns {HTMLElement}
|
211
|
+
*/
|
212
|
+
}, {
|
213
|
+
key: "createHider",
|
214
|
+
value: function createHider(spreader) {
|
215
|
+
var parent = spreader.parentNode;
|
216
|
+
var hider;
|
217
|
+
if (!parent || parent.nodeType !== Node.ELEMENT_NODE || !hasClass(parent, 'wtHolder')) {
|
218
|
+
hider = this.domBindings.rootDocument.createElement('div');
|
219
|
+
hider.className = 'wtHider';
|
220
|
+
if (parent) {
|
221
|
+
// if TABLE is detached (e.g. in Jasmine test), it has no parentNode so we cannot attach holder to it
|
222
|
+
parent.insertBefore(hider, spreader);
|
223
|
+
}
|
224
|
+
hider.appendChild(spreader);
|
225
|
+
}
|
226
|
+
return hider;
|
227
|
+
}
|
228
|
+
|
229
|
+
/**
|
230
|
+
*
|
231
|
+
* @param {HTMLElement} hider An element to the holder element is injected.
|
232
|
+
* @returns {HTMLElement}
|
233
|
+
*/
|
234
|
+
}, {
|
235
|
+
key: "createHolder",
|
236
|
+
value: function createHolder(hider) {
|
237
|
+
var parent = hider.parentNode;
|
238
|
+
var holder;
|
239
|
+
if (!parent || parent.nodeType !== Node.ELEMENT_NODE || !hasClass(parent, 'wtHolder')) {
|
240
|
+
holder = this.domBindings.rootDocument.createElement('div');
|
241
|
+
holder.style.position = 'relative';
|
242
|
+
holder.className = 'wtHolder';
|
243
|
+
if (parent) {
|
244
|
+
// if TABLE is detached (e.g. in Jasmine test), it has no parentNode so we cannot attach holder to it
|
245
|
+
parent.insertBefore(holder, hider);
|
246
|
+
}
|
247
|
+
if (this.isMaster) {
|
248
|
+
holder.parentNode.className += 'ht_master handsontable';
|
249
|
+
holder.parentNode.setAttribute('dir', this.wtSettings.getSettingPure('rtlMode') ? 'rtl' : 'ltr');
|
250
|
+
}
|
251
|
+
holder.appendChild(hider);
|
252
|
+
}
|
253
|
+
return holder;
|
254
|
+
}
|
255
|
+
|
256
|
+
/**
|
257
|
+
* Redraws the table.
|
258
|
+
*
|
259
|
+
* @param {boolean} [fastDraw=false] If TRUE, will try to avoid full redraw and only update the border positions.
|
260
|
+
* If FALSE or UNDEFINED, will perform a full redraw.
|
261
|
+
* @returns {Table}
|
262
|
+
*/
|
263
|
+
}, {
|
264
|
+
key: "draw",
|
265
|
+
value: function draw() {
|
266
|
+
var fastDraw = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
267
|
+
var wtSettings = this.wtSettings;
|
268
|
+
var _this$dataAccessObjec = this.dataAccessObject,
|
269
|
+
wtOverlays = _this$dataAccessObjec.wtOverlays,
|
270
|
+
wtViewport = _this$dataAccessObjec.wtViewport;
|
271
|
+
var totalRows = wtSettings.getSetting('totalRows');
|
272
|
+
var totalColumns = wtSettings.getSetting('totalColumns');
|
273
|
+
var rowHeaders = wtSettings.getSetting('rowHeaders');
|
274
|
+
var rowHeadersCount = rowHeaders.length;
|
275
|
+
var columnHeaders = wtSettings.getSetting('columnHeaders');
|
276
|
+
var columnHeadersCount = columnHeaders.length;
|
277
|
+
var syncScroll = false;
|
278
|
+
var runFastDraw = fastDraw;
|
279
|
+
if (this.isMaster) {
|
280
|
+
this.holderOffset = offset(this.holder);
|
281
|
+
runFastDraw = wtViewport.createRenderCalculators(runFastDraw);
|
282
|
+
if (rowHeadersCount && !wtSettings.getSetting('fixedColumnsStart')) {
|
283
|
+
var leftScrollPos = wtOverlays.inlineStartOverlay.getScrollPosition();
|
284
|
+
var previousState = this.correctHeaderWidth;
|
285
|
+
this.correctHeaderWidth = leftScrollPos !== 0;
|
286
|
+
if (previousState !== this.correctHeaderWidth) {
|
287
|
+
runFastDraw = false;
|
288
|
+
}
|
289
|
+
}
|
290
|
+
}
|
291
|
+
if (this.isMaster) {
|
292
|
+
syncScroll = wtOverlays.updateStateOfRendering();
|
293
|
+
}
|
294
|
+
if (runFastDraw) {
|
295
|
+
if (this.isMaster) {
|
296
|
+
// in case we only scrolled without redraw, update visible rows information in oldRowsCalculator
|
297
|
+
wtViewport.createVisibleCalculators();
|
298
|
+
}
|
299
|
+
if (wtOverlays) {
|
300
|
+
wtOverlays.refresh(true);
|
301
|
+
}
|
302
|
+
} else {
|
303
|
+
if (this.isMaster) {
|
304
|
+
this.tableOffset = offset(this.TABLE);
|
305
|
+
} else {
|
306
|
+
this.tableOffset = this.dataAccessObject.parentTableOffset;
|
307
|
+
}
|
308
|
+
var startRow = totalRows > 0 ? this.getFirstRenderedRow() : 0;
|
309
|
+
var startColumn = totalColumns > 0 ? this.getFirstRenderedColumn() : 0;
|
310
|
+
this.rowFilter = new RowFilter(startRow, totalRows, columnHeadersCount);
|
311
|
+
this.columnFilter = new ColumnFilter(startColumn, totalColumns, rowHeadersCount);
|
312
|
+
var performRedraw = true;
|
313
|
+
|
314
|
+
// Only master table rendering can be skipped
|
315
|
+
if (this.isMaster) {
|
316
|
+
this.alignOverlaysWithTrimmingContainer(); // todo It calls method from child class (MasterTable).
|
317
|
+
var skipRender = {};
|
318
|
+
this.wtSettings.getSetting('beforeDraw', true, skipRender);
|
319
|
+
performRedraw = skipRender.skipRender !== true;
|
320
|
+
}
|
321
|
+
if (performRedraw) {
|
322
|
+
this.tableRenderer.setHeaderContentRenderers(rowHeaders, columnHeaders);
|
323
|
+
if (this.is(CLONE_BOTTOM) || this.is(CLONE_BOTTOM_INLINE_START_CORNER)) {
|
324
|
+
// do NOT render headers on the bottom or bottom-left corner overlay
|
325
|
+
this.tableRenderer.setHeaderContentRenderers(rowHeaders, []);
|
326
|
+
}
|
327
|
+
this.resetOversizedRows();
|
328
|
+
this.tableRenderer.setViewportSize(this.getRenderedRowsCount(), this.getRenderedColumnsCount()).setFilters(this.rowFilter, this.columnFilter).render();
|
329
|
+
var workspaceWidth;
|
330
|
+
if (this.isMaster) {
|
331
|
+
workspaceWidth = this.dataAccessObject.workspaceWidth;
|
332
|
+
this.dataAccessObject.wtViewport.containerWidth = null;
|
333
|
+
this.markOversizedColumnHeaders();
|
334
|
+
}
|
335
|
+
this.adjustColumnHeaderHeights();
|
336
|
+
if (this.isMaster || this.is(CLONE_BOTTOM)) {
|
337
|
+
this.markOversizedRows();
|
338
|
+
}
|
339
|
+
if (this.isMaster) {
|
340
|
+
this.dataAccessObject.wtViewport.createVisibleCalculators();
|
341
|
+
this.dataAccessObject.wtOverlays.refresh(false);
|
342
|
+
this.dataAccessObject.wtOverlays.applyToDOM();
|
343
|
+
var hiderWidth = outerWidth(this.hider);
|
344
|
+
var tableWidth = outerWidth(this.TABLE);
|
345
|
+
if (hiderWidth !== 0 && tableWidth !== hiderWidth) {
|
346
|
+
// Recalculate the column widths, if width changes made in the overlays removed the scrollbar, thus changing the viewport width.
|
347
|
+
this.columnUtils.calculateWidths();
|
348
|
+
this.tableRenderer.renderer.colGroup.render();
|
349
|
+
}
|
350
|
+
if (workspaceWidth !== this.dataAccessObject.wtViewport.getWorkspaceWidth()) {
|
351
|
+
// workspace width changed though to shown/hidden vertical scrollbar. Let's reapply stretching
|
352
|
+
this.dataAccessObject.wtViewport.containerWidth = null;
|
353
|
+
this.columnUtils.calculateWidths();
|
354
|
+
this.tableRenderer.renderer.colGroup.render();
|
355
|
+
}
|
356
|
+
this.wtSettings.getSetting('onDraw', true);
|
357
|
+
} else if (this.is(CLONE_BOTTOM)) {
|
358
|
+
this.dataAccessObject.cloneSource.wtOverlays.adjustElementsSize();
|
359
|
+
}
|
360
|
+
}
|
361
|
+
}
|
362
|
+
var positionChanged = false;
|
363
|
+
if (this.isMaster) {
|
364
|
+
positionChanged = wtOverlays.topOverlay.resetFixedPosition();
|
365
|
+
if (wtOverlays.bottomOverlay.clone) {
|
366
|
+
positionChanged = wtOverlays.bottomOverlay.resetFixedPosition() || positionChanged;
|
367
|
+
}
|
368
|
+
positionChanged = wtOverlays.inlineStartOverlay.resetFixedPosition() || positionChanged;
|
369
|
+
if (wtOverlays.topInlineStartCornerOverlay) {
|
370
|
+
wtOverlays.topInlineStartCornerOverlay.resetFixedPosition();
|
371
|
+
}
|
372
|
+
if (wtOverlays.bottomInlineStartCornerOverlay && wtOverlays.bottomInlineStartCornerOverlay.clone) {
|
373
|
+
wtOverlays.bottomInlineStartCornerOverlay.resetFixedPosition();
|
374
|
+
}
|
375
|
+
}
|
376
|
+
if (positionChanged) {
|
377
|
+
// It refreshes the cells borders caused by a 1px shift (introduced by overlays which add or
|
378
|
+
// remove `innerBorderTop` and `innerBorderInlineStart` CSS classes to the DOM element. This happens
|
379
|
+
// when there is a switch between rendering from 0 to N rows/columns and vice versa).
|
380
|
+
wtOverlays.refreshAll(); // `refreshAll()` internally already calls `refreshSelections()` method
|
381
|
+
wtOverlays.adjustElementsSize();
|
382
|
+
} else {
|
383
|
+
this.refreshSelections(runFastDraw);
|
384
|
+
}
|
385
|
+
if (syncScroll) {
|
386
|
+
wtOverlays.syncScrollWithMaster();
|
387
|
+
}
|
388
|
+
this.dataAccessObject.drawn = true;
|
389
|
+
return this;
|
390
|
+
}
|
391
|
+
|
392
|
+
/**
|
393
|
+
* @param {number} col The visual column index.
|
394
|
+
*/
|
395
|
+
}, {
|
396
|
+
key: "markIfOversizedColumnHeader",
|
397
|
+
value: function markIfOversizedColumnHeader(col) {
|
398
|
+
var sourceColIndex = this.columnFilter.renderedToSource(col);
|
399
|
+
var level = this.wtSettings.getSetting('columnHeaders').length;
|
400
|
+
var defaultRowHeight = this.wtSettings.getSetting('defaultRowHeight');
|
401
|
+
var previousColHeaderHeight;
|
402
|
+
var currentHeader;
|
403
|
+
var currentHeaderHeight;
|
404
|
+
var columnHeaderHeightSetting = this.wtSettings.getSetting('columnHeaderHeight') || [];
|
405
|
+
while (level) {
|
406
|
+
level -= 1;
|
407
|
+
previousColHeaderHeight = this.getColumnHeaderHeight(level);
|
408
|
+
currentHeader = this.getColumnHeader(sourceColIndex, level);
|
409
|
+
if (!currentHeader) {
|
410
|
+
/* eslint-disable no-continue */
|
411
|
+
continue;
|
412
|
+
}
|
413
|
+
currentHeaderHeight = innerHeight(currentHeader);
|
414
|
+
if (!previousColHeaderHeight && defaultRowHeight < currentHeaderHeight || previousColHeaderHeight < currentHeaderHeight) {
|
415
|
+
this.dataAccessObject.wtViewport.oversizedColumnHeaders[level] = currentHeaderHeight;
|
416
|
+
}
|
417
|
+
if (Array.isArray(columnHeaderHeightSetting)) {
|
418
|
+
if (columnHeaderHeightSetting[level] !== null && columnHeaderHeightSetting[level] !== void 0) {
|
419
|
+
this.dataAccessObject.wtViewport.oversizedColumnHeaders[level] = columnHeaderHeightSetting[level];
|
420
|
+
}
|
421
|
+
} else if (!isNaN(columnHeaderHeightSetting)) {
|
422
|
+
this.dataAccessObject.wtViewport.oversizedColumnHeaders[level] = columnHeaderHeightSetting;
|
423
|
+
}
|
424
|
+
if (this.dataAccessObject.wtViewport.oversizedColumnHeaders[level] < (columnHeaderHeightSetting[level] || columnHeaderHeightSetting)) {
|
425
|
+
this.dataAccessObject.wtViewport.oversizedColumnHeaders[level] = columnHeaderHeightSetting[level] || columnHeaderHeightSetting; // eslint-disable-line max-len
|
426
|
+
}
|
427
|
+
}
|
428
|
+
}
|
429
|
+
|
430
|
+
/**
|
431
|
+
*
|
432
|
+
*/
|
433
|
+
}, {
|
434
|
+
key: "adjustColumnHeaderHeights",
|
435
|
+
value: function adjustColumnHeaderHeights() {
|
436
|
+
var wtSettings = this.wtSettings;
|
437
|
+
var children = this.THEAD.childNodes;
|
438
|
+
var oversizedColumnHeaders = this.dataAccessObject.wtViewport.oversizedColumnHeaders;
|
439
|
+
var columnHeaders = wtSettings.getSetting('columnHeaders');
|
440
|
+
for (var i = 0, len = columnHeaders.length; i < len; i++) {
|
441
|
+
if (oversizedColumnHeaders[i]) {
|
442
|
+
if (!children[i] || children[i].childNodes.length === 0) {
|
443
|
+
return;
|
444
|
+
}
|
445
|
+
children[i].childNodes[0].style.height = "".concat(oversizedColumnHeaders[i], "px");
|
446
|
+
}
|
447
|
+
}
|
448
|
+
}
|
449
|
+
|
450
|
+
/**
|
451
|
+
* Resets cache of row heights. The cache should be cached for each render cycle in a case
|
452
|
+
* when new cell values have content which increases/decreases cell height.
|
453
|
+
*/
|
454
|
+
}, {
|
455
|
+
key: "resetOversizedRows",
|
456
|
+
value: function resetOversizedRows() {
|
457
|
+
var wtSettings = this.wtSettings;
|
458
|
+
var wtViewport = this.dataAccessObject.wtViewport;
|
459
|
+
if (!this.isMaster && !this.is(CLONE_BOTTOM)) {
|
460
|
+
return;
|
461
|
+
}
|
462
|
+
if (!wtSettings.getSetting('externalRowCalculator')) {
|
463
|
+
var rowsToRender = this.getRenderedRowsCount();
|
464
|
+
|
465
|
+
// Reset the oversized row cache for rendered rows
|
466
|
+
for (var visibleRowIndex = 0; visibleRowIndex < rowsToRender; visibleRowIndex++) {
|
467
|
+
var sourceRow = this.rowFilter.renderedToSource(visibleRowIndex);
|
468
|
+
if (wtViewport.oversizedRows && wtViewport.oversizedRows[sourceRow]) {
|
469
|
+
wtViewport.oversizedRows[sourceRow] = void 0;
|
470
|
+
}
|
471
|
+
}
|
472
|
+
}
|
473
|
+
}
|
474
|
+
|
475
|
+
/**
|
476
|
+
* @param {string} className The CSS class name to remove from the table cells.
|
477
|
+
*/
|
478
|
+
}, {
|
479
|
+
key: "removeClassFromCells",
|
480
|
+
value: function removeClassFromCells(className) {
|
481
|
+
var nodes = this.TABLE.querySelectorAll(".".concat(className));
|
482
|
+
for (var i = 0, len = nodes.length; i < len; i++) {
|
483
|
+
removeClass(nodes[i], className);
|
484
|
+
}
|
485
|
+
}
|
486
|
+
|
487
|
+
/**
|
488
|
+
* Refresh the table selection by re-rendering Selection instances connected with that instance.
|
489
|
+
*
|
490
|
+
* @param {boolean} fastDraw If fast drawing is enabled than additionally className clearing is applied.
|
491
|
+
*/
|
492
|
+
}, {
|
493
|
+
key: "refreshSelections",
|
494
|
+
value: function refreshSelections(fastDraw) {
|
495
|
+
var wtSettings = this.wtSettings;
|
496
|
+
var selections = this.dataAccessObject.selections;
|
497
|
+
if (!selections) {
|
498
|
+
return;
|
499
|
+
}
|
500
|
+
var highlights = Array.from(selections);
|
501
|
+
var len = highlights.length;
|
502
|
+
if (fastDraw) {
|
503
|
+
var classesToRemove = [];
|
504
|
+
for (var i = 0; i < len; i++) {
|
505
|
+
var _highlights$i$setting = highlights[i].settings,
|
506
|
+
highlightHeaderClassName = _highlights$i$setting.highlightHeaderClassName,
|
507
|
+
highlightRowClassName = _highlights$i$setting.highlightRowClassName,
|
508
|
+
highlightColumnClassName = _highlights$i$setting.highlightColumnClassName;
|
509
|
+
var classNames = highlights[i].classNames;
|
510
|
+
var classNamesLength = classNames.length;
|
511
|
+
for (var j = 0; j < classNamesLength; j++) {
|
512
|
+
if (!classesToRemove.includes(classNames[j])) {
|
513
|
+
classesToRemove.push(classNames[j]);
|
514
|
+
}
|
515
|
+
}
|
516
|
+
if (highlightHeaderClassName && !classesToRemove.includes(highlightHeaderClassName)) {
|
517
|
+
classesToRemove.push(highlightHeaderClassName);
|
518
|
+
}
|
519
|
+
if (highlightRowClassName && !classesToRemove.includes(highlightRowClassName)) {
|
520
|
+
classesToRemove.push(highlightRowClassName);
|
521
|
+
}
|
522
|
+
if (highlightColumnClassName && !classesToRemove.includes(highlightColumnClassName)) {
|
523
|
+
classesToRemove.push(highlightColumnClassName);
|
524
|
+
}
|
525
|
+
}
|
526
|
+
var additionalClassesToRemove = wtSettings.getSetting('onBeforeRemoveCellClassNames');
|
527
|
+
if (Array.isArray(additionalClassesToRemove)) {
|
528
|
+
for (var _i = 0; _i < additionalClassesToRemove.length; _i++) {
|
529
|
+
classesToRemove.push(additionalClassesToRemove[_i]);
|
530
|
+
}
|
531
|
+
}
|
532
|
+
var classesToRemoveLength = classesToRemove.length;
|
533
|
+
for (var _i2 = 0; _i2 < classesToRemoveLength; _i2++) {
|
534
|
+
// there was no rerender, so we need to remove classNames by ourselves
|
535
|
+
this.removeClassFromCells(classesToRemove[_i2]);
|
536
|
+
}
|
537
|
+
}
|
538
|
+
for (var _i3 = 0; _i3 < len; _i3++) {
|
539
|
+
highlights[_i3].draw(this.facadeGetter(), fastDraw);
|
540
|
+
}
|
541
|
+
}
|
542
|
+
|
543
|
+
/**
|
544
|
+
* Get cell element at coords.
|
545
|
+
* Negative coords.row or coords.col are used to retrieve header cells. If there are multiple header levels, the
|
546
|
+
* negative value corresponds to the distance from the working area. For example, when there are 3 levels of column
|
547
|
+
* headers, coords.col=-1 corresponds to the most inner header element, while coords.col=-3 corresponds to the
|
548
|
+
* outmost header element.
|
549
|
+
*
|
550
|
+
* In case an element for the coords is not rendered, the method returns an error code.
|
551
|
+
* To produce the error code, the input parameters are validated in the order in which they
|
552
|
+
* are given. Thus, if both the row and the column coords are out of the rendered bounds,
|
553
|
+
* the method returns the error code for the row.
|
554
|
+
*
|
555
|
+
* @param {CellCoords} coords The cell coordinates.
|
556
|
+
* @returns {HTMLElement|number} HTMLElement on success or Number one of the exit codes on error:
|
557
|
+
* -1 row before viewport
|
558
|
+
* -2 row after viewport
|
559
|
+
* -3 column before viewport
|
560
|
+
* -4 column after viewport.
|
561
|
+
*/
|
562
|
+
}, {
|
563
|
+
key: "getCell",
|
564
|
+
value: function getCell(coords) {
|
565
|
+
var row = coords.row;
|
566
|
+
var column = coords.col;
|
567
|
+
var hookResult = this.wtSettings.getSetting('onModifyGetCellCoords', row, column);
|
568
|
+
if (hookResult && Array.isArray(hookResult)) {
|
569
|
+
var _hookResult = _slicedToArray(hookResult, 2);
|
570
|
+
row = _hookResult[0];
|
571
|
+
column = _hookResult[1];
|
572
|
+
}
|
573
|
+
if (this.isRowBeforeRenderedRows(row)) {
|
574
|
+
// row before rendered rows
|
575
|
+
return -1;
|
576
|
+
} else if (this.isRowAfterRenderedRows(row)) {
|
577
|
+
// row after rendered rows
|
578
|
+
return -2;
|
579
|
+
} else if (this.isColumnBeforeRenderedColumns(column)) {
|
580
|
+
// column before rendered columns
|
581
|
+
return -3;
|
582
|
+
} else if (this.isColumnAfterRenderedColumns(column)) {
|
583
|
+
// column after rendered columns
|
584
|
+
return -4;
|
585
|
+
}
|
586
|
+
var TR;
|
587
|
+
if (row < 0) {
|
588
|
+
TR = this.THEAD.childNodes[this.rowFilter.sourceRowToVisibleColHeadedRow(row)];
|
589
|
+
} else {
|
590
|
+
TR = this.TBODY.childNodes[this.rowFilter.sourceToRendered(row)];
|
591
|
+
}
|
592
|
+
if (!TR && row >= 0) {
|
593
|
+
throw new Error('TR was expected to be rendered but is not');
|
594
|
+
}
|
595
|
+
var TD = TR.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(column)];
|
596
|
+
if (!TD && column >= 0) {
|
597
|
+
throw new Error('TD or TH was expected to be rendered but is not');
|
598
|
+
}
|
599
|
+
return TD;
|
600
|
+
}
|
601
|
+
|
602
|
+
/**
|
603
|
+
* GetColumnHeader.
|
604
|
+
*
|
605
|
+
* @param {number} col Column index.
|
606
|
+
* @param {number} [level=0] Header level (0 = most distant to the table).
|
607
|
+
* @returns {object} HTMLElement on success or undefined on error.
|
608
|
+
*/
|
609
|
+
}, {
|
610
|
+
key: "getColumnHeader",
|
611
|
+
value: function getColumnHeader(col) {
|
612
|
+
var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
613
|
+
var TR = this.THEAD.childNodes[level];
|
614
|
+
return TR === null || TR === void 0 ? void 0 : TR.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(col)];
|
615
|
+
}
|
616
|
+
|
617
|
+
/**
|
618
|
+
* Gets all columns headers (TH elements) from the table.
|
619
|
+
*
|
620
|
+
* @param {number} column A source column index.
|
621
|
+
* @returns {HTMLTableCellElement[]}
|
622
|
+
*/
|
623
|
+
}, {
|
624
|
+
key: "getColumnHeaders",
|
625
|
+
value: function getColumnHeaders(column) {
|
626
|
+
var THs = [];
|
627
|
+
var visibleColumn = this.columnFilter.sourceColumnToVisibleRowHeadedColumn(column);
|
628
|
+
this.THEAD.childNodes.forEach(function (TR) {
|
629
|
+
var TH = TR.childNodes[visibleColumn];
|
630
|
+
if (TH) {
|
631
|
+
THs.push(TH);
|
632
|
+
}
|
633
|
+
});
|
634
|
+
return THs;
|
635
|
+
}
|
636
|
+
|
637
|
+
/**
|
638
|
+
* GetRowHeader.
|
639
|
+
*
|
640
|
+
* @param {number} row Row index.
|
641
|
+
* @param {number} [level=0] Header level (0 = most distant to the table).
|
642
|
+
* @returns {HTMLElement} HTMLElement on success or Number one of the exit codes on error: `null table doesn't have row headers`.
|
643
|
+
*/
|
644
|
+
}, {
|
645
|
+
key: "getRowHeader",
|
646
|
+
value: function getRowHeader(row) {
|
647
|
+
var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
648
|
+
if (this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0) === 0) {
|
649
|
+
return;
|
650
|
+
}
|
651
|
+
var rowHeadersCount = this.wtSettings.getSetting('rowHeaders').length;
|
652
|
+
if (level >= rowHeadersCount) {
|
653
|
+
return;
|
654
|
+
}
|
655
|
+
var TR = this.TBODY.childNodes[this.rowFilter.sourceToRendered(row)];
|
656
|
+
return TR === null || TR === void 0 ? void 0 : TR.childNodes[level];
|
657
|
+
}
|
658
|
+
|
659
|
+
/**
|
660
|
+
* Gets all rows headers (TH elements) from the table.
|
661
|
+
*
|
662
|
+
* @param {number} row A source row index.
|
663
|
+
* @returns {HTMLTableCellElement[]}
|
664
|
+
*/
|
665
|
+
}, {
|
666
|
+
key: "getRowHeaders",
|
667
|
+
value: function getRowHeaders(row) {
|
668
|
+
if (this.columnFilter.sourceColumnToVisibleRowHeadedColumn(0) === 0) {
|
669
|
+
return [];
|
670
|
+
}
|
671
|
+
var THs = [];
|
672
|
+
var rowHeadersCount = this.wtSettings.getSetting('rowHeaders').length;
|
673
|
+
for (var renderedRowIndex = 0; renderedRowIndex < rowHeadersCount; renderedRowIndex++) {
|
674
|
+
var TR = this.TBODY.childNodes[this.rowFilter.sourceToRendered(row)];
|
675
|
+
var TH = TR === null || TR === void 0 ? void 0 : TR.childNodes[renderedRowIndex];
|
676
|
+
if (TH) {
|
677
|
+
THs.push(TH);
|
678
|
+
}
|
679
|
+
}
|
680
|
+
return THs;
|
681
|
+
}
|
682
|
+
|
683
|
+
/**
|
684
|
+
* Returns cell coords object for a given TD (or a child element of a TD element).
|
685
|
+
*
|
686
|
+
* @param {HTMLTableCellElement} TD A cell DOM element (or a child of one).
|
687
|
+
* @returns {CellCoords|null} The coordinates of the provided TD element (or the closest TD element) or null, if the provided element is not applicable.
|
688
|
+
*/
|
689
|
+
}, {
|
690
|
+
key: "getCoords",
|
691
|
+
value: function getCoords(TD) {
|
692
|
+
var cellElement = TD;
|
693
|
+
if (cellElement.nodeName !== 'TD' && cellElement.nodeName !== 'TH') {
|
694
|
+
cellElement = closest(cellElement, ['TD', 'TH']);
|
695
|
+
}
|
696
|
+
if (cellElement === null) {
|
697
|
+
return null;
|
698
|
+
}
|
699
|
+
var TR = cellElement.parentNode;
|
700
|
+
var CONTAINER = TR.parentNode;
|
701
|
+
var row = index(TR);
|
702
|
+
var col = cellElement.cellIndex;
|
703
|
+
if (overlayContainsElement(CLONE_TOP_INLINE_START_CORNER, cellElement, this.wtRootElement) || overlayContainsElement(CLONE_TOP, cellElement, this.wtRootElement)) {
|
704
|
+
if (CONTAINER.nodeName === 'THEAD') {
|
705
|
+
row -= CONTAINER.childNodes.length;
|
706
|
+
}
|
707
|
+
} else if (overlayContainsElement(CLONE_BOTTOM_INLINE_START_CORNER, cellElement, this.wtRootElement) || overlayContainsElement(CLONE_BOTTOM, cellElement, this.wtRootElement)) {
|
708
|
+
var totalRows = this.wtSettings.getSetting('totalRows');
|
709
|
+
row = totalRows - CONTAINER.childNodes.length + row;
|
710
|
+
} else if (CONTAINER === this.THEAD) {
|
711
|
+
row = this.rowFilter.visibleColHeadedRowToSourceRow(row);
|
712
|
+
} else {
|
713
|
+
row = this.rowFilter.renderedToSource(row);
|
714
|
+
}
|
715
|
+
if (overlayContainsElement(CLONE_TOP_INLINE_START_CORNER, cellElement, this.wtRootElement) || overlayContainsElement(CLONE_INLINE_START, cellElement, this.wtRootElement) || overlayContainsElement(CLONE_BOTTOM_INLINE_START_CORNER, cellElement, this.wtRootElement)) {
|
716
|
+
col = this.columnFilter.offsettedTH(col);
|
717
|
+
} else {
|
718
|
+
col = this.columnFilter.visibleRowHeadedColumnToSourceColumn(col);
|
719
|
+
}
|
720
|
+
return this.wot.createCellCoords(row, col);
|
721
|
+
}
|
722
|
+
|
723
|
+
/**
|
724
|
+
* Check if any of the rendered rows is higher than expected, and if so, cache them.
|
725
|
+
*/
|
726
|
+
}, {
|
727
|
+
key: "markOversizedRows",
|
728
|
+
value: function markOversizedRows() {
|
729
|
+
if (this.wtSettings.getSetting('externalRowCalculator')) {
|
730
|
+
return;
|
731
|
+
}
|
732
|
+
var rowCount = this.TBODY.childNodes.length;
|
733
|
+
var expectedTableHeight = rowCount * this.wtSettings.getSetting('defaultRowHeight');
|
734
|
+
var actualTableHeight = innerHeight(this.TBODY) - 1;
|
735
|
+
var previousRowHeight;
|
736
|
+
var rowInnerHeight;
|
737
|
+
var sourceRowIndex;
|
738
|
+
var currentTr;
|
739
|
+
var rowHeader;
|
740
|
+
if (expectedTableHeight === actualTableHeight && !this.wtSettings.getSetting('fixedRowsBottom')) {
|
741
|
+
// If the actual table height equals rowCount * default single row height, no row is oversized -> no need to iterate over them
|
742
|
+
return;
|
743
|
+
}
|
744
|
+
while (rowCount) {
|
745
|
+
rowCount -= 1;
|
746
|
+
sourceRowIndex = this.rowFilter.renderedToSource(rowCount);
|
747
|
+
previousRowHeight = this.getRowHeight(sourceRowIndex);
|
748
|
+
currentTr = this.getTrForRow(sourceRowIndex);
|
749
|
+
rowHeader = currentTr.querySelector('th');
|
750
|
+
if (rowHeader) {
|
751
|
+
rowInnerHeight = innerHeight(rowHeader);
|
752
|
+
} else {
|
753
|
+
rowInnerHeight = innerHeight(currentTr) - 1;
|
754
|
+
}
|
755
|
+
if (!previousRowHeight && this.wtSettings.getSetting('defaultRowHeight') < rowInnerHeight || previousRowHeight < rowInnerHeight) {
|
756
|
+
rowInnerHeight += 1;
|
757
|
+
this.dataAccessObject.wtViewport.oversizedRows[sourceRowIndex] = rowInnerHeight;
|
758
|
+
}
|
759
|
+
}
|
760
|
+
}
|
761
|
+
|
762
|
+
/**
|
763
|
+
* @param {number} row The visual row index.
|
764
|
+
* @returns {HTMLTableElement}
|
765
|
+
*/
|
766
|
+
}, {
|
767
|
+
key: "getTrForRow",
|
768
|
+
value: function getTrForRow(row) {
|
769
|
+
return this.TBODY.childNodes[this.rowFilter.sourceToRendered(row)];
|
770
|
+
}
|
771
|
+
|
772
|
+
/**
|
773
|
+
* Checks if the column index (negative value from -1 to N) is rendered.
|
774
|
+
*
|
775
|
+
* @param {number} column The column index (negative value from -1 to N).
|
776
|
+
* @returns {boolean}
|
777
|
+
*/
|
778
|
+
}, {
|
779
|
+
key: "isColumnHeaderRendered",
|
780
|
+
value: function isColumnHeaderRendered(column) {
|
781
|
+
if (column >= 0) {
|
782
|
+
return false;
|
783
|
+
}
|
784
|
+
var rowHeaders = this.wtSettings.getSetting('rowHeaders');
|
785
|
+
var rowHeadersCount = rowHeaders.length;
|
786
|
+
return Math.abs(column) <= rowHeadersCount;
|
787
|
+
}
|
788
|
+
|
789
|
+
/**
|
790
|
+
* Checks if the row index (negative value from -1 to N) is rendered.
|
791
|
+
*
|
792
|
+
* @param {number} row The row index (negative value from -1 to N).
|
793
|
+
* @returns {boolean}
|
794
|
+
*/
|
795
|
+
}, {
|
796
|
+
key: "isRowHeaderRendered",
|
797
|
+
value: function isRowHeaderRendered(row) {
|
798
|
+
if (row >= 0) {
|
799
|
+
return false;
|
800
|
+
}
|
801
|
+
var columnHeaders = this.wtSettings.getSetting('columnHeaders');
|
802
|
+
var columnHeadersCount = columnHeaders.length;
|
803
|
+
return Math.abs(row) <= columnHeadersCount;
|
804
|
+
}
|
805
|
+
|
806
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
807
|
+
/**
|
808
|
+
* Check if the given row index is lower than the index of the first row that
|
809
|
+
* is currently rendered and return TRUE in that case, or FALSE otherwise.
|
810
|
+
*
|
811
|
+
* Negative row index is used to check the columns' headers.
|
812
|
+
*
|
813
|
+
* Headers
|
814
|
+
* +--------------+ │
|
815
|
+
* -3 │ │ │ │ │
|
816
|
+
* +--------------+ │
|
817
|
+
* -2 │ │ │ │ │ TRUE
|
818
|
+
* +--------------+ │
|
819
|
+
* -1 │ │ │ │ │
|
820
|
+
* Cells +==================+ │
|
821
|
+
* 0 ┇ ┇ ┇ ┇ <--- For fixedRowsTop: 1 │
|
822
|
+
* +--------------+ the master overlay do ---+ first rendered row (index 1)
|
823
|
+
* 1 │ A2 │ B2 │ C2 │ not render the first row. │
|
824
|
+
* +--------------+ │ FALSE
|
825
|
+
* 2 │ A3 │ B3 │ C3 │ │
|
826
|
+
* +--------------+ ---+ last rendered row
|
827
|
+
* │
|
828
|
+
* │ FALSE
|
829
|
+
*
|
830
|
+
* @param {number} row The visual row index.
|
831
|
+
* @memberof Table#
|
832
|
+
* @function isRowBeforeRenderedRows
|
833
|
+
* @returns {boolean}
|
834
|
+
*/
|
835
|
+
/* eslint-enable jsdoc/require-description-complete-sentence */
|
836
|
+
}, {
|
837
|
+
key: "isRowBeforeRenderedRows",
|
838
|
+
value: function isRowBeforeRenderedRows(row) {
|
839
|
+
var first = this.getFirstRenderedRow();
|
840
|
+
|
841
|
+
// Check the headers only in case when the first rendered row is -1 or 0.
|
842
|
+
// This is an indication that the overlay is placed on the most top position.
|
843
|
+
if (row < 0 && first <= 0) {
|
844
|
+
return !this.isRowHeaderRendered(row);
|
845
|
+
}
|
846
|
+
return row < first;
|
847
|
+
}
|
848
|
+
|
849
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
850
|
+
/**
|
851
|
+
* Check if the given column index is greater than the index of the last column that
|
852
|
+
* is currently rendered and return TRUE in that case, or FALSE otherwise.
|
853
|
+
*
|
854
|
+
* The negative row index is used to check the columns' headers. However,
|
855
|
+
* keep in mind that for negative indexes, the method always returns FALSE as
|
856
|
+
* it is not possible to render headers partially. The "after" index can not be
|
857
|
+
* lower than -1.
|
858
|
+
*
|
859
|
+
* Headers
|
860
|
+
* +--------------+ │
|
861
|
+
* -3 │ │ │ │ │
|
862
|
+
* +--------------+ │
|
863
|
+
* -2 │ │ │ │ │ FALSE
|
864
|
+
* +--------------+ │
|
865
|
+
* -1 │ │ │ │ │
|
866
|
+
* Cells +==================+ │
|
867
|
+
* 0 ┇ ┇ ┇ ┇ <--- For fixedRowsTop: 1 │
|
868
|
+
* +--------------+ the master overlay do ---+ first rendered row (index 1)
|
869
|
+
* 1 │ A2 │ B2 │ C2 │ not render the first rows │
|
870
|
+
* +--------------+ │ FALSE
|
871
|
+
* 2 │ A3 │ B3 │ C3 │ │
|
872
|
+
* +--------------+ ---+ last rendered row
|
873
|
+
* │
|
874
|
+
* │ TRUE
|
875
|
+
*
|
876
|
+
* @param {number} row The visual row index.
|
877
|
+
* @memberof Table#
|
878
|
+
* @function isRowAfterRenderedRows
|
879
|
+
* @returns {boolean}
|
880
|
+
*/
|
881
|
+
/* eslint-enable jsdoc/require-description-complete-sentence */
|
882
|
+
}, {
|
883
|
+
key: "isRowAfterRenderedRows",
|
884
|
+
value: function isRowAfterRenderedRows(row) {
|
885
|
+
return row > this.getLastRenderedRow();
|
886
|
+
}
|
887
|
+
|
888
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
889
|
+
/**
|
890
|
+
* Check if the given column index is lower than the index of the first column that
|
891
|
+
* is currently rendered and return TRUE in that case, or FALSE otherwise.
|
892
|
+
*
|
893
|
+
* Negative column index is used to check the rows' headers.
|
894
|
+
*
|
895
|
+
* For fixedColumnsStart: 1 the master overlay
|
896
|
+
* do not render this first columns.
|
897
|
+
* Headers -3 -2 -1 |
|
898
|
+
* +----+----+----║┄ ┄ +------+------+
|
899
|
+
* │ │ │ ║ │ B1 │ C1 │
|
900
|
+
* +--------------║┄ ┄ --------------│
|
901
|
+
* │ │ │ ║ │ B2 │ C2 │
|
902
|
+
* +--------------║┄ ┄ --------------│
|
903
|
+
* │ │ │ ║ │ B3 │ C3 │
|
904
|
+
* +----+----+----║┄ ┄ +------+------+
|
905
|
+
* ╷ ╷
|
906
|
+
* -------------------------+-------------+---------------->
|
907
|
+
* TRUE first FALSE last FALSE
|
908
|
+
* rendered rendered
|
909
|
+
* column column
|
910
|
+
*
|
911
|
+
* @param {number} column The visual column index.
|
912
|
+
* @memberof Table#
|
913
|
+
* @function isColumnBeforeRenderedColumns
|
914
|
+
* @returns {boolean}
|
915
|
+
*/
|
916
|
+
/* eslint-enable jsdoc/require-description-complete-sentence */
|
917
|
+
}, {
|
918
|
+
key: "isColumnBeforeRenderedColumns",
|
919
|
+
value: function isColumnBeforeRenderedColumns(column) {
|
920
|
+
var first = this.getFirstRenderedColumn();
|
921
|
+
|
922
|
+
// Check the headers only in case when the first rendered column is -1 or 0.
|
923
|
+
// This is an indication that the overlay is placed on the most left position.
|
924
|
+
if (column < 0 && first <= 0) {
|
925
|
+
return !this.isColumnHeaderRendered(column);
|
926
|
+
}
|
927
|
+
return column < first;
|
928
|
+
}
|
929
|
+
|
930
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
931
|
+
/**
|
932
|
+
* Check if the given column index is greater than the index of the last column that
|
933
|
+
* is currently rendered and return TRUE in that case, or FALSE otherwise.
|
934
|
+
*
|
935
|
+
* The negative column index is used to check the rows' headers. However,
|
936
|
+
* keep in mind that for negative indexes, the method always returns FALSE as
|
937
|
+
* it is not possible to render headers partially. The "after" index can not be
|
938
|
+
* lower than -1.
|
939
|
+
*
|
940
|
+
* For fixedColumnsStart: 1 the master overlay
|
941
|
+
* do not render this first columns.
|
942
|
+
* Headers -3 -2 -1 |
|
943
|
+
* +----+----+----║┄ ┄ +------+------+
|
944
|
+
* │ │ │ ║ │ B1 │ C1 │
|
945
|
+
* +--------------║┄ ┄ --------------│
|
946
|
+
* │ │ │ ║ │ B2 │ C2 │
|
947
|
+
* +--------------║┄ ┄ --------------│
|
948
|
+
* │ │ │ ║ │ B3 │ C3 │
|
949
|
+
* +----+----+----║┄ ┄ +------+------+
|
950
|
+
* ╷ ╷
|
951
|
+
* -------------------------+-------------+---------------->
|
952
|
+
* FALSE first FALSE last TRUE
|
953
|
+
* rendered rendered
|
954
|
+
* column column
|
955
|
+
*
|
956
|
+
* @param {number} column The visual column index.
|
957
|
+
* @memberof Table#
|
958
|
+
* @function isColumnAfterRenderedColumns
|
959
|
+
* @returns {boolean}
|
960
|
+
*/
|
961
|
+
/* eslint-enable jsdoc/require-description-complete-sentence */
|
962
|
+
}, {
|
963
|
+
key: "isColumnAfterRenderedColumns",
|
964
|
+
value: function isColumnAfterRenderedColumns(column) {
|
965
|
+
return this.columnFilter && column > this.getLastRenderedColumn();
|
966
|
+
}
|
967
|
+
}, {
|
968
|
+
key: "isColumnAfterViewport",
|
969
|
+
value: function isColumnAfterViewport(column) {
|
970
|
+
return this.columnFilter && column > this.getLastVisibleColumn();
|
971
|
+
}
|
972
|
+
}, {
|
973
|
+
key: "isRowAfterViewport",
|
974
|
+
value: function isRowAfterViewport(row) {
|
975
|
+
return this.rowFilter && row > this.getLastVisibleRow();
|
976
|
+
}
|
977
|
+
}, {
|
978
|
+
key: "isColumnBeforeViewport",
|
979
|
+
value: function isColumnBeforeViewport(column) {
|
980
|
+
return this.columnFilter && this.columnFilter.sourceToRendered(column) < 0 && column >= 0;
|
981
|
+
}
|
982
|
+
}, {
|
983
|
+
key: "isLastRowFullyVisible",
|
984
|
+
value: function isLastRowFullyVisible() {
|
985
|
+
return this.getLastVisibleRow() === this.getLastRenderedRow();
|
986
|
+
}
|
987
|
+
}, {
|
988
|
+
key: "isLastColumnFullyVisible",
|
989
|
+
value: function isLastColumnFullyVisible() {
|
990
|
+
return this.getLastVisibleColumn() === this.getLastRenderedColumn();
|
991
|
+
}
|
992
|
+
}, {
|
993
|
+
key: "allRowsInViewport",
|
994
|
+
value: function allRowsInViewport() {
|
995
|
+
return this.wtSettings.getSetting('totalRows') === this.getVisibleRowsCount();
|
996
|
+
}
|
997
|
+
}, {
|
998
|
+
key: "allColumnsInViewport",
|
999
|
+
value: function allColumnsInViewport() {
|
1000
|
+
return this.wtSettings.getSetting('totalColumns') === this.getVisibleColumnsCount();
|
1001
|
+
}
|
1002
|
+
|
1003
|
+
/**
|
1004
|
+
* Checks if any of the row's cells content exceeds its initial height, and if so, returns the oversized height.
|
1005
|
+
*
|
1006
|
+
* @param {number} sourceRow The physical row index.
|
1007
|
+
* @returns {number}
|
1008
|
+
*/
|
1009
|
+
}, {
|
1010
|
+
key: "getRowHeight",
|
1011
|
+
value: function getRowHeight(sourceRow) {
|
1012
|
+
return this.rowUtils.getHeight(sourceRow);
|
1013
|
+
}
|
1014
|
+
|
1015
|
+
/**
|
1016
|
+
* @param {number} level The column level.
|
1017
|
+
* @returns {number}
|
1018
|
+
*/
|
1019
|
+
}, {
|
1020
|
+
key: "getColumnHeaderHeight",
|
1021
|
+
value: function getColumnHeaderHeight(level) {
|
1022
|
+
return this.columnUtils.getHeaderHeight(level);
|
1023
|
+
}
|
1024
|
+
|
1025
|
+
/**
|
1026
|
+
* @param {number} sourceColumn The physical column index.
|
1027
|
+
* @returns {number}
|
1028
|
+
*/
|
1029
|
+
}, {
|
1030
|
+
key: "getColumnWidth",
|
1031
|
+
value: function getColumnWidth(sourceColumn) {
|
1032
|
+
return this.columnUtils.getWidth(sourceColumn);
|
1033
|
+
}
|
1034
|
+
|
1035
|
+
/**
|
1036
|
+
* @param {number} sourceColumn The physical column index.
|
1037
|
+
* @returns {number}
|
1038
|
+
*/
|
1039
|
+
}, {
|
1040
|
+
key: "getStretchedColumnWidth",
|
1041
|
+
value: function getStretchedColumnWidth(sourceColumn) {
|
1042
|
+
return this.columnUtils.getStretchedColumnWidth(sourceColumn);
|
1043
|
+
}
|
1044
|
+
|
1045
|
+
/**
|
1046
|
+
* Checks if the table has defined size. It returns `true` when the table has width and height
|
1047
|
+
* set bigger than `0px`.
|
1048
|
+
*
|
1049
|
+
* @returns {boolean}
|
1050
|
+
*/
|
1051
|
+
}, {
|
1052
|
+
key: "hasDefinedSize",
|
1053
|
+
value: function hasDefinedSize() {
|
1054
|
+
return this.hasTableHeight && this.hasTableWidth;
|
1055
|
+
}
|
1056
|
+
|
1057
|
+
/**
|
1058
|
+
* Gets table's width. The returned width is the width of the rendered cells that fit in the
|
1059
|
+
* current viewport. The value may change depends on the viewport position (scroll position).
|
1060
|
+
*
|
1061
|
+
* @returns {number}
|
1062
|
+
*/
|
1063
|
+
}, {
|
1064
|
+
key: "getWidth",
|
1065
|
+
value: function getWidth() {
|
1066
|
+
return outerWidth(this.TABLE);
|
1067
|
+
}
|
1068
|
+
|
1069
|
+
/**
|
1070
|
+
* Gets table's height. The returned height is the height of the rendered cells that fit in the
|
1071
|
+
* current viewport. The value may change depends on the viewport position (scroll position).
|
1072
|
+
*
|
1073
|
+
* @returns {number}
|
1074
|
+
*/
|
1075
|
+
}, {
|
1076
|
+
key: "getHeight",
|
1077
|
+
value: function getHeight() {
|
1078
|
+
return outerHeight(this.TABLE);
|
1079
|
+
}
|
1080
|
+
|
1081
|
+
/**
|
1082
|
+
* Gets table's total width. The returned width is the width of all rendered cells (including headers)
|
1083
|
+
* that can be displayed in the table.
|
1084
|
+
*
|
1085
|
+
* @returns {number}
|
1086
|
+
*/
|
1087
|
+
}, {
|
1088
|
+
key: "getTotalWidth",
|
1089
|
+
value: function getTotalWidth() {
|
1090
|
+
var width = outerWidth(this.hider);
|
1091
|
+
|
1092
|
+
// when the overlay's table does not have any cells the hider returns 0, get then width from the table element
|
1093
|
+
return width !== 0 ? width : this.getWidth();
|
1094
|
+
}
|
1095
|
+
|
1096
|
+
/**
|
1097
|
+
* Gets table's total height. The returned height is the height of all rendered cells (including headers)
|
1098
|
+
* that can be displayed in the table.
|
1099
|
+
*
|
1100
|
+
* @returns {number}
|
1101
|
+
*/
|
1102
|
+
}, {
|
1103
|
+
key: "getTotalHeight",
|
1104
|
+
value: function getTotalHeight() {
|
1105
|
+
var height = outerHeight(this.hider);
|
1106
|
+
|
1107
|
+
// when the overlay's table does not have any cells the hider returns 0, get then height from the table element
|
1108
|
+
return height !== 0 ? height : this.getHeight();
|
1109
|
+
}
|
1110
|
+
|
1111
|
+
/**
|
1112
|
+
* Checks if the table is visible. It returns `true` when the holder element (or its parents)
|
1113
|
+
* has CSS 'display' property different than 'none'.
|
1114
|
+
*
|
1115
|
+
* @returns {boolean}
|
1116
|
+
*/
|
1117
|
+
}, {
|
1118
|
+
key: "isVisible",
|
1119
|
+
value: function isVisible() {
|
1120
|
+
return _isVisible(this.TABLE);
|
1121
|
+
}
|
1122
|
+
|
1123
|
+
/**
|
1124
|
+
* Modify row header widths provided by user in class contructor.
|
1125
|
+
*
|
1126
|
+
* @private
|
1127
|
+
* @param {Function} rowHeaderWidthFactory The function which can provide default width values for rows..
|
1128
|
+
* @returns {number}
|
1129
|
+
*/
|
1130
|
+
}, {
|
1131
|
+
key: "_modifyRowHeaderWidth",
|
1132
|
+
value: function _modifyRowHeaderWidth(rowHeaderWidthFactory) {
|
1133
|
+
var widths = isFunction(rowHeaderWidthFactory) ? rowHeaderWidthFactory() : null;
|
1134
|
+
if (Array.isArray(widths)) {
|
1135
|
+
widths = _toConsumableArray(widths);
|
1136
|
+
widths[widths.length - 1] = this._correctRowHeaderWidth(widths[widths.length - 1]);
|
1137
|
+
} else {
|
1138
|
+
widths = this._correctRowHeaderWidth(widths);
|
1139
|
+
}
|
1140
|
+
return widths;
|
1141
|
+
}
|
1142
|
+
|
1143
|
+
/**
|
1144
|
+
* Correct row header width if necessary.
|
1145
|
+
*
|
1146
|
+
* @private
|
1147
|
+
* @param {number} width The width to process.
|
1148
|
+
* @returns {number}
|
1149
|
+
*/
|
1150
|
+
}, {
|
1151
|
+
key: "_correctRowHeaderWidth",
|
1152
|
+
value: function _correctRowHeaderWidth(width) {
|
1153
|
+
var rowHeaderWidth = width;
|
1154
|
+
if (typeof width !== 'number') {
|
1155
|
+
rowHeaderWidth = this.wtSettings.getSetting('defaultColumnWidth');
|
1156
|
+
}
|
1157
|
+
if (this.correctHeaderWidth) {
|
1158
|
+
rowHeaderWidth += 1;
|
1159
|
+
}
|
1160
|
+
return rowHeaderWidth;
|
1161
|
+
}
|
1162
|
+
}]);
|
1163
|
+
return Table;
|
1164
|
+
}();
|
1165
|
+
export default Table;
|