@syncfusion/ej2-dropdowns 26.2.11 → 27.1.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ej2-dropdowns.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js +2 -2
- package/dist/ej2-dropdowns.umd.min.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es2015.js +1548 -851
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +1441 -721
- package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
- package/dist/global/ej2-dropdowns.min.js +2 -2
- package/dist/global/ej2-dropdowns.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +15 -13
- package/src/auto-complete/auto-complete-model.d.ts +1 -1
- package/src/auto-complete/auto-complete.d.ts +2 -0
- package/src/auto-complete/auto-complete.js +52 -22
- package/src/combo-box/combo-box-model.d.ts +12 -5
- package/src/combo-box/combo-box.d.ts +10 -4
- package/src/combo-box/combo-box.js +74 -39
- package/src/common/incremental-search.d.ts +26 -11
- package/src/common/incremental-search.js +30 -16
- package/src/common/interface.d.ts +5 -5
- package/src/common/virtual-scroll.js +69 -36
- package/src/drop-down-base/drop-down-base-model.d.ts +1 -1
- package/src/drop-down-base/drop-down-base.d.ts +6 -2
- package/src/drop-down-base/drop-down-base.js +100 -67
- package/src/drop-down-list/drop-down-list-model.d.ts +14 -7
- package/src/drop-down-list/drop-down-list.d.ts +12 -4
- package/src/drop-down-list/drop-down-list.js +302 -177
- package/src/drop-down-tree/drop-down-tree-model.d.ts +19 -0
- package/src/drop-down-tree/drop-down-tree.d.ts +26 -2
- package/src/drop-down-tree/drop-down-tree.js +207 -69
- package/src/list-box/list-box.js +72 -36
- package/src/mention/mention.d.ts +8 -0
- package/src/mention/mention.js +88 -25
- package/src/multi-select/checkbox-selection.js +3 -2
- package/src/multi-select/interface.d.ts +1 -0
- package/src/multi-select/multi-select-model.d.ts +15 -8
- package/src/multi-select/multi-select.d.ts +15 -5
- package/src/multi-select/multi-select.js +444 -237
- package/styles/auto-complete/bootstrap-dark.css +0 -50
- package/styles/auto-complete/bootstrap.css +0 -50
- package/styles/auto-complete/bootstrap4.css +0 -68
- package/styles/auto-complete/bootstrap5-dark.css +0 -54
- package/styles/auto-complete/bootstrap5.3.css +101 -0
- package/styles/auto-complete/bootstrap5.3.scss +4 -0
- package/styles/auto-complete/bootstrap5.css +0 -54
- package/styles/auto-complete/fabric-dark.css +0 -49
- package/styles/auto-complete/fabric.css +0 -42
- package/styles/auto-complete/fluent-dark.css +0 -41
- package/styles/auto-complete/fluent.css +0 -41
- package/styles/auto-complete/fluent2.css +1 -36
- package/styles/auto-complete/highcontrast-light.css +0 -37
- package/styles/auto-complete/highcontrast.css +0 -37
- package/styles/auto-complete/material-dark.css +0 -34
- package/styles/auto-complete/material.css +0 -55
- package/styles/auto-complete/material3-dark.css +0 -59
- package/styles/auto-complete/material3.css +0 -59
- package/styles/auto-complete/tailwind-dark.css +0 -35
- package/styles/auto-complete/tailwind.css +0 -35
- package/styles/bootstrap-dark-lite.css +2752 -0
- package/styles/bootstrap-dark-lite.scss +28 -0
- package/styles/bootstrap-dark.css +651 -604
- package/styles/bootstrap-dark.scss +6 -1
- package/styles/bootstrap-lite.css +2751 -0
- package/styles/bootstrap-lite.scss +28 -0
- package/styles/bootstrap.css +657 -610
- package/styles/bootstrap.scss +6 -1
- package/styles/bootstrap4-lite.css +2856 -0
- package/styles/bootstrap4-lite.scss +28 -0
- package/styles/bootstrap4.css +828 -755
- package/styles/bootstrap4.scss +6 -1
- package/styles/bootstrap5-dark-lite.css +2827 -0
- package/styles/bootstrap5-dark-lite.scss +28 -0
- package/styles/bootstrap5-dark.css +702 -651
- package/styles/bootstrap5-dark.scss +6 -1
- package/styles/bootstrap5-lite.css +2827 -0
- package/styles/bootstrap5-lite.scss +28 -0
- package/styles/bootstrap5.3-lite.css +2821 -0
- package/styles/bootstrap5.3-lite.scss +28 -0
- package/styles/bootstrap5.3.css +3552 -0
- package/styles/bootstrap5.3.scss +33 -0
- package/styles/bootstrap5.css +702 -651
- package/styles/bootstrap5.scss +6 -1
- package/styles/combo-box/bootstrap-dark.css +0 -50
- package/styles/combo-box/bootstrap.css +0 -50
- package/styles/combo-box/bootstrap4.css +0 -68
- package/styles/combo-box/bootstrap5-dark.css +0 -54
- package/styles/combo-box/bootstrap5.3.css +101 -0
- package/styles/combo-box/bootstrap5.3.scss +4 -0
- package/styles/combo-box/bootstrap5.css +0 -54
- package/styles/combo-box/fabric-dark.css +0 -49
- package/styles/combo-box/fabric.css +0 -42
- package/styles/combo-box/fluent-dark.css +0 -41
- package/styles/combo-box/fluent.css +0 -41
- package/styles/combo-box/fluent2.css +1 -36
- package/styles/combo-box/highcontrast-light.css +0 -37
- package/styles/combo-box/highcontrast.css +0 -37
- package/styles/combo-box/material-dark.css +0 -34
- package/styles/combo-box/material.css +0 -55
- package/styles/combo-box/material3-dark.css +0 -59
- package/styles/combo-box/material3.css +0 -59
- package/styles/combo-box/tailwind-dark.css +0 -35
- package/styles/combo-box/tailwind.css +0 -35
- package/styles/drop-down-base/_bds-definition.scss +0 -22
- package/styles/drop-down-base/_bigger.scss +195 -0
- package/styles/drop-down-base/_bootstrap-dark-definition.scss +0 -5
- package/styles/drop-down-base/_bootstrap-definition.scss +0 -5
- package/styles/drop-down-base/_bootstrap4-definition.scss +0 -9
- package/styles/drop-down-base/_bootstrap5-definition.scss +0 -19
- package/styles/drop-down-base/_bootstrap5.3-definition.scss +2 -21
- package/styles/drop-down-base/_fabric-dark-definition.scss +0 -5
- package/styles/drop-down-base/_fabric-definition.scss +0 -5
- package/styles/drop-down-base/_fluent-definition.scss +0 -19
- package/styles/drop-down-base/_fluent2-definition.scss +2 -23
- package/styles/drop-down-base/_fusionnew-definition.scss +0 -19
- package/styles/drop-down-base/_highcontrast-definition.scss +0 -9
- package/styles/drop-down-base/_highcontrast-light-definition.scss +0 -9
- package/styles/drop-down-base/_layout.scss +1 -57
- package/styles/drop-down-base/_material-dark-definition.scss +0 -4
- package/styles/drop-down-base/_material-definition.scss +0 -4
- package/styles/drop-down-base/_material3-definition.scss +0 -3
- package/styles/drop-down-base/_tailwind-definition.scss +0 -22
- package/styles/drop-down-base/_theme.scss +10 -91
- package/styles/drop-down-base/bootstrap-dark.css +75 -75
- package/styles/drop-down-base/bootstrap-dark.scss +1 -0
- package/styles/drop-down-base/bootstrap.css +75 -75
- package/styles/drop-down-base/bootstrap.scss +1 -0
- package/styles/drop-down-base/bootstrap4.css +79 -79
- package/styles/drop-down-base/bootstrap4.scss +1 -0
- package/styles/drop-down-base/bootstrap5-dark.css +89 -89
- package/styles/drop-down-base/bootstrap5-dark.scss +1 -0
- package/styles/drop-down-base/bootstrap5.3.css +411 -0
- package/styles/drop-down-base/bootstrap5.3.scss +4 -0
- package/styles/drop-down-base/bootstrap5.css +89 -89
- package/styles/drop-down-base/bootstrap5.scss +1 -0
- package/styles/drop-down-base/fabric-dark.css +75 -75
- package/styles/drop-down-base/fabric-dark.scss +1 -0
- package/styles/drop-down-base/fabric.css +75 -75
- package/styles/drop-down-base/fabric.scss +1 -0
- package/styles/drop-down-base/fluent-dark.css +101 -101
- package/styles/drop-down-base/fluent-dark.scss +1 -0
- package/styles/drop-down-base/fluent.css +101 -101
- package/styles/drop-down-base/fluent.scss +1 -0
- package/styles/drop-down-base/fluent2.css +97 -95
- package/styles/drop-down-base/fluent2.scss +1 -0
- package/styles/drop-down-base/highcontrast-light.css +75 -77
- package/styles/drop-down-base/highcontrast-light.scss +1 -0
- package/styles/drop-down-base/highcontrast.css +75 -77
- package/styles/drop-down-base/highcontrast.scss +1 -0
- package/styles/drop-down-base/material-dark.css +74 -74
- package/styles/drop-down-base/material-dark.scss +1 -0
- package/styles/drop-down-base/material.css +74 -74
- package/styles/drop-down-base/material.scss +1 -0
- package/styles/drop-down-base/material3-dark.css +74 -74
- package/styles/drop-down-base/material3-dark.scss +1 -0
- package/styles/drop-down-base/material3.css +74 -74
- package/styles/drop-down-base/material3.scss +1 -0
- package/styles/drop-down-base/tailwind-dark.css +135 -135
- package/styles/drop-down-base/tailwind-dark.scss +1 -0
- package/styles/drop-down-base/tailwind.css +135 -135
- package/styles/drop-down-base/tailwind.scss +1 -0
- package/styles/drop-down-list/_bds-definition.scss +0 -34
- package/styles/drop-down-list/_bigger.scss +713 -0
- package/styles/drop-down-list/_bootstrap-dark-definition.scss +0 -64
- package/styles/drop-down-list/_bootstrap-definition.scss +0 -64
- package/styles/drop-down-list/_bootstrap4-definition.scss +0 -81
- package/styles/drop-down-list/_bootstrap5-definition.scss +0 -67
- package/styles/drop-down-list/_bootstrap5.3-definition.scss +1 -67
- package/styles/drop-down-list/_fabric-dark-definition.scss +0 -57
- package/styles/drop-down-list/_fabric-definition.scss +0 -56
- package/styles/drop-down-list/_fluent-definition.scss +0 -57
- package/styles/drop-down-list/_fluent2-definition.scss +2 -35
- package/styles/drop-down-list/_fusionnew-definition.scss +0 -67
- package/styles/drop-down-list/_highcontrast-definition.scss +0 -60
- package/styles/drop-down-list/_highcontrast-light-definition.scss +0 -60
- package/styles/drop-down-list/_layout.scss +4 -82
- package/styles/drop-down-list/_material-dark-definition.scss +0 -33
- package/styles/drop-down-list/_material-definition.scss +0 -55
- package/styles/drop-down-list/_material3-definition.scss +0 -58
- package/styles/drop-down-list/_tailwind-definition.scss +0 -34
- package/styles/drop-down-list/_theme.scss +7 -0
- package/styles/drop-down-list/bootstrap-dark.css +90 -91
- package/styles/drop-down-list/bootstrap-dark.scss +1 -0
- package/styles/drop-down-list/bootstrap.css +90 -91
- package/styles/drop-down-list/bootstrap.scss +1 -0
- package/styles/drop-down-list/bootstrap4.css +105 -105
- package/styles/drop-down-list/bootstrap4.scss +1 -0
- package/styles/drop-down-list/bootstrap5-dark.css +87 -101
- package/styles/drop-down-list/bootstrap5-dark.scss +1 -0
- package/styles/drop-down-list/bootstrap5.3.css +481 -0
- package/styles/drop-down-list/bootstrap5.3.scss +10 -0
- package/styles/drop-down-list/bootstrap5.css +87 -101
- package/styles/drop-down-list/bootstrap5.scss +1 -0
- package/styles/drop-down-list/fabric-dark.css +89 -90
- package/styles/drop-down-list/fabric-dark.scss +1 -0
- package/styles/drop-down-list/fabric.css +89 -83
- package/styles/drop-down-list/fabric.scss +1 -0
- package/styles/drop-down-list/fluent-dark.css +73 -88
- package/styles/drop-down-list/fluent-dark.scss +1 -0
- package/styles/drop-down-list/fluent.css +73 -88
- package/styles/drop-down-list/fluent.scss +1 -0
- package/styles/drop-down-list/fluent2.css +76 -93
- package/styles/drop-down-list/fluent2.scss +1 -0
- package/styles/drop-down-list/highcontrast-light.css +78 -80
- package/styles/drop-down-list/highcontrast-light.scss +1 -0
- package/styles/drop-down-list/highcontrast.css +79 -80
- package/styles/drop-down-list/highcontrast.scss +1 -0
- package/styles/drop-down-list/material-dark.css +73 -73
- package/styles/drop-down-list/material-dark.scss +1 -0
- package/styles/drop-down-list/material.css +94 -94
- package/styles/drop-down-list/material.scss +1 -0
- package/styles/drop-down-list/material3-dark.css +98 -98
- package/styles/drop-down-list/material3-dark.scss +1 -0
- package/styles/drop-down-list/material3.css +98 -98
- package/styles/drop-down-list/material3.scss +1 -0
- package/styles/drop-down-list/tailwind-dark.css +95 -78
- package/styles/drop-down-list/tailwind-dark.scss +1 -0
- package/styles/drop-down-list/tailwind.css +95 -78
- package/styles/drop-down-list/tailwind.scss +1 -0
- package/styles/drop-down-tree/_bigger.scss +522 -0
- package/styles/drop-down-tree/_bootstrap5.3-definition.scss +5 -5
- package/styles/drop-down-tree/_fluent2-definition.scss +5 -3
- package/styles/drop-down-tree/_layout.scss +15 -491
- package/styles/drop-down-tree/_theme.scss +16 -4
- package/styles/drop-down-tree/bootstrap-dark.css +32 -37
- package/styles/drop-down-tree/bootstrap-dark.scss +1 -0
- package/styles/drop-down-tree/bootstrap.css +32 -37
- package/styles/drop-down-tree/bootstrap.scss +1 -0
- package/styles/drop-down-tree/bootstrap4.css +38 -47
- package/styles/drop-down-tree/bootstrap4.scss +1 -0
- package/styles/drop-down-tree/bootstrap5-dark.css +36 -55
- package/styles/drop-down-tree/bootstrap5-dark.scss +1 -0
- package/styles/drop-down-tree/bootstrap5.3.css +460 -0
- package/styles/drop-down-tree/bootstrap5.3.scss +10 -0
- package/styles/drop-down-tree/bootstrap5.css +36 -55
- package/styles/drop-down-tree/bootstrap5.scss +1 -0
- package/styles/drop-down-tree/fabric-dark.css +32 -37
- package/styles/drop-down-tree/fabric-dark.scss +1 -0
- package/styles/drop-down-tree/fabric.css +32 -37
- package/styles/drop-down-tree/fabric.scss +1 -0
- package/styles/drop-down-tree/fluent-dark.css +32 -51
- package/styles/drop-down-tree/fluent-dark.scss +1 -0
- package/styles/drop-down-tree/fluent.css +32 -51
- package/styles/drop-down-tree/fluent.scss +1 -0
- package/styles/drop-down-tree/fluent2.css +38 -53
- package/styles/drop-down-tree/fluent2.scss +1 -0
- package/styles/drop-down-tree/highcontrast-light.css +32 -39
- package/styles/drop-down-tree/highcontrast-light.scss +1 -0
- package/styles/drop-down-tree/highcontrast.css +41 -48
- package/styles/drop-down-tree/highcontrast.scss +1 -0
- package/styles/drop-down-tree/material-dark.css +32 -36
- package/styles/drop-down-tree/material-dark.scss +1 -0
- package/styles/drop-down-tree/material.css +32 -36
- package/styles/drop-down-tree/material.scss +1 -0
- package/styles/drop-down-tree/material3-dark.css +33 -37
- package/styles/drop-down-tree/material3-dark.scss +1 -0
- package/styles/drop-down-tree/material3.css +33 -37
- package/styles/drop-down-tree/material3.scss +1 -0
- package/styles/drop-down-tree/tailwind-dark.css +51 -73
- package/styles/drop-down-tree/tailwind-dark.scss +1 -0
- package/styles/drop-down-tree/tailwind.css +51 -73
- package/styles/drop-down-tree/tailwind.scss +1 -0
- package/styles/fabric-dark-lite.css +2730 -0
- package/styles/fabric-dark-lite.scss +28 -0
- package/styles/fabric-dark.css +657 -604
- package/styles/fabric-dark.scss +6 -1
- package/styles/fabric-lite.css +2731 -0
- package/styles/fabric-lite.scss +28 -0
- package/styles/fabric.css +667 -607
- package/styles/fabric.scss +6 -1
- package/styles/fluent-dark-lite.css +2866 -0
- package/styles/fluent-dark-lite.scss +28 -0
- package/styles/fluent-dark.css +703 -678
- package/styles/fluent-dark.scss +6 -1
- package/styles/fluent-lite.css +2866 -0
- package/styles/fluent-lite.scss +28 -0
- package/styles/fluent.css +703 -678
- package/styles/fluent.scss +6 -1
- package/styles/fluent2-lite.css +3050 -0
- package/styles/fluent2-lite.scss +28 -0
- package/styles/fluent2.css +739 -672
- package/styles/fluent2.scss +6 -1
- package/styles/highcontrast-light-lite.css +2847 -0
- package/styles/highcontrast-light-lite.scss +28 -0
- package/styles/highcontrast-light.css +652 -602
- package/styles/highcontrast-light.scss +6 -1
- package/styles/highcontrast-lite.css +2870 -0
- package/styles/highcontrast-lite.scss +28 -0
- package/styles/highcontrast.css +670 -619
- package/styles/highcontrast.scss +6 -1
- package/styles/list-box/_bigger.scss +173 -0
- package/styles/list-box/_bootstrap5-definition.scss +1 -0
- package/styles/list-box/_bootstrap5.3-definition.scss +17 -14
- package/styles/list-box/_fluent2-definition.scss +2 -0
- package/styles/list-box/_layout.scss +15 -127
- package/styles/list-box/_theme.scss +14 -51
- package/styles/list-box/bootstrap-dark.css +121 -129
- package/styles/list-box/bootstrap-dark.scss +1 -0
- package/styles/list-box/bootstrap.css +127 -135
- package/styles/list-box/bootstrap.scss +1 -0
- package/styles/list-box/bootstrap4.css +171 -183
- package/styles/list-box/bootstrap4.scss +1 -0
- package/styles/list-box/bootstrap5-dark.css +127 -149
- package/styles/list-box/bootstrap5-dark.scss +1 -0
- package/styles/list-box/bootstrap5.3.css +950 -0
- package/styles/list-box/bootstrap5.3.scss +6 -0
- package/styles/list-box/bootstrap5.css +127 -149
- package/styles/list-box/bootstrap5.scss +1 -0
- package/styles/list-box/fabric-dark.css +121 -129
- package/styles/list-box/fabric-dark.scss +1 -0
- package/styles/list-box/fabric.css +127 -135
- package/styles/list-box/fabric.scss +1 -0
- package/styles/list-box/fluent-dark.css +127 -149
- package/styles/list-box/fluent-dark.scss +1 -0
- package/styles/list-box/fluent.css +127 -149
- package/styles/list-box/fluent.scss +1 -0
- package/styles/list-box/fluent2.css +121 -156
- package/styles/list-box/fluent2.scss +1 -0
- package/styles/list-box/highcontrast-light.css +121 -131
- package/styles/list-box/highcontrast-light.scss +1 -0
- package/styles/list-box/highcontrast.css +127 -137
- package/styles/list-box/highcontrast.scss +1 -0
- package/styles/list-box/material-dark.css +121 -128
- package/styles/list-box/material-dark.scss +1 -0
- package/styles/list-box/material.css +127 -134
- package/styles/list-box/material.scss +1 -0
- package/styles/list-box/material3-dark.css +121 -128
- package/styles/list-box/material3-dark.scss +1 -0
- package/styles/list-box/material3.css +121 -128
- package/styles/list-box/material3.scss +1 -0
- package/styles/list-box/tailwind-dark.css +137 -162
- package/styles/list-box/tailwind-dark.scss +1 -0
- package/styles/list-box/tailwind.css +137 -162
- package/styles/list-box/tailwind.scss +1 -0
- package/styles/material-dark-lite.css +3513 -0
- package/styles/material-dark-lite.scss +28 -0
- package/styles/material-dark.css +1265 -1157
- package/styles/material-dark.scss +6 -1
- package/styles/material-lite.css +3545 -0
- package/styles/material-lite.scss +28 -0
- package/styles/material.css +1305 -1197
- package/styles/material.scss +6 -1
- package/styles/material3-dark-lite.css +3459 -0
- package/styles/material3-dark-lite.scss +28 -0
- package/styles/material3-dark.css +1614 -1248
- package/styles/material3-dark.scss +6 -1
- package/styles/material3-lite.css +3461 -0
- package/styles/material3-lite.scss +28 -0
- package/styles/material3.css +1614 -1248
- package/styles/material3.scss +6 -1
- package/styles/mention/bootstrap-dark.css +0 -5
- package/styles/mention/bootstrap.css +0 -5
- package/styles/mention/bootstrap4.css +0 -9
- package/styles/mention/bootstrap5-dark.css +0 -19
- package/styles/mention/bootstrap5.3.css +67 -0
- package/styles/mention/bootstrap5.3.scss +6 -0
- package/styles/mention/bootstrap5.css +0 -19
- package/styles/mention/fabric-dark.css +0 -5
- package/styles/mention/fabric.css +0 -5
- package/styles/mention/fluent-dark.css +0 -19
- package/styles/mention/fluent.css +0 -19
- package/styles/mention/fluent2.css +0 -22
- package/styles/mention/highcontrast-light.css +0 -7
- package/styles/mention/highcontrast.css +0 -7
- package/styles/mention/material-dark.css +0 -4
- package/styles/mention/material.css +0 -4
- package/styles/mention/material3-dark.css +0 -4
- package/styles/mention/material3.css +0 -4
- package/styles/mention/tailwind-dark.css +0 -22
- package/styles/mention/tailwind.css +0 -22
- package/styles/multi-select/_bds-definition.scss +0 -5
- package/styles/multi-select/_bigger.scss +2002 -0
- package/styles/multi-select/_bootstrap-dark-definition.scss +0 -9
- package/styles/multi-select/_bootstrap-definition.scss +0 -9
- package/styles/multi-select/_bootstrap4-definition.scss +0 -44
- package/styles/multi-select/_bootstrap5-definition.scss +0 -5
- package/styles/multi-select/_bootstrap5.3-definition.scss +0 -5
- package/styles/multi-select/_fabric-dark-definition.scss +2 -4
- package/styles/multi-select/_fabric-definition.scss +2 -4
- package/styles/multi-select/_fluent-definition.scss +0 -10
- package/styles/multi-select/_fluent2-definition.scss +2 -5
- package/styles/multi-select/_fusionnew-definition.scss +0 -5
- package/styles/multi-select/_highcontrast-definition.scss +1 -2
- package/styles/multi-select/_highcontrast-light-definition.scss +1 -2
- package/styles/multi-select/_layout.scss +33 -934
- package/styles/multi-select/_tailwind-definition.scss +0 -5
- package/styles/multi-select/_theme.scss +13 -34
- package/styles/multi-select/bootstrap-dark.css +314 -273
- package/styles/multi-select/bootstrap-dark.scss +1 -0
- package/styles/multi-select/bootstrap.css +314 -273
- package/styles/multi-select/bootstrap.scss +1 -0
- package/styles/multi-select/bootstrap4.css +405 -347
- package/styles/multi-select/bootstrap4.scss +1 -0
- package/styles/multi-select/bootstrap5-dark.css +350 -320
- package/styles/multi-select/bootstrap5-dark.scss +1 -0
- package/styles/multi-select/bootstrap5.3.css +1424 -0
- package/styles/multi-select/bootstrap5.3.scss +10 -0
- package/styles/multi-select/bootstrap5.css +350 -320
- package/styles/multi-select/bootstrap5.scss +1 -0
- package/styles/multi-select/fabric-dark.css +320 -273
- package/styles/multi-select/fabric-dark.scss +1 -0
- package/styles/multi-select/fabric.css +320 -273
- package/styles/multi-select/fabric.scss +1 -0
- package/styles/multi-select/fluent-dark.css +366 -361
- package/styles/multi-select/fluent-dark.scss +1 -0
- package/styles/multi-select/fluent.css +366 -361
- package/styles/multi-select/fluent.scss +1 -0
- package/styles/multi-select/fluent2.css +399 -355
- package/styles/multi-select/fluent2.scss +1 -0
- package/styles/multi-select/highcontrast-light.css +321 -278
- package/styles/multi-select/highcontrast-light.scss +1 -0
- package/styles/multi-select/highcontrast.css +321 -278
- package/styles/multi-select/highcontrast.scss +1 -0
- package/styles/multi-select/icons/_bootstrap4.scss +0 -9
- package/styles/multi-select/icons/_fluent.scss +0 -21
- package/styles/multi-select/icons/_fluent2.scss +5 -354
- package/styles/multi-select/icons/_material-dark.scss +5 -354
- package/styles/multi-select/icons/_material.scss +5 -354
- package/styles/multi-select/icons/_material3.scss +5 -354
- package/styles/multi-select/material-dark.css +960 -857
- package/styles/multi-select/material-dark.scss +1 -0
- package/styles/multi-select/material.css +960 -857
- package/styles/multi-select/material.scss +1 -0
- package/styles/multi-select/material3-dark.css +1277 -916
- package/styles/multi-select/material3-dark.scss +1 -0
- package/styles/multi-select/material3.css +1277 -916
- package/styles/multi-select/material3.scss +1 -0
- package/styles/multi-select/tailwind-dark.css +351 -327
- package/styles/multi-select/tailwind-dark.scss +1 -0
- package/styles/multi-select/tailwind.css +351 -327
- package/styles/multi-select/tailwind.scss +1 -0
- package/styles/tailwind-dark-lite.css +2813 -0
- package/styles/tailwind-dark-lite.scss +28 -0
- package/styles/tailwind-dark.css +930 -848
- package/styles/tailwind-dark.scss +6 -1
- package/styles/tailwind-lite.css +2813 -0
- package/styles/tailwind-lite.scss +28 -0
- package/styles/tailwind.css +930 -848
- package/styles/tailwind.scss +6 -1
|
@@ -108,9 +108,6 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
108
108
|
_this.isSelectAllLoop = false;
|
|
109
109
|
_this.scrollFocusStatus = false;
|
|
110
110
|
_this.keyDownStatus = false;
|
|
111
|
-
_this.IsScrollerAtEnd = function () {
|
|
112
|
-
return this.list && this.list.scrollTop + this.list.clientHeight >= this.list.scrollHeight;
|
|
113
|
-
};
|
|
114
111
|
return _this;
|
|
115
112
|
}
|
|
116
113
|
MultiSelect.prototype.enableRTL = function (state) {
|
|
@@ -267,7 +264,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
267
264
|
if (_this.popupObj) {
|
|
268
265
|
_this.popupObj.show(eventArgs.animation, (_this.zIndex === 1000) ? _this.element : null);
|
|
269
266
|
}
|
|
270
|
-
attributes(_this.inputElement, {
|
|
267
|
+
attributes(_this.inputElement, {
|
|
268
|
+
'aria-expanded': 'true', 'aria-owns': _this.element.id + '_popup', 'aria-controls': _this.element.id
|
|
269
|
+
});
|
|
271
270
|
_this.updateAriaActiveDescendant();
|
|
272
271
|
if (_this.isFirstClick) {
|
|
273
272
|
if (!_this.enableVirtualization) {
|
|
@@ -336,7 +335,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
336
335
|
MultiSelect.prototype.setScrollPosition = function () {
|
|
337
336
|
if (((!this.hideSelectedItem && this.mode !== 'CheckBox') || (this.mode === 'CheckBox' && !this.enableSelectionOrder)) &&
|
|
338
337
|
(!isNullOrUndefined(this.value) && (this.value.length > 0))) {
|
|
339
|
-
var value = this.allowObjectBinding
|
|
338
|
+
var value = this.allowObjectBinding
|
|
339
|
+
? getValue((this.fields.value) ? this.fields.value : '', this.value[this.value.length - 1])
|
|
340
|
+
: this.value[this.value.length - 1];
|
|
340
341
|
var valueEle = this.findListElement((this.hideSelectedItem ? this.ulElement : this.list), 'li', 'data-value', value);
|
|
341
342
|
if (!isNullOrUndefined(valueEle)) {
|
|
342
343
|
this.scrollBottom(valueEle);
|
|
@@ -393,7 +394,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
393
394
|
}
|
|
394
395
|
else {
|
|
395
396
|
if (this.value && this.value.length) {
|
|
396
|
-
var value = this.allowObjectBinding
|
|
397
|
+
var value = this.allowObjectBinding
|
|
398
|
+
? getValue((this.fields.value) ? this.fields.value : '', this.value[this.value.length - 1])
|
|
399
|
+
: this.value[this.value.length - 1];
|
|
397
400
|
Search(value, this.liCollections, 'StartsWith', this.ignoreCase);
|
|
398
401
|
}
|
|
399
402
|
else {
|
|
@@ -402,7 +405,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
402
405
|
}
|
|
403
406
|
if (activeElement && activeElement.item !== null) {
|
|
404
407
|
this.addListFocus(activeElement.item);
|
|
405
|
-
if (((this.allowCustomValue || this.allowFiltering) && this.isPopupOpen() &&
|
|
408
|
+
if (((this.allowCustomValue || this.allowFiltering) && this.isPopupOpen() &&
|
|
409
|
+
this.closePopupOnSelect && !this.enableVirtualization) || this.closePopupOnSelect && !this.enableVirtualization) {
|
|
406
410
|
this.scrollBottom(activeElement.item, activeElement.index);
|
|
407
411
|
}
|
|
408
412
|
}
|
|
@@ -417,7 +421,12 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
417
421
|
};
|
|
418
422
|
MultiSelect.prototype.updateListARIA = function () {
|
|
419
423
|
if (!isNullOrUndefined(this.ulElement)) {
|
|
420
|
-
attributes(this.ulElement, {
|
|
424
|
+
attributes(this.ulElement, {
|
|
425
|
+
'id': this.element.id + '_options',
|
|
426
|
+
'role': 'listbox',
|
|
427
|
+
'aria-hidden': 'false',
|
|
428
|
+
'aria-label': 'list'
|
|
429
|
+
});
|
|
421
430
|
}
|
|
422
431
|
var disableStatus = !isNullOrUndefined(this.inputElement) && (this.inputElement.disabled) ? true : false;
|
|
423
432
|
if (!this.isPopupOpen() && !isNullOrUndefined(this.inputElement)) {
|
|
@@ -446,7 +455,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
446
455
|
if (!isNullOrUndefined(this.value)) {
|
|
447
456
|
this.tempValues = this.allowObjectBinding ? this.value.slice() : this.value.slice();
|
|
448
457
|
}
|
|
449
|
-
var customValue = this.allowObjectBinding ?
|
|
458
|
+
var customValue = this.allowObjectBinding ?
|
|
459
|
+
this.getDataByValue(this.getFormattedValue(value)) : this.getFormattedValue(value);
|
|
450
460
|
if (this.allowCustomValue && (value !== 'false' && customValue === false || (!isNullOrUndefined(customValue) &&
|
|
451
461
|
customValue.toString() === 'NaN'))) {
|
|
452
462
|
customValue = value;
|
|
@@ -478,7 +488,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
478
488
|
if (this.enableVirtualization && valuecheck) {
|
|
479
489
|
if (isCheckbox) {
|
|
480
490
|
for (var i = 0; i < valuecheck.length; i++) {
|
|
481
|
-
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
491
|
+
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
492
|
+
this.fields.value : '', valuecheck[i]) : valuecheck[i];
|
|
482
493
|
if (i === 0) {
|
|
483
494
|
predicate = new Predicate(field, 'equal', (value));
|
|
484
495
|
}
|
|
@@ -490,7 +501,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
490
501
|
}
|
|
491
502
|
else {
|
|
492
503
|
for (var i = 0; i < valuecheck.length; i++) {
|
|
493
|
-
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
504
|
+
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
505
|
+
this.fields.value : '', valuecheck[i]) : valuecheck[i];
|
|
494
506
|
if (i === 0) {
|
|
495
507
|
predicate = new Predicate(field, 'notequal', (value));
|
|
496
508
|
}
|
|
@@ -526,13 +538,17 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
526
538
|
}
|
|
527
539
|
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
528
540
|
_super.prototype.onActionComplete.call(this, ulElement, list, e);
|
|
529
|
-
this.skeletonCount = this.totalItemCount
|
|
541
|
+
this.skeletonCount = this.totalItemCount !== 0 && this.totalItemCount < (this.itemCount * 2) &&
|
|
542
|
+
((!(this.dataSource instanceof DataManager)) ||
|
|
543
|
+
((this.dataSource instanceof DataManager) && (this.totalItemCount <= this.itemCount))) ? 0 : this.skeletonCount;
|
|
530
544
|
this.updateSelectElementData(this.allowFiltering);
|
|
531
545
|
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
532
546
|
var proxy = this;
|
|
533
|
-
if (!isNullOrUndefined(this.value) && !this.allowCustomValue && !this.enableVirtualization &&
|
|
547
|
+
if (!isNullOrUndefined(this.value) && !this.allowCustomValue && !this.enableVirtualization &&
|
|
548
|
+
this.listData && this.listData.length > 0) {
|
|
534
549
|
for (var i = 0; i < this.value.length; i++) {
|
|
535
|
-
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
550
|
+
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
551
|
+
this.fields.value : '', proxy.value[i]) : proxy.value[i];
|
|
536
552
|
var checkEle = this.findListElement(((this.allowFiltering && !isNullOrUndefined(this.mainList)) ? this.mainList : ulElement), 'li', 'data-value', value);
|
|
537
553
|
if (!checkEle && !(this.dataSource instanceof DataManager)) {
|
|
538
554
|
this.value.splice(i, 1);
|
|
@@ -551,7 +567,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
551
567
|
else {
|
|
552
568
|
this.updateActionList(ulElement, list, e);
|
|
553
569
|
}
|
|
554
|
-
if (this.dataSource instanceof DataManager && this.allowCustomValue && !this.isCustomRendered &&
|
|
570
|
+
if (this.dataSource instanceof DataManager && this.allowCustomValue && !this.isCustomRendered &&
|
|
571
|
+
this.inputElement.value && this.inputElement.value !== '') {
|
|
555
572
|
var query = new Query();
|
|
556
573
|
query = this.allowFiltering ? query.where(this.fields.text, 'startswith', this.inputElement.value, this.ignoreCase, this.ignoreAccent) : query;
|
|
557
574
|
this.checkForCustomValue(query, this.fields);
|
|
@@ -586,7 +603,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
586
603
|
return;
|
|
587
604
|
}
|
|
588
605
|
}
|
|
589
|
-
if (this.value && this.value.length && ((this.mode !== 'CheckBox' && !isNullOrUndefined(this.inputElement) &&
|
|
606
|
+
if (this.value && this.value.length && ((this.mode !== 'CheckBox' && !isNullOrUndefined(this.inputElement) &&
|
|
607
|
+
this.inputElement.value.trim() !== '') ||
|
|
590
608
|
this.mode === 'CheckBox' || ((this.keyCode === 8 || this.keyCode === 46) && this.allowFiltering &&
|
|
591
609
|
this.allowCustomValue && this.dataSource instanceof DataManager && this.inputElement.value === ''))) {
|
|
592
610
|
this.refreshSelection();
|
|
@@ -627,7 +645,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
627
645
|
dropDownBaseClasses.selected;
|
|
628
646
|
if (!isNullOrUndefined(this.value)) {
|
|
629
647
|
for (var index = 0; !isNullOrUndefined(this.value[index]); index++) {
|
|
630
|
-
value = this.allowObjectBinding ? getValue((this.fields.value) ? this.fields.value : '', this.value[index]) :
|
|
648
|
+
value = this.allowObjectBinding ? getValue((this.fields.value) ? this.fields.value : '', this.value[index]) :
|
|
649
|
+
this.value[index];
|
|
631
650
|
element = this.findListElement(this.list, 'li', 'data-value', value);
|
|
632
651
|
if (element) {
|
|
633
652
|
addClass([element], className);
|
|
@@ -732,10 +751,12 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
732
751
|
searchActiveCount = searchActiveCount - groupItemLength;
|
|
733
752
|
}
|
|
734
753
|
if ((!this.enableVirtualization && ((searchCount === searchActiveCount || searchActiveCount === this.maximumSelectionLength)
|
|
735
|
-
&& (this.mode === 'CheckBox' && this.showSelectAll))) || (this.enableVirtualization && this.mode === 'CheckBox' &&
|
|
754
|
+
&& (this.mode === 'CheckBox' && this.showSelectAll))) || (this.enableVirtualization && this.mode === 'CheckBox' &&
|
|
755
|
+
this.showSelectAll && this.virtualSelectAll && this.value && this.value.length === this.totalItemCount)) {
|
|
736
756
|
this.notify('checkSelectAll', { module: 'CheckBoxSelection', enable: this.mode === 'CheckBox', value: 'check' });
|
|
737
757
|
}
|
|
738
|
-
else if ((searchCount !== searchActiveCount) && (this.mode === 'CheckBox' && this.showSelectAll) &&
|
|
758
|
+
else if ((searchCount !== searchActiveCount) && (this.mode === 'CheckBox' && this.showSelectAll) &&
|
|
759
|
+
((!this.enableVirtualization) || (this.enableVirtualization && !this.virtualSelectAll))) {
|
|
739
760
|
this.notify('checkSelectAll', { module: 'CheckBoxSelection', enable: this.mode === 'CheckBox', value: 'uncheck' });
|
|
740
761
|
}
|
|
741
762
|
if (this.enableGroupCheckBox && this.fields.groupBy && !this.enableSelectionOrder) {
|
|
@@ -804,27 +825,30 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
804
825
|
}
|
|
805
826
|
}
|
|
806
827
|
if (this.filterAction) {
|
|
807
|
-
if ((this.targetElement() !== null && !this.enableVirtualization) || (this.enableVirtualization &&
|
|
828
|
+
if ((this.targetElement() !== null && !this.enableVirtualization) || (this.enableVirtualization &&
|
|
829
|
+
this.targetElement() !== null && this.targetElement().trim() !== '')) {
|
|
808
830
|
var dataType = this.typeOfData(this.dataSource).typeof;
|
|
809
831
|
if (!(this.dataSource instanceof DataManager) && dataType === 'string' || dataType === 'number') {
|
|
810
832
|
filterQuery.where('', this.filterType, this.targetElement(), this.ignoreCase, this.ignoreAccent);
|
|
811
833
|
}
|
|
812
|
-
else if ((this.enableVirtualization && this.targetElement() !==
|
|
834
|
+
else if ((this.enableVirtualization && this.targetElement() !== '') || !this.enableVirtualization) {
|
|
813
835
|
var fields = this.fields;
|
|
814
836
|
filterQuery.where(!isNullOrUndefined(fields.text) ? fields.text : '', this.filterType, this.targetElement(), this.ignoreCase, this.ignoreAccent);
|
|
815
837
|
}
|
|
816
838
|
}
|
|
817
|
-
if (this.enableVirtualization && (this.viewPortInfo.endIndex
|
|
839
|
+
if (this.enableVirtualization && (this.viewPortInfo.endIndex !== 0) && !this.virtualSelectAll) {
|
|
818
840
|
return this.virtualFilterQuery(filterQuery);
|
|
819
841
|
}
|
|
820
842
|
return filterQuery;
|
|
821
843
|
}
|
|
822
844
|
else {
|
|
823
|
-
if (this.enableVirtualization && (this.viewPortInfo.endIndex
|
|
845
|
+
if (this.enableVirtualization && (this.viewPortInfo.endIndex !== 0) && !this.virtualSelectAll) {
|
|
824
846
|
return this.virtualFilterQuery(filterQuery);
|
|
825
847
|
}
|
|
826
848
|
if (this.virtualSelectAll) {
|
|
827
|
-
return query ? query.take(this.maximumSelectionLength).requiresCount() : this.query ?
|
|
849
|
+
return query ? query.take(this.maximumSelectionLength).requiresCount() : this.query ?
|
|
850
|
+
this.query.take(this.maximumSelectionLength).requiresCount() :
|
|
851
|
+
new Query().take(this.maximumSelectionLength).requiresCount();
|
|
828
852
|
}
|
|
829
853
|
return query ? query : this.query ? this.query : new Query();
|
|
830
854
|
}
|
|
@@ -835,7 +859,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
835
859
|
var isSkip = true;
|
|
836
860
|
var isTake = true;
|
|
837
861
|
for (var queryElements = 0; queryElements < filterQuery.queries.length; queryElements++) {
|
|
838
|
-
if (this.getModuleName() === 'multiselect' && ((filterQuery.queries[queryElements].e &&
|
|
862
|
+
if (this.getModuleName() === 'multiselect' && ((filterQuery.queries[queryElements].e &&
|
|
863
|
+
filterQuery.queries[queryElements].e.condition === 'or') || (filterQuery.queries[queryElements].e &&
|
|
864
|
+
filterQuery.queries[queryElements].e.operator === 'equal'))) {
|
|
839
865
|
isReOrder = false;
|
|
840
866
|
}
|
|
841
867
|
if (filterQuery.queries[queryElements].fn === 'onSkip') {
|
|
@@ -849,21 +875,24 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
849
875
|
if (filterQuery && filterQuery.queries.length > 0) {
|
|
850
876
|
for (var queryElements = 0; queryElements < filterQuery.queries.length; queryElements++) {
|
|
851
877
|
if (filterQuery.queries[queryElements].fn === 'onTake') {
|
|
852
|
-
queryTakeValue = takeValue <= filterQuery.queries[queryElements].e.nos ?
|
|
878
|
+
queryTakeValue = takeValue <= filterQuery.queries[queryElements].e.nos ?
|
|
879
|
+
filterQuery.queries[queryElements].e.nos : takeValue;
|
|
853
880
|
}
|
|
854
881
|
}
|
|
855
882
|
}
|
|
856
883
|
if (queryTakeValue <= 0 && this.query && this.query.queries.length > 0) {
|
|
857
884
|
for (var queryElements = 0; queryElements < this.query.queries.length; queryElements++) {
|
|
858
885
|
if (this.query.queries[queryElements].fn === 'onTake') {
|
|
859
|
-
queryTakeValue = takeValue <= this.query.queries[queryElements].e.nos ?
|
|
886
|
+
queryTakeValue = takeValue <= this.query.queries[queryElements].e.nos ?
|
|
887
|
+
this.query.queries[queryElements].e.nos : takeValue;
|
|
860
888
|
}
|
|
861
889
|
}
|
|
862
890
|
}
|
|
863
891
|
if (filterQuery && filterQuery.queries.length > 0) {
|
|
864
892
|
for (var queryElements = 0; queryElements < filterQuery.queries.length; queryElements++) {
|
|
865
893
|
if (filterQuery.queries[queryElements].fn === 'onTake') {
|
|
866
|
-
queryTakeValue = filterQuery.queries[queryElements].e.nos <= queryTakeValue ?
|
|
894
|
+
queryTakeValue = filterQuery.queries[queryElements].e.nos <= queryTakeValue ?
|
|
895
|
+
queryTakeValue : filterQuery.queries[queryElements].e.nos;
|
|
867
896
|
filterQuery.queries.splice(queryElements, 1);
|
|
868
897
|
--queryElements;
|
|
869
898
|
}
|
|
@@ -896,10 +925,11 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
896
925
|
this.isDataFetched = false;
|
|
897
926
|
var isNoData = this.list.classList.contains(dropDownBaseClasses.noData);
|
|
898
927
|
if (this.targetElement().trim() === '') {
|
|
899
|
-
var list = this.enableVirtualization ? this.list.cloneNode(true) : this.mainList.cloneNode ?
|
|
928
|
+
var list = this.enableVirtualization ? this.list.cloneNode(true) : this.mainList.cloneNode ?
|
|
929
|
+
this.mainList.cloneNode(true) : this.mainList;
|
|
900
930
|
if (this.backCommand) {
|
|
901
931
|
this.remoteCustomValue = false;
|
|
902
|
-
if (this.allowCustomValue && list.querySelectorAll('li').length
|
|
932
|
+
if (this.allowCustomValue && list.querySelectorAll('li').length === 0 && this.mainData.length > 0) {
|
|
903
933
|
this.mainData = [];
|
|
904
934
|
}
|
|
905
935
|
if (this.enableVirtualization) {
|
|
@@ -907,7 +937,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
907
937
|
this.totalItemCount = this.dataSource && this.dataSource.length ? this.dataSource.length : 0;
|
|
908
938
|
this.resetList(dataSource, fields, query);
|
|
909
939
|
if (this.mode !== 'CheckBox') {
|
|
910
|
-
this.totalItemCount = this.value && this.value.length ? this.totalItemCount - this.value.length :
|
|
940
|
+
this.totalItemCount = this.value && this.value.length ? this.totalItemCount - this.value.length :
|
|
941
|
+
this.totalItemCount;
|
|
911
942
|
}
|
|
912
943
|
this.UpdateSkeleton();
|
|
913
944
|
if ((isNoData || this.allowCustomValue) && !this.list.classList.contains(dropDownBaseClasses.noData)) {
|
|
@@ -921,7 +952,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
921
952
|
var virualElement = this.createElement('div', {
|
|
922
953
|
id: this.element.id + '_popup', className: 'e-virtual-ddl', styles: this.GetVirtualTrackHeight()
|
|
923
954
|
});
|
|
924
|
-
document.getElementsByClassName('e-
|
|
955
|
+
document.getElementsByClassName('e-multi-select-list-wrapper')[0].querySelector('.e-dropdownbase').appendChild(virualElement);
|
|
925
956
|
}
|
|
926
957
|
}
|
|
927
958
|
}
|
|
@@ -943,7 +974,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
943
974
|
this.virtualListInfo = null;
|
|
944
975
|
}
|
|
945
976
|
this.resetList(dataSource, fields, query);
|
|
946
|
-
if (this.enableVirtualization && (isNoData || this.allowCustomValue) &&
|
|
977
|
+
if (this.enableVirtualization && (isNoData || this.allowCustomValue) &&
|
|
978
|
+
!this.list.classList.contains(dropDownBaseClasses.noData)) {
|
|
947
979
|
if (!this.list.querySelector('.e-virtual-ddl-content')) {
|
|
948
980
|
this.list.appendChild(this.createElement('div', {
|
|
949
981
|
className: 'e-virtual-ddl-content',
|
|
@@ -957,7 +989,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
957
989
|
var virualElement = this.createElement('div', {
|
|
958
990
|
id: this.element.id + '_popup', className: 'e-virtual-ddl', styles: this.GetVirtualTrackHeight()
|
|
959
991
|
});
|
|
960
|
-
document.getElementsByClassName('e-
|
|
992
|
+
document.getElementsByClassName('e-multi-select-list-wrapper')[0].querySelector('.e-dropdownbase').appendChild(virualElement);
|
|
961
993
|
}
|
|
962
994
|
}
|
|
963
995
|
if (this.allowCustomValue) {
|
|
@@ -997,16 +1029,19 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
997
1029
|
}
|
|
998
1030
|
var emptyObject_1 = {};
|
|
999
1031
|
if (this.allowObjectBinding) {
|
|
1000
|
-
var keys = this.listData && this.listData.length > 0 ? Object.keys(this.listData[0]) : this.firstItem ?
|
|
1032
|
+
var keys = this.listData && this.listData.length > 0 ? Object.keys(this.listData[0]) : this.firstItem ?
|
|
1033
|
+
Object.keys(this.firstItem) : Object.keys(dataItem_1);
|
|
1001
1034
|
// Create an empty object with predefined keys
|
|
1002
1035
|
keys.forEach(function (key) {
|
|
1003
|
-
emptyObject_1[key] = ((key === fields.value) || (key === fields.text)) ?
|
|
1036
|
+
emptyObject_1[key] = ((key === fields.value) || (key === fields.text)) ?
|
|
1037
|
+
getValue(fields.value, dataItem_1) : null;
|
|
1004
1038
|
});
|
|
1005
1039
|
}
|
|
1006
1040
|
dataItem_1 = this.allowObjectBinding ? emptyObject_1 : dataItem_1;
|
|
1007
1041
|
if (this.enableVirtualization) {
|
|
1008
1042
|
this.virtualCustomData = dataItem_1;
|
|
1009
|
-
var tempData = this.dataSource instanceof DataManager ?
|
|
1043
|
+
var tempData = this.dataSource instanceof DataManager ?
|
|
1044
|
+
JSON.parse(JSON.stringify(this.listData)) : JSON.parse(JSON.stringify(this.dataSource));
|
|
1010
1045
|
var totalData = [];
|
|
1011
1046
|
if (this.virtualCustomSelectData && this.virtualCustomSelectData.length > 0) {
|
|
1012
1047
|
totalData = tempData.concat(this.virtualCustomSelectData);
|
|
@@ -1018,7 +1053,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1018
1053
|
this.viewPortInfo.endIndex = this.virtualItemEndIndex = this.itemCount;
|
|
1019
1054
|
this.resetList(tempData, field, query);
|
|
1020
1055
|
this.isCustomDataUpdated = false;
|
|
1021
|
-
this.totalItemCount = this.enableVirtualization && this.dataSource instanceof DataManager ?
|
|
1056
|
+
this.totalItemCount = this.enableVirtualization && this.dataSource instanceof DataManager ?
|
|
1057
|
+
tempCount : this.totalItemCount;
|
|
1022
1058
|
}
|
|
1023
1059
|
else {
|
|
1024
1060
|
if (this.dataSource instanceof DataManager && this.allowCustomValue && this.allowFiltering) {
|
|
@@ -1199,7 +1235,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1199
1235
|
this.checkPlaceholderSize();
|
|
1200
1236
|
Input.createSpanElement(this.overAllWrapper, this.createElement);
|
|
1201
1237
|
this.calculateWidth();
|
|
1202
|
-
if (!isNullOrUndefined(this.overAllWrapper) && !isNullOrUndefined(this.overAllWrapper.getElementsByClassName('e-ddl-icon')[0] &&
|
|
1238
|
+
if (!isNullOrUndefined(this.overAllWrapper) && !isNullOrUndefined(this.overAllWrapper.getElementsByClassName('e-ddl-icon')[0] &&
|
|
1239
|
+
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0] && this.floatLabelType !== 'Never')) {
|
|
1203
1240
|
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0].classList.add('e-icon');
|
|
1204
1241
|
}
|
|
1205
1242
|
};
|
|
@@ -1207,12 +1244,13 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1207
1244
|
var elementWidth;
|
|
1208
1245
|
if (this.overAllWrapper) {
|
|
1209
1246
|
if (!this.showDropDownIcon || this.overAllWrapper.querySelector('.' + 'e-label-top')) {
|
|
1210
|
-
elementWidth = this.overAllWrapper.clientWidth - 2 * (parseInt(getComputedStyle(this.inputElement).paddingRight));
|
|
1247
|
+
elementWidth = this.overAllWrapper.clientWidth - 2 * (parseInt(getComputedStyle(this.inputElement).paddingRight, 10));
|
|
1211
1248
|
}
|
|
1212
1249
|
else {
|
|
1213
1250
|
var downIconWidth = this.dropIcon.offsetWidth +
|
|
1214
|
-
parseInt(getComputedStyle(this.dropIcon).marginRight);
|
|
1215
|
-
elementWidth = this.overAllWrapper.clientWidth -
|
|
1251
|
+
parseInt(getComputedStyle(this.dropIcon).marginRight, 10);
|
|
1252
|
+
elementWidth = this.overAllWrapper.clientWidth -
|
|
1253
|
+
(downIconWidth + 2 * (parseInt(getComputedStyle(this.inputElement).paddingRight, 10)));
|
|
1216
1254
|
}
|
|
1217
1255
|
if (this.floatLabelType !== 'Never') {
|
|
1218
1256
|
Input.calculateWidth(elementWidth, this.overAllWrapper, this.getModuleName());
|
|
@@ -1297,11 +1335,14 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1297
1335
|
}
|
|
1298
1336
|
};
|
|
1299
1337
|
MultiSelect.prototype.pageUpSelection = function (steps, isVirtualKeyAction) {
|
|
1300
|
-
var collection = this.list.querySelectorAll('li.'
|
|
1301
|
-
|
|
1338
|
+
var collection = this.list.querySelectorAll('li.' + dropDownBaseClasses.li +
|
|
1339
|
+
':not(.' + HIDE_LIST + ')' +
|
|
1340
|
+
':not(.e-reorder-hide)');
|
|
1302
1341
|
var previousItem = steps >= 0 ? collection[steps + 1] : collection[0];
|
|
1303
1342
|
if (this.enableVirtualization && isVirtualKeyAction) {
|
|
1304
|
-
previousItem = (this.liCollections.length >= steps && steps >= 0)
|
|
1343
|
+
previousItem = (this.liCollections.length >= steps && steps >= 0)
|
|
1344
|
+
? this.liCollections[steps]
|
|
1345
|
+
: this.liCollections[this.skeletonCount];
|
|
1305
1346
|
}
|
|
1306
1347
|
if (!isNullOrUndefined(previousItem) && previousItem.classList.contains('e-virtual-list')) {
|
|
1307
1348
|
previousItem = this.liCollections[this.skeletonCount];
|
|
@@ -1312,7 +1353,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1312
1353
|
this.addListFocus(previousItem);
|
|
1313
1354
|
this.scrollTop(previousItem, this.getIndexByValue(previousItem.getAttribute('data-value')), this.keyboardEvent.keyCode);
|
|
1314
1355
|
}
|
|
1315
|
-
else if (this.viewPortInfo.startIndex
|
|
1356
|
+
else if (this.viewPortInfo.startIndex === 0) {
|
|
1316
1357
|
this.isKeyBoardAction = true;
|
|
1317
1358
|
this.scrollTop(previousItem, this.getIndexByValue(previousItem.getAttribute('data-value')), this.keyboardEvent.keyCode);
|
|
1318
1359
|
}
|
|
@@ -1325,7 +1366,6 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1325
1366
|
}
|
|
1326
1367
|
};
|
|
1327
1368
|
MultiSelect.prototype.pageDownSelection = function (steps, isVirtualKeyAction) {
|
|
1328
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
1329
1369
|
var list = this.getItems();
|
|
1330
1370
|
var collection = this.list.querySelectorAll('li.'
|
|
1331
1371
|
+ dropDownBaseClasses.li + ':not(.' + HIDE_LIST + ')' + ':not(.e-reorder-hide)');
|
|
@@ -1407,7 +1447,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1407
1447
|
var size = 5;
|
|
1408
1448
|
if (this.placeholder) {
|
|
1409
1449
|
var codePoint = this.placeholder.charCodeAt(0);
|
|
1410
|
-
var sizeMultiplier = (0xAC00 <= codePoint && codePoint <= 0xD7AF) ? 1.5
|
|
1450
|
+
var sizeMultiplier = (0xAC00 <= codePoint && codePoint <= 0xD7AF) ? 1.5
|
|
1451
|
+
: (0x4E00 <= codePoint && codePoint <= 0x9FFF) ? 2 : 1;
|
|
1411
1452
|
size = size > this.inputElement.placeholder.length ? size : this.inputElement.placeholder.length * sizeMultiplier;
|
|
1412
1453
|
}
|
|
1413
1454
|
if (this.inputElement.value.length > size) {
|
|
@@ -1453,9 +1494,11 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1453
1494
|
this.inputElement.setAttribute('aria-activedescendant', focusedItem.id);
|
|
1454
1495
|
if (this.allowFiltering) {
|
|
1455
1496
|
var filterInput = this.popupWrapper.querySelector('.' + FILTERINPUT);
|
|
1456
|
-
|
|
1497
|
+
if (filterInput) {
|
|
1498
|
+
filterInput.setAttribute('aria-activedescendant', focusedItem.id);
|
|
1499
|
+
}
|
|
1457
1500
|
}
|
|
1458
|
-
else if (this.mode
|
|
1501
|
+
else if (this.mode === 'CheckBox') {
|
|
1459
1502
|
this.overAllWrapper.setAttribute('aria-activedescendant', focusedItem.id);
|
|
1460
1503
|
}
|
|
1461
1504
|
}
|
|
@@ -1472,7 +1515,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1472
1515
|
}
|
|
1473
1516
|
}
|
|
1474
1517
|
else {
|
|
1475
|
-
if (this.enableVirtualization && ((!this.value && this.viewPortInfo.endIndex !== this.totalItemCount) ||
|
|
1518
|
+
if (this.enableVirtualization && ((!this.value && this.viewPortInfo.endIndex !== this.totalItemCount) ||
|
|
1519
|
+
(this.value && this.value.length > 0 && this.viewPortInfo.endIndex !== this.totalItemCount + this.value.length))) {
|
|
1476
1520
|
this.viewPortInfo.startIndex = this.totalItemCount - this.itemCount;
|
|
1477
1521
|
this.viewPortInfo.endIndex = this.totalItemCount;
|
|
1478
1522
|
this.updateVirtualItemIndex();
|
|
@@ -1507,7 +1551,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1507
1551
|
MultiSelect.prototype.updateSelectionList = function () {
|
|
1508
1552
|
if (!isNullOrUndefined(this.value) && this.value.length) {
|
|
1509
1553
|
for (var index = 0; index < this.value.length; index++) {
|
|
1510
|
-
var value = this.allowObjectBinding ?
|
|
1554
|
+
var value = this.allowObjectBinding ?
|
|
1555
|
+
getValue(((this.fields.value) ? this.fields.value : ''), this.value[index]) : this.value[index];
|
|
1511
1556
|
var selectedItem = this.getElementByValue(value);
|
|
1512
1557
|
if (selectedItem && !selectedItem.classList.contains(dropDownBaseClasses.selected)) {
|
|
1513
1558
|
selectedItem.classList.add('e-active');
|
|
@@ -1689,7 +1734,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1689
1734
|
+ ':not(.' + HIDE_LIST + ')' + ':not(.e-reorder-hide)');
|
|
1690
1735
|
}
|
|
1691
1736
|
var focuseElem = this.list.querySelector('li.' + dropDownBaseClasses.focus);
|
|
1692
|
-
this.focusFirstListItem = !isNullOrUndefined(this.liCollections[0]) ? this.liCollections[0].classList.contains('e-item-focus') :
|
|
1737
|
+
this.focusFirstListItem = !isNullOrUndefined(this.liCollections[0]) ? this.liCollections[0].classList.contains('e-item-focus') :
|
|
1738
|
+
false;
|
|
1693
1739
|
var index = Array.prototype.slice.call(list).indexOf(focuseElem);
|
|
1694
1740
|
if (index <= 0 && (this.mode === 'CheckBox' && this.allowFiltering)) {
|
|
1695
1741
|
this.keyAction = false;
|
|
@@ -1746,7 +1792,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1746
1792
|
else if (e.keyCode === 8 && this.mode === 'Delimiter') {
|
|
1747
1793
|
if (this.value && this.value.length) {
|
|
1748
1794
|
e.preventDefault();
|
|
1749
|
-
var temp = this.allowObjectBinding ?
|
|
1795
|
+
var temp = this.allowObjectBinding ?
|
|
1796
|
+
getValue(((this.fields.value) ? this.fields.value : ''), this.value[this.value.length - 1]) :
|
|
1797
|
+
this.value[this.value.length - 1];
|
|
1750
1798
|
this.removeValue(this.value[this.value.length - 1], e);
|
|
1751
1799
|
this.updateDelimeter(this.delimiterChar, e);
|
|
1752
1800
|
this.focusAtLastListItem(temp);
|
|
@@ -1789,19 +1837,27 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1789
1837
|
MultiSelect.prototype.scrollBottom = function (selectedLI, activeIndex, isInitialSelection, keyCode) {
|
|
1790
1838
|
if (isInitialSelection === void 0) { isInitialSelection = false; }
|
|
1791
1839
|
if (keyCode === void 0) { keyCode = null; }
|
|
1792
|
-
if ((!isNullOrUndefined(selectedLI) && selectedLI.classList.contains('e-virtual-list')) ||
|
|
1840
|
+
if ((!isNullOrUndefined(selectedLI) && selectedLI.classList.contains('e-virtual-list')) ||
|
|
1841
|
+
(this.enableVirtualization && isNullOrUndefined(selectedLI))) {
|
|
1793
1842
|
selectedLI = this.liCollections[this.skeletonCount];
|
|
1794
1843
|
}
|
|
1844
|
+
var selectedListMargin = selectedLI && !isNaN(parseInt(window.getComputedStyle(selectedLI).marginBottom, 10)) ?
|
|
1845
|
+
parseInt(window.getComputedStyle(selectedLI).marginBottom, 10) : 0;
|
|
1795
1846
|
this.isUpwardScrolling = false;
|
|
1796
1847
|
var virtualListCount = this.list.querySelectorAll('.e-virtual-list').length;
|
|
1797
|
-
var lastElementValue = this.list.querySelector('li:last-of-type') ?
|
|
1798
|
-
|
|
1848
|
+
var lastElementValue = this.list.querySelector('li:last-of-type') ?
|
|
1849
|
+
this.list.querySelector('li:last-of-type').getAttribute('data-value') : null;
|
|
1850
|
+
var selectedLiOffsetTop = this.virtualListInfo && this.virtualListInfo.startIndex ?
|
|
1851
|
+
selectedLI.offsetTop + (this.virtualListInfo.startIndex * (selectedLI.offsetHeight + selectedListMargin))
|
|
1852
|
+
: selectedLI.offsetTop;
|
|
1799
1853
|
var currentOffset = this.list.offsetHeight;
|
|
1800
|
-
var nextBottom = selectedLiOffsetTop - (virtualListCount * selectedLI.offsetHeight
|
|
1854
|
+
var nextBottom = selectedLiOffsetTop - (virtualListCount * (selectedLI.offsetHeight + selectedListMargin)) +
|
|
1855
|
+
(selectedLI.offsetHeight + selectedListMargin) - this.list.scrollTop;
|
|
1801
1856
|
var nextOffset = this.list.scrollTop + nextBottom - currentOffset;
|
|
1802
1857
|
var isScrollerCHanged = false;
|
|
1803
1858
|
var isScrollTopChanged = false;
|
|
1804
|
-
var boxRange = selectedLiOffsetTop - (virtualListCount * selectedLI.offsetHeight
|
|
1859
|
+
var boxRange = selectedLiOffsetTop - (virtualListCount * (selectedLI.offsetHeight + selectedListMargin)) +
|
|
1860
|
+
(selectedLI.offsetHeight + selectedListMargin) - this.list.scrollTop;
|
|
1805
1861
|
boxRange = this.fields.groupBy && !isNullOrUndefined(this.fixedHeaderElement) ?
|
|
1806
1862
|
boxRange - this.fixedHeaderElement.offsetHeight : boxRange;
|
|
1807
1863
|
if (activeIndex === 0 && !this.enableVirtualization) {
|
|
@@ -1809,23 +1865,24 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1809
1865
|
}
|
|
1810
1866
|
else if (nextBottom > currentOffset || !(boxRange > 0 && this.list.offsetHeight > boxRange)) {
|
|
1811
1867
|
var currentElementValue = selectedLI ? selectedLI.getAttribute('data-value') : null;
|
|
1812
|
-
var liCount = keyCode
|
|
1868
|
+
var liCount = keyCode === 34 ? this.getPageCount() - 1 : 1;
|
|
1813
1869
|
if (!this.enableVirtualization || this.isKeyBoardAction || isInitialSelection) {
|
|
1814
|
-
if (this.isKeyBoardAction && this.enableVirtualization && lastElementValue &&
|
|
1870
|
+
if (this.isKeyBoardAction && this.enableVirtualization && lastElementValue &&
|
|
1871
|
+
currentElementValue === lastElementValue && keyCode !== 35 && !this.isVirtualScrolling) {
|
|
1815
1872
|
this.isPreventKeyAction = true;
|
|
1816
|
-
this.list.scrollTop += selectedLI.offsetHeight * liCount;
|
|
1817
|
-
this.isPreventKeyAction = this.
|
|
1873
|
+
this.list.scrollTop += (selectedLI.offsetHeight + selectedListMargin) * liCount;
|
|
1874
|
+
this.isPreventKeyAction = this.isScrollerAtEnd() ? false : this.isPreventKeyAction;
|
|
1818
1875
|
this.isKeyBoardAction = false;
|
|
1819
1876
|
this.isPreventScrollAction = false;
|
|
1820
1877
|
}
|
|
1821
|
-
else if (this.enableVirtualization && keyCode
|
|
1878
|
+
else if (this.enableVirtualization && keyCode === 35) {
|
|
1822
1879
|
this.isPreventKeyAction = false;
|
|
1823
1880
|
this.isKeyBoardAction = false;
|
|
1824
1881
|
this.isPreventScrollAction = false;
|
|
1825
1882
|
this.list.scrollTop = this.list.scrollHeight;
|
|
1826
1883
|
}
|
|
1827
1884
|
else {
|
|
1828
|
-
if (keyCode
|
|
1885
|
+
if (keyCode === 34 && this.enableVirtualization && !this.isVirtualScrolling) {
|
|
1829
1886
|
this.isPreventKeyAction = false;
|
|
1830
1887
|
this.isKeyBoardAction = false;
|
|
1831
1888
|
this.isPreventScrollAction = false;
|
|
@@ -1834,7 +1891,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1834
1891
|
}
|
|
1835
1892
|
}
|
|
1836
1893
|
else {
|
|
1837
|
-
this.list.scrollTop = this.virtualListInfo &&
|
|
1894
|
+
this.list.scrollTop = this.virtualListInfo &&
|
|
1895
|
+
this.virtualListInfo.startIndex ? this.virtualListInfo.startIndex * this.listItemHeight : 0;
|
|
1838
1896
|
}
|
|
1839
1897
|
isScrollerCHanged = this.isKeyBoardAction;
|
|
1840
1898
|
isScrollTopChanged = true;
|
|
@@ -1844,35 +1902,43 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1844
1902
|
MultiSelect.prototype.scrollTop = function (selectedLI, activeIndex, keyCode) {
|
|
1845
1903
|
if (keyCode === void 0) { keyCode = null; }
|
|
1846
1904
|
var virtualListCount = this.list.querySelectorAll('.e-virtual-list').length;
|
|
1847
|
-
var
|
|
1848
|
-
|
|
1849
|
-
var
|
|
1905
|
+
var selectedListMargin = selectedLI && !isNaN(parseInt(window.getComputedStyle(selectedLI).marginBottom, 10)) ?
|
|
1906
|
+
parseInt(window.getComputedStyle(selectedLI).marginBottom, 10) : 0;
|
|
1907
|
+
var selectedLiOffsetTop = (this.virtualListInfo && this.virtualListInfo.startIndex) ?
|
|
1908
|
+
selectedLI.offsetTop + (this.virtualListInfo.startIndex * (selectedLI.offsetHeight + selectedListMargin)) :
|
|
1909
|
+
selectedLI.offsetTop;
|
|
1910
|
+
var nextOffset = selectedLiOffsetTop - (virtualListCount * (selectedLI.offsetHeight +
|
|
1911
|
+
selectedListMargin)) - this.list.scrollTop;
|
|
1912
|
+
var firstElementValue = this.list.querySelector('li.e-list-item:not(.e-virtual-list)') ?
|
|
1913
|
+
this.list.querySelector('li.e-list-item:not(.e-virtual-list)').getAttribute('data-value') : null;
|
|
1850
1914
|
nextOffset = this.fields.groupBy && !isUndefined(this.fixedHeaderElement) ?
|
|
1851
1915
|
nextOffset - this.fixedHeaderElement.offsetHeight : nextOffset;
|
|
1852
|
-
var boxRange = (selectedLiOffsetTop - (virtualListCount * selectedLI.offsetHeight
|
|
1916
|
+
var boxRange = (selectedLiOffsetTop - (virtualListCount * (selectedLI.offsetHeight + selectedListMargin)) +
|
|
1917
|
+
(selectedLI.offsetHeight + selectedListMargin) - this.list.scrollTop);
|
|
1853
1918
|
var isPageUpKeyAction = this.enableVirtualization && this.getModuleName() === 'autocomplete' && nextOffset <= 0;
|
|
1854
1919
|
if (activeIndex === 0 && !this.enableVirtualization) {
|
|
1855
1920
|
this.list.scrollTop = 0;
|
|
1856
1921
|
}
|
|
1857
1922
|
else if (nextOffset < 0 || isPageUpKeyAction) {
|
|
1858
1923
|
var currentElementValue = selectedLI ? selectedLI.getAttribute('data-value') : null;
|
|
1859
|
-
var liCount = keyCode
|
|
1860
|
-
if (this.enableVirtualization && this.isKeyBoardAction && firstElementValue &&
|
|
1924
|
+
var liCount = keyCode === 33 ? this.getPageCount() - 2 : 1;
|
|
1925
|
+
if (this.enableVirtualization && this.isKeyBoardAction && firstElementValue &&
|
|
1926
|
+
currentElementValue === firstElementValue && keyCode !== 36 && !this.isVirtualScrolling) {
|
|
1861
1927
|
this.isUpwardScrolling = true;
|
|
1862
1928
|
this.isPreventKeyAction = true;
|
|
1863
1929
|
this.isKeyBoardAction = false;
|
|
1864
|
-
this.list.scrollTop -= selectedLI.offsetHeight * liCount;
|
|
1865
|
-
this.isPreventKeyAction = this.list.scrollTop
|
|
1930
|
+
this.list.scrollTop -= (selectedLI.offsetHeight + selectedListMargin) * liCount;
|
|
1931
|
+
this.isPreventKeyAction = this.list.scrollTop !== 0 ? this.isPreventKeyAction : false;
|
|
1866
1932
|
this.isPreventScrollAction = false;
|
|
1867
1933
|
}
|
|
1868
|
-
else if (this.enableVirtualization && keyCode
|
|
1934
|
+
else if (this.enableVirtualization && keyCode === 36) {
|
|
1869
1935
|
this.isPreventScrollAction = false;
|
|
1870
1936
|
this.isPreventKeyAction = true;
|
|
1871
1937
|
this.isKeyBoardAction = false;
|
|
1872
1938
|
this.list.scrollTo(0, 0);
|
|
1873
1939
|
}
|
|
1874
1940
|
else {
|
|
1875
|
-
if (keyCode
|
|
1941
|
+
if (keyCode === 33 && this.enableVirtualization && !this.isVirtualScrolling) {
|
|
1876
1942
|
this.isPreventKeyAction = false;
|
|
1877
1943
|
this.isKeyBoardAction = false;
|
|
1878
1944
|
this.isPreventScrollAction = false;
|
|
@@ -1885,6 +1951,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1885
1951
|
this.fixedHeaderElement.offsetHeight : 0);
|
|
1886
1952
|
}
|
|
1887
1953
|
};
|
|
1954
|
+
MultiSelect.prototype.isScrollerAtEnd = function () {
|
|
1955
|
+
return this.list && this.list.scrollTop + this.list.clientHeight >= this.list.scrollHeight;
|
|
1956
|
+
};
|
|
1888
1957
|
MultiSelect.prototype.selectListByKey = function (e) {
|
|
1889
1958
|
var li = this.list.querySelector('li.' + dropDownBaseClasses.focus);
|
|
1890
1959
|
var limit = this.value && this.value.length ? this.value.length : 0;
|
|
@@ -1969,7 +2038,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
1969
2038
|
|| this.allowCustomValue) && this.mainList && this.listData) {
|
|
1970
2039
|
var list = this.mainList.cloneNode ? this.mainList.cloneNode(true) : this.mainList;
|
|
1971
2040
|
if (this.enableVirtualization) {
|
|
1972
|
-
if (this.allowCustomValue && this.virtualCustomData && data == null && this.virtualCustomData &&
|
|
2041
|
+
if (this.allowCustomValue && this.virtualCustomData && data == null && this.virtualCustomData &&
|
|
2042
|
+
this.viewPortInfo && this.viewPortInfo.startIndex === 0 && this.viewPortInfo.endIndex === this.itemCount) {
|
|
1973
2043
|
this.virtualCustomData = null;
|
|
1974
2044
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1975
2045
|
this.renderItems(this.mainData, this.fields);
|
|
@@ -2002,7 +2072,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2002
2072
|
this.removeChipSelection();
|
|
2003
2073
|
this.addChipSelection(temp, e);
|
|
2004
2074
|
}
|
|
2005
|
-
var currentChip = this.allowObjectBinding ?
|
|
2075
|
+
var currentChip = this.allowObjectBinding ?
|
|
2076
|
+
this.getDataByValue(this.getFormattedValue(selectedElem.getAttribute('data-value'))) :
|
|
2077
|
+
selectedElem.getAttribute('data-value');
|
|
2006
2078
|
this.removeValue(currentChip, e);
|
|
2007
2079
|
this.makeTextBoxEmpty();
|
|
2008
2080
|
}
|
|
@@ -2026,7 +2098,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2026
2098
|
var targetElement = e.target;
|
|
2027
2099
|
var filterInputClassName = targetElement.className;
|
|
2028
2100
|
var selectAllParent = document.getElementsByClassName('e-selectall-parent')[0];
|
|
2029
|
-
if ((filterInputClassName === 'e-input-filter e-input' ||
|
|
2101
|
+
if ((filterInputClassName === 'e-input-filter e-input' ||
|
|
2102
|
+
filterInputClassName === 'e-input-group e-control-wrapper e-input-focus') &&
|
|
2103
|
+
selectAllParent.classList.contains('e-item-focus')) {
|
|
2030
2104
|
selectAllParent.classList.remove('e-item-focus');
|
|
2031
2105
|
}
|
|
2032
2106
|
};
|
|
@@ -2046,7 +2120,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2046
2120
|
}
|
|
2047
2121
|
var temp = -1;
|
|
2048
2122
|
var selectAllParent = document.getElementsByClassName('e-selectall-parent')[0];
|
|
2049
|
-
if (this.mode === 'CheckBox' && this.showSelectAll && position
|
|
2123
|
+
if (this.mode === 'CheckBox' && this.showSelectAll && position === 1 && !isNullOrUndefined(selectAllParent) &&
|
|
2124
|
+
!selectAllParent.classList.contains('e-item-focus') && this.list.getElementsByClassName('e-item-focus').length === 0 &&
|
|
2125
|
+
this.liCollections.length > 1) {
|
|
2050
2126
|
if (!this.focusFirstListItem && selectAllParent.classList.contains('e-item-focus')) {
|
|
2051
2127
|
selectAllParent.classList.remove('e-item-focus');
|
|
2052
2128
|
}
|
|
@@ -2055,7 +2131,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2055
2131
|
}
|
|
2056
2132
|
}
|
|
2057
2133
|
else if (elements.length) {
|
|
2058
|
-
if (this.mode === 'CheckBox' && this.showSelectAll && !isNullOrUndefined(selectAllParent && position
|
|
2134
|
+
if (this.mode === 'CheckBox' && this.showSelectAll && !isNullOrUndefined(selectAllParent && position === -1)) {
|
|
2059
2135
|
if (!this.focusFirstListItem && selectAllParent.classList.contains('e-item-focus')) {
|
|
2060
2136
|
selectAllParent.classList.remove('e-item-focus');
|
|
2061
2137
|
}
|
|
@@ -2204,7 +2280,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2204
2280
|
if (this.enabled && !this.readonly) {
|
|
2205
2281
|
var element = e.target.parentElement;
|
|
2206
2282
|
var customVal = element.getAttribute('data-value');
|
|
2207
|
-
var value = this.allowObjectBinding ?
|
|
2283
|
+
var value = this.allowObjectBinding ?
|
|
2284
|
+
this.getDataByValue(this.getFormattedValue(customVal)) : this.getFormattedValue(customVal);
|
|
2208
2285
|
if (this.allowCustomValue && ((customVal !== 'false' && value === false) ||
|
|
2209
2286
|
(!isNullOrUndefined(value) && value.toString() === 'NaN'))) {
|
|
2210
2287
|
value = customVal;
|
|
@@ -2217,7 +2294,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2217
2294
|
}
|
|
2218
2295
|
this.removeValue(value, e);
|
|
2219
2296
|
value = this.allowObjectBinding ? getValue((this.fields.value) ? this.fields.value : '', value) : value;
|
|
2220
|
-
if (isNullOrUndefined(this.findListElement(this.list, 'li', 'data-value', value)) &&
|
|
2297
|
+
if (isNullOrUndefined(this.findListElement(this.list, 'li', 'data-value', value)) &&
|
|
2298
|
+
this.mainList && this.listData) {
|
|
2221
2299
|
var list = this.mainList.cloneNode ? this.mainList.cloneNode(true) : this.mainList;
|
|
2222
2300
|
this.onActionComplete(list, this.mainData);
|
|
2223
2301
|
}
|
|
@@ -2251,7 +2329,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2251
2329
|
this.expandTextbox();
|
|
2252
2330
|
};
|
|
2253
2331
|
MultiSelect.prototype.removeAllItems = function (value, eve, isClearAll, element, mainElement) {
|
|
2254
|
-
var index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2332
|
+
var index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2333
|
+
this.value.indexOf(value);
|
|
2255
2334
|
var removeVal = this.value.slice(0);
|
|
2256
2335
|
removeVal.splice(index, 1);
|
|
2257
2336
|
this.setProperties({ value: [].concat([], removeVal) }, true);
|
|
@@ -2266,7 +2345,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2266
2345
|
e: this, index: index
|
|
2267
2346
|
});
|
|
2268
2347
|
this.invokeCheckboxSelection(element, eve, isClearAll);
|
|
2269
|
-
var currentValue = this.allowObjectBinding ? getValue(((this.fields.value) ?
|
|
2348
|
+
var currentValue = this.allowObjectBinding ? getValue(((this.fields.value) ?
|
|
2349
|
+
this.fields.value : ''), value) : value;
|
|
2270
2350
|
this.updateMainList(true, currentValue, mainElement);
|
|
2271
2351
|
this.updateChipStatus();
|
|
2272
2352
|
};
|
|
@@ -2284,9 +2364,11 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2284
2364
|
};
|
|
2285
2365
|
MultiSelect.prototype.removeValue = function (value, eve, length, isClearAll) {
|
|
2286
2366
|
var _this = this;
|
|
2287
|
-
var index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2367
|
+
var index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2368
|
+
this.value.indexOf(this.getFormattedValue(value));
|
|
2288
2369
|
if (index === -1 && this.allowCustomValue && !isNullOrUndefined(value)) {
|
|
2289
|
-
index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2370
|
+
index = this.allowObjectBinding ? this.indexOfObjectInArray(value, this.value) :
|
|
2371
|
+
this.value.indexOf(value.toString());
|
|
2290
2372
|
}
|
|
2291
2373
|
var targetEle = eve && eve.target;
|
|
2292
2374
|
isClearAll = (isClearAll || targetEle && targetEle.classList.contains('e-close-hooker')) ? true : null;
|
|
@@ -2294,7 +2376,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2294
2376
|
HIDE_LIST :
|
|
2295
2377
|
dropDownBaseClasses.selected;
|
|
2296
2378
|
if (index !== -1) {
|
|
2297
|
-
var currentValue = this.allowObjectBinding ? getValue(((this.fields.value) ?
|
|
2379
|
+
var currentValue = this.allowObjectBinding ? getValue(((this.fields.value) ?
|
|
2380
|
+
this.fields.value : ''), value) : value;
|
|
2298
2381
|
var element_1 = this.virtualSelectAll ? null : this.findListElement(this.list, 'li', 'data-value', currentValue);
|
|
2299
2382
|
var val_1 = this.allowObjectBinding ? value : this.getDataByValue(value);
|
|
2300
2383
|
var eventArgs = {
|
|
@@ -2309,6 +2392,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2309
2392
|
_this.removeIndex++;
|
|
2310
2393
|
}
|
|
2311
2394
|
else {
|
|
2395
|
+
_this.isRemoveSelection = true;
|
|
2396
|
+
_this.currentRemoveValue = _this.allowObjectBinding ? getValue(((_this.fields.value) ?
|
|
2397
|
+
_this.fields.value : ''), value) : value;
|
|
2312
2398
|
_this.virtualSelectAll = false;
|
|
2313
2399
|
var removeVal = _this.value.slice(0);
|
|
2314
2400
|
if (_this.enableVirtualization && isClearAll) {
|
|
@@ -2320,11 +2406,17 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2320
2406
|
}
|
|
2321
2407
|
_this.setProperties({ value: [].concat([], removeVal) }, true);
|
|
2322
2408
|
if (_this.enableVirtualization) {
|
|
2323
|
-
var currentText = index
|
|
2409
|
+
var currentText = index === 0 && _this.text.split(_this.delimiterChar) &&
|
|
2410
|
+
_this.text.split(_this.delimiterChar).length === 1 ?
|
|
2411
|
+
_this.text.replace(_this.text.split(_this.delimiterChar)[index], '') :
|
|
2412
|
+
index === 0 ? _this.text.replace(_this.text.split(_this.delimiterChar)[index] +
|
|
2413
|
+
_this.delimiterChar, '') :
|
|
2414
|
+
_this.text.replace(_this.delimiterChar + _this.text.split(_this.delimiterChar)[index], '');
|
|
2324
2415
|
_this.setProperties({ text: currentText.toString() }, true);
|
|
2325
2416
|
}
|
|
2326
2417
|
if (element_1 !== null) {
|
|
2327
|
-
var currentValue_1 = _this.allowObjectBinding ? getValue(((_this.fields.value) ?
|
|
2418
|
+
var currentValue_1 = _this.allowObjectBinding ? getValue(((_this.fields.value) ?
|
|
2419
|
+
_this.fields.value : ''), value) : value;
|
|
2328
2420
|
var hideElement = _this.findListElement(_this.mainList, 'li', 'data-value', currentValue_1);
|
|
2329
2421
|
element_1.setAttribute('aria-selected', 'false');
|
|
2330
2422
|
removeClass([element_1], className);
|
|
@@ -2339,7 +2431,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2339
2431
|
});
|
|
2340
2432
|
_this.invokeCheckboxSelection(element_1, eve, isClearAll);
|
|
2341
2433
|
}
|
|
2342
|
-
var currentValue_2 = _this.allowObjectBinding ? getValue(((_this.fields.value) ?
|
|
2434
|
+
var currentValue_2 = _this.allowObjectBinding ? getValue(((_this.fields.value) ?
|
|
2435
|
+
_this.fields.value : ''), value) : value;
|
|
2343
2436
|
if (_this.hideSelectedItem && _this.fields.groupBy && element_1) {
|
|
2344
2437
|
_this.hideGroupItem(currentValue_2);
|
|
2345
2438
|
}
|
|
@@ -2388,8 +2481,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2388
2481
|
if (_this.hideSelectedItem && _this.value && Array.isArray(_this.value) && _this.value.length > 0) {
|
|
2389
2482
|
_this.totalItemsCount();
|
|
2390
2483
|
}
|
|
2391
|
-
_this.notify(
|
|
2392
|
-
module:
|
|
2484
|
+
_this.notify('setCurrentViewDataAsync', {
|
|
2485
|
+
module: 'VirtualScroll'
|
|
2393
2486
|
});
|
|
2394
2487
|
}
|
|
2395
2488
|
}
|
|
@@ -2424,10 +2517,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2424
2517
|
};
|
|
2425
2518
|
MultiSelect.prototype.removeChip = function (value, isClearAll) {
|
|
2426
2519
|
if (this.chipCollectionWrapper) {
|
|
2427
|
-
if (this.enableVirtualization && isClearAll) {
|
|
2428
|
-
var childElements = this.chipCollectionWrapper.querySelectorAll('.e-chips');
|
|
2429
|
-
}
|
|
2430
|
-
else {
|
|
2520
|
+
if (!(this.enableVirtualization && isClearAll)) {
|
|
2431
2521
|
var element = this.findListElement(this.chipCollectionWrapper, 'span', 'data-value', value);
|
|
2432
2522
|
if (element) {
|
|
2433
2523
|
remove(element);
|
|
@@ -2468,7 +2558,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2468
2558
|
MultiSelect.prototype.indexOfObjectInArray = function (objectToFind, array) {
|
|
2469
2559
|
var _loop_1 = function (i) {
|
|
2470
2560
|
var item = array[i];
|
|
2471
|
-
|
|
2561
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
2562
|
+
if (Object.keys(objectToFind).every(function (key) { return item.hasOwnProperty(key) &&
|
|
2563
|
+
item[key] === objectToFind[key]; })) {
|
|
2472
2564
|
return { value: i };
|
|
2473
2565
|
}
|
|
2474
2566
|
};
|
|
@@ -2484,7 +2576,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2484
2576
|
this.value = [];
|
|
2485
2577
|
}
|
|
2486
2578
|
var currentValue = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
2487
|
-
if ((this.allowObjectBinding && !this.isObjectInArray(this.getDataByValue(value), this.value)) || (!this.allowObjectBinding &&
|
|
2579
|
+
if ((this.allowObjectBinding && !this.isObjectInArray(this.getDataByValue(value), this.value)) || (!this.allowObjectBinding &&
|
|
2580
|
+
this.value.indexOf(currentValue) < 0)) {
|
|
2488
2581
|
this.setProperties({ value: [].concat([], this.value, [currentValue]) }, true);
|
|
2489
2582
|
if (this.enableVirtualization && !this.isSelectAllLoop) {
|
|
2490
2583
|
var data = this.viewWrapper.innerHTML;
|
|
@@ -2496,11 +2589,12 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2496
2589
|
this.updateWrapperText(this.viewWrapper, data);
|
|
2497
2590
|
}
|
|
2498
2591
|
if (this.enableVirtualization && this.mode === 'CheckBox') {
|
|
2499
|
-
var temp = void 0;
|
|
2500
2592
|
var currentText = [];
|
|
2501
|
-
var value_1 = this.allowObjectBinding ?
|
|
2502
|
-
|
|
2503
|
-
|
|
2593
|
+
var value_1 = this.allowObjectBinding ?
|
|
2594
|
+
getValue(((this.fields.value) ? this.fields.value : ''), this.value[this.value.length - 1]) :
|
|
2595
|
+
this.value[this.value.length - 1];
|
|
2596
|
+
var temp = this.getTextByValue(value_1);
|
|
2597
|
+
var textValues = this.text != null && this.text !== '' ? this.text + ',' + temp : temp;
|
|
2504
2598
|
currentText.push(textValues);
|
|
2505
2599
|
this.setProperties({ text: currentText.toString() }, true);
|
|
2506
2600
|
}
|
|
@@ -2659,7 +2753,6 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2659
2753
|
else {
|
|
2660
2754
|
compiledString = compile(this.valueTemplate);
|
|
2661
2755
|
}
|
|
2662
|
-
// eslint-disable-next-line
|
|
2663
2756
|
var valueCompTemp = compiledString(itemData, this, 'valueTemplate', this.valueTemplateId, this.isStringTemplate, null, chipContent);
|
|
2664
2757
|
if (valueCompTemp && valueCompTemp.length > 0) {
|
|
2665
2758
|
append(valueCompTemp, chipContent);
|
|
@@ -2757,7 +2850,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2757
2850
|
}
|
|
2758
2851
|
append([this.list], this.popupWrapper);
|
|
2759
2852
|
if (!this.list.classList.contains(dropDownBaseClasses.noData) && this.getItems()[1]) {
|
|
2760
|
-
this.listItemHeight = this.getItems()[1].offsetHeight
|
|
2853
|
+
this.listItemHeight = this.getItems()[1].offsetHeight +
|
|
2854
|
+
parseInt(window.getComputedStyle(this.getItems()[1]).marginBottom, 10);
|
|
2761
2855
|
}
|
|
2762
2856
|
if (this.enableVirtualization && !this.list.classList.contains(dropDownBaseClasses.noData)) {
|
|
2763
2857
|
if (!this.list.querySelector('.e-virtual-ddl-content') && this.list.querySelector('.e-list-parent')) {
|
|
@@ -2867,8 +2961,10 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2867
2961
|
}
|
|
2868
2962
|
_this.isPreventScrollAction = true;
|
|
2869
2963
|
_this.setScrollPosition();
|
|
2870
|
-
if (!_this.list.classList.contains(dropDownBaseClasses.noData) && _this.getItems()[1] &&
|
|
2871
|
-
_this.
|
|
2964
|
+
if (!_this.list.classList.contains(dropDownBaseClasses.noData) && _this.getItems()[1] &&
|
|
2965
|
+
_this.getItems()[1].offsetHeight !== 0) {
|
|
2966
|
+
_this.listItemHeight = _this.getItems()[1].offsetHeight +
|
|
2967
|
+
parseInt(window.getComputedStyle(_this.getItems()[1]).marginBottom, 10);
|
|
2872
2968
|
if (_this.list.getElementsByClassName('e-virtual-ddl-content')[0]) {
|
|
2873
2969
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2874
2970
|
_this.list.getElementsByClassName('e-virtual-ddl-content')[0].style = _this.getTransformValues();
|
|
@@ -2880,10 +2976,10 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2880
2976
|
});
|
|
2881
2977
|
}
|
|
2882
2978
|
if (_this.enableVirtualization) {
|
|
2883
|
-
_this.notify(
|
|
2884
|
-
module:
|
|
2979
|
+
_this.notify('bindScrollEvent', {
|
|
2980
|
+
module: 'VirtualScroll',
|
|
2885
2981
|
component: _this.getModuleName(),
|
|
2886
|
-
enable: _this.enableVirtualization
|
|
2982
|
+
enable: _this.enableVirtualization
|
|
2887
2983
|
});
|
|
2888
2984
|
setTimeout(function () {
|
|
2889
2985
|
if (_this.value) {
|
|
@@ -2902,7 +2998,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2902
2998
|
});
|
|
2903
2999
|
this.checkCollision(this.popupWrapper);
|
|
2904
3000
|
this.popupContentElement = this.popupObj.element.querySelector('.e-content');
|
|
2905
|
-
if (this.mode === 'CheckBox' && Browser.isDevice && this.allowFiltering) {
|
|
3001
|
+
if (this.mode === 'CheckBox' && Browser.isDevice && this.allowFiltering && this.isDeviceFullScreen) {
|
|
2906
3002
|
this.notify('deviceSearchBox', { module: 'CheckBoxSelection', enable: this.mode === 'CheckBox' });
|
|
2907
3003
|
}
|
|
2908
3004
|
this.popupObj.close();
|
|
@@ -2911,7 +3007,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2911
3007
|
}
|
|
2912
3008
|
};
|
|
2913
3009
|
MultiSelect.prototype.checkCollision = function (popupEle) {
|
|
2914
|
-
if (!(this.mode === 'CheckBox' && Browser.isDevice && this.allowFiltering)) {
|
|
3010
|
+
if (!(this.mode === 'CheckBox' && Browser.isDevice && this.allowFiltering && this.isDeviceFullScreen)) {
|
|
2915
3011
|
var collision = isCollide(popupEle);
|
|
2916
3012
|
if (collision.length > 0) {
|
|
2917
3013
|
popupEle.style.marginTop = -parseInt(getComputedStyle(popupEle).marginTop, 10) + 'px';
|
|
@@ -2979,7 +3075,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
2979
3075
|
sentinelInfo: {},
|
|
2980
3076
|
offsets: {},
|
|
2981
3077
|
startIndex: 0,
|
|
2982
|
-
endIndex: this.itemCount
|
|
3078
|
+
endIndex: this.itemCount
|
|
2983
3079
|
};
|
|
2984
3080
|
this.previousStartIndex = 0;
|
|
2985
3081
|
this.previousEndIndex = 0;
|
|
@@ -3018,6 +3114,11 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3018
3114
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3019
3115
|
this.list.getElementsByClassName('e-virtual-ddl-content')[0].style = this.getTransformValues();
|
|
3020
3116
|
}
|
|
3117
|
+
if (this.enableVirtualization) {
|
|
3118
|
+
this.notify('setGeneratedData', {
|
|
3119
|
+
module: 'VirtualScroll'
|
|
3120
|
+
});
|
|
3121
|
+
}
|
|
3021
3122
|
};
|
|
3022
3123
|
MultiSelect.prototype.clearAll = function (e) {
|
|
3023
3124
|
if (this.enabled && !this.readonly) {
|
|
@@ -3057,8 +3158,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3057
3158
|
this.chipCollectionWrapper.innerHTML = '';
|
|
3058
3159
|
}
|
|
3059
3160
|
if (!this.isCustomDataUpdated) {
|
|
3060
|
-
this.notify(
|
|
3061
|
-
module:
|
|
3161
|
+
this.notify('setGeneratedData', {
|
|
3162
|
+
module: 'VirtualScroll'
|
|
3062
3163
|
});
|
|
3063
3164
|
}
|
|
3064
3165
|
}
|
|
@@ -3234,7 +3335,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3234
3335
|
var activeElement = Search(this.targetElement(), liCollections, 'StartsWith', this.ignoreCase);
|
|
3235
3336
|
if (this.enableVirtualization && this.targetElement().trim() !== '' && !this.allowFiltering) {
|
|
3236
3337
|
var updatingincrementalindex = false;
|
|
3237
|
-
if ((this.viewPortInfo.endIndex >= this.incrementalEndIndex && this.incrementalEndIndex <= this.totalItemCount) ||
|
|
3338
|
+
if ((this.viewPortInfo.endIndex >= this.incrementalEndIndex && this.incrementalEndIndex <= this.totalItemCount) ||
|
|
3339
|
+
this.incrementalEndIndex === 0) {
|
|
3238
3340
|
updatingincrementalindex = true;
|
|
3239
3341
|
this.incrementalStartIndex = 0;
|
|
3240
3342
|
this.incrementalEndIndex = 100 > this.totalItemCount ? this.totalItemCount : 100;
|
|
@@ -3247,7 +3349,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3247
3349
|
activeElement = Search(this.targetElement(), this.incrementalLiCollections, this.filterType, true, this.listData, this.fields, type);
|
|
3248
3350
|
while (isNullOrUndefined(activeElement) && this.incrementalEndIndex < this.totalItemCount) {
|
|
3249
3351
|
this.incrementalStartIndex = this.incrementalEndIndex;
|
|
3250
|
-
this.incrementalEndIndex = this.incrementalEndIndex + 100 > this.totalItemCount ? this.totalItemCount :
|
|
3352
|
+
this.incrementalEndIndex = this.incrementalEndIndex + 100 > this.totalItemCount ? this.totalItemCount :
|
|
3353
|
+
this.incrementalEndIndex + 100;
|
|
3251
3354
|
this.updateIncrementalInfo(this.incrementalStartIndex, this.incrementalEndIndex);
|
|
3252
3355
|
updatingincrementalindex = true;
|
|
3253
3356
|
if (this.viewPortInfo.startIndex !== 0 || updatingincrementalindex) {
|
|
@@ -3264,19 +3367,28 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3264
3367
|
}
|
|
3265
3368
|
}
|
|
3266
3369
|
if (activeElement.index) {
|
|
3267
|
-
if (
|
|
3268
|
-
|
|
3269
|
-
var
|
|
3270
|
-
|
|
3370
|
+
if (!(this.viewPortInfo.startIndex >= activeElement.index) ||
|
|
3371
|
+
!(activeElement.index >= this.viewPortInfo.endIndex)) {
|
|
3372
|
+
var startIndex = activeElement.index - ((this.itemCount / 2) - 2) > 0
|
|
3373
|
+
? activeElement.index - ((this.itemCount / 2) - 2)
|
|
3374
|
+
: 0;
|
|
3375
|
+
var endIndex = startIndex + this.itemCount > this.totalItemCount
|
|
3376
|
+
? this.totalItemCount
|
|
3377
|
+
: startIndex + this.itemCount;
|
|
3378
|
+
if (startIndex !== this.viewPortInfo.startIndex) {
|
|
3271
3379
|
this.updateIncrementalView(startIndex, endIndex);
|
|
3272
3380
|
}
|
|
3273
3381
|
}
|
|
3274
3382
|
}
|
|
3275
3383
|
if (!isNullOrUndefined(activeElement.item)) {
|
|
3276
|
-
var
|
|
3277
|
-
if (
|
|
3278
|
-
var startIndex = this.viewPortInfo.startIndex + ((this.itemCount / 2) - 2) < this.totalItemCount
|
|
3279
|
-
|
|
3384
|
+
var index1 = this.getIndexByValue(activeElement.item.getAttribute('data-value')) - this.skeletonCount;
|
|
3385
|
+
if (index1 > this.itemCount / 2) {
|
|
3386
|
+
var startIndex = this.viewPortInfo.startIndex + ((this.itemCount / 2) - 2) < this.totalItemCount
|
|
3387
|
+
? this.viewPortInfo.startIndex + ((this.itemCount / 2) - 2)
|
|
3388
|
+
: this.totalItemCount;
|
|
3389
|
+
var endIndex = this.viewPortInfo.startIndex + this.itemCount > this.totalItemCount
|
|
3390
|
+
? this.totalItemCount
|
|
3391
|
+
: this.viewPortInfo.startIndex + this.itemCount;
|
|
3280
3392
|
this.updateIncrementalView(startIndex, endIndex);
|
|
3281
3393
|
}
|
|
3282
3394
|
activeElement.item = this.getElementByValue(activeElement.item.getAttribute('data-value'));
|
|
@@ -3340,7 +3452,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3340
3452
|
sentinelInfo: {},
|
|
3341
3453
|
offsets: {},
|
|
3342
3454
|
startIndex: 0,
|
|
3343
|
-
endIndex: this.itemCount
|
|
3455
|
+
endIndex: this.itemCount
|
|
3344
3456
|
};
|
|
3345
3457
|
};
|
|
3346
3458
|
MultiSelect.prototype.updateData = function (delimiterChar, e) {
|
|
@@ -3358,53 +3470,65 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3358
3470
|
if (!isNullOrUndefined(this.value)) {
|
|
3359
3471
|
var valueLength = this.value.length;
|
|
3360
3472
|
var hiddenElementContent = '';
|
|
3361
|
-
|
|
3362
|
-
var valueItem =
|
|
3363
|
-
|
|
3364
|
-
|
|
3365
|
-
|
|
3366
|
-
|
|
3367
|
-
|
|
3368
|
-
|
|
3473
|
+
var _loop_2 = function (index) {
|
|
3474
|
+
var valueItem = this_1.allowObjectBinding ?
|
|
3475
|
+
getValue((this_1.fields.value) ? this_1.fields.value : '', this_1.value[index]) : this_1.value[index];
|
|
3476
|
+
var listValue = this_1.findListElement((!isNullOrUndefined(this_1.mainList) ? this_1.mainList : this_1.ulElement), 'li', 'data-value', valueItem);
|
|
3477
|
+
if (this_1.enableVirtualization) {
|
|
3478
|
+
listValue = this_1.findListElement((!isNullOrUndefined(this_1.list) ? this_1.list : this_1.ulElement), 'li', 'data-value', valueItem);
|
|
3479
|
+
}
|
|
3480
|
+
if (isNullOrUndefined(listValue) && !this_1.allowCustomValue && !this_1.enableVirtualization &&
|
|
3481
|
+
this_1.listData && this_1.listData.length > 0) {
|
|
3482
|
+
this_1.value.splice(index, 1);
|
|
3369
3483
|
index -= 1;
|
|
3370
3484
|
valueLength -= 1;
|
|
3371
3485
|
}
|
|
3372
3486
|
else {
|
|
3373
|
-
if (
|
|
3374
|
-
if (
|
|
3487
|
+
if (this_1.listData) {
|
|
3488
|
+
if (this_1.enableVirtualization) {
|
|
3375
3489
|
if (delim) {
|
|
3376
|
-
data =
|
|
3490
|
+
data = this_1.delimiterWrapper && this_1.delimiterWrapper.innerHTML === '' ? data :
|
|
3491
|
+
this_1.delimiterWrapper.innerHTML;
|
|
3492
|
+
}
|
|
3493
|
+
var value = this_1.allowObjectBinding ?
|
|
3494
|
+
getValue(((this_1.fields.value) ? this_1.fields.value : ''), this_1.value[this_1.value.length - 1]) :
|
|
3495
|
+
this_1.value[this_1.value.length - 1];
|
|
3496
|
+
if (this_1.isRemoveSelection) {
|
|
3497
|
+
data = this_1.text.replace(/,/g, delimiterChar + ' ') + delimiterChar + ' ';
|
|
3498
|
+
text = this_1.text.split(delimiterChar);
|
|
3377
3499
|
}
|
|
3378
|
-
|
|
3379
|
-
|
|
3380
|
-
|
|
3381
|
-
|
|
3382
|
-
|
|
3383
|
-
|
|
3384
|
-
|
|
3385
|
-
|
|
3500
|
+
else {
|
|
3501
|
+
temp = this_1.getTextByValue(value);
|
|
3502
|
+
var textValues = this_1.text != null && this_1.text !== '' ? this_1.text + ',' + temp : temp;
|
|
3503
|
+
data += temp + delimiterChar + ' ';
|
|
3504
|
+
text.push(textValues);
|
|
3505
|
+
hiddenElementContent = this_1.hiddenElement.innerHTML;
|
|
3506
|
+
}
|
|
3507
|
+
if ((e && e.currentTarget && e.currentTarget.classList.contains('e-chips-close')) ||
|
|
3508
|
+
(e && (e.key === 'Backspace'))) {
|
|
3509
|
+
var item_1 = e.target.parentElement.getAttribute('data-value');
|
|
3386
3510
|
if (e.key === 'Backspace') {
|
|
3387
|
-
var lastChild =
|
|
3511
|
+
var lastChild = this_1.hiddenElement.lastChild;
|
|
3388
3512
|
if (lastChild) {
|
|
3389
|
-
|
|
3513
|
+
this_1.hiddenElement.removeChild(lastChild);
|
|
3390
3514
|
}
|
|
3391
3515
|
}
|
|
3392
3516
|
else {
|
|
3393
|
-
|
|
3394
|
-
if (option.value ===
|
|
3517
|
+
this_1.hiddenElement.childNodes.forEach(function (option) {
|
|
3518
|
+
if (option.value === item_1) {
|
|
3395
3519
|
option.parentNode.removeChild(option);
|
|
3396
3520
|
}
|
|
3397
3521
|
});
|
|
3398
3522
|
}
|
|
3399
|
-
hiddenElementContent =
|
|
3523
|
+
hiddenElementContent = this_1.hiddenElement.innerHTML;
|
|
3400
3524
|
}
|
|
3401
3525
|
else {
|
|
3402
|
-
hiddenElementContent +=
|
|
3526
|
+
hiddenElementContent += '<option selected value=\'' + value + '\'>' + index + '</option>';
|
|
3403
3527
|
}
|
|
3404
|
-
break;
|
|
3528
|
+
return out_index_1 = index, "break";
|
|
3405
3529
|
}
|
|
3406
3530
|
else {
|
|
3407
|
-
temp =
|
|
3531
|
+
temp = this_1.getTextByValue(valueItem);
|
|
3408
3532
|
}
|
|
3409
3533
|
}
|
|
3410
3534
|
else {
|
|
@@ -3414,9 +3538,25 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3414
3538
|
text.push(temp);
|
|
3415
3539
|
}
|
|
3416
3540
|
hiddenElementContent += "<option selected value=\"" + valueItem + "\">" + index + "</option>";
|
|
3541
|
+
out_index_1 = index;
|
|
3542
|
+
};
|
|
3543
|
+
var this_1 = this, out_index_1;
|
|
3544
|
+
for (var index = 0; index < valueLength; index++) {
|
|
3545
|
+
var state_2 = _loop_2(index);
|
|
3546
|
+
index = out_index_1;
|
|
3547
|
+
if (state_2 === "break")
|
|
3548
|
+
break;
|
|
3417
3549
|
}
|
|
3418
3550
|
if (!isNullOrUndefined(this.hiddenElement)) {
|
|
3419
|
-
this.
|
|
3551
|
+
if (this.isRemoveSelection) {
|
|
3552
|
+
if (this.findListElement(this.hiddenElement, 'option', 'value', this.currentRemoveValue)) {
|
|
3553
|
+
this.hiddenElement.removeChild(this.findListElement(this.hiddenElement, 'option', 'value', this.currentRemoveValue));
|
|
3554
|
+
}
|
|
3555
|
+
this.isRemoveSelection = false;
|
|
3556
|
+
}
|
|
3557
|
+
else {
|
|
3558
|
+
this.hiddenElement.innerHTML = hiddenElementContent;
|
|
3559
|
+
}
|
|
3420
3560
|
}
|
|
3421
3561
|
}
|
|
3422
3562
|
var isChipRemove = e && e.target && e.target.classList.contains('e-chips-close');
|
|
@@ -3481,7 +3621,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3481
3621
|
this.removeListSelection();
|
|
3482
3622
|
if (!isNullOrUndefined(this.value)) {
|
|
3483
3623
|
for (var index = 0; !isNullOrUndefined(this.value[index]); index++) {
|
|
3484
|
-
value = this.allowObjectBinding ?
|
|
3624
|
+
value = this.allowObjectBinding ?
|
|
3625
|
+
getValue(((this.fields.value) ? this.fields.value : ''), this.value[index]) :
|
|
3626
|
+
this.value[index];
|
|
3485
3627
|
element = this.findListElement(this.hideSelectedItem ? this.ulElement : this.list, 'li', 'data-value', value);
|
|
3486
3628
|
var isCustomData = false;
|
|
3487
3629
|
if (this.enableVirtualization) {
|
|
@@ -3507,7 +3649,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3507
3649
|
}
|
|
3508
3650
|
}
|
|
3509
3651
|
}
|
|
3510
|
-
if ((isNullOrUndefined(text) && this.allowCustomValue) &&
|
|
3652
|
+
if ((isNullOrUndefined(text) && this.allowCustomValue) &&
|
|
3653
|
+
((!(this.dataSource instanceof DataManager)) ||
|
|
3654
|
+
(this.dataSource instanceof DataManager && isInitialVirtualData))) {
|
|
3511
3655
|
text = this.getTextByValue(value);
|
|
3512
3656
|
isCustomData = true;
|
|
3513
3657
|
}
|
|
@@ -3517,15 +3661,21 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3517
3661
|
}
|
|
3518
3662
|
if (((element && (element.getAttribute('aria-selected') !== 'true')) ||
|
|
3519
3663
|
(element && (element.getAttribute('aria-selected') === 'true' && this.hideSelectedItem) &&
|
|
3520
|
-
(this.mode === 'Box' || this.mode === 'Default'))) ||
|
|
3664
|
+
(this.mode === 'Box' || this.mode === 'Default'))) ||
|
|
3665
|
+
(this.enableVirtualization && value != null && text != null && !isCustomData)) {
|
|
3521
3666
|
var currentText = [];
|
|
3522
|
-
var textValues = this.text != null && this.text
|
|
3667
|
+
var textValues = this.text != null && this.text !== '' ? this.text + ',' + text : text;
|
|
3523
3668
|
currentText.push(textValues);
|
|
3524
3669
|
this.setProperties({ text: currentText.toString() }, true);
|
|
3525
3670
|
this.addChip(text, value);
|
|
3526
3671
|
this.addListSelection(element);
|
|
3527
3672
|
}
|
|
3528
|
-
else if ((!this.enableVirtualization && value && this.allowCustomValue) ||
|
|
3673
|
+
else if ((!this.enableVirtualization && value && this.allowCustomValue) ||
|
|
3674
|
+
(this.enableVirtualization &&
|
|
3675
|
+
value &&
|
|
3676
|
+
this.allowCustomValue &&
|
|
3677
|
+
((!(this.dataSource instanceof DataManager)) ||
|
|
3678
|
+
(this.dataSource instanceof DataManager && isInitialVirtualData)))) {
|
|
3529
3679
|
var indexItem = this.listData.length;
|
|
3530
3680
|
var newValue = {};
|
|
3531
3681
|
setValue(this.fields.text, value, newValue);
|
|
@@ -3542,14 +3692,15 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3542
3692
|
this.virtualCustomSelectData = [newValue];
|
|
3543
3693
|
}
|
|
3544
3694
|
}
|
|
3545
|
-
element = element ? element : this.findListElement(this.hideSelectedItem ?
|
|
3695
|
+
element = element ? element : this.findListElement(this.hideSelectedItem ?
|
|
3696
|
+
this.ulElement : this.list, 'li', 'data-value', value);
|
|
3546
3697
|
if (this.popupWrapper.contains(noDataEle)) {
|
|
3547
3698
|
this.list.setAttribute('style', noDataEle.getAttribute('style'));
|
|
3548
3699
|
this.popupWrapper.replaceChild(this.list, noDataEle);
|
|
3549
3700
|
this.wireListEvents();
|
|
3550
3701
|
}
|
|
3551
3702
|
var currentText = [];
|
|
3552
|
-
var textValues = this.text != null && this.text
|
|
3703
|
+
var textValues = this.text != null && this.text !== '' ? this.text + ',' + text : text;
|
|
3553
3704
|
currentText.push(textValues);
|
|
3554
3705
|
this.setProperties({ text: currentText.toString() }, true);
|
|
3555
3706
|
this.addChip(text, value);
|
|
@@ -3581,7 +3732,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3581
3732
|
};
|
|
3582
3733
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
3583
3734
|
MultiSelect.prototype.updateActionCompleteData = function (li, item) {
|
|
3584
|
-
if (this.value && ((!this.allowObjectBinding && this.value.indexOf(li.getAttribute('data-value')) > -1) ||
|
|
3735
|
+
if (this.value && ((!this.allowObjectBinding && this.value.indexOf(li.getAttribute('data-value')) > -1) ||
|
|
3736
|
+
(this.allowObjectBinding && this.isObjectInArray(this.getDataByValue(li.getAttribute('data-value')), this.value)))) {
|
|
3585
3737
|
this.mainList = this.ulElement;
|
|
3586
3738
|
if (this.hideSelectedItem) {
|
|
3587
3739
|
addClass([li], HIDE_LIST);
|
|
@@ -3605,8 +3757,14 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3605
3757
|
MultiSelect.prototype.updateDataList = function () {
|
|
3606
3758
|
if (this.mainList && this.ulElement && !(this.isFiltered || this.filterAction || this.targetElement().trim())) {
|
|
3607
3759
|
var isDynamicGroupItemUpdate = this.mainList.childElementCount < this.ulElement.childElementCount;
|
|
3608
|
-
var isReactTemplateUpdate = ((this.ulElement.childElementCount > 0 &&
|
|
3609
|
-
|
|
3760
|
+
var isReactTemplateUpdate = ((this.ulElement.childElementCount > 0 &&
|
|
3761
|
+
this.ulElement.children[0].childElementCount > 0) &&
|
|
3762
|
+
(this.mainList.children[0] && (this.mainList.children[0].childElementCount <
|
|
3763
|
+
this.ulElement.children[0].childElementCount)));
|
|
3764
|
+
var isAngularTemplateUpdate = this.itemTemplate && this.ulElement.childElementCount > 0 &&
|
|
3765
|
+
!(this.ulElement.childElementCount < this.mainList.childElementCount) &&
|
|
3766
|
+
(this.ulElement.children[0].childElementCount > 0 ||
|
|
3767
|
+
(this.fields.groupBy && this.ulElement.children[1] && this.ulElement.children[1].childElementCount > 0));
|
|
3610
3768
|
if (isDynamicGroupItemUpdate || isReactTemplateUpdate || isAngularTemplateUpdate) {
|
|
3611
3769
|
//EJ2-57748 - for this task, we prevent the ul element cloning ( this.mainList = this.ulElement.cloneNode ? <HTMLElement>this.ulElement.cloneNode(true) : this.ulElement;)
|
|
3612
3770
|
this.mainList = this.ulElement;
|
|
@@ -3619,13 +3777,15 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3619
3777
|
};
|
|
3620
3778
|
MultiSelect.prototype.updateListSelection = function (li, e, length) {
|
|
3621
3779
|
var customVal = li.getAttribute('data-value');
|
|
3622
|
-
var value = this.allowObjectBinding ?
|
|
3780
|
+
var value = this.allowObjectBinding ?
|
|
3781
|
+
this.getDataByValue(this.getFormattedValue(customVal)) : this.getFormattedValue(customVal);
|
|
3623
3782
|
if (this.allowCustomValue && ((customVal !== 'false' && value === false) ||
|
|
3624
3783
|
(!isNullOrUndefined(value) && value.toString() === 'NaN'))) {
|
|
3625
3784
|
value = customVal;
|
|
3626
3785
|
}
|
|
3627
3786
|
this.removeHover();
|
|
3628
|
-
if (!this.value || ((!this.allowObjectBinding && this.value.indexOf(value) === -1) ||
|
|
3787
|
+
if (!this.value || ((!this.allowObjectBinding && this.value.indexOf(value) === -1) ||
|
|
3788
|
+
(this.allowObjectBinding && this.indexOfObjectInArray(value, this.value) === -1))) {
|
|
3629
3789
|
this.dispatchSelect(value, e, li, (li.getAttribute('aria-selected') === 'true'), length);
|
|
3630
3790
|
}
|
|
3631
3791
|
else {
|
|
@@ -3636,7 +3796,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3636
3796
|
var _this = this;
|
|
3637
3797
|
value = this.allowObjectBinding ? getValue(((this.fields.value) ? this.fields.value : ''), value) : value;
|
|
3638
3798
|
var text = this.getTextByValue(value);
|
|
3639
|
-
if ((this.allowCustomValue || this.allowFiltering) &&
|
|
3799
|
+
if ((this.allowCustomValue || this.allowFiltering) &&
|
|
3800
|
+
!this.findListElement(this.mainList, 'li', 'data-value', value) &&
|
|
3801
|
+
(!this.enableVirtualization || (this.enableVirtualization && this.virtualCustomData))) {
|
|
3640
3802
|
var temp_1 = li ? li.cloneNode(true) : li;
|
|
3641
3803
|
var fieldValue = this.fields.value ? this.fields.value : 'value';
|
|
3642
3804
|
if (this.allowCustomValue && this.mainData.length && typeof getValue(fieldValue, this.mainData[0]) === 'number') {
|
|
@@ -3870,7 +4032,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
3870
4032
|
this.liCollections = this.list.querySelectorAll('.' + dropDownBaseClasses.li);
|
|
3871
4033
|
this.virtualItemCount = this.itemCount;
|
|
3872
4034
|
if (this.mode !== 'CheckBox') {
|
|
3873
|
-
this.totalItemCount = this.value && this.value.length ? this.totalItemCount - this.value.length :
|
|
4035
|
+
this.totalItemCount = this.value && this.value.length ? this.totalItemCount - this.value.length :
|
|
4036
|
+
this.totalItemCount;
|
|
3874
4037
|
}
|
|
3875
4038
|
if (!this.list.querySelector('.e-virtual-ddl')) {
|
|
3876
4039
|
var virualElement = this.createElement('div', {
|
|
@@ -4300,7 +4463,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4300
4463
|
MultiSelect.prototype.getOverflowVal = function (index) {
|
|
4301
4464
|
var temp;
|
|
4302
4465
|
if (this.mainData && this.mainData.length) {
|
|
4303
|
-
var value = this.allowObjectBinding ?
|
|
4466
|
+
var value = this.allowObjectBinding ?
|
|
4467
|
+
getValue(((this.fields.value) ? this.fields.value : ''), this.value[index]) : this.value[index];
|
|
4304
4468
|
if (this.mode === 'CheckBox') {
|
|
4305
4469
|
var newTemp = this.listData;
|
|
4306
4470
|
this.listData = this.mainData;
|
|
@@ -4312,7 +4476,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4312
4476
|
}
|
|
4313
4477
|
}
|
|
4314
4478
|
else {
|
|
4315
|
-
temp = this.allowObjectBinding ? getValue(((this.fields.value) ? this.fields.value : ''), this.value[index]) :
|
|
4479
|
+
temp = this.allowObjectBinding ? getValue(((this.fields.value) ? this.fields.value : ''), this.value[index]) :
|
|
4480
|
+
this.value[index];
|
|
4316
4481
|
}
|
|
4317
4482
|
return temp;
|
|
4318
4483
|
};
|
|
@@ -4359,7 +4524,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4359
4524
|
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide):not(.e-disabled):not(.e-virtual-list)');
|
|
4360
4525
|
}
|
|
4361
4526
|
if (this.enableGroupCheckBox && this.mode === 'CheckBox' && !isNullOrUndefined(this.fields.groupBy)) {
|
|
4362
|
-
var target = (event ? (this.groupTemplate ?
|
|
4527
|
+
var target = (event ? (this.groupTemplate ?
|
|
4528
|
+
closest(event.target, '.e-list-group-item') : event.target) : null);
|
|
4363
4529
|
target = (event && event.keyCode === 32) ? list : target;
|
|
4364
4530
|
target = (target && target.classList.contains('e-frame')) ? target.parentElement.parentElement : target;
|
|
4365
4531
|
if (target && target.classList.contains('e-list-group-item')) {
|
|
@@ -4426,7 +4592,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4426
4592
|
var length = li.length;
|
|
4427
4593
|
var count = this.maximumSelectionLength;
|
|
4428
4594
|
if (state) {
|
|
4429
|
-
|
|
4595
|
+
this.virtualSelectAll = true;
|
|
4596
|
+
length = this.virtualSelectAllData && this.virtualSelectAllData.length !== 0 ? this.virtualSelectAllData.length : length;
|
|
4430
4597
|
this.listData = this.virtualSelectAllData;
|
|
4431
4598
|
var ulElement = this.createListItems(this.virtualSelectAllData.slice(0, 30), this.fields);
|
|
4432
4599
|
var firstItems = ulElement.querySelectorAll('li');
|
|
@@ -4442,21 +4609,27 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4442
4609
|
while (index < length && index <= 50 && index < count) {
|
|
4443
4610
|
this.isSelectAllTarget = (length === index + 1);
|
|
4444
4611
|
if (concatenatedNodeList[index]) {
|
|
4445
|
-
var value = this.allowObjectBinding
|
|
4446
|
-
|
|
4612
|
+
var value = this.allowObjectBinding
|
|
4613
|
+
? this.getDataByValue(concatenatedNodeList[index].getAttribute('data-value'))
|
|
4614
|
+
: this.getFormattedValue(concatenatedNodeList[index].getAttribute('data-value'));
|
|
4615
|
+
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value) >= 0) ||
|
|
4616
|
+
(this.allowObjectBinding && this.indexOfObjectInArray(value, this.value) >= 0))) {
|
|
4447
4617
|
index++;
|
|
4448
4618
|
continue;
|
|
4449
4619
|
}
|
|
4450
4620
|
this.updateListSelection(concatenatedNodeList[index], event, length - index);
|
|
4451
4621
|
}
|
|
4452
4622
|
else {
|
|
4453
|
-
var value = getValue(
|
|
4623
|
+
var value = getValue(this.fields.value ? this.fields.value : '', this.virtualSelectAllData[index]);
|
|
4454
4624
|
value = this.allowObjectBinding ? this.getDataByValue(value) : value;
|
|
4455
|
-
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value) >= 0) ||
|
|
4625
|
+
if (((!this.allowObjectBinding && this.value && this.value.indexOf(value) >= 0) ||
|
|
4626
|
+
(this.allowObjectBinding && this.indexOfObjectInArray(value, this.value) >= 0))) {
|
|
4456
4627
|
index++;
|
|
4457
4628
|
continue;
|
|
4458
4629
|
}
|
|
4459
|
-
if (this.value && value != null && Array.isArray(this.value) &&
|
|
4630
|
+
if (this.value && value != null && Array.isArray(this.value) &&
|
|
4631
|
+
((!this.allowObjectBinding && this.value.indexOf(value) < 0) ||
|
|
4632
|
+
(this.allowObjectBinding && !this.isObjectInArray(value, this.value)))) {
|
|
4460
4633
|
this.dispatchSelect(value, event, null, false, length);
|
|
4461
4634
|
}
|
|
4462
4635
|
}
|
|
@@ -4466,7 +4639,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4466
4639
|
setTimeout(function () {
|
|
4467
4640
|
if (_this.virtualSelectAllData && _this.virtualSelectAllData.length > 0) {
|
|
4468
4641
|
_this.virtualSelectAllData.map(function (obj) {
|
|
4469
|
-
if (_this.value && obj[_this.fields.value] != null && Array.isArray(_this.value) &&
|
|
4642
|
+
if (_this.value && obj[_this.fields.value] != null && Array.isArray(_this.value) &&
|
|
4643
|
+
((!_this.allowObjectBinding && _this.value.indexOf(obj[_this.fields.value]) < 0) ||
|
|
4644
|
+
(_this.allowObjectBinding && !_this.isObjectInArray(obj[_this.fields.value], _this.value)))) {
|
|
4470
4645
|
_this.dispatchSelect(obj[_this.fields.value], event, null, false, length);
|
|
4471
4646
|
}
|
|
4472
4647
|
});
|
|
@@ -4504,22 +4679,22 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4504
4679
|
this.value = [];
|
|
4505
4680
|
this.virtualSelectAll = false;
|
|
4506
4681
|
if (!isNullOrUndefined(this.viewPortInfo.startIndex) && !isNullOrUndefined(this.viewPortInfo.endIndex)) {
|
|
4507
|
-
this.notify(
|
|
4682
|
+
this.notify('setCurrentViewDataAsync', {
|
|
4508
4683
|
component: this.getModuleName(),
|
|
4509
|
-
module:
|
|
4684
|
+
module: 'VirtualScroll'
|
|
4510
4685
|
});
|
|
4511
4686
|
}
|
|
4512
4687
|
}
|
|
4513
4688
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4514
4689
|
var virtualTrackElement = this.list.getElementsByClassName('e-virtual-ddl')[0];
|
|
4515
4690
|
if (virtualTrackElement) {
|
|
4516
|
-
|
|
4691
|
+
virtualTrackElement.style = this.GetVirtualTrackHeight();
|
|
4517
4692
|
}
|
|
4518
4693
|
this.UpdateSkeleton();
|
|
4519
4694
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4520
4695
|
var virtualContentElement = this.list.getElementsByClassName('e-virtual-ddl-content')[0];
|
|
4521
4696
|
if (virtualContentElement) {
|
|
4522
|
-
|
|
4697
|
+
virtualContentElement.style = this.getTransformValues();
|
|
4523
4698
|
}
|
|
4524
4699
|
};
|
|
4525
4700
|
MultiSelect.prototype.updateValue = function (event, li, state) {
|
|
@@ -4535,7 +4710,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4535
4710
|
};
|
|
4536
4711
|
this.trigger('beforeSelectAll', beforeSelectArgs);
|
|
4537
4712
|
if ((li && li.length) || (this.enableVirtualization && !state)) {
|
|
4538
|
-
var
|
|
4713
|
+
var index_1 = 0;
|
|
4539
4714
|
var count_1 = 0;
|
|
4540
4715
|
if (this.enableGroupCheckBox) {
|
|
4541
4716
|
count_1 = state ? this.maximumSelectionLength - (this.value ? this.value.length : 0) : li.length;
|
|
@@ -4545,8 +4720,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4545
4720
|
}
|
|
4546
4721
|
if (!beforeSelectArgs.preventSelectEvent) {
|
|
4547
4722
|
if (this.enableVirtualization) {
|
|
4548
|
-
this.virtualSelectAll = true;
|
|
4549
4723
|
this.virtualSelectAllState = state;
|
|
4724
|
+
this.virtualSelectAll = true;
|
|
4550
4725
|
this.CurrentEvent = event;
|
|
4551
4726
|
if (!this.virtualSelectAllData) {
|
|
4552
4727
|
this.resetList(this.dataSource, this.fields, new Query());
|
|
@@ -4556,23 +4731,23 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4556
4731
|
}
|
|
4557
4732
|
}
|
|
4558
4733
|
else {
|
|
4559
|
-
while (
|
|
4560
|
-
this.isSelectAllTarget = (length ===
|
|
4561
|
-
this.updateListSelection(li[
|
|
4734
|
+
while (index_1 < length && index_1 <= 50 && index_1 < count_1) {
|
|
4735
|
+
this.isSelectAllTarget = (length === index_1 + 1);
|
|
4736
|
+
this.updateListSelection(li[index_1], event, length - index_1);
|
|
4562
4737
|
if (this.enableGroupCheckBox) {
|
|
4563
|
-
this.findGroupStart(li[
|
|
4738
|
+
this.findGroupStart(li[index_1]);
|
|
4564
4739
|
}
|
|
4565
|
-
|
|
4740
|
+
index_1++;
|
|
4566
4741
|
}
|
|
4567
4742
|
if (length > 50) {
|
|
4568
4743
|
setTimeout(function () {
|
|
4569
|
-
while (
|
|
4570
|
-
_this.isSelectAllTarget = (length ===
|
|
4571
|
-
_this.updateListSelection(li[
|
|
4744
|
+
while (index_1 < length && index_1 < count_1) {
|
|
4745
|
+
_this.isSelectAllTarget = (length === index_1 + 1);
|
|
4746
|
+
_this.updateListSelection(li[index_1], event, length - index_1);
|
|
4572
4747
|
if (_this.enableGroupCheckBox) {
|
|
4573
|
-
_this.findGroupStart(li[
|
|
4748
|
+
_this.findGroupStart(li[index_1]);
|
|
4574
4749
|
}
|
|
4575
|
-
|
|
4750
|
+
index_1++;
|
|
4576
4751
|
}
|
|
4577
4752
|
_this.updatedataValueItems(event);
|
|
4578
4753
|
if (!_this.changeOnBlur) {
|
|
@@ -4580,10 +4755,10 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4580
4755
|
_this.isSelectAll = _this.isSelectAll ? !_this.isSelectAll : _this.isSelectAll;
|
|
4581
4756
|
}
|
|
4582
4757
|
_this.updateHiddenElement();
|
|
4583
|
-
if (_this.popupWrapper && li[
|
|
4758
|
+
if (_this.popupWrapper && li[index_1 - 1].classList.contains('e-item-focus')) {
|
|
4584
4759
|
var selectAllParent = document.getElementsByClassName('e-selectall-parent')[0];
|
|
4585
4760
|
if (selectAllParent && selectAllParent.classList.contains('e-item-focus')) {
|
|
4586
|
-
li[
|
|
4761
|
+
li[index_1 - 1].classList.remove('e-item-focus');
|
|
4587
4762
|
}
|
|
4588
4763
|
}
|
|
4589
4764
|
}, 0);
|
|
@@ -4601,7 +4776,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4601
4776
|
'li.e-list-item[aria-selected="true"]:not(.e-reorder-hide)')[i] : null;
|
|
4602
4777
|
if (state) {
|
|
4603
4778
|
this.value = !this.value ? [] : this.value;
|
|
4604
|
-
if ((!this.allowObjectBinding && this.value.indexOf(value) < 0) ||
|
|
4779
|
+
if ((!this.allowObjectBinding && this.value.indexOf(value) < 0) ||
|
|
4780
|
+
(this.allowObjectBinding && !this.isObjectInArray(value, this.value))) {
|
|
4605
4781
|
this.setProperties({ value: [].concat([], this.value, [value]) }, true);
|
|
4606
4782
|
}
|
|
4607
4783
|
this.removeFocus();
|
|
@@ -4877,7 +5053,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4877
5053
|
this.addValidInputClass();
|
|
4878
5054
|
Input.createSpanElement(this.overAllWrapper, this.createElement);
|
|
4879
5055
|
this.calculateWidth();
|
|
4880
|
-
if (!isNullOrUndefined(this.overAllWrapper) &&
|
|
5056
|
+
if (!isNullOrUndefined(this.overAllWrapper) &&
|
|
5057
|
+
!isNullOrUndefined(this.overAllWrapper.getElementsByClassName('e-ddl-icon')[0] &&
|
|
5058
|
+
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0] && this.floatLabelType !== 'Never')) {
|
|
4881
5059
|
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0].classList.add('e-icon');
|
|
4882
5060
|
}
|
|
4883
5061
|
break;
|
|
@@ -4915,7 +5093,6 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4915
5093
|
break;
|
|
4916
5094
|
default:
|
|
4917
5095
|
{
|
|
4918
|
-
// eslint-disable-next-line max-len
|
|
4919
5096
|
var msProps = this.getPropObject(prop, newProp, oldProp);
|
|
4920
5097
|
_super.prototype.onPropertyChanged.call(this, msProps.newProperty, msProps.oldProperty);
|
|
4921
5098
|
}
|
|
@@ -4945,16 +5122,18 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4945
5122
|
dataSourceCount = this.dataSource && this.dataSource.length ? this.dataSource.length : 0;
|
|
4946
5123
|
}
|
|
4947
5124
|
if (this.mode === 'CheckBox') {
|
|
4948
|
-
this.totalItemCount = dataSourceCount
|
|
5125
|
+
this.totalItemCount = dataSourceCount !== 0 ? dataSourceCount : this.totalItemCount;
|
|
4949
5126
|
}
|
|
4950
5127
|
else {
|
|
4951
5128
|
if (this.hideSelectedItem) {
|
|
4952
|
-
this.totalItemCount = dataSourceCount
|
|
5129
|
+
this.totalItemCount = dataSourceCount !== 0 && this.value ? dataSourceCount - this.value.length : this.totalItemCount;
|
|
4953
5130
|
if (this.allowCustomValue && this.virtualCustomSelectData && this.virtualCustomSelectData.length > 0) {
|
|
4954
5131
|
for (var i = 0; i < this.virtualCustomSelectData.length; i++) {
|
|
4955
5132
|
for (var j = 0; j < this.value.length; j++) {
|
|
4956
|
-
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
4957
|
-
|
|
5133
|
+
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
5134
|
+
this.fields.value : '', this.value[j]) : this.value[j];
|
|
5135
|
+
var customValue = getValue((this.fields.value) ?
|
|
5136
|
+
this.fields.value : '', this.virtualCustomSelectData[i]);
|
|
4958
5137
|
if (value === customValue) {
|
|
4959
5138
|
this.totalItemCount += 1;
|
|
4960
5139
|
}
|
|
@@ -4963,7 +5142,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4963
5142
|
}
|
|
4964
5143
|
}
|
|
4965
5144
|
else {
|
|
4966
|
-
this.totalItemCount = dataSourceCount
|
|
5145
|
+
this.totalItemCount = dataSourceCount !== 0 ? dataSourceCount : this.totalItemCount;
|
|
4967
5146
|
if (this.allowCustomValue && this.virtualCustomSelectData && this.virtualCustomSelectData.length > 0) {
|
|
4968
5147
|
this.totalItemCount += this.virtualCustomSelectData.length;
|
|
4969
5148
|
}
|
|
@@ -4973,16 +5152,17 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4973
5152
|
MultiSelect.prototype.presentItemValue = function (ulElement) {
|
|
4974
5153
|
var valuecheck = [];
|
|
4975
5154
|
for (var i = 0; i < this.value.length; i++) {
|
|
4976
|
-
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
5155
|
+
var value = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
5156
|
+
this.fields.value : '', this.value[i]) : this.value[i];
|
|
4977
5157
|
var checkEle = this.findListElement(((this.allowFiltering && !isNullOrUndefined(this.mainList)) ? this.mainList : ulElement), 'li', 'data-value', value);
|
|
4978
5158
|
if (!checkEle) {
|
|
4979
|
-
var checkvalue = this.allowObjectBinding ?
|
|
5159
|
+
var checkvalue = this.allowObjectBinding ?
|
|
5160
|
+
this.getDataByValue(this.value[i]) : this.value[i];
|
|
4980
5161
|
valuecheck.push(checkvalue);
|
|
4981
5162
|
}
|
|
4982
5163
|
}
|
|
4983
5164
|
return valuecheck;
|
|
4984
5165
|
};
|
|
4985
|
-
;
|
|
4986
5166
|
MultiSelect.prototype.addNonPresentItems = function (valuecheck, ulElement, list, event) {
|
|
4987
5167
|
var _this = this;
|
|
4988
5168
|
this.dataSource.executeQuery(this.getForQuery(valuecheck)).then(function (e) {
|
|
@@ -4992,7 +5172,6 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
4992
5172
|
_this.updateActionList(ulElement, list, event);
|
|
4993
5173
|
});
|
|
4994
5174
|
};
|
|
4995
|
-
;
|
|
4996
5175
|
MultiSelect.prototype.updateVal = function (newProp, oldProp, prop) {
|
|
4997
5176
|
if (!this.list) {
|
|
4998
5177
|
this.onLoadSelect();
|
|
@@ -5005,7 +5184,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5005
5184
|
if (!isNullOrUndefined(this.value) && !this.allowCustomValue) {
|
|
5006
5185
|
valuecheck = this.presentItemValue(this.ulElement);
|
|
5007
5186
|
}
|
|
5008
|
-
if (prop
|
|
5187
|
+
if (prop === 'value' && valuecheck.length > 0 && this.dataSource instanceof DataManager && !isNullOrUndefined(this.value)
|
|
5009
5188
|
&& this.listData != null && !this.enableVirtualization) {
|
|
5010
5189
|
this.mainData = null;
|
|
5011
5190
|
this.setDynValue = true;
|
|
@@ -5059,6 +5238,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5059
5238
|
/**
|
|
5060
5239
|
* Hides the popup, if the popup in a open state.
|
|
5061
5240
|
*
|
|
5241
|
+
* @param {MouseEvent | KeyboardEventArgs} e - Specifies the mouse event or keyboard event.
|
|
5062
5242
|
* @returns {void}
|
|
5063
5243
|
*/
|
|
5064
5244
|
MultiSelect.prototype.hidePopup = function (e) {
|
|
@@ -5080,7 +5260,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5080
5260
|
}
|
|
5081
5261
|
_this.beforePopupOpen = false;
|
|
5082
5262
|
_this.overAllWrapper.classList.remove(iconAnimation);
|
|
5083
|
-
var typedValue = _this.mode
|
|
5263
|
+
var typedValue = _this.mode === 'CheckBox' ? _this.targetElement() : null;
|
|
5084
5264
|
_this.popupObj.hide(new Animation(eventArgs.animation));
|
|
5085
5265
|
attributes(_this.inputElement, { 'aria-expanded': 'false' });
|
|
5086
5266
|
_this.inputElement.removeAttribute('aria-owns');
|
|
@@ -5094,9 +5274,11 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5094
5274
|
if (_this.mode === 'CheckBox' && _this.showSelectAll) {
|
|
5095
5275
|
EventHandler.remove(_this.popupObj.element, 'click', _this.clickHandler);
|
|
5096
5276
|
}
|
|
5097
|
-
if (_this.enableVirtualization && _this.mode === 'CheckBox' && _this.value && _this.value.length > 0 &&
|
|
5277
|
+
if (_this.enableVirtualization && _this.mode === 'CheckBox' && _this.value && _this.value.length > 0 &&
|
|
5278
|
+
_this.enableSelectionOrder) {
|
|
5098
5279
|
_this.viewPortInfo.startIndex = _this.virtualItemStartIndex = 0;
|
|
5099
|
-
_this.viewPortInfo.endIndex = _this.virtualItemEndIndex = _this.viewPortInfo.startIndex > 0 ?
|
|
5280
|
+
_this.viewPortInfo.endIndex = _this.virtualItemEndIndex = _this.viewPortInfo.startIndex > 0 ?
|
|
5281
|
+
_this.viewPortInfo.endIndex : _this.itemCount;
|
|
5100
5282
|
_this.virtualListInfo = _this.viewPortInfo;
|
|
5101
5283
|
_this.previousStartIndex = 0;
|
|
5102
5284
|
_this.previousEndIndex = 0;
|
|
@@ -5114,11 +5296,13 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5114
5296
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5115
5297
|
dataSourceCount = _this.dataSource && _this.dataSource.length ? _this.dataSource.length : 0;
|
|
5116
5298
|
}
|
|
5117
|
-
if (_this.enableVirtualization && (_this.allowFiltering || _this.allowCustomValue) &&
|
|
5118
|
-
_this.
|
|
5299
|
+
if (_this.enableVirtualization && (_this.allowFiltering || _this.allowCustomValue) &&
|
|
5300
|
+
(_this.targetElement() || typedValue) && _this.totalItemCount !== dataSourceCount) {
|
|
5119
5301
|
_this.checkAndResetCache();
|
|
5302
|
+
_this.updateInitialData();
|
|
5120
5303
|
}
|
|
5121
|
-
if (_this.virtualCustomData && _this.viewPortInfo && _this.viewPortInfo.startIndex === 0 &&
|
|
5304
|
+
if (_this.virtualCustomData && _this.viewPortInfo && _this.viewPortInfo.startIndex === 0 &&
|
|
5305
|
+
_this.viewPortInfo.endIndex === _this.itemCount) {
|
|
5122
5306
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5123
5307
|
_this.renderItems(_this.mainData, _this.fields);
|
|
5124
5308
|
}
|
|
@@ -5131,6 +5315,7 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5131
5315
|
/**
|
|
5132
5316
|
* Shows the popup, if the popup in a closed state.
|
|
5133
5317
|
*
|
|
5318
|
+
* @param {MouseEvent | KeyboardEventArgs} e - Specifies the mouse event or keyboard event.
|
|
5134
5319
|
* @returns {void}
|
|
5135
5320
|
*/
|
|
5136
5321
|
MultiSelect.prototype.showPopup = function (e) {
|
|
@@ -5144,43 +5329,47 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5144
5329
|
if (!args.cancel) {
|
|
5145
5330
|
if (!_this.ulElement) {
|
|
5146
5331
|
_this.beforePopupOpen = true;
|
|
5147
|
-
if (_this.mode === 'CheckBox' && Browser.isDevice && _this.allowFiltering) {
|
|
5332
|
+
if (_this.mode === 'CheckBox' && Browser.isDevice && _this.allowFiltering && _this.isDeviceFullScreen) {
|
|
5148
5333
|
_this.notify('popupFullScreen', { module: 'CheckBoxSelection', enable: _this.mode === 'CheckBox' });
|
|
5149
5334
|
}
|
|
5150
5335
|
_super.prototype.render.call(_this, e);
|
|
5151
5336
|
return;
|
|
5152
5337
|
}
|
|
5153
|
-
if (_this.mode === 'CheckBox' && Browser.isDevice && _this.allowFiltering) {
|
|
5338
|
+
if (_this.mode === 'CheckBox' && Browser.isDevice && _this.allowFiltering && _this.isDeviceFullScreen) {
|
|
5154
5339
|
_this.notify('popupFullScreen', { module: 'CheckBoxSelection', enable: _this.mode === 'CheckBox' });
|
|
5155
5340
|
}
|
|
5156
5341
|
var mainLiLength = _this.ulElement.querySelectorAll('li.' + 'e-list-item').length;
|
|
5157
5342
|
var liLength = _this.ulElement.querySelectorAll('li.'
|
|
5158
5343
|
+ dropDownBaseClasses.li + '.' + HIDE_LIST).length;
|
|
5159
|
-
if (mainLiLength > 0 && (mainLiLength === liLength) && (liLength === _this.mainData.length) &&
|
|
5344
|
+
if (mainLiLength > 0 && (mainLiLength === liLength) && (liLength === _this.mainData.length) &&
|
|
5345
|
+
!(_this.targetElement() !== '' && _this.allowCustomValue)) {
|
|
5160
5346
|
_this.beforePopupOpen = false;
|
|
5161
5347
|
return;
|
|
5162
5348
|
}
|
|
5163
5349
|
_this.onPopupShown(e);
|
|
5164
5350
|
if (_this.enableVirtualization && _this.listData && _this.listData.length) {
|
|
5165
|
-
if (!isNullOrUndefined(_this.value) && (_this.getModuleName() === 'dropdownlist' ||
|
|
5351
|
+
if (!isNullOrUndefined(_this.value) && (_this.getModuleName() === 'dropdownlist' ||
|
|
5352
|
+
_this.getModuleName() === 'combobox')) {
|
|
5166
5353
|
_this.removeHover();
|
|
5167
5354
|
}
|
|
5168
5355
|
if (!_this.beforePopupOpen) {
|
|
5169
5356
|
if (_this.hideSelectedItem && _this.value && Array.isArray(_this.value) && _this.value.length > 0) {
|
|
5170
5357
|
_this.totalItemsCount();
|
|
5171
5358
|
}
|
|
5172
|
-
if (!_this.preventSetCurrentData && !isNullOrUndefined(_this.viewPortInfo.startIndex) &&
|
|
5173
|
-
_this.
|
|
5359
|
+
if (!_this.preventSetCurrentData && !isNullOrUndefined(_this.viewPortInfo.startIndex) &&
|
|
5360
|
+
!isNullOrUndefined(_this.viewPortInfo.endIndex)) {
|
|
5361
|
+
_this.notify('setCurrentViewDataAsync', {
|
|
5174
5362
|
component: _this.getModuleName(),
|
|
5175
|
-
module:
|
|
5363
|
+
module: 'VirtualScroll'
|
|
5176
5364
|
});
|
|
5177
5365
|
}
|
|
5178
5366
|
}
|
|
5179
5367
|
}
|
|
5180
|
-
if (_this.enableVirtualization && !_this.allowFiltering && _this.selectedValueInfo != null &&
|
|
5181
|
-
_this.
|
|
5182
|
-
|
|
5183
|
-
|
|
5368
|
+
if (_this.enableVirtualization && !_this.allowFiltering && _this.selectedValueInfo != null &&
|
|
5369
|
+
_this.selectedValueInfo.startIndex > 0 && _this.value != null) {
|
|
5370
|
+
_this.notify('dataProcessAsync', {
|
|
5371
|
+
module: 'VirtualScroll',
|
|
5372
|
+
isOpen: true
|
|
5184
5373
|
});
|
|
5185
5374
|
}
|
|
5186
5375
|
if (_this.enableVirtualization) {
|
|
@@ -5193,7 +5382,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5193
5382
|
var listItems = _this.getItems();
|
|
5194
5383
|
for (var _i = 0, _a = _this.value; _i < _a.length; _i++) {
|
|
5195
5384
|
var value = _a[_i];
|
|
5196
|
-
var checkValue = _this.allowObjectBinding ?
|
|
5385
|
+
var checkValue = _this.allowObjectBinding ?
|
|
5386
|
+
getValue((_this.fields.value) ? _this.fields.value : '', value) : value;
|
|
5197
5387
|
element = _this.getElementByValue(checkValue);
|
|
5198
5388
|
if (element) {
|
|
5199
5389
|
_this.addListSelection(element);
|
|
@@ -5258,8 +5448,13 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5258
5448
|
this.setDynValue = this.initStatus = false;
|
|
5259
5449
|
this.isSelectAll = false;
|
|
5260
5450
|
this.selectAllEventEle = [];
|
|
5261
|
-
this.searchWrapper = this.createElement('span', {
|
|
5262
|
-
|
|
5451
|
+
this.searchWrapper = this.createElement('span', {
|
|
5452
|
+
className: SEARCHBOX_WRAPPER + ' ' + ((this.mode === 'Box') ?
|
|
5453
|
+
BOX_ELEMENT : '')
|
|
5454
|
+
});
|
|
5455
|
+
this.viewWrapper = this.createElement('span', {
|
|
5456
|
+
className: DELIMITER_VIEW + ' ' + DELIMITER_WRAPPER, styles: 'display:none;'
|
|
5457
|
+
});
|
|
5263
5458
|
this.overAllClear = this.createElement('span', {
|
|
5264
5459
|
className: CLOSEICON_CLASS, styles: 'display:none;'
|
|
5265
5460
|
});
|
|
@@ -5318,7 +5513,10 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5318
5513
|
this.inputElement.setAttribute('aria-describedby', this.chipCollectionWrapper.id);
|
|
5319
5514
|
}
|
|
5320
5515
|
if (!isNullOrUndefined(this.inputElement)) {
|
|
5321
|
-
attributes(this.inputElement, { 'aria-expanded': 'false'
|
|
5516
|
+
attributes(this.inputElement, { 'aria-expanded': 'false' });
|
|
5517
|
+
if (!this.inputElement.hasAttribute('aria-label')) {
|
|
5518
|
+
this.inputElement.setAttribute('aria-label', this.getModuleName());
|
|
5519
|
+
}
|
|
5322
5520
|
}
|
|
5323
5521
|
if (this.element.tagName !== this.getNgDirective()) {
|
|
5324
5522
|
this.element.style.display = 'none';
|
|
@@ -5351,7 +5549,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5351
5549
|
if (this.mode !== 'CheckBox') {
|
|
5352
5550
|
this.hideOverAllClear();
|
|
5353
5551
|
}
|
|
5354
|
-
if (!isNullOrUndefined(closest(this.element,
|
|
5552
|
+
if (!isNullOrUndefined(closest(this.element, 'fieldset')) &&
|
|
5553
|
+
closest(this.element, 'fieldset').disabled) {
|
|
5355
5554
|
this.enabled = false;
|
|
5356
5555
|
}
|
|
5357
5556
|
this.wireEvent();
|
|
@@ -5363,14 +5562,16 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5363
5562
|
this.listItemHeight = this.getListHeight();
|
|
5364
5563
|
this.getSkeletonCount();
|
|
5365
5564
|
this.viewPortInfo.startIndex = this.virtualItemStartIndex = 0;
|
|
5366
|
-
this.viewPortInfo.endIndex = this.virtualItemEndIndex = this.viewPortInfo.startIndex > 0 ?
|
|
5565
|
+
this.viewPortInfo.endIndex = this.virtualItemEndIndex = this.viewPortInfo.startIndex > 0 ?
|
|
5566
|
+
this.viewPortInfo.endIndex : this.itemCount;
|
|
5367
5567
|
this.checkInitialValue();
|
|
5368
5568
|
if (this.element.hasAttribute('data-val')) {
|
|
5369
5569
|
this.element.setAttribute('data-val', 'false');
|
|
5370
5570
|
}
|
|
5371
5571
|
Input.createSpanElement(this.overAllWrapper, this.createElement);
|
|
5372
5572
|
this.calculateWidth();
|
|
5373
|
-
if (!isNullOrUndefined(this.overAllWrapper) && !isNullOrUndefined(this.overAllWrapper.getElementsByClassName('e-ddl-icon')[0] &&
|
|
5573
|
+
if (!isNullOrUndefined(this.overAllWrapper) && !isNullOrUndefined(this.overAllWrapper.getElementsByClassName('e-ddl-icon')[0] &&
|
|
5574
|
+
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0] && this.floatLabelType !== 'Never')) {
|
|
5374
5575
|
this.overAllWrapper.getElementsByClassName('e-float-text-content')[0].classList.add('e-icon');
|
|
5375
5576
|
}
|
|
5376
5577
|
this.renderComplete();
|
|
@@ -5387,7 +5588,8 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5387
5588
|
listParent.appendChild(item);
|
|
5388
5589
|
document.body.appendChild(listParent);
|
|
5389
5590
|
this.virtualListHeight = listParent.getBoundingClientRect().height;
|
|
5390
|
-
var listItemHeight = Math.ceil(item.getBoundingClientRect().height)
|
|
5591
|
+
var listItemHeight = Math.ceil(item.getBoundingClientRect().height) +
|
|
5592
|
+
parseInt(window.getComputedStyle(item).marginBottom, 10);
|
|
5391
5593
|
listParent.remove();
|
|
5392
5594
|
return listItemHeight;
|
|
5393
5595
|
};
|
|
@@ -5469,7 +5671,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5469
5671
|
var fields = (this.fields.value) ? this.fields.value : '';
|
|
5470
5672
|
var predicate = void 0;
|
|
5471
5673
|
for (var i = 0; i < this.value.length; i++) {
|
|
5472
|
-
var value = this.allowObjectBinding ?
|
|
5674
|
+
var value = this.allowObjectBinding ?
|
|
5675
|
+
getValue((this.fields.value) ? this.fields.value : '', this.value[i]) :
|
|
5676
|
+
this.value[i];
|
|
5473
5677
|
if (i === 0) {
|
|
5474
5678
|
predicate = new Predicate(fields, 'equal', value);
|
|
5475
5679
|
}
|
|
@@ -5530,10 +5734,10 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5530
5734
|
if (this.value && this.value.length) {
|
|
5531
5735
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5532
5736
|
var element = void 0;
|
|
5533
|
-
var listItems = this.getItems();
|
|
5534
5737
|
for (var _i = 0, _a = this.value; _i < _a.length; _i++) {
|
|
5535
5738
|
var value = _a[_i];
|
|
5536
|
-
var checkValue = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
5739
|
+
var checkValue = this.allowObjectBinding ? getValue((this.fields.value) ?
|
|
5740
|
+
this.fields.value : '', value) : value;
|
|
5537
5741
|
element = this.getElementByValue(checkValue);
|
|
5538
5742
|
if (element) {
|
|
5539
5743
|
this.addListSelection(element);
|
|
@@ -5808,6 +6012,9 @@ var MultiSelect = /** @class */ (function (_super) {
|
|
|
5808
6012
|
__decorate([
|
|
5809
6013
|
Property(null)
|
|
5810
6014
|
], MultiSelect.prototype, "allowFiltering", void 0);
|
|
6015
|
+
__decorate([
|
|
6016
|
+
Property(true)
|
|
6017
|
+
], MultiSelect.prototype, "isDeviceFullScreen", void 0);
|
|
5811
6018
|
__decorate([
|
|
5812
6019
|
Property(true)
|
|
5813
6020
|
], MultiSelect.prototype, "changeOnBlur", void 0);
|