handsontable 13.1.0 → 14.0.0-next-d97b156-20231027
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.
- package/3rdparty/walkontable/src/calculator/constants.js +3 -6
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +1 -2
- package/3rdparty/walkontable/src/calculator/viewportRows.js +1 -2
- package/3rdparty/walkontable/src/cell/coords.d.ts +8 -1
- package/3rdparty/walkontable/src/cell/coords.js +81 -13
- package/3rdparty/walkontable/src/cell/coords.mjs +80 -11
- package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
- package/3rdparty/walkontable/src/cell/range.js +39 -9
- package/3rdparty/walkontable/src/cell/range.mjs +38 -7
- package/3rdparty/walkontable/src/core/_base.js +9 -3
- package/3rdparty/walkontable/src/core/_base.mjs +9 -3
- package/3rdparty/walkontable/src/core/clone.js +2 -2
- package/3rdparty/walkontable/src/core/clone.mjs +2 -2
- package/3rdparty/walkontable/src/core/core.js +3 -2
- package/3rdparty/walkontable/src/core/core.mjs +3 -2
- package/3rdparty/walkontable/src/event.js +13 -12
- package/3rdparty/walkontable/src/event.mjs +12 -10
- package/3rdparty/walkontable/src/facade/core.js +2 -2
- package/3rdparty/walkontable/src/facade/core.mjs +2 -2
- package/3rdparty/walkontable/src/filter/column.js +1 -2
- package/3rdparty/walkontable/src/filter/row.js +1 -2
- package/3rdparty/walkontable/src/index.js +12 -4
- package/3rdparty/walkontable/src/index.mjs +2 -2
- package/3rdparty/walkontable/src/overlay/_base.js +13 -2
- package/3rdparty/walkontable/src/overlay/_base.mjs +14 -3
- package/3rdparty/walkontable/src/overlay/constants.js +7 -14
- package/3rdparty/walkontable/src/overlay/inlineStart.js +2 -6
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +2 -6
- package/3rdparty/walkontable/src/overlay/top.js +2 -6
- package/3rdparty/walkontable/src/overlay/top.mjs +2 -6
- package/3rdparty/walkontable/src/overlays.js +1 -2
- package/3rdparty/walkontable/src/renderer/cells.js +10 -0
- package/3rdparty/walkontable/src/renderer/cells.mjs +11 -1
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +13 -0
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +14 -1
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -0
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +8 -0
- package/3rdparty/walkontable/src/renderer/rows.js +13 -0
- package/3rdparty/walkontable/src/renderer/rows.mjs +13 -0
- package/3rdparty/walkontable/src/renderer/table.js +9 -0
- package/3rdparty/walkontable/src/renderer/table.mjs +9 -0
- package/3rdparty/walkontable/src/scroll.js +3 -2
- package/3rdparty/walkontable/src/scroll.mjs +2 -0
- package/3rdparty/walkontable/src/{border.js → selection/border/border.js} +8 -14
- package/3rdparty/walkontable/src/{border.mjs → selection/border/border.mjs} +7 -12
- package/3rdparty/walkontable/src/selection/border/constants.js +15 -0
- package/3rdparty/walkontable/src/selection/border/constants.mjs +12 -0
- package/3rdparty/walkontable/src/selection/constants.js +54 -0
- package/3rdparty/walkontable/src/selection/constants.mjs +51 -0
- package/3rdparty/walkontable/src/selection/index.js +26 -0
- package/3rdparty/walkontable/src/selection/index.mjs +5 -0
- package/3rdparty/walkontable/src/selection/manager.js +274 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +269 -0
- package/3rdparty/walkontable/src/selection/scanner.js +270 -0
- package/3rdparty/walkontable/src/selection/scanner.mjs +267 -0
- package/3rdparty/walkontable/src/selection/selection.js +100 -0
- package/3rdparty/walkontable/src/selection/selection.mjs +96 -0
- package/3rdparty/walkontable/src/settings.js +13 -4
- package/3rdparty/walkontable/src/settings.mjs +13 -4
- package/3rdparty/walkontable/src/table/bottom.js +1 -2
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -2
- package/3rdparty/walkontable/src/table/inlineStart.js +1 -2
- package/3rdparty/walkontable/src/table/master.js +3 -6
- package/3rdparty/walkontable/src/table/master.mjs +2 -4
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +10 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +10 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +10 -2
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +10 -2
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +9 -0
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +10 -2
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -0
- package/3rdparty/walkontable/src/table/top.js +1 -2
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -2
- package/3rdparty/walkontable/src/table.js +20 -80
- package/3rdparty/walkontable/src/table.mjs +20 -79
- package/3rdparty/walkontable/src/utils/orderView/constants.js +3 -6
- package/3rdparty/walkontable/src/viewport.js +1 -2
- package/CHANGELOG.md +51 -0
- package/base.js +3 -4
- package/base.mjs +2 -2
- package/cellTypes/autocompleteType/autocompleteType.js +3 -5
- package/cellTypes/checkboxType/checkboxType.js +3 -5
- package/cellTypes/dateType/dateType.d.ts +3 -3
- package/cellTypes/dateType/dateType.js +5 -7
- package/cellTypes/dateType/dateType.mjs +2 -2
- package/cellTypes/dropdownType/dropdownType.js +3 -5
- package/cellTypes/handsontableType/handsontableType.d.ts +3 -3
- package/cellTypes/handsontableType/handsontableType.js +5 -7
- package/cellTypes/handsontableType/handsontableType.mjs +2 -2
- package/cellTypes/index.d.ts +3 -0
- package/cellTypes/index.js +4 -0
- package/cellTypes/index.mjs +3 -1
- package/cellTypes/numericType/numericType.js +3 -5
- package/cellTypes/passwordType/passwordType.js +3 -5
- package/cellTypes/selectType/index.d.ts +1 -0
- package/cellTypes/selectType/index.js +6 -0
- package/cellTypes/selectType/index.mjs +1 -0
- package/cellTypes/selectType/selectType.d.ts +14 -0
- package/cellTypes/selectType/selectType.js +11 -0
- package/cellTypes/selectType/selectType.mjs +8 -0
- package/cellTypes/textType/textType.js +3 -5
- package/cellTypes/timeType/timeType.js +3 -5
- package/common.d.ts +1 -1
- package/core/focusCatcher/focusDetector.js +63 -0
- package/core/focusCatcher/focusDetector.mjs +59 -0
- package/core/focusCatcher/index.js +148 -0
- package/core/focusCatcher/index.mjs +144 -0
- package/core/index.js +9 -0
- package/core/index.mjs +1 -0
- package/core.d.ts +10 -5
- package/core.js +327 -359
- package/core.mjs +327 -359
- package/dataMap/dataMap.js +1 -2
- package/dataMap/dataSource.js +1 -2
- package/dataMap/metaManager/metaSchema.js +65 -0
- package/dataMap/metaManager/metaSchema.mjs +65 -0
- package/dataMap/metaManager/mods/extendMetaProperties.js +7 -1
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +7 -1
- package/dataMap/replaceData.js +5 -0
- package/dataMap/replaceData.mjs +5 -0
- package/dist/handsontable.css +94 -76
- package/dist/handsontable.full.css +94 -76
- package/dist/handsontable.full.js +21236 -14104
- package/dist/handsontable.full.min.css +8 -8
- package/dist/handsontable.full.min.js +170 -152
- package/dist/handsontable.js +22016 -15254
- package/dist/handsontable.min.css +7 -7
- package/dist/handsontable.min.js +31 -23
- package/dist/languages/all.js +47 -40
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.js +1 -2
- package/dist/languages/cs-CZ.js +1 -2
- package/dist/languages/de-CH.js +1 -2
- package/dist/languages/de-DE.js +1 -2
- package/dist/languages/en-US.js +15 -3
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.js +1 -2
- package/dist/languages/fr-FR.js +1 -2
- package/dist/languages/it-IT.js +1 -2
- package/dist/languages/ja-JP.js +1 -2
- package/dist/languages/ko-KR.js +1 -2
- package/dist/languages/lv-LV.js +1 -2
- package/dist/languages/nb-NO.js +1 -2
- package/dist/languages/nl-NL.js +1 -2
- package/dist/languages/pl-PL.js +15 -3
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.js +1 -2
- package/dist/languages/ru-RU.js +1 -2
- package/dist/languages/sr-SP.js +1 -2
- package/dist/languages/zh-CN.js +1 -2
- package/dist/languages/zh-TW.js +1 -2
- package/editorManager.js +17 -91
- package/editorManager.mjs +16 -87
- package/editors/autocompleteEditor/autocompleteEditor.js +65 -11
- package/editors/autocompleteEditor/autocompleteEditor.mjs +65 -10
- package/editors/baseEditor/baseEditor.js +19 -13
- package/editors/baseEditor/baseEditor.mjs +16 -7
- package/editors/checkboxEditor/checkboxEditor.js +1 -2
- package/editors/dateEditor/dateEditor.js +27 -9
- package/editors/dateEditor/dateEditor.mjs +27 -8
- package/editors/dropdownEditor/dropdownEditor.js +1 -2
- package/editors/handsontableEditor/handsontableEditor.js +14 -7
- package/editors/handsontableEditor/handsontableEditor.mjs +14 -6
- package/editors/numericEditor/numericEditor.js +1 -2
- package/editors/passwordEditor/passwordEditor.js +1 -2
- package/editors/selectEditor/selectEditor.js +1 -2
- package/editors/textEditor/textEditor.js +20 -29
- package/editors/textEditor/textEditor.mjs +22 -30
- package/editors/timeEditor/timeEditor.js +1 -2
- package/eventManager.js +1 -2
- package/focusManager.d.ts +12 -0
- package/focusManager.js +265 -0
- package/focusManager.mjs +261 -0
- package/helpers/a11y.js +81 -0
- package/helpers/a11y.mjs +39 -0
- package/helpers/dom/element.js +224 -12
- package/helpers/dom/element.mjs +216 -10
- package/helpers/dom/event.d.ts +1 -0
- package/helpers/dom/event.js +25 -0
- package/helpers/dom/event.mjs +24 -0
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/number.d.ts +1 -0
- package/helpers/number.js +18 -0
- package/helpers/number.mjs +17 -0
- package/helpers/unicode.js +1 -2
- package/i18n/constants.js +97 -160
- package/i18n/constants.mjs +17 -1
- package/i18n/languages/ar-AR.js +3 -4
- package/i18n/languages/cs-CZ.js +3 -4
- package/i18n/languages/de-CH.js +3 -4
- package/i18n/languages/de-DE.js +3 -4
- package/i18n/languages/en-US.js +17 -5
- package/i18n/languages/en-US.mjs +14 -1
- package/i18n/languages/es-MX.js +3 -4
- package/i18n/languages/fr-FR.js +3 -4
- package/i18n/languages/it-IT.js +3 -4
- package/i18n/languages/ja-JP.js +3 -4
- package/i18n/languages/ko-KR.js +3 -4
- package/i18n/languages/lv-LV.js +3 -4
- package/i18n/languages/nb-NO.js +3 -4
- package/i18n/languages/nl-NL.js +3 -4
- package/i18n/languages/pl-PL.js +17 -5
- package/i18n/languages/pl-PL.mjs +14 -1
- package/i18n/languages/pt-BR.js +3 -4
- package/i18n/languages/ru-RU.js +3 -4
- package/i18n/languages/sr-SP.js +3 -4
- package/i18n/languages/zh-CN.js +3 -4
- package/i18n/languages/zh-TW.js +3 -4
- package/i18n/registry.js +4 -6
- package/index.js +3 -4
- package/languages/all.js +47 -40
- package/languages/ar-AR.js +1 -2
- package/languages/cs-CZ.js +1 -2
- package/languages/de-CH.js +1 -2
- package/languages/de-DE.js +1 -2
- package/languages/en-US.js +15 -3
- package/languages/en-US.mjs +14 -1
- package/languages/es-MX.js +1 -2
- package/languages/fr-FR.js +1 -2
- package/languages/index.js +47 -40
- package/languages/it-IT.js +1 -2
- package/languages/ja-JP.js +1 -2
- package/languages/ko-KR.js +1 -2
- package/languages/lv-LV.js +1 -2
- package/languages/nb-NO.js +1 -2
- package/languages/nl-NL.js +1 -2
- package/languages/pl-PL.js +15 -3
- package/languages/pl-PL.mjs +14 -1
- package/languages/pt-BR.js +1 -2
- package/languages/ru-RU.js +1 -2
- package/languages/sr-SP.js +1 -2
- package/languages/zh-CN.js +1 -2
- package/languages/zh-TW.js +1 -2
- package/mixins/hooksRefRegisterer.js +1 -2
- package/mixins/localHooks.js +1 -2
- package/package.json +119 -96
- package/pluginHooks.d.ts +42 -7
- package/pluginHooks.js +301 -65
- package/pluginHooks.mjs +300 -63
- package/plugins/autoColumnSize/autoColumnSize.d.ts +2 -0
- package/plugins/autoColumnSize/autoColumnSize.js +2 -4
- package/plugins/autoRowSize/autoRowSize.d.ts +2 -0
- package/plugins/autoRowSize/autoRowSize.js +15 -10
- package/plugins/autoRowSize/autoRowSize.mjs +13 -6
- package/plugins/autofill/autofill.js +2 -4
- package/plugins/autofill/utils.js +1 -2
- package/plugins/base/base.js +1 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +2 -4
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +1 -2
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +1 -2
- package/plugins/collapsibleColumns/collapsibleColumns.js +77 -8
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +76 -5
- package/plugins/columnSorting/columnSorting.js +71 -6
- package/plugins/columnSorting/columnSorting.mjs +70 -3
- package/plugins/columnSorting/index.js +3 -1
- package/plugins/columnSorting/index.mjs +1 -1
- package/plugins/columnSorting/sortFunction/checkbox.js +1 -2
- package/plugins/columnSorting/sortFunction/date.js +1 -2
- package/plugins/columnSorting/sortFunction/default.js +1 -2
- package/plugins/columnSorting/sortFunction/numeric.js +1 -2
- package/plugins/columnSorting/sortService/engine.js +3 -6
- package/plugins/columnSorting/utils.js +3 -6
- package/plugins/columnSummary/columnSummary.js +2 -4
- package/plugins/columnSummary/endpoints.js +1 -2
- package/plugins/comments/commentEditor.js +2 -2
- package/plugins/comments/commentEditor.mjs +1 -0
- package/plugins/comments/comments.js +254 -197
- package/plugins/comments/comments.mjs +251 -190
- package/plugins/comments/contextMenuItem/addEditComment.js +41 -0
- package/plugins/comments/contextMenuItem/addEditComment.mjs +35 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.js +49 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.mjs +43 -0
- package/plugins/comments/contextMenuItem/removeComment.js +38 -0
- package/plugins/comments/contextMenuItem/removeComment.mjs +32 -0
- package/plugins/comments/displaySwitch.js +1 -2
- package/plugins/contextMenu/commandExecutor.js +2 -3
- package/plugins/contextMenu/commandExecutor.mjs +2 -3
- package/plugins/contextMenu/contextMenu.d.ts +1 -1
- package/plugins/contextMenu/contextMenu.js +77 -40
- package/plugins/contextMenu/contextMenu.mjs +74 -35
- package/plugins/contextMenu/itemsFactory.js +2 -3
- package/plugins/contextMenu/itemsFactory.mjs +3 -4
- package/plugins/contextMenu/{cursor.mjs → menu/cursor.js} +6 -4
- package/plugins/contextMenu/{cursor.js → menu/cursor.mjs} +4 -10
- package/plugins/contextMenu/menu/defaultShortcutsList.js +88 -0
- package/plugins/contextMenu/menu/defaultShortcutsList.mjs +84 -0
- package/plugins/contextMenu/menu/index.js +9 -0
- package/plugins/contextMenu/menu/index.mjs +1 -0
- package/plugins/contextMenu/{menu.js → menu/menu.js} +145 -421
- package/plugins/contextMenu/{menu.mjs → menu/menu.mjs} +146 -422
- package/plugins/contextMenu/menu/menuItemRenderer.js +70 -0
- package/plugins/contextMenu/menu/menuItemRenderer.mjs +66 -0
- package/plugins/contextMenu/menu/navigator.js +27 -0
- package/plugins/contextMenu/menu/navigator.mjs +23 -0
- package/plugins/contextMenu/menu/positioner.js +213 -0
- package/plugins/contextMenu/menu/positioner.mjs +209 -0
- package/plugins/contextMenu/menu/shortcuts.js +114 -0
- package/plugins/contextMenu/menu/shortcuts.mjs +110 -0
- package/plugins/contextMenu/menu/utils.js +177 -0
- package/plugins/contextMenu/menu/utils.mjs +163 -0
- package/plugins/contextMenu/predefinedItems/alignment.js +10 -4
- package/plugins/contextMenu/predefinedItems/alignment.mjs +7 -0
- package/plugins/contextMenu/predefinedItems/clearColumn.js +8 -7
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/columnLeft.js +8 -7
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/columnRight.js +8 -7
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/index.js +75 -0
- package/plugins/contextMenu/predefinedItems/index.mjs +68 -0
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -2
- package/plugins/contextMenu/predefinedItems/readOnly.js +10 -4
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +7 -0
- package/plugins/contextMenu/predefinedItems/redo.js +3 -4
- package/plugins/contextMenu/predefinedItems/removeColumn.js +10 -9
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/removeRow.js +10 -9
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/rowAbove.js +8 -7
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/rowBelow.js +8 -7
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/undo.js +3 -4
- package/plugins/contextMenu/utils.js +35 -151
- package/plugins/contextMenu/utils.mjs +35 -144
- package/plugins/copyPaste/clipboardData/clipboardData.js +516 -0
- package/plugins/copyPaste/clipboardData/clipboardData.mjs +512 -0
- package/plugins/copyPaste/clipboardData/copyClipboardData.js +69 -0
- package/plugins/copyPaste/clipboardData/copyClipboardData.mjs +65 -0
- package/plugins/copyPaste/clipboardData/index.js +9 -0
- package/plugins/copyPaste/clipboardData/index.mjs +4 -0
- package/plugins/copyPaste/clipboardData/pasteClipboardData.js +81 -0
- package/plugins/copyPaste/clipboardData/pasteClipboardData.mjs +77 -0
- package/plugins/copyPaste/contextMenuItem/copy.js +7 -0
- package/plugins/copyPaste/contextMenuItem/copy.mjs +7 -0
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/cut.js +9 -2
- package/plugins/copyPaste/contextMenuItem/cut.mjs +7 -0
- package/plugins/copyPaste/copyPaste.js +160 -167
- package/plugins/copyPaste/copyPaste.mjs +161 -166
- package/plugins/customBorders/contextMenuItem/bottom.js +2 -2
- package/plugins/customBorders/contextMenuItem/left.js +2 -2
- package/plugins/customBorders/contextMenuItem/noBorders.js +2 -2
- package/plugins/customBorders/contextMenuItem/right.js +2 -2
- package/plugins/customBorders/contextMenuItem/top.js +2 -2
- package/plugins/customBorders/customBorders.js +27 -26
- package/plugins/customBorders/customBorders.mjs +24 -21
- package/plugins/dragToScroll/dragToScroll.js +2 -4
- package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
- package/plugins/dropdownMenu/dropdownMenu.js +130 -44
- package/plugins/dropdownMenu/dropdownMenu.mjs +127 -39
- package/plugins/exportFile/dataProvider.js +1 -2
- package/plugins/exportFile/exportFile.js +4 -6
- package/plugins/exportFile/typeFactory.js +5 -8
- package/plugins/exportFile/types/_base.js +1 -2
- package/plugins/exportFile/types/csv.js +1 -2
- package/plugins/filters/component/_base.js +23 -8
- package/plugins/filters/component/_base.mjs +23 -8
- package/plugins/filters/component/actionBar.js +31 -29
- package/plugins/filters/component/actionBar.mjs +26 -23
- package/plugins/filters/component/condition.js +48 -61
- package/plugins/filters/component/condition.mjs +40 -52
- package/plugins/filters/component/operators.js +21 -22
- package/plugins/filters/component/operators.mjs +18 -18
- package/plugins/filters/component/value.js +37 -28
- package/plugins/filters/component/value.mjs +32 -22
- package/plugins/filters/condition/beginsWith.js +3 -4
- package/plugins/filters/condition/between.js +3 -4
- package/plugins/filters/condition/byValue.js +1 -2
- package/plugins/filters/condition/contains.js +3 -4
- package/plugins/filters/condition/date/after.js +3 -4
- package/plugins/filters/condition/date/before.js +3 -4
- package/plugins/filters/condition/date/today.js +3 -4
- package/plugins/filters/condition/date/tomorrow.js +3 -4
- package/plugins/filters/condition/date/yesterday.js +3 -4
- package/plugins/filters/condition/empty.js +3 -4
- package/plugins/filters/condition/endsWith.js +3 -4
- package/plugins/filters/condition/equal.js +3 -4
- package/plugins/filters/condition/false.js +1 -2
- package/plugins/filters/condition/greaterThan.js +3 -4
- package/plugins/filters/condition/greaterThanOrEqual.js +3 -4
- package/plugins/filters/condition/lessThan.js +3 -4
- package/plugins/filters/condition/lessThanOrEqual.js +3 -4
- package/plugins/filters/condition/none.js +3 -4
- package/plugins/filters/condition/notBetween.js +3 -4
- package/plugins/filters/condition/notContains.js +3 -4
- package/plugins/filters/condition/notEmpty.js +3 -4
- package/plugins/filters/condition/notEqual.js +3 -4
- package/plugins/filters/condition/true.js +1 -2
- package/plugins/filters/conditionCollection.d.ts +3 -2
- package/plugins/filters/conditionCollection.js +1 -2
- package/plugins/filters/conditionRegisterer.js +1 -2
- package/plugins/filters/conditionUpdateObserver.js +1 -2
- package/plugins/filters/constants.js +4 -8
- package/plugins/filters/constants.mjs +1 -1
- package/plugins/filters/dataFilter.js +1 -2
- package/plugins/filters/filters.d.ts +3 -5
- package/plugins/filters/filters.js +108 -66
- package/plugins/filters/filters.mjs +99 -55
- package/plugins/filters/logicalOperationRegisterer.js +1 -2
- package/plugins/filters/logicalOperations/conjunction.js +4 -6
- package/plugins/filters/logicalOperations/disjunction.js +4 -6
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +4 -6
- package/plugins/filters/menu/focusController.js +123 -0
- package/plugins/filters/menu/focusController.mjs +119 -0
- package/plugins/filters/menu/focusNavigator.js +30 -0
- package/plugins/filters/menu/focusNavigator.mjs +26 -0
- package/plugins/filters/ui/_base.js +37 -15
- package/plugins/filters/ui/_base.mjs +35 -13
- package/plugins/filters/ui/input.js +43 -35
- package/plugins/filters/ui/input.mjs +42 -33
- package/plugins/filters/ui/link.js +44 -12
- package/plugins/filters/ui/link.mjs +44 -11
- package/plugins/filters/ui/multipleSelect.js +237 -133
- package/plugins/filters/ui/multipleSelect.mjs +232 -127
- package/plugins/filters/ui/radioInput.js +42 -18
- package/plugins/filters/ui/radioInput.mjs +42 -17
- package/plugins/filters/ui/select.js +152 -77
- package/plugins/filters/ui/select.mjs +148 -72
- package/plugins/formulas/engine/settings.js +2 -4
- package/plugins/formulas/formulas.js +3 -6
- package/plugins/formulas/indexSyncer/axisSyncer.js +1 -2
- package/plugins/formulas/indexSyncer/index.js +1 -2
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +2 -2
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +2 -2
- package/plugins/hiddenColumns/hiddenColumns.d.ts +1 -0
- package/plugins/hiddenColumns/hiddenColumns.js +49 -6
- package/plugins/hiddenColumns/hiddenColumns.mjs +48 -3
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +2 -2
- package/plugins/hiddenRows/contextMenuItem/showRow.js +2 -2
- package/plugins/hiddenRows/hiddenRows.d.ts +1 -0
- package/plugins/hiddenRows/hiddenRows.js +49 -6
- package/plugins/hiddenRows/hiddenRows.mjs +48 -3
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -2
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +2 -4
- package/plugins/manualColumnMove/manualColumnMove.js +9 -17
- package/plugins/manualColumnMove/manualColumnMove.mjs +7 -13
- package/plugins/manualColumnMove/ui/_base.js +1 -2
- package/plugins/manualColumnMove/ui/backlight.js +1 -2
- package/plugins/manualColumnMove/ui/guideline.js +1 -2
- package/plugins/manualColumnResize/manualColumnResize.js +2 -4
- package/plugins/manualRowMove/manualRowMove.js +6 -23
- package/plugins/manualRowMove/manualRowMove.mjs +4 -19
- package/plugins/manualRowMove/ui/_base.js +1 -2
- package/plugins/manualRowMove/ui/backlight.js +1 -2
- package/plugins/manualRowMove/ui/guideline.js +1 -2
- package/plugins/manualRowResize/manualRowResize.js +2 -4
- package/plugins/mergeCells/calculations/autofill.js +1 -2
- package/plugins/mergeCells/calculations/selection.js +1 -2
- package/plugins/mergeCells/cellCoords.js +1 -2
- package/plugins/mergeCells/cellsCollection.js +1 -2
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +2 -2
- package/plugins/mergeCells/mergeCells.js +7 -20
- package/plugins/mergeCells/mergeCells.mjs +5 -16
- package/plugins/multiColumnSorting/multiColumnSorting.js +60 -6
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +59 -3
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +2 -4
- package/plugins/nestedHeaders/nestedHeaders.js +263 -36
- package/plugins/nestedHeaders/nestedHeaders.mjs +262 -33
- package/plugins/nestedHeaders/stateManager/index.js +102 -3
- package/plugins/nestedHeaders/stateManager/index.mjs +102 -3
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +1 -2
- package/plugins/nestedHeaders/utils/ghostTable.js +1 -2
- package/plugins/nestedRows/data/dataManager.js +1 -2
- package/plugins/nestedRows/nestedRows.js +47 -10
- package/plugins/nestedRows/nestedRows.mjs +45 -6
- package/plugins/nestedRows/ui/_base.js +1 -2
- package/plugins/nestedRows/ui/collapsing.js +1 -2
- package/plugins/nestedRows/ui/contextMenu.js +3 -4
- package/plugins/nestedRows/ui/headers.js +13 -3
- package/plugins/nestedRows/ui/headers.mjs +13 -2
- package/plugins/persistentState/persistentState.js +2 -4
- package/plugins/persistentState/storage.js +1 -2
- package/plugins/search/search.js +2 -4
- package/plugins/touchScroll/touchScroll.js +2 -4
- package/plugins/trimRows/trimRows.js +2 -4
- package/plugins/undoRedo/index.js +2 -2
- package/plugins/undoRedo/undoRedo.js +2 -4
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +9 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +8 -0
- package/renderers/baseRenderer/baseRenderer.js +18 -2
- package/renderers/baseRenderer/baseRenderer.mjs +18 -1
- package/renderers/checkboxRenderer/checkboxRenderer.js +10 -6
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +9 -4
- package/renderers/dateRenderer/dateRenderer.d.ts +5 -0
- package/renderers/dateRenderer/dateRenderer.js +28 -0
- package/renderers/dateRenderer/dateRenderer.mjs +24 -0
- package/renderers/dateRenderer/index.d.ts +1 -0
- package/renderers/dateRenderer/index.js +6 -0
- package/renderers/dateRenderer/index.mjs +1 -0
- package/renderers/handsontableRenderer/handsontableRenderer.d.ts +5 -0
- package/renderers/handsontableRenderer/handsontableRenderer.js +28 -0
- package/renderers/handsontableRenderer/handsontableRenderer.mjs +24 -0
- package/renderers/handsontableRenderer/index.d.ts +1 -0
- package/renderers/handsontableRenderer/index.js +6 -0
- package/renderers/handsontableRenderer/index.mjs +1 -0
- package/renderers/htmlRenderer/htmlRenderer.js +1 -2
- package/renderers/index.d.ts +9 -0
- package/renderers/numericRenderer/numericRenderer.js +1 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -2
- package/renderers/selectRenderer/index.d.ts +1 -0
- package/renderers/selectRenderer/index.js +6 -0
- package/renderers/selectRenderer/index.mjs +1 -0
- package/renderers/selectRenderer/selectRenderer.d.ts +5 -0
- package/renderers/selectRenderer/selectRenderer.js +26 -0
- package/renderers/selectRenderer/selectRenderer.mjs +22 -0
- package/renderers/textRenderer/textRenderer.js +1 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -2
- package/selection/highlight/highlight.js +257 -73
- package/selection/highlight/highlight.mjs +250 -71
- package/selection/highlight/types/activeHeader.js +10 -8
- package/selection/highlight/types/activeHeader.mjs +10 -8
- package/selection/highlight/types/area.js +6 -18
- package/selection/highlight/types/area.mjs +6 -18
- package/selection/highlight/types/areaLayered.js +31 -0
- package/selection/highlight/types/areaLayered.mjs +26 -0
- package/selection/highlight/types/column.js +27 -0
- package/selection/highlight/types/column.mjs +22 -0
- package/selection/highlight/types/customSelection.js +7 -9
- package/selection/highlight/types/customSelection.mjs +7 -9
- package/selection/highlight/types/fill.js +5 -7
- package/selection/highlight/types/fill.mjs +5 -7
- package/selection/highlight/types/{cell.js → focus.js} +5 -7
- package/selection/highlight/types/{cell.mjs → focus.mjs} +5 -7
- package/selection/highlight/types/header.js +9 -18
- package/selection/highlight/types/header.mjs +9 -18
- package/selection/highlight/types/row.js +27 -0
- package/selection/highlight/types/row.mjs +22 -0
- package/selection/highlight/visualSelection.js +32 -29
- package/selection/highlight/visualSelection.mjs +31 -27
- package/selection/index.js +4 -7
- package/selection/index.mjs +2 -3
- package/selection/mouseEventHandler.js +7 -1
- package/selection/mouseEventHandler.mjs +7 -1
- package/selection/range.js +9 -10
- package/selection/range.mjs +8 -8
- package/selection/selection.js +334 -154
- package/selection/selection.mjs +330 -151
- package/selection/transformation.js +233 -94
- package/selection/transformation.mjs +232 -92
- package/selection/utils.js +20 -31
- package/selection/utils.mjs +16 -21
- package/settings.d.ts +4 -0
- package/shortcutContexts/commands/editor/closeAndSave.js +11 -0
- package/shortcutContexts/commands/editor/closeAndSave.mjs +8 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.js +11 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
- package/shortcutContexts/commands/editor/fastOpen.js +15 -0
- package/shortcutContexts/commands/editor/fastOpen.mjs +12 -0
- package/shortcutContexts/commands/editor/index.js +16 -0
- package/shortcutContexts/commands/editor/index.mjs +12 -0
- package/shortcutContexts/commands/editor/open.js +26 -0
- package/shortcutContexts/commands/editor/open.mjs +23 -0
- package/shortcutContexts/commands/emptySelectedCells.js +10 -0
- package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
- package/shortcutContexts/commands/extendCellsSelection/down.js +14 -0
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +11 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +24 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +21 -0
- package/shortcutContexts/commands/extendCellsSelection/index.js +26 -0
- package/shortcutContexts/commands/extendCellsSelection/index.mjs +22 -0
- package/shortcutContexts/commands/extendCellsSelection/left.js +14 -0
- package/shortcutContexts/commands/extendCellsSelection/left.mjs +11 -0
- package/shortcutContexts/commands/extendCellsSelection/right.js +14 -0
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +11 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +18 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +15 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +28 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +25 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +18 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +15 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +18 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +15 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +28 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +25 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +28 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +25 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +28 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +25 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +18 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +15 -0
- package/shortcutContexts/commands/extendCellsSelection/up.js +14 -0
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +11 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +24 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +21 -0
- package/shortcutContexts/commands/index.js +35 -0
- package/shortcutContexts/commands/index.mjs +31 -0
- package/shortcutContexts/commands/moveCellSelection/down.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/down.mjs +9 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +32 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +29 -0
- package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
- package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/left.js +9 -0
- package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/right.js +9 -0
- package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +17 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +14 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +10 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +18 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +15 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.js +20 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +17 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +18 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +15 -0
- package/shortcutContexts/commands/moveCellSelection/up.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/up.mjs +9 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +32 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +29 -0
- package/shortcutContexts/commands/populateSelectedCellsData.js +28 -0
- package/shortcutContexts/commands/populateSelectedCellsData.mjs +25 -0
- package/shortcutContexts/commands/scrollToFocusedCell.js +34 -0
- package/shortcutContexts/commands/scrollToFocusedCell.mjs +31 -0
- package/shortcutContexts/commands/selectAll.js +11 -0
- package/shortcutContexts/commands/selectAll.mjs +8 -0
- package/shortcutContexts/constants.js +11 -0
- package/shortcutContexts/constants.mjs +8 -0
- package/shortcutContexts/editor.js +25 -0
- package/shortcutContexts/editor.mjs +21 -0
- package/shortcutContexts/grid.js +167 -0
- package/shortcutContexts/grid.mjs +163 -0
- package/shortcutContexts/index.js +24 -0
- package/shortcutContexts/index.mjs +11 -0
- package/shortcuts/context.d.ts +1 -0
- package/shortcuts/context.js +23 -4
- package/shortcuts/context.mjs +23 -5
- package/shortcuts/manager.js +31 -7
- package/shortcuts/manager.mjs +32 -7
- package/shortcuts/recorder.js +30 -14
- package/shortcuts/recorder.mjs +30 -14
- package/shortcuts/utils.js +19 -5
- package/shortcuts/utils.mjs +18 -4
- package/tableView.js +113 -16
- package/tableView.mjs +113 -15
- package/utils/dataStructures/linkedList.js +1 -2
- package/utils/dataStructures/priorityMap.js +2 -4
- package/utils/dataStructures/queue.js +1 -2
- package/utils/dataStructures/stack.js +1 -2
- package/utils/dataStructures/tree.js +3 -6
- package/utils/ghostTable.js +32 -17
- package/utils/ghostTable.mjs +31 -15
- package/utils/interval.js +1 -2
- package/utils/paginator.js +151 -0
- package/utils/paginator.mjs +147 -0
- package/utils/parseTable.js +527 -83
- package/utils/parseTable.mjs +523 -82
- package/utils/rootInstance.js +2 -4
- package/utils/samplesGenerator.js +21 -13
- package/utils/samplesGenerator.mjs +20 -11
- package/utils/staticRegister.js +1 -2
- package/validators/autocompleteValidator/autocompleteValidator.js +1 -2
- package/validators/dateValidator/dateValidator.js +1 -2
- package/validators/numericValidator/numericValidator.js +1 -2
- package/validators/timeValidator/timeValidator.js +1 -2
- package/3rdparty/walkontable/src/selection.js +0 -295
- package/3rdparty/walkontable/src/selection.mjs +0 -290
- package/plugins/contextMenu/predefinedItems.js +0 -76
- package/plugins/contextMenu/predefinedItems.mjs +0 -68
- package/plugins/copyPaste/clipboardData.js +0 -18
- package/plugins/copyPaste/clipboardData.mjs +0 -14
- package/plugins/copyPaste/focusableElement.js +0 -186
- package/plugins/copyPaste/focusableElement.mjs +0 -180
- package/plugins/copyPaste/pasteEvent.js +0 -14
- package/plugins/copyPaste/pasteEvent.mjs +0 -9
- package/selection/highlight/constants.js +0 -15
- package/selection/highlight/constants.mjs +0 -6
- package/selection/highlight/types/index.js +0 -35
- package/selection/highlight/types/index.mjs +0 -31
package/pluginHooks.js
CHANGED
@@ -542,6 +542,34 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
542
542
|
* @param {'init'|'remove'|'insert'|'move'|'update'} [source] A string that indicates what caused the change to the order of rows.
|
543
543
|
*/
|
544
544
|
'afterRowSequenceChange',
|
545
|
+
/**
|
546
|
+
* Fired before the vertical viewport scroll. Triggered by the [`scrollViewportTo()`](@/api/core.md#scrollviewportto)
|
547
|
+
* method or table internals.
|
548
|
+
*
|
549
|
+
* @since 14.0.0
|
550
|
+
* @event Hooks#beforeViewportScrollVertically
|
551
|
+
* @param {number} visualRow Visual row index.
|
552
|
+
* @returns {number} Returns modified row index (or the same as passed in the method argument) to which the viewport will be scrolled.
|
553
|
+
*/
|
554
|
+
'beforeViewportScrollVertically',
|
555
|
+
/**
|
556
|
+
* Fired before the horizontal viewport scroll. Triggered by the [`scrollViewportTo()`](@/api/core.md#scrollviewportto)
|
557
|
+
* method or table internals.
|
558
|
+
*
|
559
|
+
* @since 14.0.0
|
560
|
+
* @event Hooks#beforeViewportScrollHorizontally
|
561
|
+
* @param {number} visualColumn Visual column index.
|
562
|
+
* @returns {number} Returns modified column index (or the same as passed in the method argument) to which the viewport will be scrolled.
|
563
|
+
*/
|
564
|
+
'beforeViewportScrollHorizontally',
|
565
|
+
/**
|
566
|
+
* Fired before the vertical or horizontal viewport scroll. Triggered by the [`scrollViewportTo()`](@/api/core.md#scrollviewportto)
|
567
|
+
* method or table internals.
|
568
|
+
*
|
569
|
+
* @since 14.0.0
|
570
|
+
* @event Hooks#beforeViewportScroll
|
571
|
+
*/
|
572
|
+
'beforeViewportScroll',
|
545
573
|
/**
|
546
574
|
* Fired after the horizontal scroll event.
|
547
575
|
*
|
@@ -554,6 +582,13 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
554
582
|
* @event Hooks#afterScrollVertically
|
555
583
|
*/
|
556
584
|
'afterScrollVertically',
|
585
|
+
/**
|
586
|
+
* Fired after the vertical or horizontal scroll event.
|
587
|
+
*
|
588
|
+
* @since 14.0.0
|
589
|
+
* @event Hooks#afterScroll
|
590
|
+
*/
|
591
|
+
'afterScroll',
|
557
592
|
/**
|
558
593
|
* Fired after one or more cells are selected (e.g. During mouse move).
|
559
594
|
*
|
@@ -657,6 +692,94 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
657
692
|
* @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
|
658
693
|
*/
|
659
694
|
'afterSelectionEndByProp',
|
695
|
+
/**
|
696
|
+
* Fired before one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
697
|
+
*
|
698
|
+
* @since 14.0.0
|
699
|
+
* @event Hooks#beforeSelectColumns
|
700
|
+
* @param {CellCoords} from Selection start coords object.
|
701
|
+
* @param {CellCoords} to Selection end coords object.
|
702
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
703
|
+
* @example
|
704
|
+
* ::: only-for javascript
|
705
|
+
* ```js
|
706
|
+
* new Handsontable(element, {
|
707
|
+
* beforeSelectColumns: (from, to, highlight) => {
|
708
|
+
* // Extend the column selection by one column left and one column right.
|
709
|
+
* from.col = Math.max(from.col - 1, 0);
|
710
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
711
|
+
* }
|
712
|
+
* })
|
713
|
+
* ```
|
714
|
+
* :::
|
715
|
+
*
|
716
|
+
* ::: only-for react
|
717
|
+
* ```jsx
|
718
|
+
* <HotTable
|
719
|
+
* beforeSelectColumns={(from, to, highlight) => {
|
720
|
+
* // Extend the column selection by one column left and one column right.
|
721
|
+
* from.col = Math.max(from.col - 1, 0);
|
722
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
723
|
+
* }}
|
724
|
+
* />
|
725
|
+
* ```
|
726
|
+
* :::
|
727
|
+
*/
|
728
|
+
'beforeSelectColumns',
|
729
|
+
/**
|
730
|
+
* Fired after one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
731
|
+
*
|
732
|
+
* @since 14.0.0
|
733
|
+
* @event Hooks#afterSelectColumns
|
734
|
+
* @param {CellCoords} from Selection start coords object.
|
735
|
+
* @param {CellCoords} to Selection end coords object.
|
736
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
737
|
+
*/
|
738
|
+
'afterSelectColumns',
|
739
|
+
/**
|
740
|
+
* Fired before one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
741
|
+
*
|
742
|
+
* @since 14.0.0
|
743
|
+
* @event Hooks#beforeSelectRows
|
744
|
+
* @param {CellCoords} from Selection start coords object.
|
745
|
+
* @param {CellCoords} to Selection end coords object.
|
746
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
747
|
+
* @example
|
748
|
+
* ::: only-for javascript
|
749
|
+
* ```js
|
750
|
+
* new Handsontable(element, {
|
751
|
+
* beforeSelectRows: (from, to, highlight) => {
|
752
|
+
* // Extend the row selection by one row up and one row bottom more.
|
753
|
+
* from.row = Math.max(from.row - 1, 0);
|
754
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
755
|
+
* }
|
756
|
+
* })
|
757
|
+
* ```
|
758
|
+
* :::
|
759
|
+
*
|
760
|
+
* ::: only-for react
|
761
|
+
* ```jsx
|
762
|
+
* <HotTable
|
763
|
+
* beforeSelectRows={(from, to, highlight) => {
|
764
|
+
* // Extend the row selection by one row up and one row bottom more.
|
765
|
+
* from.row = Math.max(from.row - 1, 0);
|
766
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
767
|
+
* }}
|
768
|
+
* />
|
769
|
+
* ```
|
770
|
+
* :::
|
771
|
+
*/
|
772
|
+
'beforeSelectRows',
|
773
|
+
/**
|
774
|
+
* Fired after one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
775
|
+
*
|
776
|
+
* @since 14.0.0
|
777
|
+
* @event Hooks#afterSelectRows
|
778
|
+
* @param {CellCoords} from Selection start coords object.
|
779
|
+
* @param {CellCoords} to Selection end coords object.
|
780
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
781
|
+
*/
|
782
|
+
'afterSelectRows',
|
660
783
|
/**
|
661
784
|
* Fired after cell meta is changed.
|
662
785
|
*
|
@@ -1079,6 +1202,38 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1079
1202
|
* If set to `false`, the rendering gets triggered by scrolling or moving the selection.
|
1080
1203
|
*/
|
1081
1204
|
'afterRender',
|
1205
|
+
/**
|
1206
|
+
* When the focus position is moved to the next or previous row caused by the {@link Options#autoWrapRow} option
|
1207
|
+
* the hook is triggered.
|
1208
|
+
*
|
1209
|
+
* @since 14.0.0
|
1210
|
+
* @event Hooks#beforeRowWrap
|
1211
|
+
* @param {boolean} isWrapEnabled Tells whether the row wrapping is going to happen.
|
1212
|
+
* There may be situations where the option does not work even though it is enabled.
|
1213
|
+
* This is due to the priority of other options that may block the feature.
|
1214
|
+
* For example, when the {@link Options#minSpareCols} is defined, the {@link Options#autoWrapRow} option is not checked.
|
1215
|
+
* Thus, row wrapping is off.
|
1216
|
+
* @param {CellCoords} newCoords The new focus position.
|
1217
|
+
* @param {boolean} isFlipped `true` if the row index was flipped, `false` otherwise.
|
1218
|
+
* Flipped index means that the user reached the last row and the focus is moved to the first row or vice versa.
|
1219
|
+
*/
|
1220
|
+
'beforeRowWrap',
|
1221
|
+
/**
|
1222
|
+
* When the focus position is moved to the next or previous column caused by the {@link Options#autoWrapCol} option
|
1223
|
+
* the hook is triggered.
|
1224
|
+
*
|
1225
|
+
* @since 14.0.0
|
1226
|
+
* @event Hooks#beforeColumnWrap
|
1227
|
+
* @param {boolean} isWrapEnabled Tells whether the column wrapping is going to happen.
|
1228
|
+
* There may be situations where the option does not work even though it is enabled.
|
1229
|
+
* This is due to the priority of other options that may block the feature.
|
1230
|
+
* For example, when the {@link Options#minSpareRows} is defined, the {@link Options#autoWrapCol} option is not checked.
|
1231
|
+
* Thus, column wrapping is off.
|
1232
|
+
* @param {CellCoords} newCoords The new focus position.
|
1233
|
+
* @param {boolean} isFlipped `true` if the column index was flipped, `false` otherwise.
|
1234
|
+
* Flipped index means that the user reached the last column and the focus is moved to the first column or vice versa.
|
1235
|
+
*/
|
1236
|
+
'beforeColumnWrap',
|
1082
1237
|
/**
|
1083
1238
|
* Fired before cell meta is changed.
|
1084
1239
|
*
|
@@ -1112,6 +1267,13 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1112
1267
|
* @param {CellCoords} coords CellCoords instance.
|
1113
1268
|
*/
|
1114
1269
|
'beforeSetRangeEnd',
|
1270
|
+
/**
|
1271
|
+
* Fired before applying selection coordinates to the renderable coordinates for Walkontable (rendering engine).
|
1272
|
+
*
|
1273
|
+
* @since 14.0.0
|
1274
|
+
* @event Hooks#beforeSelectionHighlightSet
|
1275
|
+
*/
|
1276
|
+
'beforeSelectionHighlightSet',
|
1115
1277
|
/**
|
1116
1278
|
* Fired before the logic of handling a touch scroll, when user started scrolling on a touch-enabled device.
|
1117
1279
|
*
|
@@ -1168,6 +1330,17 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1168
1330
|
* @param {number} column Visual column index.
|
1169
1331
|
*/
|
1170
1332
|
'modifyColWidth',
|
1333
|
+
/**
|
1334
|
+
* Fired when focusing a cell or a header element. Allows replacing the element to be focused by returning a
|
1335
|
+
* different HTML element.
|
1336
|
+
*
|
1337
|
+
* @since 14.0.0
|
1338
|
+
* @event Hooks#modifyFocusedElement
|
1339
|
+
* @param {number} row Row index.
|
1340
|
+
* @param {number} column Column index.
|
1341
|
+
* @param {HTMLElement|undefined} focusedElement The element to be focused.
|
1342
|
+
*/
|
1343
|
+
'modifyFocusedElement',
|
1171
1344
|
/**
|
1172
1345
|
* Fired when a row header index is about to be modified by a callback function.
|
1173
1346
|
*
|
@@ -1225,6 +1398,16 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1225
1398
|
* @returns {undefined|number[]}
|
1226
1399
|
*/
|
1227
1400
|
'modifyGetCellCoords',
|
1401
|
+
/**
|
1402
|
+
* Used to modify the cell coordinates when the table is activated (going into the listen mode).
|
1403
|
+
*
|
1404
|
+
* @event Hooks#modifyFocusOnTabNavigation
|
1405
|
+
* @since 14.0.0
|
1406
|
+
* @param {'from_above' | 'from_below'} tabActivationDir The browsers Tab navigation direction. Depending on
|
1407
|
+
* whether the user activated the table from the element above or below, another cell can be selected.
|
1408
|
+
* @param {CellCoords} visualCoords The coords that will be used to select a cell.
|
1409
|
+
*/
|
1410
|
+
'modifyFocusOnTabNavigation',
|
1228
1411
|
/**
|
1229
1412
|
* Allows modify the visual row index that is used to retrieve the row header element (TH) before it's
|
1230
1413
|
* highlighted (proper CSS class names are added). Modifying the visual row index allows building a custom
|
@@ -1322,26 +1505,35 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1322
1505
|
* Fired by {@link CopyPaste} plugin before copying the values to the clipboard and before clearing values of
|
1323
1506
|
* the selected cells. This hook is fired when {@link Options#copyPaste} option is enabled.
|
1324
1507
|
*
|
1508
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1509
|
+
*
|
1325
1510
|
* @event Hooks#beforeCut
|
1326
|
-
* @param {
|
1327
|
-
* @param {
|
1328
|
-
*
|
1511
|
+
* @param {object} clipboardData Information about cut action which is going to happen.
|
1512
|
+
* @param {Function} clipboardData.removeRow Remove row from the copied dataset.
|
1513
|
+
* @param {Function} clipboardData.removeColumn Remove column from the copied dataset.
|
1514
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1515
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1516
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the copied dataset.
|
1517
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the copied dataset.
|
1518
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1519
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1520
|
+
* @param {Function} clipboardData.getRanges Returns ranges related to copied part of Handsontable.
|
1329
1521
|
* @returns {*} If returns `false` then operation of the cutting out is canceled.
|
1330
1522
|
* @example
|
1331
1523
|
* ::: only-for javascript
|
1332
1524
|
* ```js
|
1333
|
-
* // To disregard a single row, remove it from
|
1525
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1334
1526
|
* new Handsontable(element, {
|
1335
|
-
* beforeCut: function(
|
1336
|
-
* //
|
1337
|
-
*
|
1338
|
-
*
|
1339
|
-
* //
|
1527
|
+
* beforeCut: function(clipboardData) {
|
1528
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1529
|
+
* clipboardData.removeRows([0]);
|
1530
|
+
* clipboardData.removeColumns([0]);
|
1531
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1340
1532
|
* }
|
1341
1533
|
* });
|
1342
1534
|
* // To cancel a cutting action, just return `false`.
|
1343
1535
|
* new Handsontable(element, {
|
1344
|
-
* beforeCut: function(
|
1536
|
+
* beforeCut: function(clipboardData) {
|
1345
1537
|
* return false;
|
1346
1538
|
* }
|
1347
1539
|
* });
|
@@ -1350,18 +1542,18 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1350
1542
|
*
|
1351
1543
|
* ::: only-for react
|
1352
1544
|
* ```jsx
|
1353
|
-
* // To disregard a single row, remove it from
|
1545
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1354
1546
|
* <HotTable
|
1355
|
-
* beforeCut={(
|
1356
|
-
* //
|
1357
|
-
*
|
1358
|
-
*
|
1359
|
-
* //
|
1547
|
+
* beforeCut={(clipboardData) => {
|
1548
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1549
|
+
* clipboardData.removeRows([0]);
|
1550
|
+
* clipboardData.removeColumns([0]);
|
1551
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1360
1552
|
* }}
|
1361
1553
|
* />
|
1362
1554
|
* // To cancel a cutting action, just return `false`.
|
1363
1555
|
* <HotTable
|
1364
|
-
* beforeCut={(
|
1556
|
+
* beforeCut={(clipboardData) => {
|
1365
1557
|
* return false;
|
1366
1558
|
* }}
|
1367
1559
|
* />
|
@@ -1373,33 +1565,50 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1373
1565
|
* Fired by {@link CopyPaste} plugin after data was cut out from the table. This hook is fired when
|
1374
1566
|
* {@link Options#copyPaste} option is enabled.
|
1375
1567
|
*
|
1568
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1569
|
+
*
|
1376
1570
|
* @event Hooks#afterCut
|
1377
|
-
* @param {
|
1378
|
-
* @param {
|
1379
|
-
*
|
1571
|
+
* @param {object} clipboardData Information about already performed cut action.
|
1572
|
+
* @param {Function} clipboardData.removeRow Remove row from the copied dataset.
|
1573
|
+
* @param {Function} clipboardData.removeColumn Remove column from the copied dataset.
|
1574
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1575
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1576
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the copied dataset.
|
1577
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the copied dataset.
|
1578
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1579
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1580
|
+
* @param {Function} clipboardData.getRanges Returns ranges related to copied part of Handsontable.
|
1380
1581
|
*/
|
1381
1582
|
'afterCut',
|
1382
1583
|
/**
|
1383
1584
|
* Fired before values are copied to the clipboard.
|
1384
1585
|
*
|
1586
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1587
|
+
*
|
1385
1588
|
* @event Hooks#beforeCopy
|
1386
|
-
* @param {
|
1387
|
-
* @param {
|
1388
|
-
*
|
1389
|
-
* @param {
|
1589
|
+
* @param {object} clipboardData Information about copy action which is going to happen.
|
1590
|
+
* @param {Function} clipboardData.removeRow Remove row from the copied dataset.
|
1591
|
+
* @param {Function} clipboardData.removeColumn Remove column from the copied dataset.
|
1592
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1593
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1594
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the copied dataset.
|
1595
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the copied dataset.
|
1596
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1597
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1598
|
+
* @param {Function} clipboardData.getRanges Returns ranges related to copied part of Handsontable.
|
1390
1599
|
* @returns {*} If returns `false` then copying is canceled.
|
1391
1600
|
*
|
1392
1601
|
* @example
|
1393
1602
|
* ::: only-for javascript
|
1394
1603
|
* ```js
|
1395
|
-
* // To disregard a single row, remove it from
|
1604
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1396
1605
|
* ...
|
1397
1606
|
* new Handsontable(document.getElementById('example'), {
|
1398
|
-
* beforeCopy: (
|
1399
|
-
* //
|
1400
|
-
*
|
1401
|
-
*
|
1402
|
-
* //
|
1607
|
+
* beforeCopy: (clipboardData) => {
|
1608
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1609
|
+
* clipboardData.removeRows([0]);
|
1610
|
+
* clipboardData.removeColumns([0]);
|
1611
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1403
1612
|
* }
|
1404
1613
|
* });
|
1405
1614
|
* ...
|
@@ -1407,7 +1616,7 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1407
1616
|
* // To cancel copying, return false from the callback.
|
1408
1617
|
* ...
|
1409
1618
|
* new Handsontable(document.getElementById('example'), {
|
1410
|
-
* beforeCopy: (
|
1619
|
+
* beforeCopy: (clipboardData) => {
|
1411
1620
|
* return false;
|
1412
1621
|
* }
|
1413
1622
|
* });
|
@@ -1417,14 +1626,14 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1417
1626
|
*
|
1418
1627
|
* ::: only-for react
|
1419
1628
|
* ```jsx
|
1420
|
-
* // To disregard a single row, remove it from
|
1629
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1421
1630
|
* ...
|
1422
1631
|
* <HotTable
|
1423
|
-
* beforeCopy={(
|
1424
|
-
* //
|
1425
|
-
*
|
1426
|
-
*
|
1427
|
-
* //
|
1632
|
+
* beforeCopy={(clipboardData) => {
|
1633
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1634
|
+
* clipboardData.removeRows([0]);
|
1635
|
+
* clipboardData.removeColumns([0]);
|
1636
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1428
1637
|
* }}
|
1429
1638
|
* />
|
1430
1639
|
* ...
|
@@ -1432,7 +1641,7 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1432
1641
|
* // To cancel copying, return false from the callback.
|
1433
1642
|
* ...
|
1434
1643
|
* <HotTable
|
1435
|
-
* beforeCopy={(
|
1644
|
+
* beforeCopy={(clipboardData) => {
|
1436
1645
|
* return false;
|
1437
1646
|
* }}
|
1438
1647
|
* />
|
@@ -1445,37 +1654,55 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1445
1654
|
* Fired by {@link CopyPaste} plugin after data are pasted into table. This hook is fired when {@link Options#copyPaste}
|
1446
1655
|
* option is enabled.
|
1447
1656
|
*
|
1657
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1658
|
+
*
|
1448
1659
|
* @event Hooks#afterCopy
|
1449
|
-
* @param {
|
1450
|
-
* @param {
|
1451
|
-
*
|
1452
|
-
* @param {
|
1660
|
+
* @param {object} clipboardData Information about already performed copy action.
|
1661
|
+
* @param {Function} clipboardData.removeRow Remove row from the copied dataset.
|
1662
|
+
* @param {Function} clipboardData.removeColumn Remove column from the copied dataset.
|
1663
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1664
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1665
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the copied dataset.
|
1666
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the copied dataset.
|
1667
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1668
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1669
|
+
* @param {Function} clipboardData.getRanges Returns ranges related to copied part of Handsontable.
|
1453
1670
|
*/
|
1454
1671
|
'afterCopy',
|
1455
1672
|
/**
|
1456
1673
|
* Fired by {@link CopyPaste} plugin before values are pasted into table. This hook is fired when
|
1457
1674
|
* {@link Options#copyPaste} option is enabled.
|
1458
1675
|
*
|
1676
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1677
|
+
*
|
1459
1678
|
* @event Hooks#beforePaste
|
1460
|
-
* @param {
|
1461
|
-
* @param {
|
1462
|
-
*
|
1679
|
+
* @param {object} clipboardData Information about paste action which is going to happen.
|
1680
|
+
* @param {Function} clipboardData.removeRow Remove row from the pasted dataset.
|
1681
|
+
* @param {Function} clipboardData.removeColumn Remove column from the pasted dataset.
|
1682
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1683
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1684
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the pasted dataset.
|
1685
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the pasted dataset.
|
1686
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1687
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1688
|
+
* @param {Function} clipboardData.getSource Gets information about source of the copied data
|
1689
|
+
* (Handsontable, table or string).
|
1463
1690
|
* @returns {*} If returns `false` then pasting is canceled.
|
1464
1691
|
* @example
|
1465
1692
|
* ```js
|
1466
1693
|
* ::: only-for javascript
|
1467
|
-
* // To disregard a single row, remove it from
|
1694
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1468
1695
|
* new Handsontable(example, {
|
1469
|
-
* beforePaste: (
|
1470
|
-
* //
|
1471
|
-
*
|
1472
|
-
*
|
1473
|
-
* //
|
1696
|
+
* beforePaste: (clipboardData) => {
|
1697
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1698
|
+
* clipboardData.removeRows([0]);
|
1699
|
+
* clipboardData.removeColumns([0]);
|
1700
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1474
1701
|
* }
|
1475
1702
|
* });
|
1476
1703
|
* // To cancel pasting, return false from the callback.
|
1477
1704
|
* new Handsontable(example, {
|
1478
|
-
* beforePaste: (
|
1705
|
+
* beforePaste: (clipboardData) => {
|
1479
1706
|
* return false;
|
1480
1707
|
* }
|
1481
1708
|
* });
|
@@ -1484,18 +1711,18 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1484
1711
|
*
|
1485
1712
|
* ::: only-for react
|
1486
1713
|
* ```jsx
|
1487
|
-
* // To disregard a single row, remove it from
|
1714
|
+
* // To disregard a single row or column, remove it from copied dataset using `removeRows`/`removeColumns` method on the object from the first callback argument.
|
1488
1715
|
* <HotTable
|
1489
|
-
* beforePaste={(
|
1490
|
-
* //
|
1491
|
-
*
|
1492
|
-
*
|
1493
|
-
* //
|
1716
|
+
* beforePaste={(clipboardData) => {
|
1717
|
+
* // clipboardData.getData() -> [[1, 2, 3], [4, 5, 6]]
|
1718
|
+
* clipboardData.removeRows([0]);
|
1719
|
+
* clipboardData.removeColumns([0]);
|
1720
|
+
* // clipboardData.getData() -> [[5, 6]]
|
1494
1721
|
* }}
|
1495
1722
|
* />
|
1496
1723
|
* // To cancel pasting, return false from the callback.
|
1497
1724
|
* <HotTable
|
1498
|
-
* beforePaste={(
|
1725
|
+
* beforePaste={(clipboardData) => {
|
1499
1726
|
* return false;
|
1500
1727
|
* }}
|
1501
1728
|
* />
|
@@ -1507,10 +1734,20 @@ const REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-s
|
|
1507
1734
|
* Fired by {@link CopyPaste} plugin after values are pasted into table. This hook is fired when
|
1508
1735
|
* {@link Options#copyPaste} option is enabled.
|
1509
1736
|
*
|
1737
|
+
* Note: Please keep in mind since @14.0.0 the method arguments has been changed.
|
1738
|
+
*
|
1510
1739
|
* @event Hooks#afterPaste
|
1511
|
-
* @param {
|
1512
|
-
* @param {
|
1513
|
-
*
|
1740
|
+
* @param {object} clipboardData Information about already performed paste action.
|
1741
|
+
* @param {Function} clipboardData.removeRow Remove row from the pasted dataset.
|
1742
|
+
* @param {Function} clipboardData.removeColumn Remove column from the pasted dataset.
|
1743
|
+
* @param {Function} clipboardData.insertAtRow Insert values at row index.
|
1744
|
+
* @param {Function} clipboardData.insertAtColumn Insert values at column index.
|
1745
|
+
* @param {Function} clipboardData.setCellAt Change headers or cells in the pasted dataset.
|
1746
|
+
* @param {Function} clipboardData.getCellAt Get headers or cells from the pasted dataset.
|
1747
|
+
* @param {Function} clipboardData.getData Gets copied data stored as array of arrays.
|
1748
|
+
* @param {Function} clipboardData.getMetaInfo Gets meta information for the copied data.
|
1749
|
+
* @param {Function} clipboardData.getSource Gets information about source of the copied data
|
1750
|
+
* (Handsontable, table or string).
|
1514
1751
|
*/
|
1515
1752
|
'afterPaste',
|
1516
1753
|
/**
|
@@ -2382,7 +2619,7 @@ const REMOVED_HOOKS = new Map([['modifyRow', '8.0.0'], ['modifyCol', '8.0.0'], [
|
|
2382
2619
|
* @type {Map<string, string>}
|
2383
2620
|
*/
|
2384
2621
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
2385
|
-
const DEPRECATED_HOOKS = new Map([]);
|
2622
|
+
const DEPRECATED_HOOKS = new Map([['beforeRemoveCellClassNames', 'The hook "beforeRemoveCellClassNames" is deprecated and will be removed in the next major release.']]);
|
2386
2623
|
class Hooks {
|
2387
2624
|
static getSingleton() {
|
2388
2625
|
return getGlobalSingleton();
|
@@ -2762,5 +2999,4 @@ const globalSingleton = new Hooks();
|
|
2762
2999
|
function getGlobalSingleton() {
|
2763
3000
|
return globalSingleton;
|
2764
3001
|
}
|
2765
|
-
var _default = Hooks;
|
2766
|
-
exports.default = _default;
|
3002
|
+
var _default = exports.default = Hooks;
|