@syncfusion/ej2-dropdowns 20.3.47 → 20.3.49

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.
Files changed (68) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/ej2-dropdowns.min.js +2 -2
  3. package/dist/ej2-dropdowns.umd.min.js +2 -2
  4. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-dropdowns.es2015.js +29 -4
  6. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  7. package/dist/es6/ej2-dropdowns.es5.js +29 -4
  8. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  9. package/dist/global/ej2-dropdowns.min.js +2 -2
  10. package/dist/global/ej2-dropdowns.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +9 -9
  13. package/src/drop-down-base/drop-down-base.js +2 -1
  14. package/src/drop-down-list/drop-down-list.d.ts +1 -0
  15. package/src/drop-down-list/drop-down-list.js +10 -1
  16. package/src/list-box/list-box.js +1 -1
  17. package/src/mention/mention-model.d.ts +1 -1
  18. package/src/mention/mention.d.ts +1 -0
  19. package/src/mention/mention.js +15 -1
  20. package/src/multi-select/multi-select.js +2 -1
  21. package/styles/bootstrap-dark.css +8 -0
  22. package/styles/bootstrap.css +8 -0
  23. package/styles/bootstrap4.css +20 -11
  24. package/styles/bootstrap5-dark.css +8 -0
  25. package/styles/bootstrap5.css +8 -0
  26. package/styles/fabric-dark.css +16 -8
  27. package/styles/fabric.css +16 -8
  28. package/styles/fluent-dark.css +9 -1
  29. package/styles/fluent.css +9 -1
  30. package/styles/highcontrast-light.css +8 -0
  31. package/styles/highcontrast.css +17 -9
  32. package/styles/material-dark.css +8 -0
  33. package/styles/material.css +8 -0
  34. package/styles/multi-select/_bootstrap-dark-definition.scss +6 -0
  35. package/styles/multi-select/_bootstrap-definition.scss +6 -0
  36. package/styles/multi-select/_bootstrap4-definition.scss +14 -7
  37. package/styles/multi-select/_bootstrap5-definition.scss +7 -0
  38. package/styles/multi-select/_fabric-dark-definition.scss +10 -4
  39. package/styles/multi-select/_fabric-definition.scss +10 -4
  40. package/styles/multi-select/_fluent-definition.scss +8 -1
  41. package/styles/multi-select/_fusionnew-definition.scss +7 -0
  42. package/styles/multi-select/_highcontrast-definition.scss +11 -5
  43. package/styles/multi-select/_highcontrast-light-definition.scss +6 -0
  44. package/styles/multi-select/_layout.scss +12 -5
  45. package/styles/multi-select/_material-dark-definition.scss +6 -0
  46. package/styles/multi-select/_material-definition.scss +6 -0
  47. package/styles/multi-select/_material3-definition.scss +7 -0
  48. package/styles/multi-select/_tailwind-definition.scss +7 -0
  49. package/styles/multi-select/_theme.scss +4 -0
  50. package/styles/multi-select/bootstrap-dark.css +8 -0
  51. package/styles/multi-select/bootstrap.css +8 -0
  52. package/styles/multi-select/bootstrap4.css +20 -11
  53. package/styles/multi-select/bootstrap5-dark.css +8 -0
  54. package/styles/multi-select/bootstrap5.css +8 -0
  55. package/styles/multi-select/fabric-dark.css +16 -8
  56. package/styles/multi-select/fabric.css +16 -8
  57. package/styles/multi-select/fluent-dark.css +9 -1
  58. package/styles/multi-select/fluent.css +9 -1
  59. package/styles/multi-select/highcontrast-light.css +8 -0
  60. package/styles/multi-select/highcontrast.css +17 -9
  61. package/styles/multi-select/material-dark.css +8 -0
  62. package/styles/multi-select/material.css +8 -0
  63. package/styles/multi-select/tailwind-dark.css +8 -0
  64. package/styles/multi-select/tailwind.css +8 -0
  65. package/styles/tailwind-dark.css +8 -0
  66. package/styles/tailwind.css +8 -0
  67. package/.eslintrc.json +0 -244
  68. package/tslint.json +0 -111
@@ -409,7 +409,8 @@ let DropDownBase = class DropDownBase extends Component {
409
409
  this.l10n = componentLocale;
410
410
  }
411
411
  else {
412
- this.l10n = new L10n(this.getModuleName() === 'listbox' ? 'listbox' : 'dropdowns', l10nLocale, this.locale);
412
+ this.l10n = new L10n(this.getModuleName() === 'listbox' ? 'listbox' :
413
+ this.getModuleName() === 'mention' ? 'mention' : 'dropdowns', l10nLocale, this.locale);
413
414
  }
414
415
  const content = actionFailure ?
415
416
  this.l10n.getConstant('actionFailureTemplate') : this.l10n.getConstant('noRecordsTemplate');
@@ -1608,6 +1609,7 @@ let DropDownList = class DropDownList extends DropDownBase {
1608
1609
  }
1609
1610
  }
