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