@syncfusion/ej2-dropdowns 26.1.41 → 26.1.42

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.
@@ -3913,7 +3913,7 @@ let DropDownList = class DropDownList extends DropDownBase {
3913
3913
  this.removeSelection();
3914
3914
  li.classList.add(dropDownBaseClasses.selected);
3915
3915
  this.removeHover();
3916
- const value = li.getAttribute('data-value') !== "null" ? this.getFormattedValue(li.getAttribute('data-value')) : null;
3916
+ const value = li.getAttribute('data-value') !== null ? this.getFormattedValue(li.getAttribute('data-value')) : null;
3917
3917
  const selectedData = this.getDataByValue(value);
3918
3918
  if (!this.initial && !preventSelect && !isNullOrUndefined(e)) {
3919
3919
  const items = this.detachChanges(selectedData);
@@ -3988,6 +3988,7 @@ let DropDownList = class DropDownList extends DropDownBase {
3988
3988
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
3989
3989
  setValue(e) {
3990
3990
  const dataItem = this.getItemData();
3991
+ this.isTouched = !isNullOrUndefined(e);
3991
3992
  if (dataItem.value === null) {
3992
3993
  Input.setValue(null, this.inputElement, this.floatLabelType, this.showClearButton);
3993
3994
  }
@@ -5859,7 +5860,9 @@ let DropDownList = class DropDownList extends DropDownBase {
5859
5860
  checkData(newProp) {
5860
5861
  if (newProp.dataSource && !isNullOrUndefined(Object.keys(newProp.dataSource)) && this.itemTemplate && this.allowFiltering &&
5861
5862
  !(this.isListSearched && (newProp.dataSource instanceof DataManager))) {
5862
- this.list = null;
5863
+ if (this.list) {
5864
+ this.list.innerHTML = '';
5865
+ }
5863
5866
  this.actionCompleteData = { ulElement: null, list: null, isUpdated: false };
5864
5867
  }
5865
5868
  this.isListSearched = false;
@@ -5901,7 +5904,13 @@ let DropDownList = class DropDownList extends DropDownBase {
5901
5904
  this.itemData = this.getDataByValue(currentValue);
5902
5905
  const dataItem = this.getItemData();
5903
5906
  let value = this.allowObjectBinding ? this.itemData : dataItem.value;
5904
- this.setProperties({ 'text': dataItem.text, 'value': value });
5907
+ const index = isNullOrUndefined(value) ? null : this.index;
5908
+ if (isNullOrUndefined(index) && (currentValue == value)) {
5909
+ this.setProperties({ 'text': dataItem.text, 'value': value });
5910
+ }
5911
+ else {
5912
+ this.setProperties({ 'text': dataItem.text, 'index': index, 'value': value });
5913
+ }
5905
5914
  }
5906
5915
  updateInputFields() {
5907
5916
  if (this.getModuleName() === 'dropdownlist') {
@@ -8196,10 +8205,9 @@ let DropDownTree = class DropDownTree extends Component {
8196
8205
  this.popupObj.refreshPosition();
8197
8206
  if (!(this.showCheckBox && this.showSelectAll) && (!this.popupDiv.classList.contains(NODATA)
8198
8207
  && this.treeItems.length > 0)) {
8199
- let focusedElement;
8200
- if (this.value != null && this.text != null) {
8208
+ let focusedElement = this.value != null && this.text != null ? this.treeObj.element.querySelector('[data-uid="' + this.value[0] + '"]') : null;
8209
+ if (focusedElement) {
8201
8210
  this.treeObj.element.querySelector('li').setAttribute('tabindex', '-1');
8202
- focusedElement = this.treeObj.element.querySelector('[data-uid="' + this.value[0] + '"]');
8203
8211
  focusedElement.setAttribute('tabindex', '0');
8204
8212
  }
8205
8213
  else {
@@ -12118,6 +12126,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
12118
12126
  this.isCustomRendered = true;
12119
12127
  this.remoteCustomValue = this.enableVirtualization ? false : this.remoteCustomValue;
12120
12128
  }
12129
+ if (this.mode === 'CheckBox' && this.enableGroupCheckBox && !isNullOrUndefined(this.fields.groupBy) && !isNullOrUndefined(this.fields.disabled)) {
12130
+ this.disableGroupHeader();
12131
+ }
12121
12132
  if (this.dataSource instanceof DataManager && this.mode === 'CheckBox' && this.allowFiltering) {
12122
12133
  this.removeFocus();
12123
12134
  }
@@ -12281,9 +12292,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
12281
12292
  return (!isNullOrUndefined(liElement) ? liElement : this.liCollections[0]);
12282
12293
  }
12283
12294
  checkSelectAll() {
12284
- const groupItemLength = this.list.querySelectorAll('li.e-list-group-item.e-active').length;
12295
+ const groupItemLength = !isNullOrUndefined(this.fields.disabled) ? this.list.querySelectorAll('li.e-list-group-item.e-active:not(.e-disabled)').length : this.list.querySelectorAll('li.e-list-group-item.e-active').length;
12285
12296
  const listItem = this.list.querySelectorAll('li.e-list-item');
12286
- const searchCount = this.enableVirtualization ? this.list.querySelectorAll('li.' + dropDownBaseClasses.li + ':not(.e-virtual-list)').length : this.list.querySelectorAll('li.' + dropDownBaseClasses.li).length;
12297
+ const searchCount = this.enableVirtualization ? this.list.querySelectorAll('li.' + dropDownBaseClasses.li + ':not(.e-virtual-list)').length : !isNullOrUndefined(this.fields.disabled) ? this.list.querySelectorAll('li.' + dropDownBaseClasses.li + ':not(.e-disabled)').length : this.list.querySelectorAll('li.' + dropDownBaseClasses.li).length;
12287
12298
  let searchActiveCount = this.list.querySelectorAll('li.' + dropDownBaseClasses.selected).length;
12288
12299
  if (this.enableGroupCheckBox && !isNullOrUndefined(this.fields.groupBy)) {
12289
12300
  searchActiveCount = searchActiveCount - groupItemLength;
@@ -13663,7 +13674,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
13663
13674
  }
13664
13675
  const focusedLi = this.list ? this.list.querySelector('.e-item-focus') : null;
13665
13676
  if (this.isDisabledElement(focusedLi)) {
13666
- if (this.list.querySelectorAll('.e-list-item:not(.e-hide-listitem):not(.e-disabled)').length === 0) {
13677
+ if (this.list.querySelectorAll('.e-list-item:not(.e-hide-listitem):not(.e-disabled)').length === 0 || (this.keyCode === 38 && this.mode === 'CheckBox' && this.enableGroupCheckBox && !isNullOrUndefined(this.fields.groupBy) && focusedLi === this.list.querySelector('li.e-list-group-item'))) {
13667
13678
  this.removeFocus();
13668
13679
  return;
13669
13680
  }
@@ -14062,9 +14073,17 @@ let MultiSelect = class MultiSelect extends DropDownBase {
14062
14073
  checkMaxSelection() {
14063
14074
  const limit = this.value && this.value.length ? this.value.length : 0;
14064
14075
  if (limit === this.maximumSelectionLength) {
14065
- const collection = this.list.querySelectorAll('li.'
14076
+ const activeItems = this.list.querySelectorAll('li.'
14077
+ + dropDownBaseClasses.li + '.e-active');
14078
+ removeClass(activeItems, 'e-disable');
14079
+ const inactiveItems = this.list.querySelectorAll('li.'
14066
14080
  + dropDownBaseClasses.li + ':not(.e-active)');
14067
- addClass(collection, 'e-disable');
14081
+ addClass(inactiveItems, 'e-disable');
14082
+ }
14083
+ if (limit < this.maximumSelectionLength) {
14084
+ const collection = this.list.querySelectorAll('li.'
14085
+ + dropDownBaseClasses.li);
14086
+ removeClass(collection, 'e-disable');
14068
14087
  }
14069
14088
  }
14070
14089
  dispatchSelect(value, eve, element, isNotTrigger, length) {
@@ -14617,7 +14636,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
14617
14636
  if (this.mode === 'CheckBox') {
14618
14637
  this.refreshPlaceHolder();
14619
14638
  this.refreshInputHight();
14620
- if (this.changeOnBlur && isClearAll && (isNullOrUndefined(this.value) || this.value.length === 0)) {
14639
+ if (!this.changeOnBlur && isClearAll && (isNullOrUndefined(this.value) || this.value.length === 0)) {
14621
14640
  this.updateValueState(e, this.value, this.tempValues);
14622
14641
  }
14623
14642
  }
@@ -15434,17 +15453,19 @@ let MultiSelect = class MultiSelect extends DropDownBase {
15434
15453
  }
15435
15454
  findGroupAttrtibutes(listElement, checked, unChecked, count, position) {
15436
15455
  while (!listElement.classList.contains('e-list-group-item')) {
15437
- if (listElement.classList.contains('e-list-icon')) {
15438
- listElement = listElement.parentElement;
15439
- }
15440
- if (listElement.getElementsByClassName('e-frame')[0].classList.contains('e-check') &&
15441
- listElement.classList.contains('e-list-item')) {
15442
- checked++;
15443
- }
15444
- else if (listElement.classList.contains('e-list-item')) {
15445
- unChecked++;
15456
+ if (!(this.fields.disabled && this.isDisabledElement(listElement))) {
15457
+ if (listElement.classList.contains('e-list-icon')) {
15458
+ listElement = listElement.parentElement;
15459
+ }
15460
+ if (listElement.getElementsByClassName('e-frame')[0].classList.contains('e-check') &&
15461
+ listElement.classList.contains('e-list-item')) {
15462
+ checked++;
15463
+ }
15464
+ else if (listElement.classList.contains('e-list-item')) {
15465
+ unChecked++;
15466
+ }
15467
+ count++;
15446
15468
  }
15447
- count++;
15448
15469
  listElement = position ? listElement.nextElementSibling : listElement.previousElementSibling;
15449
15470
  if (listElement == null) {
15450
15471
  break;
@@ -15453,7 +15474,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
15453
15474
  return [checked, unChecked, count];
15454
15475
  }
15455
15476
  updateCheckBox(groupHeader, checked, unChecked, count) {
15456
- if (groupHeader === null) {
15477
+ if (groupHeader === null || (!isNullOrUndefined(this.fields.disabled) && count === 0)) {
15457
15478
  return;
15458
15479
  }
15459
15480
  const checkBoxElement = groupHeader.getElementsByClassName('e-frame')[0];
@@ -15482,6 +15503,28 @@ let MultiSelect = class MultiSelect extends DropDownBase {
15482
15503
  groupHeader.setAttribute('aria-selected', 'false');
15483
15504
  }
15484
15505
  }
15506
+ disableGroupHeader() {
15507
+ const collection = this.list.querySelectorAll('li.e-list-group-item');
15508
+ if (collection) {
15509
+ for (let index = 0; index < collection.length; index++) {
15510
+ let isDisabled = true;
15511
+ let target = collection[index].nextElementSibling;
15512
+ while (!target.classList.contains('e-list-group-item')) {
15513
+ if (!this.isDisabledElement(target)) {
15514
+ isDisabled = false;
15515
+ break;
15516
+ }
15517
+ target = target.nextElementSibling;
15518
+ if (target == null) {
15519
+ break;
15520
+ }
15521
+ }
15522
+ if (isDisabled) {
15523
+ this.disableListItem(collection[index]);
15524
+ }
15525
+ }
15526
+ }
15527
+ }
15485
15528
  deselectHeader() {
15486
15529
  const limit = this.value && this.value.length ? this.value.length : 0;
15487
15530
  const collection = this.list.querySelectorAll('li.e-list-group-item:not(.e-active)');
@@ -15855,22 +15898,24 @@ let MultiSelect = class MultiSelect extends DropDownBase {
15855
15898
  return;
15856
15899
  }
15857
15900
  while (listElement.classList.contains('e-list-item')) {
15858
- if (state) {
15859
- if (!listElement.firstElementChild.lastElementChild.classList.contains('e-check')) {
15860
- let selectionLimit = this.value && this.value.length ? this.value.length : 0;
15861
- if (listElement.classList.contains('e-active')) {
15862
- selectionLimit -= 1;
15901
+ if (!(this.fields.disabled && this.isDisabledElement(listElement))) {
15902
+ if (state) {
15903
+ if (!listElement.firstElementChild.lastElementChild.classList.contains('e-check')) {
15904
+ let selectionLimit = this.value && this.value.length ? this.value.length : 0;
15905
+ if (listElement.classList.contains('e-active')) {
15906
+ selectionLimit -= 1;
15907
+ }
15908
+ if (selectionLimit < this.maximumSelectionLength) {
15909
+ this.updateListSelection(listElement, event);
15910
+ }
15863
15911
  }
15864
- if (selectionLimit < this.maximumSelectionLength) {
15912
+ }
15913
+ else {
15914
+ if (listElement.firstElementChild.lastElementChild.classList.contains('e-check')) {
15865
15915
  this.updateListSelection(listElement, event);
15866
15916
  }
15867
15917
  }
15868
15918
  }
15869
- else {
15870
- if (listElement.firstElementChild.lastElementChild.classList.contains('e-check')) {
15871
- this.updateListSelection(listElement, event);
15872
- }
15873
- }
15874
15919
  listElement = listElement.nextElementSibling;
15875
15920
  if (listElement == null) {
15876
15921
  break;
@@ -16170,7 +16215,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
16170
16215
  }
16171
16216
  if (this.mode === 'CheckBox') {
16172
16217
  this.updateDelimView();
16173
- if (!(isRemoveAll || this.isSelectAll) && this.isSelectAllTarget) {
16218
+ if ((!(isRemoveAll || this.isSelectAll) && this.isSelectAllTarget) || (this.isSelectAll && this.isSelectAllTarget)) {
16174
16219
  this.updateDelimeter(this.delimiterChar, event);
16175
16220
  }
16176
16221
  this.refreshInputHight();
@@ -16722,7 +16767,7 @@ let MultiSelect = class MultiSelect extends DropDownBase {
16722
16767
  * @returns {void}
16723
16768
  */
16724
16769
  render() {
16725
- if (!isNullOrUndefined(this.value)) {
16770
+ if (!isNullOrUndefined(this.value) && this.value.length > 0) {
16726
16771
  // eslint-disable-next-line
16727
16772
  this.value = [...this.value];
16728
16773
  }
@@ -17117,6 +17162,9 @@ let MultiSelect = class MultiSelect extends DropDownBase {
17117
17162
  this.removeDisabledItemsValue(this.value);
17118
17163
  this.updateVal(this.value, oldValue, 'value');
17119
17164
  }
17165
+ if (this.mode === 'CheckBox' && this.enableGroupCheckBox && !isNullOrUndefined(this.fields.groupBy)) {
17166
+ this.disableGroupHeader();
17167
+ }
17120
17168
  }
17121
17169
  }
17122
17170
  }
@@ -18582,11 +18630,9 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
18582
18630
  }
18583
18631
  }
18584
18632
  updateListItems(sourceElem, destElem) {
18585
- const i = 0;
18586
18633
  destElem.innerHTML = '';
18587
- while (i < sourceElem.childNodes.length) {
18588
- destElem.appendChild(sourceElem.childNodes[i]);
18589
- }
18634
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18635
+ destElem.append(...sourceElem.childNodes);
18590
18636
  }
18591
18637
  removeSelected(listObj, elems) {
18592
18638
  if (listObj.selectionSettings.showCheckbox) {
@@ -19215,8 +19261,13 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
19215
19261
  }
19216
19262
  getDataByElems(elems) {
19217
19263
  const data = [];
19218
- for (let i = 0, len = elems.length; i < len; i++) {
19219
- data.push(this.getDataByValue(this.getFormattedValue(elems[i].getAttribute('data-value'))));
19264
+ const len = elems.length;
19265
+ for (let i = 0; i < len; i++) {
19266
+ const elem = elems[i];
19267
+ const value = elem.getAttribute('data-value');
19268
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19269
+ const formattedValue = this.getFormattedValue(value);
19270
+ data.push(this.getDataByValue(formattedValue));
19220
19271
  }
19221
19272
  return data;
19222
19273
  }
@@ -19388,16 +19439,38 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
19388
19439
  fListBox.value = [];
19389
19440
  if (elems.length) {
19390
19441
  this.removeSelected(fListBox, elems);
19442
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19443
+ const ulChildren = Array.prototype.slice.call(fListBox.ulElement.children);
19444
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19445
+ const listItems = Array.prototype.slice.call(fListBox.ulElement.querySelectorAll('.e-list-item'));
19446
+ const lData = fListBox.listData;
19447
+ const sData = fListBox.sortedData;
19448
+ const jData = fListBox.jsonData;
19449
+ let eData;
19450
+ const listDataMap = {};
19451
+ if (elems.length > 199) {
19452
+ for (const item of fListBox.listData) {
19453
+ if (!isNullOrUndefined(item)) {
19454
+ const key = fListBox.getFormattedValue(getValue((fListBox.fields.value ? fListBox.fields.value : 'value'), item));
19455
+ listDataMap[key] = item;
19456
+ }
19457
+ }
19458
+ }
19391
19459
  elems.forEach((ele) => {
19392
- idx.push(Array.prototype.indexOf.call(fListBox.ulElement.children, ele)); // update sortable elem
19393
- // To update lb view data
19394
- dataLiIdx.push(Array.prototype.indexOf.call(fListBox.ulElement.querySelectorAll('.e-list-item'), ele));
19395
- // To update lb listdata data
19396
- dataIdx.push(Array.prototype.indexOf.call(fListBox.listData, fListBox.getDataByElems([ele])[0]));
19397
- // To update lb sorted data
19398
- sortIdx.push(Array.prototype.indexOf.call(fListBox.sortedData, fListBox.getDataByElems([ele])[0]));
19399
- // To update lb original data
19400
- jsonIdx.push(Array.prototype.indexOf.call(fListBox.jsonData, fListBox.getDataByElems([ele])[0]));
19460
+ if (elems.length < 200) {
19461
+ eData = fListBox.getDataByElems([ele])[0];
19462
+ }
19463
+ else {
19464
+ const value = ele.getAttribute('data-value');
19465
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19466
+ const formattedValue = fListBox.getFormattedValue(value);
19467
+ eData = listDataMap[formattedValue];
19468
+ }
19469
+ idx.push(ulChildren.indexOf(ele));
19470
+ dataLiIdx.push(listItems.indexOf(ele));
19471
+ dataIdx.push(lData.indexOf(eData));
19472
+ sortIdx.push(sData.indexOf(eData));
19473
+ jsonIdx.push(jData.indexOf(eData));
19401
19474
  });
19402
19475
  if (this.sortOrder !== 'None') {
19403
19476
  sortIdx.forEach((i) => {
@@ -19536,17 +19609,27 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
19536
19609
  // eslint-disable-next-line prefer-spread
19537
19610
  flistboxarray = Array.apply(null, { length: fListBox.ulElement.childElementCount }).map(Number.call, Number);
19538
19611
  }
19539
- for (let i = 0; i < fListBox.ulElement.childElementCount; i++) {
19540
- if (fListBox.ulElement.childNodes[i].classList.contains('e-disabled')) {
19541
- // eslint-disable-next-line @typescript-eslint/tslint/config
19542
- flistboxarray = flistboxarray.filter(function (item) { return item !== i; });
19543
- tempLiColl.push(fListBox.ulElement.childNodes[i]);
19612
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19613
+ const childNodes = fListBox.ulElement.childNodes;
19614
+ const childElementCount = fListBox.ulElement.childElementCount;
19615
+ const newFlistboxArray = [];
19616
+ for (let i = 0; i < childElementCount; i++) {
19617
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19618
+ const childNode = childNodes[i];
19619
+ if (childNode.classList.contains('e-disabled')) {
19620
+ tempLiColl.push(childNode);
19544
19621
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19545
19622
  tempData.push(fListBox.listData[i]);
19546
19623
  }
19624
+ else {
19625
+ newFlistboxArray.push(i);
19626
+ }
19627
+ }
19628
+ flistboxarray = newFlistboxArray;
19629
+ if (!isRefresh) {
19630
+ moveTo(fListBox.ulElement, tListBox.ulElement, flistboxarray, index);
19631
+ fListBox.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
19547
19632
  }
19548
- moveTo(fListBox.ulElement, tListBox.ulElement, flistboxarray, index);
19549
- this.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
19550
19633
  if (isKey) {
19551
19634
  this.list.focus();
19552
19635
  }
@@ -19602,7 +19685,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
19602
19685
  if (isRefresh) {
19603
19686
  const sourceElem = tListBox.renderItems(listData, tListBox.fields);
19604
19687
  tListBox.updateListItems(sourceElem, tListBox.ulElement);
19605
- this.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
19688
+ fListBox.trigger('actionComplete', { items: tempItems, eventName: this.toolbarAction });
19606
19689
  }
19607
19690
  else {
19608
19691
  tListBox.sortedData = listData;
@@ -19889,11 +19972,13 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
19889
19972
  }
19890
19973
  }
19891
19974
  resizeHandler() {
19892
- if (this.list.scrollWidth > this.list.offsetWidth) {
19893
- this.list.querySelector('.e-list-parent').style.display = 'inline-block';
19894
- }
19895
- else {
19896
- this.list.querySelector('.e-list-parent').style.display = 'block';
19975
+ if (this.list && !(this.cssClass && this.cssClass.indexOf('e-horizontal-listbox') > -1)) {
19976
+ if (this.list.scrollWidth > this.list.offsetWidth) {
19977
+ this.list.querySelector('.e-list-parent').style.display = 'inline-block';
19978
+ }
19979
+ else {
19980
+ this.list.querySelector('.e-list-parent').style.display = 'block';
19981
+ }
19897
19982
  }
19898
19983
  }
19899
19984
  getValidIndex(cli, index, keyCode) {
@@ -20029,6 +20114,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
20029
20114
  }
20030
20115
  checkDisabledState(inst) {
20031
20116
  if (isNullOrUndefined(inst.ulElement)) {
20117
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
20032
20118
  if (!isNullOrUndefined(this.dataSource) && isNullOrUndefined(this.dataSource.length)) {
20033
20119
  return false;
20034
20120
  }
@@ -21690,10 +21776,10 @@ let Mention = class Mention extends DropDownBase {
21690
21776
  }
21691
21777
  if (this.isContentEditable(this.inputElement)) {
21692
21778
  if (Browser.isAndroid) {
21693
- return '<span contenteditable="true" class="e-mention-chip">' + showChar + value + '</span>'.concat(typeof this.suffixText === 'string' ? this.suffixText : '');
21779
+ return '<span contenteditable="true" class="e-mention-chip">' + showChar + value + '</span>'.concat(typeof this.suffixText === 'string' ? this.suffixText : ' ');
21694
21780
  }
21695
21781
  else {
21696
- return '<span contenteditable="false" class="e-mention-chip">' + showChar + value + '</span>'.concat(typeof this.suffixText === 'string' ? this.suffixText : '');
21782
+ return '<span contenteditable="false" class="e-mention-chip">' + showChar + value + '</span>'.concat(typeof this.suffixText === 'string' ? this.suffixText : ' ');
21697
21783
  }
21698
21784
  }
21699
21785
  else {