handsontable 12.1.2 → 12.2.0
Sign up to get free protection for your applications and to get access to all the features.
- package/3rdparty/SheetClip/SheetClip.js +3 -32
- package/3rdparty/SheetClip/SheetClip.mjs +3 -23
- package/3rdparty/SheetClip/index.js +0 -2
- package/3rdparty/autoResize/autoResize.js +119 -145
- package/3rdparty/autoResize/autoResize.mjs +119 -143
- package/3rdparty/autoResize/index.js +0 -2
- package/3rdparty/walkontable/src/border.js +72 -174
- package/3rdparty/walkontable/src/border.mjs +74 -161
- package/3rdparty/walkontable/src/calculator/constants.js +0 -3
- package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
- package/3rdparty/walkontable/src/calculator/index.js +0 -10
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
- package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
- package/3rdparty/walkontable/src/cell/coords.js +13 -43
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
- package/3rdparty/walkontable/src/cell/range.js +55 -130
- package/3rdparty/walkontable/src/cell/range.mjs +60 -126
- package/3rdparty/walkontable/src/core/_base.js +16 -74
- package/3rdparty/walkontable/src/core/_base.mjs +19 -70
- package/3rdparty/walkontable/src/core/clone.js +1 -40
- package/3rdparty/walkontable/src/core/clone.mjs +3 -30
- package/3rdparty/walkontable/src/core/core.js +3 -57
- package/3rdparty/walkontable/src/core/core.mjs +5 -41
- package/3rdparty/walkontable/src/event.js +31 -78
- package/3rdparty/walkontable/src/event.mjs +31 -65
- package/3rdparty/walkontable/src/facade/core.js +1 -17
- package/3rdparty/walkontable/src/facade/core.mjs +7 -20
- package/3rdparty/walkontable/src/filter/column.js +9 -18
- package/3rdparty/walkontable/src/filter/column.mjs +9 -17
- package/3rdparty/walkontable/src/filter/row.js +9 -18
- package/3rdparty/walkontable/src/filter/row.mjs +9 -17
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +24 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
- package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
- package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
- package/3rdparty/walkontable/src/overlay/constants.js +0 -6
- package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
- package/3rdparty/walkontable/src/overlay/index.js +0 -17
- package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
- package/3rdparty/walkontable/src/overlay/top.js +27 -100
- package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
- package/3rdparty/walkontable/src/overlays.js +58 -129
- package/3rdparty/walkontable/src/overlays.mjs +60 -121
- package/3rdparty/walkontable/src/renderer/_base.js +4 -20
- package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
- package/3rdparty/walkontable/src/renderer/cells.js +10 -54
- package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
- package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
- package/3rdparty/walkontable/src/renderer/index.js +13 -36
- package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
- package/3rdparty/walkontable/src/renderer/rows.js +3 -46
- package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
- package/3rdparty/walkontable/src/renderer/table.js +22 -49
- package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
- package/3rdparty/walkontable/src/scroll.js +56 -86
- package/3rdparty/walkontable/src/scroll.mjs +58 -86
- package/3rdparty/walkontable/src/selection.js +20 -101
- package/3rdparty/walkontable/src/selection.mjs +22 -85
- package/3rdparty/walkontable/src/settings.js +9 -29
- package/3rdparty/walkontable/src/settings.mjs +9 -27
- package/3rdparty/walkontable/src/table/bottom.js +1 -35
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
- package/3rdparty/walkontable/src/table/master.js +10 -55
- package/3rdparty/walkontable/src/table/master.mjs +15 -44
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
- package/3rdparty/walkontable/src/table/top.js +1 -35
- package/3rdparty/walkontable/src/table/top.mjs +6 -25
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table.js +74 -238
- package/3rdparty/walkontable/src/table.mjs +84 -227
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +9 -31
- package/3rdparty/walkontable/src/utils/column.mjs +13 -30
- package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
- package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
- package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
- package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
- package/3rdparty/walkontable/src/utils/row.js +2 -13
- package/3rdparty/walkontable/src/utils/row.mjs +2 -12
- package/3rdparty/walkontable/src/viewport.js +38 -100
- package/3rdparty/walkontable/src/viewport.mjs +40 -99
- package/CHANGELOG.md +103 -5
- package/base.js +6 -17
- package/base.mjs +6 -12
- package/cellTypes/autocompleteType/autocompleteType.js +0 -4
- package/cellTypes/autocompleteType/index.js +0 -2
- package/cellTypes/checkboxType/checkboxType.js +0 -3
- package/cellTypes/checkboxType/index.js +0 -2
- package/cellTypes/dateType/dateType.js +0 -4
- package/cellTypes/dateType/index.js +0 -2
- package/cellTypes/dropdownType/dropdownType.js +0 -4
- package/cellTypes/dropdownType/index.js +0 -2
- package/cellTypes/handsontableType/handsontableType.js +0 -3
- package/cellTypes/handsontableType/index.js +0 -2
- package/cellTypes/index.js +0 -21
- package/cellTypes/index.mjs +3 -5
- package/cellTypes/numericType/index.js +0 -2
- package/cellTypes/numericType/numericType.js +0 -4
- package/cellTypes/passwordType/index.js +0 -2
- package/cellTypes/passwordType/passwordType.js +0 -3
- package/cellTypes/registry.js +10 -25
- package/cellTypes/registry.mjs +10 -20
- package/cellTypes/textType/index.js +0 -2
- package/cellTypes/textType/textType.js +0 -3
- package/cellTypes/timeType/index.js +0 -2
- package/cellTypes/timeType/timeType.js +0 -4
- package/core.d.ts +6 -4
- package/core.js +514 -974
- package/core.mjs +519 -921
- package/dataMap/dataMap.js +127 -212
- package/dataMap/dataMap.mjs +127 -188
- package/{dataSource.js → dataMap/dataSource.js} +18 -66
- package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +21 -46
- package/dataMap/metaManager/index.mjs +47 -64
- package/dataMap/metaManager/lazyFactoryMap.js +23 -55
- package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
- package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
- package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
- package/dataMap/metaManager/metaSchema.js +196 -257
- package/dataMap/metaManager/metaSchema.mjs +196 -248
- package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
- package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
- package/dataMap/metaManager/utils.js +11 -20
- package/dataMap/metaManager/utils.mjs +21 -23
- package/dataMap/replaceData.js +14 -35
- package/dataMap/replaceData.mjs +35 -45
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +64469 -93042
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +527 -284
- package/dist/handsontable.js +9616 -21414
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +0 -175
- package/dist/languages/ar-AR.js +0 -10
- package/dist/languages/cs-CZ.js +0 -10
- package/dist/languages/de-CH.js +0 -10
- package/dist/languages/de-DE.js +0 -10
- package/dist/languages/en-US.js +0 -10
- package/dist/languages/es-MX.js +0 -10
- package/dist/languages/fr-FR.js +0 -10
- package/dist/languages/it-IT.js +0 -10
- package/dist/languages/ja-JP.js +0 -10
- package/dist/languages/ko-KR.js +0 -10
- package/dist/languages/lv-LV.js +0 -10
- package/dist/languages/nb-NO.js +0 -10
- package/dist/languages/nl-NL.js +0 -10
- package/dist/languages/pl-PL.js +0 -10
- package/dist/languages/pt-BR.js +0 -10
- package/dist/languages/ru-RU.js +0 -10
- package/dist/languages/sr-SP.js +0 -10
- package/dist/languages/zh-CN.js +0 -10
- package/dist/languages/zh-TW.js +0 -10
- package/editorManager.js +89 -124
- package/editorManager.mjs +89 -104
- package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
- package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +45 -155
- package/editors/baseEditor/baseEditor.mjs +45 -129
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +2 -33
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +36 -97
- package/editors/dateEditor/dateEditor.mjs +35 -74
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +1 -41
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +13 -85
- package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +3 -5
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +1 -31
- package/editors/numericEditor/numericEditor.mjs +1 -18
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +1 -38
- package/editors/passwordEditor/passwordEditor.mjs +1 -22
- package/editors/registry.js +10 -36
- package/editors/registry.mjs +10 -28
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +21 -73
- package/editors/selectEditor/selectEditor.mjs +21 -56
- package/editors/textEditor/caretPositioner.js +0 -12
- package/editors/textEditor/caretPositioner.mjs +10 -20
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +38 -137
- package/editors/textEditor/textEditor.mjs +38 -106
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +1 -36
- package/editors/timeEditor/timeEditor.mjs +1 -21
- package/eventManager.js +20 -56
- package/eventManager.mjs +23 -56
- package/helpers/array.js +22 -88
- package/helpers/array.mjs +22 -58
- package/helpers/browser.js +25 -51
- package/helpers/browser.mjs +25 -32
- package/helpers/console.js +3 -13
- package/helpers/console.mjs +8 -16
- package/helpers/data.d.ts +0 -1
- package/helpers/data.js +10 -55
- package/helpers/data.mjs +10 -33
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +67 -259
- package/helpers/dom/element.mjs +74 -194
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +13 -47
- package/helpers/feature.mjs +13 -31
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +20 -52
- package/helpers/mixed.js +9 -66
- package/helpers/mixed.mjs +15 -51
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +15 -72
- package/helpers/object.mjs +21 -52
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +12 -21
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +7 -10
- package/helpers/unicode.js +17 -26
- package/helpers/unicode.mjs +17 -15
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +1 -3
- package/i18n/constants.mjs +1 -1
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +0 -16
- package/i18n/languages/ar-AR.mjs +1 -4
- package/i18n/languages/cs-CZ.js +0 -16
- package/i18n/languages/cs-CZ.mjs +1 -4
- package/i18n/languages/de-CH.js +0 -16
- package/i18n/languages/de-CH.mjs +1 -4
- package/i18n/languages/de-DE.js +0 -16
- package/i18n/languages/de-DE.mjs +1 -4
- package/i18n/languages/en-US.js +0 -16
- package/i18n/languages/en-US.mjs +1 -4
- package/i18n/languages/es-MX.js +0 -16
- package/i18n/languages/es-MX.mjs +1 -4
- package/i18n/languages/fr-FR.js +0 -16
- package/i18n/languages/fr-FR.mjs +1 -4
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +0 -16
- package/i18n/languages/it-IT.mjs +1 -4
- package/i18n/languages/ja-JP.js +0 -16
- package/i18n/languages/ja-JP.mjs +1 -4
- package/i18n/languages/ko-KR.js +0 -16
- package/i18n/languages/ko-KR.mjs +1 -4
- package/i18n/languages/lv-LV.js +0 -16
- package/i18n/languages/lv-LV.mjs +1 -4
- package/i18n/languages/nb-NO.js +0 -16
- package/i18n/languages/nb-NO.mjs +1 -4
- package/i18n/languages/nl-NL.js +0 -16
- package/i18n/languages/nl-NL.mjs +1 -4
- package/i18n/languages/pl-PL.js +0 -16
- package/i18n/languages/pl-PL.mjs +1 -4
- package/i18n/languages/pt-BR.js +0 -16
- package/i18n/languages/pt-BR.mjs +1 -4
- package/i18n/languages/ru-RU.js +0 -16
- package/i18n/languages/ru-RU.mjs +1 -4
- package/i18n/languages/sr-SP.js +0 -16
- package/i18n/languages/sr-SP.mjs +1 -4
- package/i18n/languages/zh-CN.js +0 -16
- package/i18n/languages/zh-CN.mjs +1 -4
- package/i18n/languages/zh-TW.js +0 -16
- package/i18n/languages/zh-TW.mjs +1 -4
- package/i18n/phraseFormatters/index.js +4 -11
- package/i18n/phraseFormatters/index.mjs +4 -6
- package/i18n/phraseFormatters/pluralize.js +0 -5
- package/i18n/phraseFormatters/pluralize.mjs +0 -3
- package/i18n/phraseFormatters/substituteVariables.js +0 -4
- package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +13 -21
- package/index.js +19 -56
- package/index.mjs +19 -15
- package/languages/all.js +0 -175
- package/languages/ar-AR.js +0 -10
- package/languages/ar-AR.mjs +1 -4
- package/languages/cs-CZ.js +0 -10
- package/languages/cs-CZ.mjs +1 -4
- package/languages/de-CH.js +0 -10
- package/languages/de-CH.mjs +1 -4
- package/languages/de-DE.js +0 -10
- package/languages/de-DE.mjs +1 -4
- package/languages/en-US.js +0 -10
- package/languages/en-US.mjs +1 -4
- package/languages/es-MX.js +0 -10
- package/languages/es-MX.mjs +1 -4
- package/languages/fr-FR.js +0 -10
- package/languages/fr-FR.mjs +1 -4
- package/languages/index.js +0 -175
- package/languages/it-IT.js +0 -10
- package/languages/it-IT.mjs +1 -4
- package/languages/ja-JP.js +0 -10
- package/languages/ja-JP.mjs +1 -4
- package/languages/ko-KR.js +0 -10
- package/languages/ko-KR.mjs +1 -4
- package/languages/lv-LV.js +0 -10
- package/languages/lv-LV.mjs +1 -4
- package/languages/nb-NO.js +0 -10
- package/languages/nb-NO.mjs +1 -4
- package/languages/nl-NL.js +0 -10
- package/languages/nl-NL.mjs +1 -4
- package/languages/pl-PL.js +0 -10
- package/languages/pl-PL.mjs +1 -4
- package/languages/pt-BR.js +0 -10
- package/languages/pt-BR.mjs +1 -4
- package/languages/ru-RU.js +0 -10
- package/languages/ru-RU.mjs +1 -4
- package/languages/sr-SP.js +0 -10
- package/languages/sr-SP.mjs +1 -4
- package/languages/zh-CN.js +0 -10
- package/languages/zh-CN.mjs +1 -4
- package/languages/zh-TW.js +0 -10
- package/languages/zh-TW.mjs +1 -4
- package/mixins/hooksRefRegisterer.js +4 -18
- package/mixins/hooksRefRegisterer.mjs +4 -15
- package/mixins/localHooks.js +7 -17
- package/mixins/localHooks.mjs +7 -14
- package/package.json +1 -1
- package/pluginHooks.d.ts +3 -4
- package/pluginHooks.js +288 -110
- package/pluginHooks.mjs +287 -97
- package/plugins/autoColumnSize/autoColumnSize.js +74 -172
- package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +73 -153
- package/plugins/autoRowSize/autoRowSize.mjs +73 -124
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +46 -163
- package/plugins/autofill/autofill.mjs +46 -131
- package/plugins/autofill/index.js +0 -2
- package/plugins/autofill/utils.js +4 -26
- package/plugins/autofill/utils.mjs +4 -18
- package/plugins/base/base.js +21 -92
- package/plugins/base/base.mjs +21 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
- package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +50 -188
- package/plugins/columnSorting/columnSorting.mjs +50 -143
- package/plugins/columnSorting/columnStatesManager.js +15 -71
- package/plugins/columnSorting/columnStatesManager.mjs +15 -48
- package/plugins/columnSorting/domHelpers.js +2 -18
- package/plugins/columnSorting/domHelpers.mjs +2 -7
- package/plugins/columnSorting/index.js +0 -2
- package/plugins/columnSorting/rootComparator.js +5 -24
- package/plugins/columnSorting/rootComparator.mjs +12 -21
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +10 -23
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +10 -23
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
- package/plugins/columnSorting/sortService/engine.js +3 -13
- package/plugins/columnSorting/sortService/engine.mjs +3 -5
- package/plugins/columnSorting/sortService/index.js +0 -5
- package/plugins/columnSorting/sortService/registry.js +6 -18
- package/plugins/columnSorting/sortService/registry.mjs +6 -10
- package/plugins/columnSorting/utils.js +9 -34
- package/plugins/columnSorting/utils.mjs +9 -15
- package/plugins/columnSummary/columnSummary.js +66 -126
- package/plugins/columnSummary/columnSummary.mjs +66 -101
- package/plugins/columnSummary/endpoints.js +21 -98
- package/plugins/columnSummary/endpoints.mjs +26 -99
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +13 -0
- package/plugins/columnSummary/utils.mjs +9 -0
- package/plugins/comments/commentEditor.js +16 -28
- package/plugins/comments/commentEditor.mjs +21 -32
- package/plugins/comments/comments.js +92 -175
- package/plugins/comments/comments.mjs +92 -149
- package/plugins/comments/displaySwitch.js +6 -23
- package/plugins/comments/displaySwitch.mjs +6 -18
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +9 -40
- package/plugins/contextMenu/commandExecutor.mjs +14 -41
- package/plugins/contextMenu/contextMenu.js +26 -105
- package/plugins/contextMenu/contextMenu.mjs +26 -75
- package/plugins/contextMenu/cursor.js +6 -20
- package/plugins/contextMenu/cursor.mjs +11 -24
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +14 -43
- package/plugins/contextMenu/itemsFactory.mjs +19 -44
- package/plugins/contextMenu/menu.js +61 -177
- package/plugins/contextMenu/menu.mjs +61 -149
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
- package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
- package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
- package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
- package/plugins/contextMenu/predefinedItems/redo.js +1 -16
- package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
- package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
- package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -16
- package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems.js +2 -48
- package/plugins/contextMenu/predefinedItems.mjs +2 -7
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +21 -39
- package/plugins/copyPaste/clipboardData.js +1 -10
- package/plugins/copyPaste/clipboardData.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
- package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
- package/plugins/copyPaste/copyPaste.js +53 -185
- package/plugins/copyPaste/copyPaste.mjs +53 -144
- package/plugins/copyPaste/focusableElement.js +12 -56
- package/plugins/copyPaste/focusableElement.mjs +15 -49
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +1 -10
- package/plugins/copyPaste/pasteEvent.mjs +3 -10
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
- package/plugins/customBorders/customBorders.js +52 -181
- package/plugins/customBorders/customBorders.mjs +52 -147
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +20 -39
- package/plugins/dragToScroll/dragToScroll.js +17 -74
- package/plugins/dragToScroll/dragToScroll.mjs +17 -55
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +47 -126
- package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +24 -69
- package/plugins/exportFile/dataProvider.mjs +26 -60
- package/plugins/exportFile/exportFile.js +48 -58
- package/plugins/exportFile/exportFile.mjs +48 -36
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +1 -11
- package/plugins/exportFile/typeFactory.mjs +1 -4
- package/plugins/exportFile/types/_base.js +2 -16
- package/plugins/exportFile/types/_base.mjs +4 -16
- package/plugins/exportFile/types/csv.js +2 -50
- package/plugins/exportFile/types/csv.mjs +2 -29
- package/plugins/filters/component/_base.js +12 -32
- package/plugins/filters/component/_base.mjs +15 -30
- package/plugins/filters/component/actionBar.js +6 -55
- package/plugins/filters/component/actionBar.mjs +9 -38
- package/plugins/filters/component/condition.js +25 -122
- package/plugins/filters/component/condition.mjs +24 -88
- package/plugins/filters/component/operators.js +10 -68
- package/plugins/filters/component/operators.mjs +10 -45
- package/plugins/filters/component/value.js +25 -99
- package/plugins/filters/component/value.mjs +28 -72
- package/plugins/filters/condition/beginsWith.js +2 -32
- package/plugins/filters/condition/beginsWith.mjs +2 -10
- package/plugins/filters/condition/between.js +3 -37
- package/plugins/filters/condition/between.mjs +3 -15
- package/plugins/filters/condition/byValue.js +3 -27
- package/plugins/filters/condition/byValue.mjs +3 -12
- package/plugins/filters/condition/contains.js +2 -32
- package/plugins/filters/condition/contains.mjs +2 -10
- package/plugins/filters/condition/date/after.js +2 -34
- package/plugins/filters/condition/date/after.mjs +2 -12
- package/plugins/filters/condition/date/before.js +2 -34
- package/plugins/filters/condition/date/before.mjs +2 -12
- package/plugins/filters/condition/date/today.js +1 -22
- package/plugins/filters/condition/date/today.mjs +1 -3
- package/plugins/filters/condition/date/tomorrow.js +1 -22
- package/plugins/filters/condition/date/tomorrow.mjs +1 -3
- package/plugins/filters/condition/date/yesterday.js +1 -22
- package/plugins/filters/condition/date/yesterday.mjs +1 -3
- package/plugins/filters/condition/empty.js +1 -19
- package/plugins/filters/condition/empty.mjs +1 -1
- package/plugins/filters/condition/endsWith.js +2 -32
- package/plugins/filters/condition/endsWith.mjs +2 -10
- package/plugins/filters/condition/equal.js +2 -31
- package/plugins/filters/condition/equal.mjs +2 -10
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +2 -32
- package/plugins/filters/condition/greaterThan.mjs +2 -12
- package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
- package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/lessThan.js +2 -32
- package/plugins/filters/condition/lessThan.mjs +2 -12
- package/plugins/filters/condition/lessThanOrEqual.js +2 -32
- package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/none.js +1 -18
- package/plugins/filters/condition/none.mjs +1 -1
- package/plugins/filters/condition/notBetween.js +1 -19
- package/plugins/filters/condition/notBetween.mjs +1 -1
- package/plugins/filters/condition/notContains.js +1 -19
- package/plugins/filters/condition/notContains.mjs +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -19
- package/plugins/filters/condition/notEmpty.mjs +1 -1
- package/plugins/filters/condition/notEqual.js +1 -19
- package/plugins/filters/condition/notEqual.mjs +1 -1
- package/plugins/filters/condition/true.js +1 -5
- package/plugins/filters/condition/true.mjs +1 -1
- package/plugins/filters/conditionCollection.js +21 -80
- package/plugins/filters/conditionCollection.mjs +21 -57
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +17 -57
- package/plugins/filters/conditionUpdateObserver.mjs +25 -53
- package/plugins/filters/constants.js +1 -66
- package/plugins/filters/constants.mjs +1 -8
- package/plugins/filters/dataFilter.js +4 -21
- package/plugins/filters/dataFilter.mjs +7 -23
- package/plugins/filters/filters.d.ts +1 -1
- package/plugins/filters/filters.js +147 -272
- package/plugins/filters/filters.mjs +148 -228
- package/plugins/filters/index.js +0 -2
- package/plugins/filters/logicalOperationRegisterer.js +3 -9
- package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
- package/plugins/filters/logicalOperations/conjunction.js +2 -19
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunction.js +2 -19
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
- package/plugins/filters/ui/_base.js +12 -55
- package/plugins/filters/ui/_base.mjs +12 -35
- package/plugins/filters/ui/input.js +7 -52
- package/plugins/filters/ui/input.mjs +7 -34
- package/plugins/filters/ui/link.js +3 -43
- package/plugins/filters/ui/link.mjs +3 -25
- package/plugins/filters/ui/multipleSelect.js +26 -120
- package/plugins/filters/ui/multipleSelect.mjs +20 -76
- package/plugins/filters/ui/radioInput.js +6 -47
- package/plugins/filters/ui/radioInput.mjs +6 -30
- package/plugins/filters/ui/select.js +14 -76
- package/plugins/filters/ui/select.mjs +14 -52
- package/plugins/filters/utils.js +6 -39
- package/plugins/filters/utils.mjs +6 -23
- package/plugins/formulas/engine/register.js +24 -74
- package/plugins/formulas/engine/register.mjs +29 -51
- package/plugins/formulas/engine/settings.js +4 -24
- package/plugins/formulas/engine/settings.mjs +4 -12
- package/plugins/formulas/formulas.js +103 -295
- package/plugins/formulas/formulas.mjs +104 -248
- package/plugins/formulas/index.js +0 -2
- package/plugins/formulas/utils.js +1 -3
- package/plugins/formulas/utils.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
- package/plugins/hiddenColumns/hiddenColumns.js +72 -153
- package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
- package/plugins/hiddenRows/hiddenRows.js +70 -152
- package/plugins/hiddenRows/hiddenRows.mjs +70 -109
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +3 -5
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +45 -134
- package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
- package/plugins/manualColumnMove/ui/_base.js +12 -30
- package/plugins/manualColumnMove/ui/_base.mjs +12 -27
- package/plugins/manualColumnMove/ui/backlight.js +1 -37
- package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
- package/plugins/manualColumnMove/ui/guideline.js +1 -37
- package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +44 -143
- package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +45 -137
- package/plugins/manualRowMove/manualRowMove.mjs +45 -109
- package/plugins/manualRowMove/ui/_base.js +12 -27
- package/plugins/manualRowMove/ui/_base.mjs +12 -26
- package/plugins/manualRowMove/ui/backlight.js +1 -37
- package/plugins/manualRowMove/ui/backlight.mjs +1 -22
- package/plugins/manualRowMove/ui/guideline.js +1 -37
- package/plugins/manualRowMove/ui/guideline.mjs +1 -22
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +42 -138
- package/plugins/manualRowResize/manualRowResize.mjs +41 -112
- package/plugins/mergeCells/calculations/autofill.js +39 -130
- package/plugins/mergeCells/calculations/autofill.mjs +44 -122
- package/plugins/mergeCells/calculations/selection.js +9 -40
- package/plugins/mergeCells/calculations/selection.mjs +9 -37
- package/plugins/mergeCells/cellCoords.js +30 -51
- package/plugins/mergeCells/cellCoords.mjs +35 -54
- package/plugins/mergeCells/cellsCollection.js +13 -84
- package/plugins/mergeCells/cellsCollection.mjs +18 -69
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +130 -333
- package/plugins/mergeCells/mergeCells.mjs +130 -292
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +3 -15
- package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +3 -8
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +79 -200
- package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
- package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
- package/plugins/nestedHeaders/stateManager/index.js +24 -107
- package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
- package/plugins/nestedRows/data/dataManager.js +40 -161
- package/plugins/nestedRows/data/dataManager.mjs +44 -148
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +41 -119
- package/plugins/nestedRows/nestedRows.mjs +41 -86
- package/plugins/nestedRows/ui/_base.js +1 -9
- package/plugins/nestedRows/ui/_base.mjs +1 -8
- package/plugins/nestedRows/ui/collapsing.js +28 -134
- package/plugins/nestedRows/ui/collapsing.mjs +34 -118
- package/plugins/nestedRows/ui/contextMenu.js +2 -53
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
- package/plugins/nestedRows/ui/headers.js +5 -50
- package/plugins/nestedRows/ui/headers.mjs +11 -41
- package/plugins/nestedRows/utils/rowMoveController.js +28 -78
- package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +10 -58
- package/plugins/persistentState/persistentState.mjs +10 -37
- package/plugins/persistentState/storage.js +9 -25
- package/plugins/persistentState/storage.mjs +12 -26
- package/plugins/registry.js +7 -51
- package/plugins/registry.mjs +8 -34
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +16 -98
- package/plugins/search/search.mjs +16 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +15 -76
- package/plugins/touchScroll/touchScroll.mjs +15 -58
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +62 -88
- package/plugins/trimRows/trimRows.mjs +62 -65
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +48 -218
- package/plugins/undoRedo/undoRedo.mjs +48 -188
- package/registry.js +0 -11
- package/registry.mjs +2 -4
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
- package/renderers/autocompleteRenderer/index.js +0 -2
- package/renderers/baseRenderer/baseRenderer.js +2 -11
- package/renderers/baseRenderer/baseRenderer.mjs +2 -9
- package/renderers/baseRenderer/index.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
- package/renderers/checkboxRenderer/index.js +0 -2
- package/renderers/htmlRenderer/htmlRenderer.js +1 -7
- package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
- package/renderers/htmlRenderer/index.js +0 -2
- package/renderers/index.js +0 -19
- package/renderers/index.mjs +3 -5
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -23
- package/renderers/numericRenderer/numericRenderer.mjs +1 -10
- package/renderers/passwordRenderer/index.js +0 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -8
- package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
- package/renderers/registry.js +7 -16
- package/renderers/registry.mjs +7 -14
- package/renderers/textRenderer/index.js +0 -2
- package/renderers/textRenderer/textRenderer.js +2 -14
- package/renderers/textRenderer/textRenderer.mjs +2 -6
- package/renderers/timeRenderer/index.js +0 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -6
- package/renderers/timeRenderer/timeRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +17 -73
- package/selection/highlight/highlight.mjs +31 -64
- package/selection/highlight/types/activeHeader.js +1 -21
- package/selection/highlight/types/activeHeader.mjs +6 -16
- package/selection/highlight/types/area.js +2 -22
- package/selection/highlight/types/area.mjs +10 -20
- package/selection/highlight/types/cell.js +1 -21
- package/selection/highlight/types/cell.mjs +9 -19
- package/selection/highlight/types/customSelection.js +2 -22
- package/selection/highlight/types/customSelection.mjs +11 -21
- package/selection/highlight/types/fill.js +2 -17
- package/selection/highlight/types/fill.mjs +9 -14
- package/selection/highlight/types/header.js +3 -23
- package/selection/highlight/types/header.mjs +13 -23
- package/selection/highlight/types/index.js +3 -24
- package/selection/highlight/types/index.mjs +3 -10
- package/selection/highlight/visualSelection.js +24 -74
- package/selection/highlight/visualSelection.mjs +24 -62
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +32 -36
- package/selection/range.js +11 -31
- package/selection/range.mjs +11 -22
- package/selection/selection.js +62 -157
- package/selection/selection.mjs +65 -132
- package/selection/transformation.js +10 -40
- package/selection/transformation.mjs +18 -45
- package/selection/utils.js +22 -70
- package/selection/utils.mjs +22 -47
- package/shortcuts/context.js +23 -78
- package/shortcuts/context.mjs +23 -55
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +4 -17
- package/shortcuts/keyObserver.mjs +4 -12
- package/shortcuts/manager.js +16 -36
- package/shortcuts/manager.mjs +16 -33
- package/shortcuts/recorder.js +20 -47
- package/shortcuts/recorder.mjs +20 -39
- package/shortcuts/utils.js +5 -24
- package/shortcuts/utils.mjs +5 -8
- package/tableView.js +100 -270
- package/tableView.mjs +100 -248
- package/translations/changesObservable/observable.js +5 -54
- package/translations/changesObservable/observable.mjs +12 -51
- package/translations/changesObservable/observer.js +4 -32
- package/translations/changesObservable/observer.mjs +9 -29
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +70 -158
- package/translations/indexMapper.mjs +70 -125
- package/translations/mapCollections/aggregatedCollection.js +9 -51
- package/translations/mapCollections/aggregatedCollection.mjs +12 -41
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +10 -33
- package/translations/mapCollections/mapCollection.mjs +10 -22
- package/translations/maps/hidingMap.js +2 -35
- package/translations/maps/hidingMap.mjs +7 -28
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +12 -34
- package/translations/maps/indexMap.mjs +16 -32
- package/translations/maps/indexesSequence.js +3 -41
- package/translations/maps/indexesSequence.mjs +9 -32
- package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
- package/translations/maps/physicalIndexToValueMap.js +2 -39
- package/translations/maps/physicalIndexToValueMap.mjs +8 -31
- package/translations/maps/trimmingMap.js +2 -35
- package/translations/maps/trimmingMap.mjs +7 -28
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
- package/translations/maps/utils/index.js +0 -13
- package/translations/maps/utils/index.mjs +0 -3
- package/translations/maps/utils/indexesSequence.js +1 -24
- package/translations/maps/utils/indexesSequence.mjs +10 -19
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +11 -21
- package/utils/dataStructures/linkedList.js +15 -56
- package/utils/dataStructures/linkedList.mjs +15 -54
- package/utils/dataStructures/priorityMap.js +8 -46
- package/utils/dataStructures/priorityMap.mjs +8 -29
- package/utils/dataStructures/queue.js +6 -17
- package/utils/dataStructures/queue.mjs +6 -16
- package/utils/dataStructures/stack.js +6 -17
- package/utils/dataStructures/stack.mjs +6 -16
- package/utils/dataStructures/tree.js +11 -75
- package/utils/dataStructures/tree.mjs +11 -54
- package/utils/dataStructures/uniqueMap.js +17 -56
- package/utils/dataStructures/uniqueMap.mjs +17 -42
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +33 -104
- package/utils/ghostTable.mjs +35 -92
- package/utils/interval.js +10 -37
- package/utils/interval.mjs +7 -29
- package/utils/parseTable.js +11 -92
- package/utils/parseTable.mjs +11 -62
- package/utils/rootInstance.js +3 -14
- package/utils/rootInstance.mjs +3 -3
- package/utils/samplesGenerator.js +15 -51
- package/utils/samplesGenerator.mjs +17 -44
- package/utils/staticRegister.js +6 -33
- package/utils/staticRegister.mjs +6 -19
- package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
- package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
- package/validators/autocompleteValidator/index.js +0 -2
- package/validators/dateValidator/dateValidator.js +2 -21
- package/validators/dateValidator/dateValidator.mjs +2 -11
- package/validators/dateValidator/index.js +0 -2
- package/validators/index.js +0 -11
- package/validators/index.mjs +3 -5
- package/validators/numericValidator/index.js +0 -2
- package/validators/numericValidator/numericValidator.js +1 -7
- package/validators/numericValidator/numericValidator.mjs +1 -3
- package/validators/registry.js +7 -16
- package/validators/registry.mjs +7 -14
- package/validators/timeValidator/index.js +0 -2
- package/validators/timeValidator/timeValidator.js +6 -18
- package/validators/timeValidator/timeValidator.mjs +8 -13
- package/utils/sortingAlgorithms/mergeSort.js +0 -120
- package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -1,141 +1,76 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
4
|
-
|
5
4
|
require("core-js/modules/es.reflect.construct.js");
|
6
|
-
|
7
5
|
require("core-js/modules/es.reflect.get.js");
|
8
|
-
|
9
6
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
10
|
-
|
11
7
|
require("core-js/modules/es.symbol.js");
|
12
|
-
|
13
8
|
require("core-js/modules/es.symbol.description.js");
|
14
|
-
|
15
9
|
require("core-js/modules/es.symbol.iterator.js");
|
16
|
-
|
17
10
|
require("core-js/modules/es.array.slice.js");
|
18
|
-
|
19
11
|
require("core-js/modules/es.regexp.exec.js");
|
20
|
-
|
21
12
|
require("core-js/modules/es.object.freeze.js");
|
22
|
-
|
23
13
|
require("core-js/modules/es.weak-map.js");
|
24
|
-
|
25
14
|
exports.__esModule = true;
|
26
15
|
exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.Filters = void 0;
|
27
|
-
|
28
16
|
require("core-js/modules/es.array.iterator.js");
|
29
|
-
|
30
17
|
require("core-js/modules/es.map.js");
|
31
|
-
|
32
18
|
require("core-js/modules/es.object.to-string.js");
|
33
|
-
|
34
19
|
require("core-js/modules/es.string.iterator.js");
|
35
|
-
|
36
20
|
require("core-js/modules/web.dom-collections.iterator.js");
|
37
|
-
|
38
21
|
require("core-js/modules/web.dom-collections.for-each.js");
|
39
|
-
|
40
22
|
require("core-js/modules/es.array.filter.js");
|
41
|
-
|
42
23
|
require("core-js/modules/es.array.from.js");
|
43
|
-
|
44
24
|
require("core-js/modules/es.function.name.js");
|
45
|
-
|
46
25
|
require("core-js/modules/es.array.concat.js");
|
47
|
-
|
48
26
|
require("core-js/modules/es.object.set-prototype-of.js");
|
49
|
-
|
50
27
|
require("core-js/modules/es.object.get-prototype-of.js");
|
51
|
-
|
52
28
|
var _base = require("../base");
|
53
|
-
|
54
29
|
var _array = require("../../helpers/array");
|
55
|
-
|
56
30
|
var _templateLiteralTag = require("../../helpers/templateLiteralTag");
|
57
|
-
|
58
31
|
var _console = require("../../helpers/console");
|
59
|
-
|
60
32
|
var _number = require("../../helpers/number");
|
61
|
-
|
62
33
|
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
63
|
-
|
64
34
|
var _element = require("../../helpers/dom/element");
|
65
|
-
|
66
35
|
var _predefinedItems = require("../contextMenu/predefinedItems");
|
67
|
-
|
68
36
|
var constants = _interopRequireWildcard(require("../../i18n/constants"));
|
69
|
-
|
70
37
|
var _condition = _interopRequireDefault(require("./component/condition"));
|
71
|
-
|
72
38
|
var _operators = _interopRequireDefault(require("./component/operators"));
|
73
|
-
|
74
39
|
var _value = _interopRequireDefault(require("./component/value"));
|
75
|
-
|
76
40
|
var _actionBar = _interopRequireDefault(require("./component/actionBar"));
|
77
|
-
|
78
41
|
var _conditionCollection = _interopRequireDefault(require("./conditionCollection"));
|
79
|
-
|
80
42
|
var _dataFilter = _interopRequireDefault(require("./dataFilter"));
|
81
|
-
|
82
43
|
var _conditionUpdateObserver = _interopRequireDefault(require("./conditionUpdateObserver"));
|
83
|
-
|
84
44
|
var _utils = require("./utils");
|
85
|
-
|
86
45
|
var _constants2 = require("./constants");
|
87
|
-
|
88
46
|
var _translations = require("../../translations");
|
89
|
-
|
90
47
|
var _templateObject;
|
91
|
-
|
92
48
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
93
|
-
|
94
49
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
95
|
-
|
96
50
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
97
|
-
|
98
51
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
99
|
-
|
100
52
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
101
|
-
|
102
53
|
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."); }
|
103
|
-
|
104
54
|
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); }
|
105
|
-
|
106
55
|
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; }
|
107
|
-
|
108
56
|
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; }
|
109
|
-
|
110
57
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
111
|
-
|
112
58
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
113
|
-
|
114
59
|
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); } }
|
115
|
-
|
116
60
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
117
|
-
|
118
61
|
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
119
|
-
|
120
62
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
121
|
-
|
122
63
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
123
|
-
|
124
64
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
125
|
-
|
126
65
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
127
|
-
|
128
66
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
129
|
-
|
130
67
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
131
|
-
|
132
68
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
133
|
-
|
134
69
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
135
|
-
|
136
70
|
var PLUGIN_KEY = 'filters';
|
137
71
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
138
72
|
var PLUGIN_PRIORITY = 250;
|
73
|
+
|
139
74
|
/**
|
140
75
|
* @plugin Filters
|
141
76
|
* @class Filters
|
@@ -146,6 +81,7 @@ var PLUGIN_PRIORITY = 250;
|
|
146
81
|
* See [the filtering demo](@/guides/columns/column-filter.md) for examples.
|
147
82
|
*
|
148
83
|
* @example
|
84
|
+
* ::: only-for javascript
|
149
85
|
* ```js
|
150
86
|
* const container = document.getElementById('example');
|
151
87
|
* const hot = new Handsontable(container, {
|
@@ -156,20 +92,27 @@ var PLUGIN_PRIORITY = 250;
|
|
156
92
|
* filters: true
|
157
93
|
* });
|
158
94
|
* ```
|
95
|
+
* :::
|
96
|
+
*
|
97
|
+
* ::: only-for react
|
98
|
+
* ```jsx
|
99
|
+
* <HotTable
|
100
|
+
* data={getData()}
|
101
|
+
* colHeaders={true}
|
102
|
+
* rowHeaders={true}
|
103
|
+
* dropdownMenu={true}
|
104
|
+
* filters={true}
|
105
|
+
* />
|
106
|
+
* ```
|
107
|
+
* :::
|
159
108
|
*/
|
160
|
-
|
161
109
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
162
|
-
|
163
110
|
var Filters = /*#__PURE__*/function (_BasePlugin) {
|
164
111
|
_inherits(Filters, _BasePlugin);
|
165
|
-
|
166
112
|
var _super = _createSuper(Filters);
|
167
|
-
|
168
113
|
function Filters(hotInstance) {
|
169
114
|
var _this;
|
170
|
-
|
171
115
|
_classCallCheck(this, Filters);
|
172
|
-
|
173
116
|
_this = _super.call(this, hotInstance);
|
174
117
|
/**
|
175
118
|
* Instance of {@link EventManager}.
|
@@ -177,7 +120,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
177
120
|
* @private
|
178
121
|
* @type {EventManager}
|
179
122
|
*/
|
180
|
-
|
181
123
|
_this.eventManager = new _eventManager.default(_assertThisInitialized(_this));
|
182
124
|
/**
|
183
125
|
* Instance of {@link DropdownMenu}.
|
@@ -185,7 +127,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
185
127
|
* @private
|
186
128
|
* @type {DropdownMenu}
|
187
129
|
*/
|
188
|
-
|
189
130
|
_this.dropdownMenuPlugin = null;
|
190
131
|
/**
|
191
132
|
* Instance of {@link ConditionCollection}.
|
@@ -193,7 +134,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
193
134
|
* @private
|
194
135
|
* @type {ConditionCollection}
|
195
136
|
*/
|
196
|
-
|
197
137
|
_this.conditionCollection = null;
|
198
138
|
/**
|
199
139
|
* Instance of {@link ConditionUpdateObserver}.
|
@@ -201,7 +141,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
201
141
|
* @private
|
202
142
|
* @type {ConditionUpdateObserver}
|
203
143
|
*/
|
204
|
-
|
205
144
|
_this.conditionUpdateObserver = null;
|
206
145
|
/**
|
207
146
|
* Map, where key is component identifier and value represent `BaseComponent` element or it derivatives.
|
@@ -209,7 +148,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
209
148
|
* @private
|
210
149
|
* @type {Map}
|
211
150
|
*/
|
212
|
-
|
213
151
|
_this.components = new Map([['filter_by_condition', null], ['filter_operators', null], ['filter_by_condition2', null], ['filter_by_value', null], ['filter_action_bar', null]]);
|
214
152
|
/**
|
215
153
|
* Object containing information about last selected column physical and visual index for added filter conditions.
|
@@ -218,7 +156,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
218
156
|
* @type {object}
|
219
157
|
* @default null
|
220
158
|
*/
|
221
|
-
|
222
159
|
_this.lastSelectedColumn = null;
|
223
160
|
/**
|
224
161
|
* Map of skipped rows by plugin.
|
@@ -226,47 +163,42 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
226
163
|
* @private
|
227
164
|
* @type {null|TrimmingMap}
|
228
165
|
*/
|
166
|
+
_this.filtersRowsMap = null;
|
229
167
|
|
230
|
-
|
231
|
-
|
168
|
+
// One listener for the enable/disable functionality
|
232
169
|
_this.hot.addHook('afterGetColHeader', function (col, TH) {
|
233
170
|
return _this.onAfterGetColHeader(col, TH);
|
234
171
|
});
|
235
|
-
|
236
172
|
return _this;
|
237
173
|
}
|
174
|
+
|
238
175
|
/**
|
239
176
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
240
|
-
* hook and if it returns `true`
|
177
|
+
* hook and if it returns `true` then the {@link Filters#enablePlugin} method is called.
|
241
178
|
*
|
242
179
|
* @returns {boolean}
|
243
180
|
*/
|
244
|
-
|
245
|
-
|
246
181
|
_createClass(Filters, [{
|
247
182
|
key: "isEnabled",
|
248
183
|
value: function isEnabled() {
|
249
184
|
/* eslint-disable no-unneeded-ternary */
|
250
185
|
return this.hot.getSettings()[PLUGIN_KEY] ? true : false;
|
251
186
|
}
|
187
|
+
|
252
188
|
/**
|
253
189
|
* Enables the plugin functionality for this Handsontable instance.
|
254
190
|
*/
|
255
|
-
|
256
191
|
}, {
|
257
192
|
key: "enablePlugin",
|
258
193
|
value: function enablePlugin() {
|
259
194
|
var _this2 = this;
|
260
|
-
|
261
195
|
if (this.enabled) {
|
262
196
|
return;
|
263
197
|
}
|
264
|
-
|
265
198
|
this.filtersRowsMap = this.hot.rowIndexMapper.registerMap(this.pluginName, new _translations.TrimmingMap());
|
266
199
|
this.dropdownMenuPlugin = this.hot.getPlugin('dropdownMenu');
|
267
200
|
var dropdownSettings = this.hot.getSettings().dropdownMenu;
|
268
201
|
var menuContainer = dropdownSettings && dropdownSettings.uiContainer || this.hot.rootDocument.body;
|
269
|
-
|
270
202
|
var addConfirmationHooks = function addConfirmationHooks(component) {
|
271
203
|
component.addLocalHook('accept', function () {
|
272
204
|
return _this2.onActionBarSubmit('accept');
|
@@ -279,15 +211,12 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
279
211
|
});
|
280
212
|
return component;
|
281
213
|
};
|
282
|
-
|
283
214
|
var filterByConditionLabel = function filterByConditionLabel() {
|
284
215
|
return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_CONDITION), ":");
|
285
216
|
};
|
286
|
-
|
287
217
|
var filterValueLabel = function filterValueLabel() {
|
288
218
|
return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_VALUE), ":");
|
289
219
|
};
|
290
|
-
|
291
220
|
if (!this.components.get('filter_by_condition')) {
|
292
221
|
var conditionComponent = new _condition.default(this.hot, {
|
293
222
|
id: 'filter_by_condition',
|
@@ -300,14 +229,12 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
300
229
|
});
|
301
230
|
this.components.set('filter_by_condition', addConfirmationHooks(conditionComponent));
|
302
231
|
}
|
303
|
-
|
304
232
|
if (!this.components.get('filter_operators')) {
|
305
233
|
this.components.set('filter_operators', new _operators.default(this.hot, {
|
306
234
|
id: 'filter_operators',
|
307
235
|
name: 'Operators'
|
308
236
|
}));
|
309
237
|
}
|
310
|
-
|
311
238
|
if (!this.components.get('filter_by_condition2')) {
|
312
239
|
var _conditionComponent = new _condition.default(this.hot, {
|
313
240
|
id: 'filter_by_condition2',
|
@@ -315,32 +242,26 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
315
242
|
addSeparator: true,
|
316
243
|
menuContainer: menuContainer
|
317
244
|
});
|
318
|
-
|
319
245
|
_conditionComponent.addLocalHook('afterClose', function () {
|
320
246
|
return _this2.onSelectUIClosed();
|
321
247
|
});
|
322
|
-
|
323
248
|
this.components.set('filter_by_condition2', addConfirmationHooks(_conditionComponent));
|
324
249
|
}
|
325
|
-
|
326
250
|
if (!this.components.get('filter_by_value')) {
|
327
251
|
this.components.set('filter_by_value', addConfirmationHooks(new _value.default(this.hot, {
|
328
252
|
id: 'filter_by_value',
|
329
253
|
name: filterValueLabel
|
330
254
|
})));
|
331
255
|
}
|
332
|
-
|
333
256
|
if (!this.components.get('filter_action_bar')) {
|
334
257
|
this.components.set('filter_action_bar', addConfirmationHooks(new _actionBar.default(this.hot, {
|
335
258
|
id: 'filter_action_bar',
|
336
259
|
name: 'Action bar'
|
337
260
|
})));
|
338
261
|
}
|
339
|
-
|
340
262
|
if (!this.conditionCollection) {
|
341
263
|
this.conditionCollection = new _conditionCollection.default(this.hot);
|
342
264
|
}
|
343
|
-
|
344
265
|
if (!this.conditionUpdateObserver) {
|
345
266
|
this.conditionUpdateObserver = new _conditionUpdateObserver.default(this.hot, this.conditionCollection, function (physicalColumn) {
|
346
267
|
return _this2.getDataMapAtColumn(physicalColumn);
|
@@ -349,11 +270,9 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
349
270
|
return _this2.updateComponents(conditionState);
|
350
271
|
});
|
351
272
|
}
|
352
|
-
|
353
273
|
this.components.forEach(function (component) {
|
354
274
|
return component.show();
|
355
275
|
});
|
356
|
-
this.registerEvents();
|
357
276
|
this.addHook('beforeDropdownMenuSetItems', function (items) {
|
358
277
|
return _this2.onBeforeDropdownMenuSetItems(items);
|
359
278
|
});
|
@@ -368,60 +287,40 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
368
287
|
});
|
369
288
|
this.addHook('afterChange', function (changes) {
|
370
289
|
return _this2.onAfterChange(changes);
|
371
|
-
});
|
290
|
+
});
|
372
291
|
|
292
|
+
// Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
|
373
293
|
if (this.hot.getSettings().dropdownMenu && this.dropdownMenuPlugin) {
|
374
294
|
this.dropdownMenuPlugin.disablePlugin();
|
375
295
|
this.dropdownMenuPlugin.enablePlugin();
|
376
296
|
}
|
377
|
-
|
378
297
|
_get(_getPrototypeOf(Filters.prototype), "enablePlugin", this).call(this);
|
379
298
|
}
|
380
|
-
/**
|
381
|
-
* Registers the DOM listeners.
|
382
|
-
*
|
383
|
-
* @private
|
384
|
-
*/
|
385
299
|
|
386
|
-
}, {
|
387
|
-
key: "registerEvents",
|
388
|
-
value: function registerEvents() {
|
389
|
-
var _this3 = this;
|
390
|
-
|
391
|
-
this.eventManager.addEventListener(this.hot.rootElement, 'click', function (event) {
|
392
|
-
return _this3.onTableClick(event);
|
393
|
-
});
|
394
|
-
}
|
395
300
|
/**
|
396
301
|
* Disables the plugin functionality for this Handsontable instance.
|
397
302
|
*/
|
398
|
-
|
399
303
|
}, {
|
400
304
|
key: "disablePlugin",
|
401
305
|
value: function disablePlugin() {
|
402
|
-
var
|
403
|
-
|
306
|
+
var _this3 = this;
|
404
307
|
if (this.enabled) {
|
405
308
|
var _this$dropdownMenuPlu;
|
406
|
-
|
407
309
|
if ((_this$dropdownMenuPlu = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu !== void 0 && _this$dropdownMenuPlu.enabled) {
|
408
310
|
this.dropdownMenuPlugin.menu.clearLocalHooks();
|
409
311
|
}
|
410
|
-
|
411
312
|
this.components.forEach(function (component, key) {
|
412
313
|
component.destroy();
|
413
|
-
|
414
|
-
_this4.components.set(key, null);
|
314
|
+
_this3.components.set(key, null);
|
415
315
|
});
|
416
316
|
this.conditionCollection.destroy();
|
417
317
|
this.conditionCollection = null;
|
418
318
|
this.hot.rowIndexMapper.unregisterMap(this.pluginName);
|
419
319
|
}
|
420
|
-
|
421
320
|
_get(_getPrototypeOf(Filters.prototype), "disablePlugin", this).call(this);
|
422
321
|
}
|
423
|
-
/* eslint-disable jsdoc/require-description-complete-sentence */
|
424
322
|
|
323
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
425
324
|
/**
|
426
325
|
* @memberof Filters#
|
427
326
|
* @function addCondition
|
@@ -456,6 +355,7 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
456
355
|
* **Note**: Mind that you cannot mix different types of operations (for instance, if you use `conjunction`, use it consequently for a particular column).
|
457
356
|
*
|
458
357
|
* @example
|
358
|
+
* ::: only-for javascript
|
459
359
|
* ```js
|
460
360
|
* const container = document.getElementById('example');
|
461
361
|
* const hot = new Handsontable(container, {
|
@@ -485,14 +385,51 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
485
385
|
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
|
486
386
|
* filtersPlugin.filter();
|
487
387
|
* ```
|
388
|
+
* :::
|
389
|
+
*
|
390
|
+
* ::: only-for react
|
391
|
+
* ```jsx
|
392
|
+
* const hotRef = useRef(null);
|
393
|
+
*
|
394
|
+
* ...
|
395
|
+
*
|
396
|
+
* <HotTable
|
397
|
+
* ref={hotRef}
|
398
|
+
* data={getData()}
|
399
|
+
* filters={true}
|
400
|
+
* />
|
401
|
+
*
|
402
|
+
* // access to filters plugin instance
|
403
|
+
* const hot = hotRef.current.hotInstance;
|
404
|
+
* const filtersPlugin = hot.getPlugin('filters');
|
405
|
+
*
|
406
|
+
* // add filter "Greater than" 95 to column at index 1
|
407
|
+
* filtersPlugin.addCondition(1, 'gt', [95]);
|
408
|
+
* filtersPlugin.filter();
|
409
|
+
*
|
410
|
+
* // add filter "By value" to column at index 1
|
411
|
+
* // in this case all value's that don't match will be filtered.
|
412
|
+
* filtersPlugin.addCondition(1, 'by_value', [['ing', 'ed', 'as', 'on']]);
|
413
|
+
* filtersPlugin.filter();
|
414
|
+
*
|
415
|
+
* // add filter "Begins with" with value "de" AND "Not contains" with value "ing"
|
416
|
+
* filtersPlugin.addCondition(1, 'begins_with', ['de'], 'conjunction');
|
417
|
+
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'conjunction');
|
418
|
+
* filtersPlugin.filter();
|
419
|
+
*
|
420
|
+
* // add filter "Begins with" with value "de" OR "Not contains" with value "ing"
|
421
|
+
* filtersPlugin.addCondition(1, 'begins_with', ['de'], 'disjunction');
|
422
|
+
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
|
423
|
+
* filtersPlugin.filter();
|
424
|
+
* ```
|
425
|
+
* :::
|
426
|
+
*
|
488
427
|
* @param {number} column Visual column index.
|
489
428
|
* @param {string} name Condition short name.
|
490
429
|
* @param {Array} args Condition arguments.
|
491
430
|
* @param {string} [operationId=conjunction] `id` of operation which is performed on the column.
|
492
431
|
*/
|
493
|
-
|
494
432
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
495
|
-
|
496
433
|
}, {
|
497
434
|
key: "addCondition",
|
498
435
|
value: function addCondition(column, name, args) {
|
@@ -505,25 +442,25 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
505
442
|
args: args
|
506
443
|
}, operationId);
|
507
444
|
}
|
445
|
+
|
508
446
|
/**
|
509
447
|
* Removes conditions at specified column index.
|
510
448
|
*
|
511
449
|
* @param {number} column Visual column index.
|
512
450
|
*/
|
513
|
-
|
514
451
|
}, {
|
515
452
|
key: "removeConditions",
|
516
453
|
value: function removeConditions(column) {
|
517
454
|
var physicalColumn = this.hot.toPhysicalColumn(column);
|
518
455
|
this.conditionCollection.removeConditions(physicalColumn);
|
519
456
|
}
|
457
|
+
|
520
458
|
/**
|
521
459
|
* Clears all conditions previously added to the collection for the specified column index or, if the column index
|
522
460
|
* was not passed, clear the conditions for all columns.
|
523
461
|
*
|
524
462
|
* @param {number} [column] Visual column index.
|
525
463
|
*/
|
526
|
-
|
527
464
|
}, {
|
528
465
|
key: "clearConditions",
|
529
466
|
value: function clearConditions(column) {
|
@@ -534,45 +471,40 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
534
471
|
this.conditionCollection.removeConditions(physicalColumn);
|
535
472
|
}
|
536
473
|
}
|
474
|
+
|
537
475
|
/**
|
538
476
|
* Filters data based on added filter conditions.
|
539
477
|
*
|
540
478
|
* @fires Hooks#beforeFilter
|
541
479
|
* @fires Hooks#afterFilter
|
542
480
|
*/
|
543
|
-
|
544
481
|
}, {
|
545
482
|
key: "filter",
|
546
483
|
value: function filter() {
|
547
|
-
var
|
548
|
-
|
484
|
+
var _this4 = this;
|
549
485
|
var dataFilter = this._createDataFilter();
|
550
|
-
|
551
486
|
var needToFilter = !this.conditionCollection.isEmpty();
|
552
487
|
var visibleVisualRows = [];
|
553
488
|
var conditions = this.conditionCollection.exportAllConditions();
|
554
489
|
var allowFiltering = this.hot.runHooks('beforeFilter', conditions);
|
555
|
-
|
556
490
|
if (allowFiltering !== false) {
|
557
491
|
if (needToFilter) {
|
558
492
|
var trimmedRows = [];
|
559
493
|
this.hot.batchExecution(function () {
|
560
|
-
|
561
|
-
|
494
|
+
_this4.filtersRowsMap.clear();
|
562
495
|
visibleVisualRows = (0, _array.arrayMap)(dataFilter.filter(), function (rowData) {
|
563
496
|
return rowData.meta.visualRow;
|
564
497
|
});
|
565
498
|
var visibleVisualRowsAssertion = (0, _utils.createArrayAssertion)(visibleVisualRows);
|
566
|
-
(0, _number.rangeEach)(
|
499
|
+
(0, _number.rangeEach)(_this4.hot.countSourceRows() - 1, function (row) {
|
567
500
|
if (!visibleVisualRowsAssertion(row)) {
|
568
501
|
trimmedRows.push(row);
|
569
502
|
}
|
570
503
|
});
|
571
504
|
(0, _array.arrayEach)(trimmedRows, function (physicalRow) {
|
572
|
-
|
505
|
+
_this4.filtersRowsMap.setValueAtIndex(physicalRow, true);
|
573
506
|
});
|
574
507
|
}, true);
|
575
|
-
|
576
508
|
if (!visibleVisualRows.length) {
|
577
509
|
this.hot.deselectCell();
|
578
510
|
}
|
@@ -580,69 +512,71 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
580
512
|
this.filtersRowsMap.clear();
|
581
513
|
}
|
582
514
|
}
|
583
|
-
|
584
515
|
this.hot.runHooks('afterFilter', conditions);
|
585
516
|
this.hot.view.adjustElementsSize(true);
|
586
517
|
this.hot.render();
|
587
518
|
this.clearColumnSelection();
|
588
519
|
}
|
520
|
+
|
589
521
|
/**
|
590
522
|
* Gets last selected column index.
|
591
523
|
*
|
592
|
-
* @returns {
|
593
|
-
*
|
524
|
+
* @returns {{visualIndex: number, physicalIndex: number} | null} Returns `null` when a column is
|
525
|
+
* not selected. Otherwise, returns an object with `visualIndex` and `physicalIndex` properties containing
|
526
|
+
* the index of the column.
|
594
527
|
*/
|
595
|
-
|
596
528
|
}, {
|
597
529
|
key: "getSelectedColumn",
|
598
530
|
value: function getSelectedColumn() {
|
599
|
-
|
531
|
+
var _this$hot$getSelected;
|
532
|
+
var highlight = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
|
533
|
+
if (!highlight) {
|
534
|
+
return null;
|
535
|
+
}
|
536
|
+
return {
|
537
|
+
visualIndex: highlight.col,
|
538
|
+
physicalIndex: this.hot.toPhysicalColumn(highlight.col)
|
539
|
+
};
|
600
540
|
}
|
541
|
+
|
601
542
|
/**
|
602
543
|
* Clears column selection.
|
603
544
|
*
|
604
545
|
* @private
|
605
546
|
*/
|
606
|
-
|
607
547
|
}, {
|
608
548
|
key: "clearColumnSelection",
|
609
549
|
value: function clearColumnSelection() {
|
610
|
-
var
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
if (coords !== void 0) {
|
615
|
-
this.hot.selectCell(coords.row, coords.col);
|
550
|
+
var selectedColumn = this.getSelectedColumn();
|
551
|
+
if (selectedColumn !== null) {
|
552
|
+
this.hot.selectCell(0, selectedColumn.visualIndex);
|
616
553
|
}
|
617
554
|
}
|
555
|
+
|
618
556
|
/**
|
619
557
|
* Returns handsontable source data with cell meta based on current selection.
|
620
558
|
*
|
621
559
|
* @param {number} [column] The physical column index. By default column index accept the value of the selected column.
|
622
560
|
* @returns {Array} Returns array of objects where keys as row index.
|
623
561
|
*/
|
624
|
-
|
625
562
|
}, {
|
626
563
|
key: "getDataMapAtColumn",
|
627
564
|
value: function getDataMapAtColumn(column) {
|
628
|
-
var
|
629
|
-
|
565
|
+
var _this5 = this;
|
630
566
|
var visualColumn = this.hot.toVisualColumn(column);
|
631
567
|
var data = [];
|
632
568
|
(0, _array.arrayEach)(this.hot.getSourceDataAtCol(visualColumn), function (value, rowIndex) {
|
633
|
-
var
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
var dataValue = (_this6$hot$getDataAtC = _this6.hot.getDataAtCell(_this6.hot.toVisualRow(rowIndex), visualColumn)) !== null && _this6$hot$getDataAtC !== void 0 ? _this6$hot$getDataAtC : value;
|
569
|
+
var _this5$hot$getDataAtC;
|
570
|
+
var _this5$hot$getCellMet = _this5.hot.getCellMeta(rowIndex, visualColumn),
|
571
|
+
row = _this5$hot$getCellMet.row,
|
572
|
+
col = _this5$hot$getCellMet.col,
|
573
|
+
visualCol = _this5$hot$getCellMet.visualCol,
|
574
|
+
visualRow = _this5$hot$getCellMet.visualRow,
|
575
|
+
type = _this5$hot$getCellMet.type,
|
576
|
+
instance = _this5$hot$getCellMet.instance,
|
577
|
+
dateFormat = _this5$hot$getCellMet.dateFormat,
|
578
|
+
locale = _this5$hot$getCellMet.locale;
|
579
|
+
var dataValue = (_this5$hot$getDataAtC = _this5.hot.getDataAtCell(_this5.hot.toVisualRow(rowIndex), visualColumn)) !== null && _this5$hot$getDataAtC !== void 0 ? _this5$hot$getDataAtC : value;
|
646
580
|
data.push({
|
647
581
|
meta: {
|
648
582
|
row: row,
|
@@ -659,38 +593,35 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
659
593
|
});
|
660
594
|
return data;
|
661
595
|
}
|
596
|
+
|
662
597
|
/**
|
663
598
|
* `afterChange` listener.
|
664
599
|
*
|
665
600
|
* @private
|
666
601
|
* @param {Array} changes Array of changes.
|
667
602
|
*/
|
668
|
-
|
669
603
|
}, {
|
670
604
|
key: "onAfterChange",
|
671
605
|
value: function onAfterChange(changes) {
|
672
|
-
var
|
673
|
-
|
606
|
+
var _this6 = this;
|
674
607
|
if (changes) {
|
675
608
|
(0, _array.arrayEach)(changes, function (change) {
|
676
609
|
var _change = _slicedToArray(change, 2),
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
if (_this7.conditionCollection.hasConditions(columnIndex)) {
|
682
|
-
_this7.updateValueComponentCondition(columnIndex);
|
610
|
+
prop = _change[1];
|
611
|
+
var columnIndex = _this6.hot.propToCol(prop);
|
612
|
+
if (_this6.conditionCollection.hasConditions(columnIndex)) {
|
613
|
+
_this6.updateValueComponentCondition(columnIndex);
|
683
614
|
}
|
684
615
|
});
|
685
616
|
}
|
686
617
|
}
|
618
|
+
|
687
619
|
/**
|
688
620
|
* Update the condition of ValueComponent, based on the handled changes.
|
689
621
|
*
|
690
622
|
* @private
|
691
623
|
* @param {number} columnIndex Column index of handled ValueComponent condition.
|
692
624
|
*/
|
693
|
-
|
694
625
|
}, {
|
695
626
|
key: "updateValueComponentCondition",
|
696
627
|
value: function updateValueComponentCondition(columnIndex) {
|
@@ -698,77 +629,74 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
698
629
|
var selectedValues = (0, _utils.unifyColumnValues)(dataAtCol);
|
699
630
|
this.conditionUpdateObserver.updateStatesAtColumn(columnIndex, selectedValues);
|
700
631
|
}
|
632
|
+
|
701
633
|
/**
|
702
634
|
* Restores components to its saved state.
|
703
635
|
*
|
704
636
|
* @private
|
705
637
|
* @param {Array} components List of components.
|
706
638
|
*/
|
707
|
-
|
708
639
|
}, {
|
709
640
|
key: "restoreComponents",
|
710
641
|
value: function restoreComponents(components) {
|
711
642
|
var _this$getSelectedColu;
|
712
|
-
|
713
643
|
var physicalIndex = (_this$getSelectedColu = this.getSelectedColumn()) === null || _this$getSelectedColu === void 0 ? void 0 : _this$getSelectedColu.physicalIndex;
|
714
644
|
components.forEach(function (component) {
|
715
645
|
if (component.isHidden()) {
|
716
646
|
return;
|
717
647
|
}
|
718
|
-
|
719
648
|
component.restoreState(physicalIndex);
|
720
649
|
});
|
721
650
|
this.updateDependentComponentsVisibility();
|
722
651
|
}
|
652
|
+
|
723
653
|
/**
|
724
654
|
* After dropdown menu show listener.
|
725
655
|
*
|
726
656
|
* @private
|
727
657
|
*/
|
728
|
-
|
729
658
|
}, {
|
730
659
|
key: "onAfterDropdownMenuShow",
|
731
660
|
value: function onAfterDropdownMenuShow() {
|
732
661
|
this.restoreComponents(Array.from(this.components.values()));
|
733
662
|
}
|
663
|
+
|
734
664
|
/**
|
735
665
|
* After dropdown menu hide listener.
|
736
666
|
*
|
737
667
|
* @private
|
738
668
|
*/
|
739
|
-
|
740
669
|
}, {
|
741
670
|
key: "onAfterDropdownMenuHide",
|
742
671
|
value: function onAfterDropdownMenuHide() {
|
743
672
|
this.components.get('filter_by_condition').getSelectElement().closeOptions();
|
744
673
|
this.components.get('filter_by_condition2').getSelectElement().closeOptions();
|
745
674
|
}
|
675
|
+
|
746
676
|
/**
|
747
677
|
* Before dropdown menu set menu items listener.
|
748
678
|
*
|
749
679
|
* @private
|
750
680
|
*/
|
751
|
-
|
752
681
|
}, {
|
753
682
|
key: "onBeforeDropdownMenuSetItems",
|
754
683
|
value: function onBeforeDropdownMenuSetItems() {
|
755
|
-
var
|
756
|
-
|
684
|
+
var _this7 = this;
|
757
685
|
if (this.dropdownMenuPlugin) {
|
758
686
|
this.dropdownMenuPlugin.menu.addLocalHook('afterOpen', function () {
|
759
|
-
|
687
|
+
_this7.dropdownMenuPlugin.menu.hotMenu.updateSettings({
|
760
688
|
hiddenRows: true
|
761
689
|
});
|
762
690
|
});
|
763
691
|
}
|
764
692
|
}
|
693
|
+
|
765
694
|
/**
|
766
695
|
* After dropdown menu default options listener.
|
767
696
|
*
|
768
697
|
* @private
|
769
698
|
* @param {object} defaultOptions ContextMenu default item options.
|
770
699
|
*/
|
771
|
-
|
772
700
|
}, {
|
773
701
|
key: "onAfterDropdownMenuDefaultOptions",
|
774
702
|
value: function onAfterDropdownMenuDefaultOptions(defaultOptions) {
|
@@ -779,6 +707,7 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
779
707
|
defaultOptions.items.push(component.getMenuItemDescriptor());
|
780
708
|
});
|
781
709
|
}
|
710
|
+
|
782
711
|
/**
|
783
712
|
* Get an operation, based on the number and types of arguments (where arguments are states of components).
|
784
713
|
*
|
@@ -789,12 +718,10 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
789
718
|
* @private
|
790
719
|
* @returns {string}
|
791
720
|
*/
|
792
|
-
|
793
721
|
}, {
|
794
722
|
key: "getOperationBasedOnArguments",
|
795
723
|
value: function getOperationBasedOnArguments(suggestedOperation, byConditionState1, byConditionState2, byValueState) {
|
796
724
|
var operation = suggestedOperation;
|
797
|
-
|
798
725
|
if (operation === _constants2.OPERATION_OR && byConditionState1.command.key !== _constants2.CONDITION_NONE && byConditionState2.command.key !== _constants2.CONDITION_NONE && byValueState.command.key !== _constants2.CONDITION_NONE) {
|
799
726
|
operation = _constants2.OPERATION_OR_THEN_VARIABLE;
|
800
727
|
} else if (byValueState.command.key !== _constants2.CONDITION_NONE) {
|
@@ -802,48 +729,46 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
802
729
|
operation = _constants2.OPERATION_AND;
|
803
730
|
}
|
804
731
|
}
|
805
|
-
|
806
732
|
return operation;
|
807
733
|
}
|
734
|
+
|
808
735
|
/**
|
809
736
|
* On action bar submit listener.
|
810
737
|
*
|
811
738
|
* @private
|
812
739
|
* @param {string} submitType The submit type.
|
813
740
|
*/
|
814
|
-
|
815
741
|
}, {
|
816
742
|
key: "onActionBarSubmit",
|
817
743
|
value: function onActionBarSubmit(submitType) {
|
744
|
+
var _this$dropdownMenuPlu3;
|
818
745
|
if (submitType === 'accept') {
|
819
|
-
var
|
820
|
-
|
821
|
-
|
746
|
+
var selectedColumn = this.getSelectedColumn();
|
747
|
+
if (selectedColumn === null) {
|
748
|
+
var _this$dropdownMenuPlu2;
|
749
|
+
(_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 ? void 0 : _this$dropdownMenuPlu2.close();
|
750
|
+
return;
|
751
|
+
}
|
752
|
+
var physicalIndex = selectedColumn.physicalIndex;
|
822
753
|
var byConditionState1 = this.components.get('filter_by_condition').getState();
|
823
754
|
var byConditionState2 = this.components.get('filter_by_condition2').getState();
|
824
755
|
var byValueState = this.components.get('filter_by_value').getState();
|
825
756
|
var operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
|
826
757
|
this.conditionUpdateObserver.groupChanges();
|
827
758
|
var columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
|
828
|
-
|
829
759
|
if (columnStackPosition === -1) {
|
830
760
|
columnStackPosition = void 0;
|
831
761
|
}
|
832
|
-
|
833
762
|
this.conditionCollection.removeConditions(physicalIndex);
|
834
|
-
|
835
763
|
if (byConditionState1.command.key !== _constants2.CONDITION_NONE) {
|
836
764
|
this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
|
837
|
-
|
838
765
|
if (byConditionState2.command.key !== _constants2.CONDITION_NONE) {
|
839
766
|
this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
|
840
767
|
}
|
841
768
|
}
|
842
|
-
|
843
769
|
if (byValueState.command.key !== _constants2.CONDITION_NONE) {
|
844
770
|
this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
|
845
771
|
}
|
846
|
-
|
847
772
|
this.conditionUpdateObserver.flush();
|
848
773
|
this.components.forEach(function (component) {
|
849
774
|
return component.saveState(physicalIndex);
|
@@ -851,11 +776,9 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
851
776
|
this.filtersRowsMap.clear();
|
852
777
|
this.filter();
|
853
778
|
}
|
854
|
-
|
855
|
-
if (this.dropdownMenuPlugin) {
|
856
|
-
this.dropdownMenuPlugin.close();
|
857
|
-
}
|
779
|
+
(_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 ? void 0 : _this$dropdownMenuPlu3.close();
|
858
780
|
}
|
781
|
+
|
859
782
|
/**
|
860
783
|
* On component change listener.
|
861
784
|
*
|
@@ -863,34 +786,32 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
863
786
|
* @param {BaseComponent} component Component inheriting BaseComponent.
|
864
787
|
* @param {object} command Menu item object (command).
|
865
788
|
*/
|
866
|
-
|
867
789
|
}, {
|
868
790
|
key: "onComponentChange",
|
869
791
|
value: function onComponentChange(component, command) {
|
870
792
|
this.updateDependentComponentsVisibility();
|
871
|
-
|
872
793
|
if (component.constructor === _condition.default && !command.inputsCount) {
|
873
794
|
this.setListeningDropdownMenu();
|
874
795
|
}
|
875
796
|
}
|
797
|
+
|
876
798
|
/**
|
877
799
|
* On component SelectUI closed listener.
|
878
800
|
*
|
879
801
|
* @private
|
880
802
|
*/
|
881
|
-
|
882
803
|
}, {
|
883
804
|
key: "onSelectUIClosed",
|
884
805
|
value: function onSelectUIClosed() {
|
885
806
|
this.setListeningDropdownMenu();
|
886
807
|
}
|
808
|
+
|
887
809
|
/**
|
888
810
|
* Listen to the keyboard input on document body and forward events to instance of Handsontable
|
889
811
|
* created by DropdownMenu plugin.
|
890
812
|
*
|
891
813
|
* @private
|
892
814
|
*/
|
893
|
-
|
894
815
|
}, {
|
895
816
|
key: "setListeningDropdownMenu",
|
896
817
|
value: function setListeningDropdownMenu() {
|
@@ -898,28 +819,26 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
898
819
|
this.dropdownMenuPlugin.setListening();
|
899
820
|
}
|
900
821
|
}
|
822
|
+
|
901
823
|
/**
|
902
824
|
* Updates visibility of some of the components, based on the state of the parent component.
|
903
825
|
*
|
904
826
|
* @private
|
905
827
|
*/
|
906
|
-
|
907
828
|
}, {
|
908
829
|
key: "updateDependentComponentsVisibility",
|
909
830
|
value: function updateDependentComponentsVisibility() {
|
910
831
|
var component = this.components.get('filter_by_condition');
|
911
|
-
|
912
832
|
var _component$getState = component.getState(),
|
913
|
-
|
914
|
-
|
833
|
+
command = _component$getState.command;
|
915
834
|
var componentsToShow = [this.components.get('filter_by_condition2'), this.components.get('filter_operators')];
|
916
|
-
|
917
835
|
if (command.showOperators) {
|
918
836
|
this.showComponents.apply(this, componentsToShow);
|
919
837
|
} else {
|
920
838
|
this.hideComponents.apply(this, componentsToShow);
|
921
839
|
}
|
922
840
|
}
|
841
|
+
|
923
842
|
/**
|
924
843
|
* On after get column header listener.
|
925
844
|
*
|
@@ -927,39 +846,17 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
927
846
|
* @param {number} col Visual column index.
|
928
847
|
* @param {HTMLTableCellElement} TH Header's TH element.
|
929
848
|
*/
|
930
|
-
|
931
849
|
}, {
|
932
850
|
key: "onAfterGetColHeader",
|
933
851
|
value: function onAfterGetColHeader(col, TH) {
|
934
852
|
var physicalColumn = this.hot.toPhysicalColumn(col);
|
935
|
-
|
936
853
|
if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
|
937
854
|
(0, _element.addClass)(TH, 'htFiltersActive');
|
938
855
|
} else {
|
939
856
|
(0, _element.removeClass)(TH, 'htFiltersActive');
|
940
857
|
}
|
941
858
|
}
|
942
|
-
/**
|
943
|
-
* On table click listener.
|
944
|
-
*
|
945
|
-
* @private
|
946
|
-
* @param {Event} event DOM Event.
|
947
|
-
*/
|
948
|
-
|
949
|
-
}, {
|
950
|
-
key: "onTableClick",
|
951
|
-
value: function onTableClick(event) {
|
952
|
-
var th = (0, _element.closest)(event.target, 'TH');
|
953
859
|
|
954
|
-
if (th) {
|
955
|
-
var visualIndex = this.hot.getCoords(th).col;
|
956
|
-
var physicalIndex = this.hot.toPhysicalColumn(visualIndex);
|
957
|
-
this.lastSelectedColumn = {
|
958
|
-
visualIndex: visualIndex,
|
959
|
-
physicalIndex: physicalIndex
|
960
|
-
};
|
961
|
-
}
|
962
|
-
}
|
963
860
|
/**
|
964
861
|
* Creates DataFilter instance based on condition collection.
|
965
862
|
*
|
@@ -967,17 +864,16 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
967
864
|
* @param {ConditionCollection} conditionCollection Condition collection object.
|
968
865
|
* @returns {DataFilter}
|
969
866
|
*/
|
970
|
-
|
971
867
|
}, {
|
972
868
|
key: "_createDataFilter",
|
973
869
|
value: function _createDataFilter() {
|
974
|
-
var
|
975
|
-
|
870
|
+
var _this8 = this;
|
976
871
|
var conditionCollection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.conditionCollection;
|
977
872
|
return new _dataFilter.default(conditionCollection, function (physicalColumn) {
|
978
|
-
return
|
873
|
+
return _this8.getDataMapAtColumn(physicalColumn);
|
979
874
|
});
|
980
875
|
}
|
876
|
+
|
981
877
|
/**
|
982
878
|
* It updates the components state. The state is triggered by ConditionUpdateObserver, which
|
983
879
|
* reacts to any condition added to the condition collection. It may be added through the UI
|
@@ -986,26 +882,22 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
986
882
|
* @private
|
987
883
|
* @param {object} conditionsState An object with the state generated by UI components.
|
988
884
|
*/
|
989
|
-
|
990
885
|
}, {
|
991
886
|
key: "updateComponents",
|
992
887
|
value: function updateComponents(conditionsState) {
|
993
|
-
var _this$
|
994
|
-
|
995
|
-
if (!((_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu2 !== void 0 && _this$dropdownMenuPlu2.enabled)) {
|
888
|
+
var _this$dropdownMenuPlu4;
|
889
|
+
if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
|
996
890
|
return;
|
997
891
|
}
|
998
|
-
|
999
892
|
var _conditionsState$edit = conditionsState.editedConditionStack,
|
1000
|
-
|
1001
|
-
|
893
|
+
conditions = _conditionsState$edit.conditions,
|
894
|
+
column = _conditionsState$edit.column;
|
1002
895
|
var conditionsByValue = conditions.filter(function (condition) {
|
1003
896
|
return condition.name === _constants2.CONDITION_BY_VALUE;
|
1004
897
|
});
|
1005
898
|
var conditionsWithoutByValue = conditions.filter(function (condition) {
|
1006
899
|
return condition.name !== _constants2.CONDITION_BY_VALUE;
|
1007
900
|
});
|
1008
|
-
|
1009
901
|
if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
|
1010
902
|
(0, _console.warn)((0, _templateLiteralTag.toSingleLine)(_templateObject || (_templateObject = _taggedTemplateLiteral(["The filter conditions have been applied properly, but couldn\u2019t be displayed visually. \n The overall amount of conditions exceed the capability of the dropdown menu. \n For more details see the documentation."], ["The filter conditions have been applied properly, but couldn\u2019t be displayed visually.\\x20\n The overall amount of conditions exceed the capability of the dropdown menu.\\x20\n For more details see the documentation."]))));
|
1011
903
|
} else {
|
@@ -1016,6 +908,7 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1016
908
|
this.components.get('filter_by_value').updateState(conditionsState);
|
1017
909
|
}
|
1018
910
|
}
|
911
|
+
|
1019
912
|
/**
|
1020
913
|
* Returns indexes of passed components inside list of `dropdownMenu` items.
|
1021
914
|
*
|
@@ -1023,22 +916,17 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1023
916
|
* @param {...BaseComponent} components List of components.
|
1024
917
|
* @returns {Array}
|
1025
918
|
*/
|
1026
|
-
|
1027
919
|
}, {
|
1028
920
|
key: "getIndexesOfComponents",
|
1029
921
|
value: function getIndexesOfComponents() {
|
1030
922
|
var indexes = [];
|
1031
|
-
|
1032
923
|
if (!this.dropdownMenuPlugin) {
|
1033
924
|
return indexes;
|
1034
925
|
}
|
1035
|
-
|
1036
926
|
var menu = this.dropdownMenuPlugin.menu;
|
1037
|
-
|
1038
927
|
for (var _len = arguments.length, components = new Array(_len), _key = 0; _key < _len; _key++) {
|
1039
928
|
components[_key] = arguments[_key];
|
1040
929
|
}
|
1041
|
-
|
1042
930
|
(0, _array.arrayEach)(components, function (component) {
|
1043
931
|
(0, _array.arrayEach)(menu.menuItems, function (item, index) {
|
1044
932
|
if (item.key === component.getMenuItemDescriptor().key) {
|
@@ -1048,6 +936,7 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1048
936
|
});
|
1049
937
|
return indexes;
|
1050
938
|
}
|
939
|
+
|
1051
940
|
/**
|
1052
941
|
* Changes visibility of component.
|
1053
942
|
*
|
@@ -1055,88 +944,76 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1055
944
|
* @param {boolean} visible Determine if components should be visible.
|
1056
945
|
* @param {...BaseComponent} components List of components.
|
1057
946
|
*/
|
1058
|
-
|
1059
947
|
}, {
|
1060
948
|
key: "changeComponentsVisibility",
|
1061
949
|
value: function changeComponentsVisibility() {
|
1062
950
|
var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
1063
|
-
|
1064
951
|
if (!this.dropdownMenuPlugin) {
|
1065
952
|
return;
|
1066
953
|
}
|
1067
|
-
|
1068
954
|
var menu = this.dropdownMenuPlugin.menu;
|
1069
955
|
var hotMenu = menu.hotMenu;
|
1070
956
|
var hiddenRows = hotMenu.getPlugin('hiddenRows');
|
1071
|
-
|
1072
957
|
for (var _len2 = arguments.length, components = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
1073
958
|
components[_key2 - 1] = arguments[_key2];
|
1074
959
|
}
|
1075
|
-
|
1076
960
|
var indexes = this.getIndexesOfComponents.apply(this, components);
|
1077
|
-
|
1078
961
|
if (visible) {
|
1079
962
|
hiddenRows.showRows(indexes);
|
1080
963
|
} else {
|
1081
964
|
hiddenRows.hideRows(indexes);
|
1082
965
|
}
|
1083
|
-
|
1084
966
|
hotMenu.render();
|
1085
967
|
}
|
968
|
+
|
1086
969
|
/**
|
1087
970
|
* Hides components of filters `dropdownMenu`.
|
1088
971
|
*
|
1089
972
|
* @private
|
1090
973
|
* @param {...BaseComponent} components List of components.
|
1091
974
|
*/
|
1092
|
-
|
1093
975
|
}, {
|
1094
976
|
key: "hideComponents",
|
1095
977
|
value: function hideComponents() {
|
1096
978
|
for (var _len3 = arguments.length, components = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
1097
979
|
components[_key3] = arguments[_key3];
|
1098
980
|
}
|
1099
|
-
|
1100
981
|
this.changeComponentsVisibility.apply(this, [false].concat(components));
|
1101
982
|
}
|
983
|
+
|
1102
984
|
/**
|
1103
985
|
* Shows components of filters `dropdownMenu`.
|
1104
986
|
*
|
1105
987
|
* @private
|
1106
988
|
* @param {...BaseComponent} components List of components.
|
1107
989
|
*/
|
1108
|
-
|
1109
990
|
}, {
|
1110
991
|
key: "showComponents",
|
1111
992
|
value: function showComponents() {
|
1112
993
|
for (var _len4 = arguments.length, components = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
1113
994
|
components[_key4] = arguments[_key4];
|
1114
995
|
}
|
1115
|
-
|
1116
996
|
this.changeComponentsVisibility.apply(this, [true].concat(components));
|
1117
997
|
}
|
998
|
+
|
1118
999
|
/**
|
1119
1000
|
* Destroys the plugin instance.
|
1120
1001
|
*/
|
1121
|
-
|
1122
1002
|
}, {
|
1123
1003
|
key: "destroy",
|
1124
1004
|
value: function destroy() {
|
1125
|
-
var
|
1126
|
-
|
1005
|
+
var _this9 = this;
|
1127
1006
|
if (this.enabled) {
|
1128
1007
|
this.components.forEach(function (component, key) {
|
1129
1008
|
if (component !== null) {
|
1130
1009
|
component.destroy();
|
1131
|
-
|
1132
|
-
_this10.components.set(key, null);
|
1010
|
+
_this9.components.set(key, null);
|
1133
1011
|
}
|
1134
1012
|
});
|
1135
1013
|
this.conditionCollection.destroy();
|
1136
1014
|
this.conditionUpdateObserver.destroy();
|
1137
1015
|
this.hot.rowIndexMapper.unregisterMap(this.pluginName);
|
1138
1016
|
}
|
1139
|
-
|
1140
1017
|
_get(_getPrototypeOf(Filters.prototype), "destroy", this).call(this);
|
1141
1018
|
}
|
1142
1019
|
}], [{
|
@@ -1155,8 +1032,6 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1155
1032
|
return ['plugin:DropdownMenu', 'plugin:HiddenRows', 'cell-type:checkbox'];
|
1156
1033
|
}
|
1157
1034
|
}]);
|
1158
|
-
|
1159
1035
|
return Filters;
|
1160
1036
|
}(_base.BasePlugin);
|
1161
|
-
|
1162
1037
|
exports.Filters = Filters;
|