@syncfusion/ej2-dropdowns 30.1.42 → 30.2.5
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/aceconfig.js +17 -0
- 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 +149 -8
- package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
- package/dist/es6/ej2-dropdowns.es5.js +150 -8
- 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 +8 -8
- package/src/common/virtual-scroll.js +3 -0
- package/src/drop-down-base/drop-down-base.d.ts +2 -0
- package/src/drop-down-base/drop-down-base.js +87 -1
- package/src/drop-down-list/drop-down-list.js +4 -1
- package/src/list-box/list-box.d.ts +1 -0
- package/src/list-box/list-box.js +21 -3
- package/src/multi-select/multi-select.js +35 -3
- package/styles/bds-lite.css +12 -0
- package/styles/bds.css +12 -0
- package/styles/bootstrap-dark-lite.css +12 -0
- package/styles/bootstrap-dark.css +12 -0
- package/styles/bootstrap-lite.css +12 -0
- package/styles/bootstrap.css +12 -0
- package/styles/bootstrap4-lite.css +12 -0
- package/styles/bootstrap4.css +12 -0
- package/styles/bootstrap5-dark-lite.css +12 -0
- package/styles/bootstrap5-dark.css +12 -0
- package/styles/bootstrap5-lite.css +12 -0
- package/styles/bootstrap5.3-lite.css +12 -0
- package/styles/bootstrap5.3.css +12 -0
- package/styles/bootstrap5.css +12 -0
- package/styles/drop-down-tree/_layout.scss +5 -0
- package/styles/drop-down-tree/bds.css +3 -0
- package/styles/drop-down-tree/bootstrap-dark.css +3 -0
- package/styles/drop-down-tree/bootstrap.css +3 -0
- package/styles/drop-down-tree/bootstrap4.css +3 -0
- package/styles/drop-down-tree/bootstrap5-dark.css +3 -0
- package/styles/drop-down-tree/bootstrap5.3.css +3 -0
- package/styles/drop-down-tree/bootstrap5.css +3 -0
- package/styles/drop-down-tree/fabric-dark.css +3 -0
- package/styles/drop-down-tree/fabric.css +3 -0
- package/styles/drop-down-tree/fluent-dark.css +3 -0
- package/styles/drop-down-tree/fluent.css +3 -0
- package/styles/drop-down-tree/fluent2.css +3 -0
- package/styles/drop-down-tree/highcontrast-light.css +3 -0
- package/styles/drop-down-tree/highcontrast.css +3 -0
- package/styles/drop-down-tree/material-dark.css +3 -0
- package/styles/drop-down-tree/material.css +3 -0
- package/styles/drop-down-tree/material3-dark.css +3 -0
- package/styles/drop-down-tree/material3.css +3 -0
- package/styles/drop-down-tree/tailwind-dark.css +3 -0
- package/styles/drop-down-tree/tailwind.css +3 -0
- package/styles/drop-down-tree/tailwind3.css +3 -0
- package/styles/fabric-dark-lite.css +12 -0
- package/styles/fabric-dark.css +12 -0
- package/styles/fabric-lite.css +12 -0
- package/styles/fabric.css +12 -0
- package/styles/fluent-dark-lite.css +12 -0
- package/styles/fluent-dark.css +12 -0
- package/styles/fluent-lite.css +12 -0
- package/styles/fluent.css +12 -0
- package/styles/fluent2-lite.css +12 -0
- package/styles/fluent2.css +12 -0
- package/styles/highcontrast-light-lite.css +12 -0
- package/styles/highcontrast-light.css +12 -0
- package/styles/highcontrast-lite.css +12 -0
- package/styles/highcontrast.css +12 -0
- package/styles/list-box/_bds-definition.scss +1 -0
- package/styles/list-box/_bootstrap-dark-definition.scss +1 -0
- package/styles/list-box/_bootstrap-definition.scss +1 -0
- package/styles/list-box/_bootstrap4-definition.scss +1 -0
- package/styles/list-box/_bootstrap5-definition.scss +1 -0
- package/styles/list-box/_bootstrap5.3-definition.scss +1 -0
- package/styles/list-box/_fabric-dark-definition.scss +1 -0
- package/styles/list-box/_fabric-definition.scss +1 -0
- package/styles/list-box/_fluent-definition.scss +1 -0
- package/styles/list-box/_fluent2-definition.scss +1 -0
- package/styles/list-box/_fusionnew-definition.scss +1 -0
- package/styles/list-box/_highcontrast-definition.scss +1 -0
- package/styles/list-box/_highcontrast-light-definition.scss +1 -0
- package/styles/list-box/_layout.scss +8 -0
- package/styles/list-box/_material-dark-definition.scss +1 -0
- package/styles/list-box/_material-definition.scss +1 -0
- package/styles/list-box/_material3-definition.scss +1 -0
- package/styles/list-box/_tailwind-definition.scss +1 -0
- package/styles/list-box/_tailwind3-definition.scss +1 -0
- package/styles/list-box/bds.css +9 -0
- package/styles/list-box/bootstrap-dark.css +9 -0
- package/styles/list-box/bootstrap.css +9 -0
- package/styles/list-box/bootstrap4.css +9 -0
- package/styles/list-box/bootstrap5-dark.css +9 -0
- package/styles/list-box/bootstrap5.3.css +9 -0
- package/styles/list-box/bootstrap5.css +9 -0
- package/styles/list-box/fabric-dark.css +9 -0
- package/styles/list-box/fabric.css +9 -0
- package/styles/list-box/fluent-dark.css +9 -0
- package/styles/list-box/fluent.css +9 -0
- package/styles/list-box/fluent2.css +9 -0
- package/styles/list-box/highcontrast-light.css +9 -0
- package/styles/list-box/highcontrast.css +9 -0
- package/styles/list-box/material-dark.css +9 -0
- package/styles/list-box/material.css +9 -0
- package/styles/list-box/material3-dark.css +9 -0
- package/styles/list-box/material3.css +9 -0
- package/styles/list-box/tailwind-dark.css +9 -0
- package/styles/list-box/tailwind.css +9 -0
- package/styles/list-box/tailwind3.css +9 -0
- package/styles/material-dark-lite.css +12 -0
- package/styles/material-dark.css +12 -0
- package/styles/material-lite.css +12 -0
- package/styles/material.css +12 -0
- package/styles/material3-dark-lite.css +12 -0
- package/styles/material3-dark.css +12 -0
- package/styles/material3-lite.css +12 -0
- package/styles/material3.css +12 -0
- package/styles/tailwind-dark-lite.css +12 -0
- package/styles/tailwind-dark.css +12 -0
- package/styles/tailwind-lite.css +12 -0
- package/styles/tailwind.css +12 -0
- package/styles/tailwind3-lite.css +12 -0
- package/styles/tailwind3.css +12 -0
|
@@ -430,6 +430,9 @@ class VirtualScroll {
|
|
|
430
430
|
isListUpdated = false;
|
|
431
431
|
}
|
|
432
432
|
else if (this.parent.viewPortInfo.startIndex !== 0) {
|
|
433
|
+
if (this.parent.dataSource instanceof DataManager) {
|
|
434
|
+
this.parent.setCurrentView = false;
|
|
435
|
+
}
|
|
433
436
|
this.parent.updateVirtualReOrderList(true);
|
|
434
437
|
const oldUlElement = this.parent.list.querySelector('.e-list-parent' + ':not(.e-reorder)');
|
|
435
438
|
if (oldUlElement) {
|
|
@@ -1718,6 +1721,86 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
1718
1721
|
this.fiteredGroupHeaderItems = clonedHeaders;
|
|
1719
1722
|
}
|
|
1720
1723
|
}
|
|
1724
|
+
setCustomListData(dataSource, fields, query, event) {
|
|
1725
|
+
fields = fields ? fields : this.fields;
|
|
1726
|
+
let ulElement;
|
|
1727
|
+
this.isActive = true;
|
|
1728
|
+
this.isPreventChange = this.isAngular && this.preventChange ? true : this.isPreventChange;
|
|
1729
|
+
if (!this.isRequesting) {
|
|
1730
|
+
this.isRequesting = true;
|
|
1731
|
+
this.showSpinner();
|
|
1732
|
+
this.isRequesting = false;
|
|
1733
|
+
let isReOrder = true;
|
|
1734
|
+
let listItems;
|
|
1735
|
+
if (this.isVirtualizationEnabled && !this.virtualGroupDataSource && this.fields.groupBy) {
|
|
1736
|
+
const data = new DataManager(this.dataSource).executeLocal(new Query().group(this.fields.groupBy));
|
|
1737
|
+
this.virtualGroupDataSource = data.records;
|
|
1738
|
+
}
|
|
1739
|
+
const dataManager = this.isVirtualizationEnabled &&
|
|
1740
|
+
this.virtualGroupDataSource
|
|
1741
|
+
&& !this.isCustomDataUpdated ? new DataManager(this.virtualGroupDataSource) :
|
|
1742
|
+
new DataManager(dataSource);
|
|
1743
|
+
listItems = (this.getQuery(query)).executeLocal(dataManager);
|
|
1744
|
+
if (!this.virtualSelectAll) {
|
|
1745
|
+
const newQuery = this.getQuery(query);
|
|
1746
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1747
|
+
if (this.isVirtualizationEnabled && (listItems.count !== 0 &&
|
|
1748
|
+
listItems.count < (this.itemCount * 2)) && !this.appendUncheckList) {
|
|
1749
|
+
if (newQuery) {
|
|
1750
|
+
for (let queryElements = 0; queryElements < newQuery.queries.length; queryElements++) {
|
|
1751
|
+
if (newQuery.queries[queryElements].fn === 'onTake') {
|
|
1752
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1753
|
+
newQuery.queries[queryElements].e.nos = listItems.count;
|
|
1754
|
+
listItems = (newQuery).executeLocal(dataManager);
|
|
1755
|
+
}
|
|
1756
|
+
if (this.getModuleName() === 'multiselect' && (newQuery.queries[queryElements].e.condition === 'or' || newQuery.queries[queryElements].e.operator === 'equal') && !this.isCustomFiltering) {
|
|
1757
|
+
isReOrder = false;
|
|
1758
|
+
}
|
|
1759
|
+
}
|
|
1760
|
+
if (isReOrder) {
|
|
1761
|
+
listItems = (newQuery).executeLocal(dataManager);
|
|
1762
|
+
this.isVirtualTrackHeight = (!(this.dataSource instanceof DataManager) &&
|
|
1763
|
+
!this.isCustomDataUpdated) ? true : false;
|
|
1764
|
+
}
|
|
1765
|
+
}
|
|
1766
|
+
}
|
|
1767
|
+
else {
|
|
1768
|
+
this.isVirtualTrackHeight = false;
|
|
1769
|
+
if (newQuery) {
|
|
1770
|
+
for (let queryElements = 0; queryElements < newQuery.queries.length; queryElements++) {
|
|
1771
|
+
if (this.getModuleName() === 'multiselect' && ((newQuery.queries[queryElements].e && newQuery.queries[queryElements].e.condition === 'or') || (newQuery.queries[queryElements].e && newQuery.queries[queryElements].e.operator === 'equal'))) {
|
|
1772
|
+
isReOrder = false;
|
|
1773
|
+
}
|
|
1774
|
+
}
|
|
1775
|
+
}
|
|
1776
|
+
}
|
|
1777
|
+
}
|
|
1778
|
+
if (isReOrder && (!(this.dataSource instanceof DataManager) && !this.isCustomDataUpdated) &&
|
|
1779
|
+
!this.virtualSelectAll) {
|
|
1780
|
+
// eslint-disable @typescript-eslint/no-explicit-any
|
|
1781
|
+
this.dataCount = this.totalItemCount = this.virtualSelectAll ? listItems.length :
|
|
1782
|
+
listItems.count;
|
|
1783
|
+
}
|
|
1784
|
+
listItems = this.isVirtualizationEnabled ? listItems.result : listItems;
|
|
1785
|
+
this.isPreventChange = this.isAngular && this.preventChange ? true : this.isPreventChange;
|
|
1786
|
+
this.isCustomFiltering = false;
|
|
1787
|
+
if (this.isIncrementalRequest) {
|
|
1788
|
+
ulElement = this.renderItems(listItems, fields);
|
|
1789
|
+
return;
|
|
1790
|
+
}
|
|
1791
|
+
ulElement = this.renderItems(listItems, fields);
|
|
1792
|
+
this.onActionComplete(ulElement, listItems, event);
|
|
1793
|
+
if (this.groupTemplate) {
|
|
1794
|
+
this.renderGroupTemplate(ulElement);
|
|
1795
|
+
}
|
|
1796
|
+
this.bindChildItems(listItems, ulElement, fields);
|
|
1797
|
+
setTimeout(() => {
|
|
1798
|
+
if (this.getModuleName() === 'multiselect' && this.itemTemplate != null && (ulElement.childElementCount > 0 && (ulElement.children[0].childElementCount > 0 || (this.fields.groupBy && ulElement.children[1] && ulElement.children[1].childElementCount > 0)))) {
|
|
1799
|
+
this.updateDataList();
|
|
1800
|
+
}
|
|
1801
|
+
});
|
|
1802
|
+
}
|
|
1803
|
+
}
|
|
1721
1804
|
handleVirtualKeyboardActions(e, pageCount) {
|
|
1722
1805
|
// Used this method in component side.
|
|
1723
1806
|
}
|
|
@@ -2436,7 +2519,12 @@ let DropDownBase = class DropDownBase extends Component {
|
|
|
2436
2519
|
}
|
|
2437
2520
|
dataSource = this.getModuleName() === 'combobox' && this.selectData && dataSource instanceof Array && dataSource.length < this.selectData.length && this.addedNewItem ? this.selectData : dataSource;
|
|
2438
2521
|
this.addedNewItem = false;
|
|
2439
|
-
this.
|
|
2522
|
+
if (this.isCustomReset && this.getModuleName() === 'multiselect') {
|
|
2523
|
+
this.setCustomListData(dataSource, fields, query, e);
|
|
2524
|
+
}
|
|
2525
|
+
else {
|
|
2526
|
+
this.setListData(dataSource, fields, query, e);
|
|
2527
|
+
}
|
|
2440
2528
|
}
|
|
2441
2529
|
}
|
|
2442
2530
|
updateSelectElementData(isFiltering) {
|
|
@@ -4504,6 +4592,9 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
4504
4592
|
}
|
|
4505
4593
|
if (!isNullOrUndefined(dataItem.value) && !this.enableVirtualization && this.allowFiltering) {
|
|
4506
4594
|
this.activeIndex = this.getIndexByValueFilter(dataItem.value, this.actionCompleteData.ulElement);
|
|
4595
|
+
if (isNullOrUndefined(this.activeIndex)) {
|
|
4596
|
+
this.activeIndex = this.getIndexByValue(dataItem.value);
|
|
4597
|
+
}
|
|
4507
4598
|
}
|
|
4508
4599
|
const clearIcon = dropDownListClasses.clearIcon;
|
|
4509
4600
|
const isFilterElement = this.isFiltering() && this.filterInput && (this.getModuleName() === 'combobox');
|
|
@@ -5511,7 +5602,7 @@ let DropDownList = class DropDownList extends DropDownBase {
|
|
|
5511
5602
|
popupEle.setAttribute('aria-label', this.element.id);
|
|
5512
5603
|
popupEle.setAttribute('role', 'dialog');
|
|
5513
5604
|
const searchBox = this.setSearchBox(popupEle);
|
|
5514
|
-
this.listContainerHeight = this.allowFiltering && this.getModuleName() === 'dropdownlist' && Browser.isDevice ?
|
|
5605
|
+
this.listContainerHeight = this.allowFiltering && this.getModuleName() === 'dropdownlist' && Browser.isDevice && this.isDeviceFullScreen ?
|
|
5515
5606
|
formatUnit(Math.round(window.outerHeight).toString() + 'px') : formatUnit(this.popupHeight);
|
|
5516
5607
|
if (this.headerTemplate) {
|
|
5517
5608
|
this.setHeaderTemplate(popupEle);
|
|
@@ -13329,7 +13420,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
13329
13420
|
}
|
|
13330
13421
|
const isContainsValue = valuecheck.some((item) => item !== null);
|
|
13331
13422
|
if (valuecheck.length > 0 && this.dataSource instanceof DataManager && !isNullOrUndefined(this.value)
|
|
13332
|
-
&& this.listData != null && isContainsValue) {
|
|
13423
|
+
&& this.listData != null && (!this.enableVirtualization || (this.enableVirtualization && this.valueTemplate)) && isContainsValue) {
|
|
13333
13424
|
this.isaddNonPresentItems = true;
|
|
13334
13425
|
this.addNonPresentItems(valuecheck, this.ulElement, this.listData);
|
|
13335
13426
|
this.isaddNonPresentItems = false;
|
|
@@ -13824,6 +13915,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
13824
13915
|
checkForCustomValue(query, fields) {
|
|
13825
13916
|
const dataChecks = !this.getValueByText(this.inputElement.value, this.ignoreCase);
|
|
13826
13917
|
const field = fields ? fields : this.fields;
|
|
13918
|
+
this.isCustomReset = true;
|
|
13827
13919
|
if (this.allowCustomValue && dataChecks) {
|
|
13828
13920
|
const value = this.inputElement.value;
|
|
13829
13921
|
const customData = (!isNullOrUndefined(this.mainData) && this.mainData.length > 0) ?
|
|
@@ -13877,6 +13969,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
13877
13969
|
const tempData = JSON.parse(JSON.stringify(this.listData));
|
|
13878
13970
|
tempData.splice(0, 0, dataItem);
|
|
13879
13971
|
this.resetList(tempData, field, query);
|
|
13972
|
+
this.focusAtLastListItem(value);
|
|
13880
13973
|
}
|
|
13881
13974
|
}
|
|
13882
13975
|
else if (this.listData) {
|
|
@@ -13905,6 +13998,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
13905
13998
|
}
|
|
13906
13999
|
}
|
|
13907
14000
|
}
|
|
14001
|
+
this.isCustomReset = false;
|
|
13908
14002
|
if (this.value && this.value.length) {
|
|
13909
14003
|
this.refreshSelection();
|
|
13910
14004
|
}
|
|
@@ -15170,11 +15264,20 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
15170
15264
|
}
|
|
15171
15265
|
removeChipSelection() {
|
|
15172
15266
|
if (this.chipCollectionWrapper) {
|
|
15267
|
+
const selectedChips = this.chipCollectionWrapper.querySelectorAll('span.' + CHIP$1 + '.' + CHIP_SELECTED);
|
|
15268
|
+
if (selectedChips && selectedChips.length > 0) {
|
|
15269
|
+
for (let i = 0; i < selectedChips.length; i++) {
|
|
15270
|
+
selectedChips[i].removeAttribute('aria-live');
|
|
15271
|
+
}
|
|
15272
|
+
}
|
|
15173
15273
|
this.removeChipFocus();
|
|
15174
15274
|
}
|
|
15175
15275
|
}
|
|
15176
15276
|
addChipSelection(element, e) {
|
|
15177
15277
|
addClass([element], CHIP_SELECTED);
|
|
15278
|
+
if (element) {
|
|
15279
|
+
element.setAttribute('aria-live', 'polite');
|
|
15280
|
+
}
|
|
15178
15281
|
this.trigger('chipSelection', e);
|
|
15179
15282
|
}
|
|
15180
15283
|
getVirtualDataByValue(value) {
|
|
@@ -15372,6 +15475,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
15372
15475
|
const collection = this.list.querySelectorAll('li.'
|
|
15373
15476
|
+ dropDownBaseClasses.li + ':not(.e-active)');
|
|
15374
15477
|
removeClass(collection, 'e-disable');
|
|
15478
|
+
const mainListCollection = this.mainList.querySelectorAll('li.'
|
|
15479
|
+
+ dropDownBaseClasses.li + ':not(.e-active)');
|
|
15480
|
+
removeClass(mainListCollection, 'e-disable');
|
|
15375
15481
|
}
|
|
15376
15482
|
this.trigger('removed', eventArgs);
|
|
15377
15483
|
const targetEle = eve && eve.currentTarget;
|
|
@@ -15666,7 +15772,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
15666
15772
|
let itemData = { text: value, value: value };
|
|
15667
15773
|
const chip = this.createElement('span', {
|
|
15668
15774
|
className: CHIP$1,
|
|
15669
|
-
attrs: { 'data-value': value, 'title': data }
|
|
15775
|
+
attrs: { 'data-value': value, 'title': data, 'role': 'option', 'aria-selected': 'true' }
|
|
15670
15776
|
});
|
|
15671
15777
|
let compiledString;
|
|
15672
15778
|
const chipContent = this.createElement('span', { className: CHIP_CONTENT$1 });
|
|
@@ -18216,7 +18322,8 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
18216
18322
|
}
|
|
18217
18323
|
const isContainsValue = valuecheck.some((item) => item !== null);
|
|
18218
18324
|
if (prop === 'value' && valuecheck.length > 0 && this.dataSource instanceof DataManager && !isNullOrUndefined(this.value)
|
|
18219
|
-
&& this.listData != null &&
|
|
18325
|
+
&& this.listData != null && (!this.enableVirtualization || (this.enableVirtualization && this.valueTemplate))
|
|
18326
|
+
&& isContainsValue) {
|
|
18220
18327
|
this.mainData = null;
|
|
18221
18328
|
this.setDynValue = true;
|
|
18222
18329
|
this.isaddNonPresentItems = true;
|
|
@@ -18528,6 +18635,22 @@ let MultiSelect = class MultiSelect extends DropDownBase {
|
|
|
18528
18635
|
else {
|
|
18529
18636
|
this.setProperties({ value: null }, true);
|
|
18530
18637
|
}
|
|
18638
|
+
this.checkAndResetCache();
|
|
18639
|
+
if (this.enableVirtualization) {
|
|
18640
|
+
this.updateInitialData();
|
|
18641
|
+
if (this.chipCollectionWrapper) {
|
|
18642
|
+
this.chipCollectionWrapper.innerHTML = '';
|
|
18643
|
+
}
|
|
18644
|
+
if (!this.isCustomDataUpdated) {
|
|
18645
|
+
this.notify('setGeneratedData', {
|
|
18646
|
+
module: 'VirtualScroll'
|
|
18647
|
+
});
|
|
18648
|
+
}
|
|
18649
|
+
this.list.scrollTop = 0;
|
|
18650
|
+
this.virtualListInfo = null;
|
|
18651
|
+
this.previousStartIndex = 0;
|
|
18652
|
+
this.previousEndIndex = this.itemCount;
|
|
18653
|
+
}
|
|
18531
18654
|
}
|
|
18532
18655
|
/**
|
|
18533
18656
|
* To Initialize the control rendering
|
|
@@ -20089,6 +20212,22 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
20089
20212
|
this.unSelectAllText = l10nSelect.getConstant('unSelectAllText');
|
|
20090
20213
|
this.popupWrapper = this.list;
|
|
20091
20214
|
this.checkBoxSelectionModule.checkAllParent = null;
|
|
20215
|
+
if (this.filterParent) {
|
|
20216
|
+
const parentNode = this.filterParent.parentNode;
|
|
20217
|
+
if (parentNode) {
|
|
20218
|
+
const firstChild = this.filterParent.querySelector('input.e-input-filter');
|
|
20219
|
+
if (!firstChild.classList.contains('e-input-focus') && !firstChild.classList.contains('e-valid-input')
|
|
20220
|
+
&& this.selectedListItemCount === 0) {
|
|
20221
|
+
this.filterParent = null;
|
|
20222
|
+
}
|
|
20223
|
+
if (this.selectedListItemCount > 0 && this.showSelectAll) {
|
|
20224
|
+
this.filterParent = null;
|
|
20225
|
+
}
|
|
20226
|
+
}
|
|
20227
|
+
else {
|
|
20228
|
+
this.filterParent = null;
|
|
20229
|
+
}
|
|
20230
|
+
}
|
|
20092
20231
|
this.notify('selectAll', {});
|
|
20093
20232
|
}
|
|
20094
20233
|
}
|
|
@@ -20196,7 +20335,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
20196
20335
|
setHeight() {
|
|
20197
20336
|
const ele = this.toolbarSettings.items.length ? this.list.parentElement : this.list;
|
|
20198
20337
|
ele.style.height = formatUnit(this.height);
|
|
20199
|
-
if (this.allowFiltering && this.height.toString().indexOf('%')
|
|
20338
|
+
if (this.allowFiltering && this.height.toString().indexOf('%') > 0) {
|
|
20200
20339
|
addClass([this.list], 'e-filter-list');
|
|
20201
20340
|
}
|
|
20202
20341
|
else {
|
|
@@ -20284,6 +20423,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
20284
20423
|
}
|
|
20285
20424
|
}
|
|
20286
20425
|
super.onActionComplete(ulElement, list, e);
|
|
20426
|
+
this.initWrapper();
|
|
20287
20427
|
if (this.allowFiltering && !isNullOrUndefined(searchEle)) {
|
|
20288
20428
|
this.list.insertBefore(searchEle, this.list.firstElementChild);
|
|
20289
20429
|
this.filterParent = this.list.getElementsByClassName('e-filter-parent')[0];
|
|
@@ -20302,7 +20442,6 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
20302
20442
|
});
|
|
20303
20443
|
}
|
|
20304
20444
|
}
|
|
20305
|
-
this.initWrapper();
|
|
20306
20445
|
this.setSelection(this.value, true, false, !this.isRendered);
|
|
20307
20446
|
this.initDraggable();
|
|
20308
20447
|
this.mainList = this.ulElement;
|
|
@@ -21106,6 +21245,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
21106
21245
|
}
|
|
21107
21246
|
}
|
|
21108
21247
|
const len = this.getSelectedItems().length;
|
|
21248
|
+
this.selectedListItemCount = len;
|
|
21109
21249
|
if (this.showSelectAll && searchCount) {
|
|
21110
21250
|
this.notify('checkSelectAll', { module: 'CheckBoxSelection',
|
|
21111
21251
|
value: (searchCount === len) ? 'check' : (len === 0) ? 'uncheck' : 'indeterminate' });
|
|
@@ -21914,7 +22054,8 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
|
|
|
21914
22054
|
e.preventDefault();
|
|
21915
22055
|
return;
|
|
21916
22056
|
}
|
|
21917
|
-
const char =
|
|
22057
|
+
const char = e.code && e.keyCode >= 96 && e.keyCode <= 105 ?
|
|
22058
|
+
String.fromCharCode(e.keyCode - 48) : String.fromCharCode(e.keyCode);
|
|
21918
22059
|
const isWordCharacter = char.match(/\w/);
|
|
21919
22060
|
const isWordAccentCharacter = char.match(/[A-Za-z0-9\u00C0-\u024F ]/);
|
|
21920
22061
|
if (!isNullOrUndefined(isWordCharacter) || !isNullOrUndefined(isWordAccentCharacter)) {
|