1610
1611
  clearAll(e, properties) {
1612
+ this.previousItemData = (!isNullOrUndefined(this.itemData)) ? this.itemData : null;
1611
1613
  if (isNullOrUndefined(properties) || (!isNullOrUndefined(properties) &&
1612
1614
  (isNullOrUndefined(properties.dataSource) ||
1613
1615
  (!(properties.dataSource instanceof DataManager) && properties.dataSource.length === 0)))) {
@@ -2909,7 +2911,8 @@ let DropDownList = class DropDownList extends DropDownBase {
2909
2911
  this.initRemoteRender = false;
2910
2912
  if (this.value && this.dataSource instanceof DataManager) {
2911
2913
  const checkField = isNullOrUndefined(this.fields.value) ? this.fields.text : this.fields.value;
2912
- const checkVal = list.some((x) => x[checkField] === this.value);
2914
+ const fieldValue = this.fields.value.split('.');
2915
+ const checkVal = list.some((x) => isNullOrUndefined(x[checkField]) && fieldValue.length > 1 ? this.checkFieldValue(x, fieldValue) === this.value : x[checkField] === this.value);
2913
2916
  if (!checkVal) {
2914
2917
  this.dataSource.executeQuery(this.getQuery(this.query).where(new Predicate(checkField, 'equal', this.value)))
2915
2918
  .then((e) => {
@@ -2959,6 +2962,13 @@ let DropDownList = class DropDownList extends DropDownBase {
2959
2962
  }
2960
2963
  }
2961
2964
  }
2965
+ checkFieldValue(list, fieldValue) {
2966
+ let checkField = list;
2967
+ fieldValue.forEach((value) => {
2968
+ checkField = checkField[value];
2969
+ });
2970
+ return checkField;
2971
+ }
2962
2972
  updateActionCompleteDataValues(ulElement, list) {
2963
2973
  this.actionCompleteData = { ulElement: ulElement.cloneNode(true), list: list, isUpdated: true };
2964
2974
  if (this.actionData.list !== this.actionCompleteData.list && this.actionCompleteData.ulElement && this.actionCompleteData.list) {
@@ -9435,7 +9445,8 @@ let MultiSelect = class MultiSelect extends DropDownBase {
9435
9445
  this.resetList(tempData, field, query);
9436
9446
  }
9437
9447
  else {
9438
- const tempData = [this.inputElement.value];
9448
+ const tempData = JSON.parse(JSON.stringify(this.listData));
9449
+ tempData.splice(0, 0, this.inputElement.value);
9439
9450
  tempData[0] = (typeof customData === 'number' && !isNaN(parseFloat(tempData[0]))) ?
9440
9451
  parseFloat(tempData[0]) : tempData[0];
9441
9452
  tempData[0] = (typeof customData === 'boolean') ?
@@ -14169,7 +14180,7 @@ let ListBox = ListBox_1 = class ListBox extends DropDownBase {
14169
14180
  if (this.listData.length === 0) {
14170
14181
  this.l10nUpdate();
14171
14182
  }
14172
- this.value = null;
14183
+ this.value = [];
14173
14184
  this.updateToolBarState();
14174
14185
  }
14175
14186
  /**
@@ -16040,6 +16051,9 @@ let Mention = class Mention extends DropDownBase {
16040
16051
  onActionComplete(ulElement, list, e, isUpdated) {
16041
16052
  super.onActionComplete(ulElement, list, e);
16042
16053
  if (this.isActive) {
16054
+ if (!isNullOrUndefined(ulElement)) {
16055
+ attributes(ulElement, { 'id': this.inputElement.id + '_options', 'role': 'listbox', 'aria-hidden': 'false' });
16056
+ }
16043
16057
  let focusItem = ulElement.querySelector('.' + dropDownBaseClasses.li);
16044
16058
  if (focusItem) {
16045
16059
  focusItem.classList.add(dropDownBaseClasses.selected);
@@ -16173,6 +16187,10 @@ let Mention = class Mention extends DropDownBase {
16173
16187
  */
16174
16188
  showPopup() {
16175
16189
  this.renderPopup();
16190
+ attributes(this.inputElement, { 'aria-activedescendant': this.selectedElementID });
16191
+ if (this.selectedElementID == null) {
16192
+ this.inputElement.removeAttribute('aria-activedescendant');
16193
+ }
16176
16194
  }
16177
16195
  /* eslint-disable valid-jsdoc, jsdoc/require-param */
16178
16196
  /**
@@ -16189,6 +16207,8 @@ let Mention = class Mention extends DropDownBase {
16189
16207
  return;
16190
16208
  }
16191
16209
  EventHandler.remove(document, 'mousedown', this.onDocumentClick);
16210
+ this.inputElement.removeAttribute('aria-owns');
16211
+ this.inputElement.removeAttribute('aria-activedescendant');
16192
16212
  this.beforePopupOpen = false;
16193
16213
  const animModel = {
16194
16214
  name: 'FadeOut',
@@ -16250,6 +16270,11 @@ let Mention = class Mention extends DropDownBase {
16250
16270
  this.unWireListEvents();
16251
16271
  this.wireListEvents();
16252
16272
  }
16273
+ this.selectedElementID = this.selectedLI ? this.selectedLI.id : null;
16274
+ attributes(this.inputElement, { 'aria-owns': this.inputElement.id + '_options', 'aria-activedescendant': this.selectedElementID });
16275
+ if (this.selectedElementID == null) {
16276
+ this.inputElement.removeAttribute('aria-activedescendant');
16277
+ }
16253
16278
  const animModel = { name: 'FadeIn', duration: 100 };
16254
16279
  this.beforePopupOpen = true;
16255
16280
  const popupInstance = this.popupObj;