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,5 +1,4 @@
|
|
1
1
|
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); }
|
2
|
-
|
3
2
|
import "core-js/modules/es.object.set-prototype-of.js";
|
4
3
|
import "core-js/modules/es.object.get-prototype-of.js";
|
5
4
|
import "core-js/modules/es.reflect.construct.js";
|
@@ -11,23 +10,14 @@ import "core-js/modules/es.symbol.iterator.js";
|
|
11
10
|
import "core-js/modules/es.array.slice.js";
|
12
11
|
import "core-js/modules/es.regexp.exec.js";
|
13
12
|
import "core-js/modules/es.object.freeze.js";
|
14
|
-
|
15
13
|
var _templateObject;
|
16
|
-
|
17
14
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
18
|
-
|
19
15
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
20
|
-
|
21
16
|
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."); }
|
22
|
-
|
23
17
|
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); }
|
24
|
-
|
25
18
|
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; }
|
26
|
-
|
27
19
|
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; }
|
28
|
-
|
29
20
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
30
|
-
|
31
21
|
import "core-js/modules/es.array.iterator.js";
|
32
22
|
import "core-js/modules/es.map.js";
|
33
23
|
import "core-js/modules/es.object.to-string.js";
|
@@ -38,38 +28,25 @@ import "core-js/modules/es.array.filter.js";
|
|
38
28
|
import "core-js/modules/es.array.from.js";
|
39
29
|
import "core-js/modules/es.function.name.js";
|
40
30
|
import "core-js/modules/es.array.concat.js";
|
41
|
-
|
42
31
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
43
|
-
|
44
32
|
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); } }
|
45
|
-
|
46
33
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
47
|
-
|
48
34
|
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); }
|
49
|
-
|
50
35
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
51
|
-
|
52
36
|
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); }
|
53
|
-
|
54
37
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
55
|
-
|
56
38
|
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); }; }
|
57
|
-
|
58
39
|
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); }
|
59
|
-
|
60
40
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
61
|
-
|
62
41
|
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; } }
|
63
|
-
|
64
42
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
65
|
-
|
66
43
|
import { BasePlugin } from "../base/index.mjs";
|
67
44
|
import { arrayEach, arrayMap } from "../../helpers/array.mjs";
|
68
45
|
import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
|
69
46
|
import { warn } from "../../helpers/console.mjs";
|
70
47
|
import { rangeEach } from "../../helpers/number.mjs";
|
71
48
|
import EventManager from "../../eventManager.mjs";
|
72
|
-
import { addClass, removeClass
|
49
|
+
import { addClass, removeClass } from "../../helpers/dom/element.mjs";
|
73
50
|
import { SEPARATOR } from "../contextMenu/predefinedItems.mjs";
|
74
51
|
import * as constants from "../../i18n/constants.mjs";
|
75
52
|
import ConditionComponent from "./component/condition.mjs";
|
@@ -84,6 +61,7 @@ import { CONDITION_NONE, CONDITION_BY_VALUE, OPERATION_AND, OPERATION_OR, OPERAT
|
|
84
61
|
import { TrimmingMap } from "../../translations/index.mjs";
|
85
62
|
export var PLUGIN_KEY = 'filters';
|
86
63
|
export var PLUGIN_PRIORITY = 250;
|
64
|
+
|
87
65
|
/**
|
88
66
|
* @plugin Filters
|
89
67
|
* @class Filters
|
@@ -94,6 +72,7 @@ export var PLUGIN_PRIORITY = 250;
|
|
94
72
|
* See [the filtering demo](@/guides/columns/column-filter.md) for examples.
|
95
73
|
*
|
96
74
|
* @example
|
75
|
+
* ::: only-for javascript
|
97
76
|
* ```js
|
98
77
|
* const container = document.getElementById('example');
|
99
78
|
* const hot = new Handsontable(container, {
|
@@ -104,18 +83,26 @@ export var PLUGIN_PRIORITY = 250;
|
|
104
83
|
* filters: true
|
105
84
|
* });
|
106
85
|
* ```
|
86
|
+
* :::
|
87
|
+
*
|
88
|
+
* ::: only-for react
|
89
|
+
* ```jsx
|
90
|
+
* <HotTable
|
91
|
+
* data={getData()}
|
92
|
+
* colHeaders={true}
|
93
|
+
* rowHeaders={true}
|
94
|
+
* dropdownMenu={true}
|
95
|
+
* filters={true}
|
96
|
+
* />
|
97
|
+
* ```
|
98
|
+
* :::
|
107
99
|
*/
|
108
|
-
|
109
100
|
export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
110
101
|
_inherits(Filters, _BasePlugin);
|
111
|
-
|
112
102
|
var _super = _createSuper(Filters);
|
113
|
-
|
114
103
|
function Filters(hotInstance) {
|
115
104
|
var _this;
|
116
|
-
|
117
105
|
_classCallCheck(this, Filters);
|
118
|
-
|
119
106
|
_this = _super.call(this, hotInstance);
|
120
107
|
/**
|
121
108
|
* Instance of {@link EventManager}.
|
@@ -123,7 +110,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
123
110
|
* @private
|
124
111
|
* @type {EventManager}
|
125
112
|
*/
|
126
|
-
|
127
113
|
_this.eventManager = new EventManager(_assertThisInitialized(_this));
|
128
114
|
/**
|
129
115
|
* Instance of {@link DropdownMenu}.
|
@@ -131,7 +117,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
131
117
|
* @private
|
132
118
|
* @type {DropdownMenu}
|
133
119
|
*/
|
134
|
-
|
135
120
|
_this.dropdownMenuPlugin = null;
|
136
121
|
/**
|
137
122
|
* Instance of {@link ConditionCollection}.
|
@@ -139,7 +124,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
139
124
|
* @private
|
140
125
|
* @type {ConditionCollection}
|
141
126
|
*/
|
142
|
-
|
143
127
|
_this.conditionCollection = null;
|
144
128
|
/**
|
145
129
|
* Instance of {@link ConditionUpdateObserver}.
|
@@ -147,7 +131,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
147
131
|
* @private
|
148
132
|
* @type {ConditionUpdateObserver}
|
149
133
|
*/
|
150
|
-
|
151
134
|
_this.conditionUpdateObserver = null;
|
152
135
|
/**
|
153
136
|
* Map, where key is component identifier and value represent `BaseComponent` element or it derivatives.
|
@@ -155,7 +138,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
155
138
|
* @private
|
156
139
|
* @type {Map}
|
157
140
|
*/
|
158
|
-
|
159
141
|
_this.components = new Map([['filter_by_condition', null], ['filter_operators', null], ['filter_by_condition2', null], ['filter_by_value', null], ['filter_action_bar', null]]);
|
160
142
|
/**
|
161
143
|
* Object containing information about last selected column physical and visual index for added filter conditions.
|
@@ -164,7 +146,6 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
164
146
|
* @type {object}
|
165
147
|
* @default null
|
166
148
|
*/
|
167
|
-
|
168
149
|
_this.lastSelectedColumn = null;
|
169
150
|
/**
|
170
151
|
* Map of skipped rows by plugin.
|
@@ -172,47 +153,42 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
172
153
|
* @private
|
173
154
|
* @type {null|TrimmingMap}
|
174
155
|
*/
|
156
|
+
_this.filtersRowsMap = null;
|
175
157
|
|
176
|
-
|
177
|
-
|
158
|
+
// One listener for the enable/disable functionality
|
178
159
|
_this.hot.addHook('afterGetColHeader', function (col, TH) {
|
179
160
|
return _this.onAfterGetColHeader(col, TH);
|
180
161
|
});
|
181
|
-
|
182
162
|
return _this;
|
183
163
|
}
|
164
|
+
|
184
165
|
/**
|
185
166
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
186
|
-
* hook and if it returns `true`
|
167
|
+
* hook and if it returns `true` then the {@link Filters#enablePlugin} method is called.
|
187
168
|
*
|
188
169
|
* @returns {boolean}
|
189
170
|
*/
|
190
|
-
|
191
|
-
|
192
171
|
_createClass(Filters, [{
|
193
172
|
key: "isEnabled",
|
194
173
|
value: function isEnabled() {
|
195
174
|
/* eslint-disable no-unneeded-ternary */
|
196
175
|
return this.hot.getSettings()[PLUGIN_KEY] ? true : false;
|
197
176
|
}
|
177
|
+
|
198
178
|
/**
|
199
179
|
* Enables the plugin functionality for this Handsontable instance.
|
200
180
|
*/
|
201
|
-
|
202
181
|
}, {
|
203
182
|
key: "enablePlugin",
|
204
183
|
value: function enablePlugin() {
|
205
184
|
var _this2 = this;
|
206
|
-
|
207
185
|
if (this.enabled) {
|
208
186
|
return;
|
209
187
|
}
|
210
|
-
|
211
188
|
this.filtersRowsMap = this.hot.rowIndexMapper.registerMap(this.pluginName, new TrimmingMap());
|
212
189
|
this.dropdownMenuPlugin = this.hot.getPlugin('dropdownMenu');
|
213
190
|
var dropdownSettings = this.hot.getSettings().dropdownMenu;
|
214
191
|
var menuContainer = dropdownSettings && dropdownSettings.uiContainer || this.hot.rootDocument.body;
|
215
|
-
|
216
192
|
var addConfirmationHooks = function addConfirmationHooks(component) {
|
217
193
|
component.addLocalHook('accept', function () {
|
218
194
|
return _this2.onActionBarSubmit('accept');
|
@@ -225,15 +201,12 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
225
201
|
});
|
226
202
|
return component;
|
227
203
|
};
|
228
|
-
|
229
204
|
var filterByConditionLabel = function filterByConditionLabel() {
|
230
205
|
return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_CONDITION), ":");
|
231
206
|
};
|
232
|
-
|
233
207
|
var filterValueLabel = function filterValueLabel() {
|
234
208
|
return "".concat(_this2.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_VALUE), ":");
|
235
209
|
};
|
236
|
-
|
237
210
|
if (!this.components.get('filter_by_condition')) {
|
238
211
|
var conditionComponent = new ConditionComponent(this.hot, {
|
239
212
|
id: 'filter_by_condition',
|
@@ -246,14 +219,12 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
246
219
|
});
|
247
220
|
this.components.set('filter_by_condition', addConfirmationHooks(conditionComponent));
|
248
221
|
}
|
249
|
-
|
250
222
|
if (!this.components.get('filter_operators')) {
|
251
223
|
this.components.set('filter_operators', new OperatorsComponent(this.hot, {
|
252
224
|
id: 'filter_operators',
|
253
225
|
name: 'Operators'
|
254
226
|
}));
|
255
227
|
}
|
256
|
-
|
257
228
|
if (!this.components.get('filter_by_condition2')) {
|
258
229
|
var _conditionComponent = new ConditionComponent(this.hot, {
|
259
230
|
id: 'filter_by_condition2',
|
@@ -261,32 +232,26 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
261
232
|
addSeparator: true,
|
262
233
|
menuContainer: menuContainer
|
263
234
|
});
|
264
|
-
|
265
235
|
_conditionComponent.addLocalHook('afterClose', function () {
|
266
236
|
return _this2.onSelectUIClosed();
|
267
237
|
});
|
268
|
-
|
269
238
|
this.components.set('filter_by_condition2', addConfirmationHooks(_conditionComponent));
|
270
239
|
}
|
271
|
-
|
272
240
|
if (!this.components.get('filter_by_value')) {
|
273
241
|
this.components.set('filter_by_value', addConfirmationHooks(new ValueComponent(this.hot, {
|
274
242
|
id: 'filter_by_value',
|
275
243
|
name: filterValueLabel
|
276
244
|
})));
|
277
245
|
}
|
278
|
-
|
279
246
|
if (!this.components.get('filter_action_bar')) {
|
280
247
|
this.components.set('filter_action_bar', addConfirmationHooks(new ActionBarComponent(this.hot, {
|
281
248
|
id: 'filter_action_bar',
|
282
249
|
name: 'Action bar'
|
283
250
|
})));
|
284
251
|
}
|
285
|
-
|
286
252
|
if (!this.conditionCollection) {
|
287
253
|
this.conditionCollection = new ConditionCollection(this.hot);
|
288
254
|
}
|
289
|
-
|
290
255
|
if (!this.conditionUpdateObserver) {
|
291
256
|
this.conditionUpdateObserver = new ConditionUpdateObserver(this.hot, this.conditionCollection, function (physicalColumn) {
|
292
257
|
return _this2.getDataMapAtColumn(physicalColumn);
|
@@ -295,11 +260,9 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
295
260
|
return _this2.updateComponents(conditionState);
|
296
261
|
});
|
297
262
|
}
|
298
|
-
|
299
263
|
this.components.forEach(function (component) {
|
300
264
|
return component.show();
|
301
265
|
});
|
302
|
-
this.registerEvents();
|
303
266
|
this.addHook('beforeDropdownMenuSetItems', function (items) {
|
304
267
|
return _this2.onBeforeDropdownMenuSetItems(items);
|
305
268
|
});
|
@@ -314,60 +277,40 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
314
277
|
});
|
315
278
|
this.addHook('afterChange', function (changes) {
|
316
279
|
return _this2.onAfterChange(changes);
|
317
|
-
});
|
280
|
+
});
|
318
281
|
|
282
|
+
// Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
|
319
283
|
if (this.hot.getSettings().dropdownMenu && this.dropdownMenuPlugin) {
|
320
284
|
this.dropdownMenuPlugin.disablePlugin();
|
321
285
|
this.dropdownMenuPlugin.enablePlugin();
|
322
286
|
}
|
323
|
-
|
324
287
|
_get(_getPrototypeOf(Filters.prototype), "enablePlugin", this).call(this);
|
325
288
|
}
|
326
|
-
/**
|
327
|
-
* Registers the DOM listeners.
|
328
|
-
*
|
329
|
-
* @private
|
330
|
-
*/
|
331
289
|
|
332
|
-
}, {
|
333
|
-
key: "registerEvents",
|
334
|
-
value: function registerEvents() {
|
335
|
-
var _this3 = this;
|
336
|
-
|
337
|
-
this.eventManager.addEventListener(this.hot.rootElement, 'click', function (event) {
|
338
|
-
return _this3.onTableClick(event);
|
339
|
-
});
|
340
|
-
}
|
341
290
|
/**
|
342
291
|
* Disables the plugin functionality for this Handsontable instance.
|
343
292
|
*/
|
344
|
-
|
345
293
|
}, {
|
346
294
|
key: "disablePlugin",
|
347
295
|
value: function disablePlugin() {
|
348
|
-
var
|
349
|
-
|
296
|
+
var _this3 = this;
|
350
297
|
if (this.enabled) {
|
351
298
|
var _this$dropdownMenuPlu;
|
352
|
-
|
353
299
|
if ((_this$dropdownMenuPlu = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu !== void 0 && _this$dropdownMenuPlu.enabled) {
|
354
300
|
this.dropdownMenuPlugin.menu.clearLocalHooks();
|
355
301
|
}
|
356
|
-
|
357
302
|
this.components.forEach(function (component, key) {
|
358
303
|
component.destroy();
|
359
|
-
|
360
|
-
_this4.components.set(key, null);
|
304
|
+
_this3.components.set(key, null);
|
361
305
|
});
|
362
306
|
this.conditionCollection.destroy();
|
363
307
|
this.conditionCollection = null;
|
364
308
|
this.hot.rowIndexMapper.unregisterMap(this.pluginName);
|
365
309
|
}
|
366
|
-
|
367
310
|
_get(_getPrototypeOf(Filters.prototype), "disablePlugin", this).call(this);
|
368
311
|
}
|
369
|
-
/* eslint-disable jsdoc/require-description-complete-sentence */
|
370
312
|
|
313
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
371
314
|
/**
|
372
315
|
* @memberof Filters#
|
373
316
|
* @function addCondition
|
@@ -402,6 +345,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
402
345
|
* **Note**: Mind that you cannot mix different types of operations (for instance, if you use `conjunction`, use it consequently for a particular column).
|
403
346
|
*
|
404
347
|
* @example
|
348
|
+
* ::: only-for javascript
|
405
349
|
* ```js
|
406
350
|
* const container = document.getElementById('example');
|
407
351
|
* const hot = new Handsontable(container, {
|
@@ -431,14 +375,51 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
431
375
|
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
|
432
376
|
* filtersPlugin.filter();
|
433
377
|
* ```
|
378
|
+
* :::
|
379
|
+
*
|
380
|
+
* ::: only-for react
|
381
|
+
* ```jsx
|
382
|
+
* const hotRef = useRef(null);
|
383
|
+
*
|
384
|
+
* ...
|
385
|
+
*
|
386
|
+
* <HotTable
|
387
|
+
* ref={hotRef}
|
388
|
+
* data={getData()}
|
389
|
+
* filters={true}
|
390
|
+
* />
|
391
|
+
*
|
392
|
+
* // access to filters plugin instance
|
393
|
+
* const hot = hotRef.current.hotInstance;
|
394
|
+
* const filtersPlugin = hot.getPlugin('filters');
|
395
|
+
*
|
396
|
+
* // add filter "Greater than" 95 to column at index 1
|
397
|
+
* filtersPlugin.addCondition(1, 'gt', [95]);
|
398
|
+
* filtersPlugin.filter();
|
399
|
+
*
|
400
|
+
* // add filter "By value" to column at index 1
|
401
|
+
* // in this case all value's that don't match will be filtered.
|
402
|
+
* filtersPlugin.addCondition(1, 'by_value', [['ing', 'ed', 'as', 'on']]);
|
403
|
+
* filtersPlugin.filter();
|
404
|
+
*
|
405
|
+
* // add filter "Begins with" with value "de" AND "Not contains" with value "ing"
|
406
|
+
* filtersPlugin.addCondition(1, 'begins_with', ['de'], 'conjunction');
|
407
|
+
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'conjunction');
|
408
|
+
* filtersPlugin.filter();
|
409
|
+
*
|
410
|
+
* // add filter "Begins with" with value "de" OR "Not contains" with value "ing"
|
411
|
+
* filtersPlugin.addCondition(1, 'begins_with', ['de'], 'disjunction');
|
412
|
+
* filtersPlugin.addCondition(1, 'not_contains', ['ing'], 'disjunction');
|
413
|
+
* filtersPlugin.filter();
|
414
|
+
* ```
|
415
|
+
* :::
|
416
|
+
*
|
434
417
|
* @param {number} column Visual column index.
|
435
418
|
* @param {string} name Condition short name.
|
436
419
|
* @param {Array} args Condition arguments.
|
437
420
|
* @param {string} [operationId=conjunction] `id` of operation which is performed on the column.
|
438
421
|
*/
|
439
|
-
|
440
422
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
441
|
-
|
442
423
|
}, {
|
443
424
|
key: "addCondition",
|
444
425
|
value: function addCondition(column, name, args) {
|
@@ -451,25 +432,25 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
451
432
|
args: args
|
452
433
|
}, operationId);
|
453
434
|
}
|
435
|
+
|
454
436
|
/**
|
455
437
|
* Removes conditions at specified column index.
|
456
438
|
*
|
457
439
|
* @param {number} column Visual column index.
|
458
440
|
*/
|
459
|
-
|
460
441
|
}, {
|
461
442
|
key: "removeConditions",
|
462
443
|
value: function removeConditions(column) {
|
463
444
|
var physicalColumn = this.hot.toPhysicalColumn(column);
|
464
445
|
this.conditionCollection.removeConditions(physicalColumn);
|
465
446
|
}
|
447
|
+
|
466
448
|
/**
|
467
449
|
* Clears all conditions previously added to the collection for the specified column index or, if the column index
|
468
450
|
* was not passed, clear the conditions for all columns.
|
469
451
|
*
|
470
452
|
* @param {number} [column] Visual column index.
|
471
453
|
*/
|
472
|
-
|
473
454
|
}, {
|
474
455
|
key: "clearConditions",
|
475
456
|
value: function clearConditions(column) {
|
@@ -480,45 +461,40 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
480
461
|
this.conditionCollection.removeConditions(physicalColumn);
|
481
462
|
}
|
482
463
|
}
|
464
|
+
|
483
465
|
/**
|
484
466
|
* Filters data based on added filter conditions.
|
485
467
|
*
|
486
468
|
* @fires Hooks#beforeFilter
|
487
469
|
* @fires Hooks#afterFilter
|
488
470
|
*/
|
489
|
-
|
490
471
|
}, {
|
491
472
|
key: "filter",
|
492
473
|
value: function filter() {
|
493
|
-
var
|
494
|
-
|
474
|
+
var _this4 = this;
|
495
475
|
var dataFilter = this._createDataFilter();
|
496
|
-
|
497
476
|
var needToFilter = !this.conditionCollection.isEmpty();
|
498
477
|
var visibleVisualRows = [];
|
499
478
|
var conditions = this.conditionCollection.exportAllConditions();
|
500
479
|
var allowFiltering = this.hot.runHooks('beforeFilter', conditions);
|
501
|
-
|
502
480
|
if (allowFiltering !== false) {
|
503
481
|
if (needToFilter) {
|
504
482
|
var trimmedRows = [];
|
505
483
|
this.hot.batchExecution(function () {
|
506
|
-
|
507
|
-
|
484
|
+
_this4.filtersRowsMap.clear();
|
508
485
|
visibleVisualRows = arrayMap(dataFilter.filter(), function (rowData) {
|
509
486
|
return rowData.meta.visualRow;
|
510
487
|
});
|
511
488
|
var visibleVisualRowsAssertion = createArrayAssertion(visibleVisualRows);
|
512
|
-
rangeEach(
|
489
|
+
rangeEach(_this4.hot.countSourceRows() - 1, function (row) {
|
513
490
|
if (!visibleVisualRowsAssertion(row)) {
|
514
491
|
trimmedRows.push(row);
|
515
492
|
}
|
516
493
|
});
|
517
494
|
arrayEach(trimmedRows, function (physicalRow) {
|
518
|
-
|
495
|
+
_this4.filtersRowsMap.setValueAtIndex(physicalRow, true);
|
519
496
|
});
|
520
497
|
}, true);
|
521
|
-
|
522
498
|
if (!visibleVisualRows.length) {
|
523
499
|
this.hot.deselectCell();
|
524
500
|
}
|
@@ -526,69 +502,71 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
526
502
|
this.filtersRowsMap.clear();
|
527
503
|
}
|
528
504
|
}
|
529
|
-
|
530
505
|
this.hot.runHooks('afterFilter', conditions);
|
531
506
|
this.hot.view.adjustElementsSize(true);
|
532
507
|
this.hot.render();
|
533
508
|
this.clearColumnSelection();
|
534
509
|
}
|
510
|
+
|
535
511
|
/**
|
536
512
|
* Gets last selected column index.
|
537
513
|
*
|
538
|
-
* @returns {
|
539
|
-
*
|
514
|
+
* @returns {{visualIndex: number, physicalIndex: number} | null} Returns `null` when a column is
|
515
|
+
* not selected. Otherwise, returns an object with `visualIndex` and `physicalIndex` properties containing
|
516
|
+
* the index of the column.
|
540
517
|
*/
|
541
|
-
|
542
518
|
}, {
|
543
519
|
key: "getSelectedColumn",
|
544
520
|
value: function getSelectedColumn() {
|
545
|
-
|
521
|
+
var _this$hot$getSelected;
|
522
|
+
var highlight = (_this$hot$getSelected = this.hot.getSelectedRangeLast()) === null || _this$hot$getSelected === void 0 ? void 0 : _this$hot$getSelected.highlight;
|
523
|
+
if (!highlight) {
|
524
|
+
return null;
|
525
|
+
}
|
526
|
+
return {
|
527
|
+
visualIndex: highlight.col,
|
528
|
+
physicalIndex: this.hot.toPhysicalColumn(highlight.col)
|
529
|
+
};
|
546
530
|
}
|
531
|
+
|
547
532
|
/**
|
548
533
|
* Clears column selection.
|
549
534
|
*
|
550
535
|
* @private
|
551
536
|
*/
|
552
|
-
|
553
537
|
}, {
|
554
538
|
key: "clearColumnSelection",
|
555
539
|
value: function clearColumnSelection() {
|
556
|
-
var
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
if (coords !== void 0) {
|
561
|
-
this.hot.selectCell(coords.row, coords.col);
|
540
|
+
var selectedColumn = this.getSelectedColumn();
|
541
|
+
if (selectedColumn !== null) {
|
542
|
+
this.hot.selectCell(0, selectedColumn.visualIndex);
|
562
543
|
}
|
563
544
|
}
|
545
|
+
|
564
546
|
/**
|
565
547
|
* Returns handsontable source data with cell meta based on current selection.
|
566
548
|
*
|
567
549
|
* @param {number} [column] The physical column index. By default column index accept the value of the selected column.
|
568
550
|
* @returns {Array} Returns array of objects where keys as row index.
|
569
551
|
*/
|
570
|
-
|
571
552
|
}, {
|
572
553
|
key: "getDataMapAtColumn",
|
573
554
|
value: function getDataMapAtColumn(column) {
|
574
|
-
var
|
575
|
-
|
555
|
+
var _this5 = this;
|
576
556
|
var visualColumn = this.hot.toVisualColumn(column);
|
577
557
|
var data = [];
|
578
558
|
arrayEach(this.hot.getSourceDataAtCol(visualColumn), function (value, rowIndex) {
|
579
|
-
var
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
var dataValue = (_this6$hot$getDataAtC = _this6.hot.getDataAtCell(_this6.hot.toVisualRow(rowIndex), visualColumn)) !== null && _this6$hot$getDataAtC !== void 0 ? _this6$hot$getDataAtC : value;
|
559
|
+
var _this5$hot$getDataAtC;
|
560
|
+
var _this5$hot$getCellMet = _this5.hot.getCellMeta(rowIndex, visualColumn),
|
561
|
+
row = _this5$hot$getCellMet.row,
|
562
|
+
col = _this5$hot$getCellMet.col,
|
563
|
+
visualCol = _this5$hot$getCellMet.visualCol,
|
564
|
+
visualRow = _this5$hot$getCellMet.visualRow,
|
565
|
+
type = _this5$hot$getCellMet.type,
|
566
|
+
instance = _this5$hot$getCellMet.instance,
|
567
|
+
dateFormat = _this5$hot$getCellMet.dateFormat,
|
568
|
+
locale = _this5$hot$getCellMet.locale;
|
569
|
+
var dataValue = (_this5$hot$getDataAtC = _this5.hot.getDataAtCell(_this5.hot.toVisualRow(rowIndex), visualColumn)) !== null && _this5$hot$getDataAtC !== void 0 ? _this5$hot$getDataAtC : value;
|
592
570
|
data.push({
|
593
571
|
meta: {
|
594
572
|
row: row,
|
@@ -605,38 +583,35 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
605
583
|
});
|
606
584
|
return data;
|
607
585
|
}
|
586
|
+
|
608
587
|
/**
|
609
588
|
* `afterChange` listener.
|
610
589
|
*
|
611
590
|
* @private
|
612
591
|
* @param {Array} changes Array of changes.
|
613
592
|
*/
|
614
|
-
|
615
593
|
}, {
|
616
594
|
key: "onAfterChange",
|
617
595
|
value: function onAfterChange(changes) {
|
618
|
-
var
|
619
|
-
|
596
|
+
var _this6 = this;
|
620
597
|
if (changes) {
|
621
598
|
arrayEach(changes, function (change) {
|
622
599
|
var _change = _slicedToArray(change, 2),
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
if (_this7.conditionCollection.hasConditions(columnIndex)) {
|
628
|
-
_this7.updateValueComponentCondition(columnIndex);
|
600
|
+
prop = _change[1];
|
601
|
+
var columnIndex = _this6.hot.propToCol(prop);
|
602
|
+
if (_this6.conditionCollection.hasConditions(columnIndex)) {
|
603
|
+
_this6.updateValueComponentCondition(columnIndex);
|
629
604
|
}
|
630
605
|
});
|
631
606
|
}
|
632
607
|
}
|
608
|
+
|
633
609
|
/**
|
634
610
|
* Update the condition of ValueComponent, based on the handled changes.
|
635
611
|
*
|
636
612
|
* @private
|
637
613
|
* @param {number} columnIndex Column index of handled ValueComponent condition.
|
638
614
|
*/
|
639
|
-
|
640
615
|
}, {
|
641
616
|
key: "updateValueComponentCondition",
|
642
617
|
value: function updateValueComponentCondition(columnIndex) {
|
@@ -644,77 +619,74 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
644
619
|
var selectedValues = unifyColumnValues(dataAtCol);
|
645
620
|
this.conditionUpdateObserver.updateStatesAtColumn(columnIndex, selectedValues);
|
646
621
|
}
|
622
|
+
|
647
623
|
/**
|
648
624
|
* Restores components to its saved state.
|
649
625
|
*
|
650
626
|
* @private
|
651
627
|
* @param {Array} components List of components.
|
652
628
|
*/
|
653
|
-
|
654
629
|
}, {
|
655
630
|
key: "restoreComponents",
|
656
631
|
value: function restoreComponents(components) {
|
657
632
|
var _this$getSelectedColu;
|
658
|
-
|
659
633
|
var physicalIndex = (_this$getSelectedColu = this.getSelectedColumn()) === null || _this$getSelectedColu === void 0 ? void 0 : _this$getSelectedColu.physicalIndex;
|
660
634
|
components.forEach(function (component) {
|
661
635
|
if (component.isHidden()) {
|
662
636
|
return;
|
663
637
|
}
|
664
|
-
|
665
638
|
component.restoreState(physicalIndex);
|
666
639
|
});
|
667
640
|
this.updateDependentComponentsVisibility();
|
668
641
|
}
|
642
|
+
|
669
643
|
/**
|
670
644
|
* After dropdown menu show listener.
|
671
645
|
*
|
672
646
|
* @private
|
673
647
|
*/
|
674
|
-
|
675
648
|
}, {
|
676
649
|
key: "onAfterDropdownMenuShow",
|
677
650
|
value: function onAfterDropdownMenuShow() {
|
678
651
|
this.restoreComponents(Array.from(this.components.values()));
|
679
652
|
}
|
653
|
+
|
680
654
|
/**
|
681
655
|
* After dropdown menu hide listener.
|
682
656
|
*
|
683
657
|
* @private
|
684
658
|
*/
|
685
|
-
|
686
659
|
}, {
|
687
660
|
key: "onAfterDropdownMenuHide",
|
688
661
|
value: function onAfterDropdownMenuHide() {
|
689
662
|
this.components.get('filter_by_condition').getSelectElement().closeOptions();
|
690
663
|
this.components.get('filter_by_condition2').getSelectElement().closeOptions();
|
691
664
|
}
|
665
|
+
|
692
666
|
/**
|
693
667
|
* Before dropdown menu set menu items listener.
|
694
668
|
*
|
695
669
|
* @private
|
696
670
|
*/
|
697
|
-
|
698
671
|
}, {
|
699
672
|
key: "onBeforeDropdownMenuSetItems",
|
700
673
|
value: function onBeforeDropdownMenuSetItems() {
|
701
|
-
var
|
702
|
-
|
674
|
+
var _this7 = this;
|
703
675
|
if (this.dropdownMenuPlugin) {
|
704
676
|
this.dropdownMenuPlugin.menu.addLocalHook('afterOpen', function () {
|
705
|
-
|
677
|
+
_this7.dropdownMenuPlugin.menu.hotMenu.updateSettings({
|
706
678
|
hiddenRows: true
|
707
679
|
});
|
708
680
|
});
|
709
681
|
}
|
710
682
|
}
|
683
|
+
|
711
684
|
/**
|
712
685
|
* After dropdown menu default options listener.
|
713
686
|
*
|
714
687
|
* @private
|
715
688
|
* @param {object} defaultOptions ContextMenu default item options.
|
716
689
|
*/
|
717
|
-
|
718
690
|
}, {
|
719
691
|
key: "onAfterDropdownMenuDefaultOptions",
|
720
692
|
value: function onAfterDropdownMenuDefaultOptions(defaultOptions) {
|
@@ -725,6 +697,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
725
697
|
defaultOptions.items.push(component.getMenuItemDescriptor());
|
726
698
|
});
|
727
699
|
}
|
700
|
+
|
728
701
|
/**
|
729
702
|
* Get an operation, based on the number and types of arguments (where arguments are states of components).
|
730
703
|
*
|
@@ -735,12 +708,10 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
735
708
|
* @private
|
736
709
|
* @returns {string}
|
737
710
|
*/
|
738
|
-
|
739
711
|
}, {
|
740
712
|
key: "getOperationBasedOnArguments",
|
741
713
|
value: function getOperationBasedOnArguments(suggestedOperation, byConditionState1, byConditionState2, byValueState) {
|
742
714
|
var operation = suggestedOperation;
|
743
|
-
|
744
715
|
if (operation === OPERATION_OR && byConditionState1.command.key !== CONDITION_NONE && byConditionState2.command.key !== CONDITION_NONE && byValueState.command.key !== CONDITION_NONE) {
|
745
716
|
operation = OPERATION_OR_THEN_VARIABLE;
|
746
717
|
} else if (byValueState.command.key !== CONDITION_NONE) {
|
@@ -748,48 +719,46 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
748
719
|
operation = OPERATION_AND;
|
749
720
|
}
|
750
721
|
}
|
751
|
-
|
752
722
|
return operation;
|
753
723
|
}
|
724
|
+
|
754
725
|
/**
|
755
726
|
* On action bar submit listener.
|
756
727
|
*
|
757
728
|
* @private
|
758
729
|
* @param {string} submitType The submit type.
|
759
730
|
*/
|
760
|
-
|
761
731
|
}, {
|
762
732
|
key: "onActionBarSubmit",
|
763
733
|
value: function onActionBarSubmit(submitType) {
|
734
|
+
var _this$dropdownMenuPlu3;
|
764
735
|
if (submitType === 'accept') {
|
765
|
-
var
|
766
|
-
|
767
|
-
|
736
|
+
var selectedColumn = this.getSelectedColumn();
|
737
|
+
if (selectedColumn === null) {
|
738
|
+
var _this$dropdownMenuPlu2;
|
739
|
+
(_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 ? void 0 : _this$dropdownMenuPlu2.close();
|
740
|
+
return;
|
741
|
+
}
|
742
|
+
var physicalIndex = selectedColumn.physicalIndex;
|
768
743
|
var byConditionState1 = this.components.get('filter_by_condition').getState();
|
769
744
|
var byConditionState2 = this.components.get('filter_by_condition2').getState();
|
770
745
|
var byValueState = this.components.get('filter_by_value').getState();
|
771
746
|
var operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
|
772
747
|
this.conditionUpdateObserver.groupChanges();
|
773
748
|
var columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
|
774
|
-
|
775
749
|
if (columnStackPosition === -1) {
|
776
750
|
columnStackPosition = void 0;
|
777
751
|
}
|
778
|
-
|
779
752
|
this.conditionCollection.removeConditions(physicalIndex);
|
780
|
-
|
781
753
|
if (byConditionState1.command.key !== CONDITION_NONE) {
|
782
754
|
this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
|
783
|
-
|
784
755
|
if (byConditionState2.command.key !== CONDITION_NONE) {
|
785
756
|
this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
|
786
757
|
}
|
787
758
|
}
|
788
|
-
|
789
759
|
if (byValueState.command.key !== CONDITION_NONE) {
|
790
760
|
this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
|
791
761
|
}
|
792
|
-
|
793
762
|
this.conditionUpdateObserver.flush();
|
794
763
|
this.components.forEach(function (component) {
|
795
764
|
return component.saveState(physicalIndex);
|
@@ -797,11 +766,9 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
797
766
|
this.filtersRowsMap.clear();
|
798
767
|
this.filter();
|
799
768
|
}
|
800
|
-
|
801
|
-
if (this.dropdownMenuPlugin) {
|
802
|
-
this.dropdownMenuPlugin.close();
|
803
|
-
}
|
769
|
+
(_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 ? void 0 : _this$dropdownMenuPlu3.close();
|
804
770
|
}
|
771
|
+
|
805
772
|
/**
|
806
773
|
* On component change listener.
|
807
774
|
*
|
@@ -809,34 +776,32 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
809
776
|
* @param {BaseComponent} component Component inheriting BaseComponent.
|
810
777
|
* @param {object} command Menu item object (command).
|
811
778
|
*/
|
812
|
-
|
813
779
|
}, {
|
814
780
|
key: "onComponentChange",
|
815
781
|
value: function onComponentChange(component, command) {
|
816
782
|
this.updateDependentComponentsVisibility();
|
817
|
-
|
818
783
|
if (component.constructor === ConditionComponent && !command.inputsCount) {
|
819
784
|
this.setListeningDropdownMenu();
|
820
785
|
}
|
821
786
|
}
|
787
|
+
|
822
788
|
/**
|
823
789
|
* On component SelectUI closed listener.
|
824
790
|
*
|
825
791
|
* @private
|
826
792
|
*/
|
827
|
-
|
828
793
|
}, {
|
829
794
|
key: "onSelectUIClosed",
|
830
795
|
value: function onSelectUIClosed() {
|
831
796
|
this.setListeningDropdownMenu();
|
832
797
|
}
|
798
|
+
|
833
799
|
/**
|
834
800
|
* Listen to the keyboard input on document body and forward events to instance of Handsontable
|
835
801
|
* created by DropdownMenu plugin.
|
836
802
|
*
|
837
803
|
* @private
|
838
804
|
*/
|
839
|
-
|
840
805
|
}, {
|
841
806
|
key: "setListeningDropdownMenu",
|
842
807
|
value: function setListeningDropdownMenu() {
|
@@ -844,28 +809,26 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
844
809
|
this.dropdownMenuPlugin.setListening();
|
845
810
|
}
|
846
811
|
}
|
812
|
+
|
847
813
|
/**
|
848
814
|
* Updates visibility of some of the components, based on the state of the parent component.
|
849
815
|
*
|
850
816
|
* @private
|
851
817
|
*/
|
852
|
-
|
853
818
|
}, {
|
854
819
|
key: "updateDependentComponentsVisibility",
|
855
820
|
value: function updateDependentComponentsVisibility() {
|
856
821
|
var component = this.components.get('filter_by_condition');
|
857
|
-
|
858
822
|
var _component$getState = component.getState(),
|
859
|
-
|
860
|
-
|
823
|
+
command = _component$getState.command;
|
861
824
|
var componentsToShow = [this.components.get('filter_by_condition2'), this.components.get('filter_operators')];
|
862
|
-
|
863
825
|
if (command.showOperators) {
|
864
826
|
this.showComponents.apply(this, componentsToShow);
|
865
827
|
} else {
|
866
828
|
this.hideComponents.apply(this, componentsToShow);
|
867
829
|
}
|
868
830
|
}
|
831
|
+
|
869
832
|
/**
|
870
833
|
* On after get column header listener.
|
871
834
|
*
|
@@ -873,39 +836,17 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
873
836
|
* @param {number} col Visual column index.
|
874
837
|
* @param {HTMLTableCellElement} TH Header's TH element.
|
875
838
|
*/
|
876
|
-
|
877
839
|
}, {
|
878
840
|
key: "onAfterGetColHeader",
|
879
841
|
value: function onAfterGetColHeader(col, TH) {
|
880
842
|
var physicalColumn = this.hot.toPhysicalColumn(col);
|
881
|
-
|
882
843
|
if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
|
883
844
|
addClass(TH, 'htFiltersActive');
|
884
845
|
} else {
|
885
846
|
removeClass(TH, 'htFiltersActive');
|
886
847
|
}
|
887
848
|
}
|
888
|
-
/**
|
889
|
-
* On table click listener.
|
890
|
-
*
|
891
|
-
* @private
|
892
|
-
* @param {Event} event DOM Event.
|
893
|
-
*/
|
894
|
-
|
895
|
-
}, {
|
896
|
-
key: "onTableClick",
|
897
|
-
value: function onTableClick(event) {
|
898
|
-
var th = closest(event.target, 'TH');
|
899
849
|
|
900
|
-
if (th) {
|
901
|
-
var visualIndex = this.hot.getCoords(th).col;
|
902
|
-
var physicalIndex = this.hot.toPhysicalColumn(visualIndex);
|
903
|
-
this.lastSelectedColumn = {
|
904
|
-
visualIndex: visualIndex,
|
905
|
-
physicalIndex: physicalIndex
|
906
|
-
};
|
907
|
-
}
|
908
|
-
}
|
909
850
|
/**
|
910
851
|
* Creates DataFilter instance based on condition collection.
|
911
852
|
*
|
@@ -913,17 +854,16 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
913
854
|
* @param {ConditionCollection} conditionCollection Condition collection object.
|
914
855
|
* @returns {DataFilter}
|
915
856
|
*/
|
916
|
-
|
917
857
|
}, {
|
918
858
|
key: "_createDataFilter",
|
919
859
|
value: function _createDataFilter() {
|
920
|
-
var
|
921
|
-
|
860
|
+
var _this8 = this;
|
922
861
|
var conditionCollection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.conditionCollection;
|
923
862
|
return new DataFilter(conditionCollection, function (physicalColumn) {
|
924
|
-
return
|
863
|
+
return _this8.getDataMapAtColumn(physicalColumn);
|
925
864
|
});
|
926
865
|
}
|
866
|
+
|
927
867
|
/**
|
928
868
|
* It updates the components state. The state is triggered by ConditionUpdateObserver, which
|
929
869
|
* reacts to any condition added to the condition collection. It may be added through the UI
|
@@ -932,26 +872,22 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
932
872
|
* @private
|
933
873
|
* @param {object} conditionsState An object with the state generated by UI components.
|
934
874
|
*/
|
935
|
-
|
936
875
|
}, {
|
937
876
|
key: "updateComponents",
|
938
877
|
value: function updateComponents(conditionsState) {
|
939
|
-
var _this$
|
940
|
-
|
941
|
-
if (!((_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu2 !== void 0 && _this$dropdownMenuPlu2.enabled)) {
|
878
|
+
var _this$dropdownMenuPlu4;
|
879
|
+
if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
|
942
880
|
return;
|
943
881
|
}
|
944
|
-
|
945
882
|
var _conditionsState$edit = conditionsState.editedConditionStack,
|
946
|
-
|
947
|
-
|
883
|
+
conditions = _conditionsState$edit.conditions,
|
884
|
+
column = _conditionsState$edit.column;
|
948
885
|
var conditionsByValue = conditions.filter(function (condition) {
|
949
886
|
return condition.name === CONDITION_BY_VALUE;
|
950
887
|
});
|
951
888
|
var conditionsWithoutByValue = conditions.filter(function (condition) {
|
952
889
|
return condition.name !== CONDITION_BY_VALUE;
|
953
890
|
});
|
954
|
-
|
955
891
|
if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
|
956
892
|
warn(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."]))));
|
957
893
|
} else {
|
@@ -962,6 +898,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
962
898
|
this.components.get('filter_by_value').updateState(conditionsState);
|
963
899
|
}
|
964
900
|
}
|
901
|
+
|
965
902
|
/**
|
966
903
|
* Returns indexes of passed components inside list of `dropdownMenu` items.
|
967
904
|
*
|
@@ -969,22 +906,17 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
969
906
|
* @param {...BaseComponent} components List of components.
|
970
907
|
* @returns {Array}
|
971
908
|
*/
|
972
|
-
|
973
909
|
}, {
|
974
910
|
key: "getIndexesOfComponents",
|
975
911
|
value: function getIndexesOfComponents() {
|
976
912
|
var indexes = [];
|
977
|
-
|
978
913
|
if (!this.dropdownMenuPlugin) {
|
979
914
|
return indexes;
|
980
915
|
}
|
981
|
-
|
982
916
|
var menu = this.dropdownMenuPlugin.menu;
|
983
|
-
|
984
917
|
for (var _len = arguments.length, components = new Array(_len), _key = 0; _key < _len; _key++) {
|
985
918
|
components[_key] = arguments[_key];
|
986
919
|
}
|
987
|
-
|
988
920
|
arrayEach(components, function (component) {
|
989
921
|
arrayEach(menu.menuItems, function (item, index) {
|
990
922
|
if (item.key === component.getMenuItemDescriptor().key) {
|
@@ -994,6 +926,7 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
994
926
|
});
|
995
927
|
return indexes;
|
996
928
|
}
|
929
|
+
|
997
930
|
/**
|
998
931
|
* Changes visibility of component.
|
999
932
|
*
|
@@ -1001,88 +934,76 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1001
934
|
* @param {boolean} visible Determine if components should be visible.
|
1002
935
|
* @param {...BaseComponent} components List of components.
|
1003
936
|
*/
|
1004
|
-
|
1005
937
|
}, {
|
1006
938
|
key: "changeComponentsVisibility",
|
1007
939
|
value: function changeComponentsVisibility() {
|
1008
940
|
var visible = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
1009
|
-
|
1010
941
|
if (!this.dropdownMenuPlugin) {
|
1011
942
|
return;
|
1012
943
|
}
|
1013
|
-
|
1014
944
|
var menu = this.dropdownMenuPlugin.menu;
|
1015
945
|
var hotMenu = menu.hotMenu;
|
1016
946
|
var hiddenRows = hotMenu.getPlugin('hiddenRows');
|
1017
|
-
|
1018
947
|
for (var _len2 = arguments.length, components = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
1019
948
|
components[_key2 - 1] = arguments[_key2];
|
1020
949
|
}
|
1021
|
-
|
1022
950
|
var indexes = this.getIndexesOfComponents.apply(this, components);
|
1023
|
-
|
1024
951
|
if (visible) {
|
1025
952
|
hiddenRows.showRows(indexes);
|
1026
953
|
} else {
|
1027
954
|
hiddenRows.hideRows(indexes);
|
1028
955
|
}
|
1029
|
-
|
1030
956
|
hotMenu.render();
|
1031
957
|
}
|
958
|
+
|
1032
959
|
/**
|
1033
960
|
* Hides components of filters `dropdownMenu`.
|
1034
961
|
*
|
1035
962
|
* @private
|
1036
963
|
* @param {...BaseComponent} components List of components.
|
1037
964
|
*/
|
1038
|
-
|
1039
965
|
}, {
|
1040
966
|
key: "hideComponents",
|
1041
967
|
value: function hideComponents() {
|
1042
968
|
for (var _len3 = arguments.length, components = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
1043
969
|
components[_key3] = arguments[_key3];
|
1044
970
|
}
|
1045
|
-
|
1046
971
|
this.changeComponentsVisibility.apply(this, [false].concat(components));
|
1047
972
|
}
|
973
|
+
|
1048
974
|
/**
|
1049
975
|
* Shows components of filters `dropdownMenu`.
|
1050
976
|
*
|
1051
977
|
* @private
|
1052
978
|
* @param {...BaseComponent} components List of components.
|
1053
979
|
*/
|
1054
|
-
|
1055
980
|
}, {
|
1056
981
|
key: "showComponents",
|
1057
982
|
value: function showComponents() {
|
1058
983
|
for (var _len4 = arguments.length, components = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
1059
984
|
components[_key4] = arguments[_key4];
|
1060
985
|
}
|
1061
|
-
|
1062
986
|
this.changeComponentsVisibility.apply(this, [true].concat(components));
|
1063
987
|
}
|
988
|
+
|
1064
989
|
/**
|
1065
990
|
* Destroys the plugin instance.
|
1066
991
|
*/
|
1067
|
-
|
1068
992
|
}, {
|
1069
993
|
key: "destroy",
|
1070
994
|
value: function destroy() {
|
1071
|
-
var
|
1072
|
-
|
995
|
+
var _this9 = this;
|
1073
996
|
if (this.enabled) {
|
1074
997
|
this.components.forEach(function (component, key) {
|
1075
998
|
if (component !== null) {
|
1076
999
|
component.destroy();
|
1077
|
-
|
1078
|
-
_this10.components.set(key, null);
|
1000
|
+
_this9.components.set(key, null);
|
1079
1001
|
}
|
1080
1002
|
});
|
1081
1003
|
this.conditionCollection.destroy();
|
1082
1004
|
this.conditionUpdateObserver.destroy();
|
1083
1005
|
this.hot.rowIndexMapper.unregisterMap(this.pluginName);
|
1084
1006
|
}
|
1085
|
-
|
1086
1007
|
_get(_getPrototypeOf(Filters.prototype), "destroy", this).call(this);
|
1087
1008
|
}
|
1088
1009
|
}], [{
|
@@ -1101,6 +1022,5 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
1101
1022
|
return ['plugin:DropdownMenu', 'plugin:HiddenRows', 'cell-type:checkbox'];
|
1102
1023
|
}
|
1103
1024
|
}]);
|
1104
|
-
|
1105
1025
|
return Filters;
|
1106
1026
|
}(BasePlugin);
|