@syncfusion/ej2-dropdowns 23.2.5 → 23.2.7-52849

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 (256) hide show
  1. package/CHANGELOG.md +2152 -2126
  2. package/{README.md → ReadMe.md} +217 -217
  3. package/dist/ej2-dropdowns.umd.min.js +1 -10
  4. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-dropdowns.es2015.js +84 -65
  6. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  7. package/dist/es6/ej2-dropdowns.es5.js +242 -222
  8. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  9. package/helpers/e2e/autocomplete.js +13 -13
  10. package/helpers/e2e/combobox.js +13 -13
  11. package/helpers/e2e/dropdownlist.js +13 -13
  12. package/helpers/e2e/index.js +3 -3
  13. package/helpers/e2e/listboxHelper.js +13 -13
  14. package/helpers/e2e/multiselect.js +13 -13
  15. package/license +2 -2
  16. package/package.json +80 -80
  17. package/src/auto-complete/auto-complete-model.d.ts +188 -188
  18. package/src/auto-complete/auto-complete.d.ts +12 -12
  19. package/src/auto-complete/auto-complete.js +25 -21
  20. package/src/combo-box/combo-box-model.d.ts +224 -224
  21. package/src/combo-box/combo-box.d.ts +27 -27
  22. package/src/combo-box/combo-box.js +29 -29
  23. package/src/common/virtual-scroll.js +46 -46
  24. package/src/drop-down-base/drop-down-base-model.d.ts +200 -200
  25. package/src/drop-down-base/drop-down-base.d.ts +15 -15
  26. package/src/drop-down-base/drop-down-base.js +21 -21
  27. package/src/drop-down-list/drop-down-list-model.d.ts +202 -202
  28. package/src/drop-down-list/drop-down-list.d.ts +4 -4
  29. package/src/drop-down-list/drop-down-list.js +41 -27
  30. package/src/drop-down-tree/drop-down-tree-model.d.ts +468 -468
  31. package/src/drop-down-tree/drop-down-tree.js +21 -19
  32. package/src/list-box/list-box-model.d.ts +193 -193
  33. package/src/list-box/list-box.d.ts +2 -2
  34. package/src/list-box/list-box.js +19 -19
  35. package/src/mention/mention-model.d.ts +261 -261
  36. package/src/mention/mention.js +19 -19
  37. package/src/multi-select/multi-select-model.d.ts +512 -512
  38. package/src/multi-select/multi-select.js +20 -20
  39. package/styles/auto-complete/_all.scss +1 -1
  40. package/styles/auto-complete/_bootstrap-dark-definition.scss +3 -3
  41. package/styles/auto-complete/_bootstrap-definition.scss +2 -2
  42. package/styles/auto-complete/_bootstrap4-definition.scss +11 -11
  43. package/styles/auto-complete/_bootstrap5-definition.scss +2 -2
  44. package/styles/auto-complete/_fabric-dark-definition.scss +2 -2
  45. package/styles/auto-complete/_fabric-definition.scss +2 -2
  46. package/styles/auto-complete/_fluent-definition.scss +2 -2
  47. package/styles/auto-complete/_fusionnew-definition.scss +2 -2
  48. package/styles/auto-complete/_highcontrast-definition.scss +2 -2
  49. package/styles/auto-complete/_highcontrast-light-definition.scss +2 -2
  50. package/styles/auto-complete/_material-dark-definition.scss +2 -2
  51. package/styles/auto-complete/_material-definition.scss +2 -2
  52. package/styles/auto-complete/_material3-definition.scss +2 -2
  53. package/styles/auto-complete/_tailwind-definition.scss +2 -2
  54. package/styles/auto-complete/material3-dark.scss +1 -1
  55. package/styles/auto-complete/material3.scss +1 -1
  56. package/styles/combo-box/_all.scss +1 -1
  57. package/styles/combo-box/_bootstrap-dark-definition.scss +2 -2
  58. package/styles/combo-box/_bootstrap-definition.scss +2 -2
  59. package/styles/combo-box/_bootstrap4-definition.scss +11 -11
  60. package/styles/combo-box/_bootstrap5-definition.scss +2 -2
  61. package/styles/combo-box/_fabric-dark-definition.scss +2 -2
  62. package/styles/combo-box/_fabric-definition.scss +2 -2
  63. package/styles/combo-box/_fluent-definition.scss +2 -2
  64. package/styles/combo-box/_fusionnew-definition.scss +2 -2
  65. package/styles/combo-box/_highcontrast-definition.scss +2 -2
  66. package/styles/combo-box/_highcontrast-light-definition.scss +3 -3
  67. package/styles/combo-box/_material-dark-definition.scss +2 -2
  68. package/styles/combo-box/_material-definition.scss +2 -2
  69. package/styles/combo-box/_material3-definition.scss +2 -2
  70. package/styles/combo-box/_tailwind-definition.scss +2 -2
  71. package/styles/combo-box/material3-dark.scss +1 -1
  72. package/styles/combo-box/material3.scss +1 -1
  73. package/styles/drop-down-base/_all.scss +2 -2
  74. package/styles/drop-down-base/_bootstrap-dark-definition.scss +83 -83
  75. package/styles/drop-down-base/_bootstrap-definition.scss +83 -83
  76. package/styles/drop-down-base/_bootstrap4-definition.scss +90 -90
  77. package/styles/drop-down-base/_bootstrap5-definition.scss +117 -117
  78. package/styles/drop-down-base/_definition.scss +23 -23
  79. package/styles/drop-down-base/_fabric-dark-definition.scss +86 -86
  80. package/styles/drop-down-base/_fabric-definition.scss +84 -84
  81. package/styles/drop-down-base/_fluent-definition.scss +121 -121
  82. package/styles/drop-down-base/_fusionnew-definition.scss +117 -117
  83. package/styles/drop-down-base/_highcontrast-definition.scss +105 -105
  84. package/styles/drop-down-base/_highcontrast-light-definition.scss +105 -105
  85. package/styles/drop-down-base/_layout.scss +195 -195
  86. package/styles/drop-down-base/_material-dark-definition.scss +86 -86
  87. package/styles/drop-down-base/_material-definition.scss +85 -85
  88. package/styles/drop-down-base/_material3-definition.scss +87 -87
  89. package/styles/drop-down-base/_tailwind-definition.scss +129 -129
  90. package/styles/drop-down-base/_theme.scss +391 -391
  91. package/styles/drop-down-base/material3-dark.scss +1 -1
  92. package/styles/drop-down-base/material3.scss +1 -1
  93. package/styles/drop-down-list/_all.scss +3 -3
  94. package/styles/drop-down-list/_bootstrap-dark-definition.scss +157 -157
  95. package/styles/drop-down-list/_bootstrap-definition.scss +156 -156
  96. package/styles/drop-down-list/_bootstrap4-definition.scss +202 -202
  97. package/styles/drop-down-list/_bootstrap5-definition.scss +201 -201
  98. package/styles/drop-down-list/_fabric-dark-definition.scss +128 -128
  99. package/styles/drop-down-list/_fabric-definition.scss +124 -124
  100. package/styles/drop-down-list/_fluent-definition.scss +185 -185
  101. package/styles/drop-down-list/_fusionnew-definition.scss +201 -201
  102. package/styles/drop-down-list/_highcontrast-definition.scss +142 -142
  103. package/styles/drop-down-list/_highcontrast-light-definition.scss +144 -144
  104. package/styles/drop-down-list/_layout.scss +310 -310
  105. package/styles/drop-down-list/_material-dark-definition.scss +143 -143
  106. package/styles/drop-down-list/_material-definition.scss +167 -167
  107. package/styles/drop-down-list/_material3-definition.scss +180 -180
  108. package/styles/drop-down-list/_tailwind-definition.scss +134 -134
  109. package/styles/drop-down-list/_theme.scss +10 -10
  110. package/styles/drop-down-list/icons/_bootstrap-dark.scss +14 -14
  111. package/styles/drop-down-list/icons/_bootstrap.scss +14 -14
  112. package/styles/drop-down-list/icons/_bootstrap4.scss +14 -14
  113. package/styles/drop-down-list/icons/_bootstrap5.scss +14 -14
  114. package/styles/drop-down-list/icons/_fabric-dark.scss +14 -14
  115. package/styles/drop-down-list/icons/_fabric.scss +14 -14
  116. package/styles/drop-down-list/icons/_fluent.scss +14 -14
  117. package/styles/drop-down-list/icons/_fusionnew.scss +14 -14
  118. package/styles/drop-down-list/icons/_highcontrast-light.scss +14 -14
  119. package/styles/drop-down-list/icons/_highcontrast.scss +14 -14
  120. package/styles/drop-down-list/icons/_material-dark.scss +14 -14
  121. package/styles/drop-down-list/icons/_material.scss +14 -14
  122. package/styles/drop-down-list/icons/_material3.scss +14 -14
  123. package/styles/drop-down-list/icons/_tailwind.scss +14 -14
  124. package/styles/drop-down-list/material3-dark.scss +1 -1
  125. package/styles/drop-down-list/material3.scss +1 -1
  126. package/styles/drop-down-tree/_all.scss +2 -2
  127. package/styles/drop-down-tree/_bootstrap-dark-definition.scss +71 -71
  128. package/styles/drop-down-tree/_bootstrap-definition.scss +70 -70
  129. package/styles/drop-down-tree/_bootstrap4-definition.scss +71 -71
  130. package/styles/drop-down-tree/_bootstrap5-definition.scss +59 -59
  131. package/styles/drop-down-tree/_fabric-dark-definition.scss +71 -71
  132. package/styles/drop-down-tree/_fabric-definition.scss +71 -71
  133. package/styles/drop-down-tree/_fluent-definition.scss +65 -65
  134. package/styles/drop-down-tree/_fusionnew-definition.scss +59 -59
  135. package/styles/drop-down-tree/_highcontrast-definition.scss +71 -71
  136. package/styles/drop-down-tree/_highcontrast-light-definition.scss +71 -71
  137. package/styles/drop-down-tree/_layout.scss +1418 -1412
  138. package/styles/drop-down-tree/_material-dark-definition.scss +72 -72
  139. package/styles/drop-down-tree/_material-definition.scss +72 -72
  140. package/styles/drop-down-tree/_material3-definition.scss +76 -76
  141. package/styles/drop-down-tree/_tailwind-definition.scss +61 -61
  142. package/styles/drop-down-tree/_theme.scss +132 -132
  143. package/styles/drop-down-tree/fluent-dark.css +2 -0
  144. package/styles/drop-down-tree/fluent.css +2 -0
  145. package/styles/drop-down-tree/icons/_bootstrap-dark.scss +11 -11
  146. package/styles/drop-down-tree/icons/_bootstrap.scss +11 -11
  147. package/styles/drop-down-tree/icons/_bootstrap4.scss +11 -11
  148. package/styles/drop-down-tree/icons/_bootstrap5.scss +11 -11
  149. package/styles/drop-down-tree/icons/_fabric-dark.scss +11 -11
  150. package/styles/drop-down-tree/icons/_fabric.scss +11 -11
  151. package/styles/drop-down-tree/icons/_fluent.scss +11 -11
  152. package/styles/drop-down-tree/icons/_fusionnew.scss +11 -11
  153. package/styles/drop-down-tree/icons/_highcontrast-light.scss +11 -11
  154. package/styles/drop-down-tree/icons/_highcontrast.scss +11 -11
  155. package/styles/drop-down-tree/icons/_material-dark.scss +11 -11
  156. package/styles/drop-down-tree/icons/_material.scss +11 -11
  157. package/styles/drop-down-tree/icons/_material3.scss +11 -11
  158. package/styles/drop-down-tree/icons/_tailwind-dark.scss +11 -11
  159. package/styles/drop-down-tree/icons/_tailwind.scss +11 -11
  160. package/styles/drop-down-tree/material3-dark.scss +1 -1
  161. package/styles/drop-down-tree/material3.scss +1 -1
  162. package/styles/fluent-dark.css +2 -0
  163. package/styles/fluent.css +2 -0
  164. package/styles/list-box/_all.scss +2 -2
  165. package/styles/list-box/_bootstrap-dark-definition.scss +126 -126
  166. package/styles/list-box/_bootstrap-definition.scss +119 -119
  167. package/styles/list-box/_bootstrap4-definition.scss +124 -124
  168. package/styles/list-box/_bootstrap5-definition.scss +120 -120
  169. package/styles/list-box/_fabric-dark-definition.scss +126 -126
  170. package/styles/list-box/_fabric-definition.scss +119 -119
  171. package/styles/list-box/_fluent-definition.scss +120 -120
  172. package/styles/list-box/_fusionnew-definition.scss +111 -111
  173. package/styles/list-box/_highcontrast-definition.scss +119 -119
  174. package/styles/list-box/_highcontrast-light-definition.scss +126 -126
  175. package/styles/list-box/_layout.scss +542 -542
  176. package/styles/list-box/_material-dark-definition.scss +126 -126
  177. package/styles/list-box/_material-definition.scss +119 -119
  178. package/styles/list-box/_material3-definition.scss +119 -119
  179. package/styles/list-box/_tailwind-definition.scss +119 -119
  180. package/styles/list-box/_theme.scss +382 -382
  181. package/styles/list-box/icons/_bootstrap-dark.scss +25 -25
  182. package/styles/list-box/icons/_bootstrap.scss +25 -25
  183. package/styles/list-box/icons/_bootstrap4.scss +25 -25
  184. package/styles/list-box/icons/_bootstrap5.scss +25 -25
  185. package/styles/list-box/icons/_fabric-dark.scss +25 -25
  186. package/styles/list-box/icons/_fabric.scss +25 -25
  187. package/styles/list-box/icons/_fluent.scss +25 -25
  188. package/styles/list-box/icons/_fusionnew.scss +25 -25
  189. package/styles/list-box/icons/_highcontrast-light.scss +25 -25
  190. package/styles/list-box/icons/_highcontrast.scss +25 -25
  191. package/styles/list-box/icons/_material-dark.scss +25 -25
  192. package/styles/list-box/icons/_material.scss +25 -25
  193. package/styles/list-box/icons/_material3.scss +25 -25
  194. package/styles/list-box/icons/_tailwind-dark.scss +25 -25
  195. package/styles/list-box/icons/_tailwind.scss +25 -25
  196. package/styles/list-box/material3-dark.scss +1 -1
  197. package/styles/list-box/material3.scss +1 -1
  198. package/styles/material3-dark.scss +1 -1
  199. package/styles/material3.scss +1 -1
  200. package/styles/mention/_all.scss +1 -1
  201. package/styles/mention/_bootstrap-dark-definition.scss +3 -3
  202. package/styles/mention/_bootstrap-definition.scss +3 -3
  203. package/styles/mention/_bootstrap4-definition.scss +3 -3
  204. package/styles/mention/_bootstrap5-definition.scss +1 -1
  205. package/styles/mention/_fabric-dark-definition.scss +2 -2
  206. package/styles/mention/_fabric-definition.scss +3 -3
  207. package/styles/mention/_fluent-definition.scss +1 -1
  208. package/styles/mention/_fusionnew-definition.scss +1 -1
  209. package/styles/mention/_highcontrast-definition.scss +3 -3
  210. package/styles/mention/_highcontrast-light-definition.scss +3 -3
  211. package/styles/mention/_layout.scss +6 -6
  212. package/styles/mention/_material-dark-definition.scss +3 -3
  213. package/styles/mention/_material-definition.scss +3 -3
  214. package/styles/mention/_material3-definition.scss +1 -1
  215. package/styles/mention/_tailwind-definition.scss +1 -1
  216. package/styles/mention/material3-dark.scss +1 -1
  217. package/styles/mention/material3.scss +1 -1
  218. package/styles/multi-select/_all.scss +2 -2
  219. package/styles/multi-select/_bootstrap-dark-definition.scss +203 -203
  220. package/styles/multi-select/_bootstrap-definition.scss +192 -192
  221. package/styles/multi-select/_bootstrap4-definition.scss +278 -278
  222. package/styles/multi-select/_bootstrap5-definition.scss +230 -230
  223. package/styles/multi-select/_fabric-dark-definition.scss +192 -192
  224. package/styles/multi-select/_fabric-definition.scss +183 -183
  225. package/styles/multi-select/_fluent-definition.scss +241 -241
  226. package/styles/multi-select/_fusionnew-definition.scss +227 -227
  227. package/styles/multi-select/_highcontrast-definition.scss +303 -303
  228. package/styles/multi-select/_highcontrast-light-definition.scss +297 -297
  229. package/styles/multi-select/_layout.scss +2199 -2199
  230. package/styles/multi-select/_material-dark-definition.scss +230 -230
  231. package/styles/multi-select/_material-definition.scss +223 -223
  232. package/styles/multi-select/_material3-definition.scss +246 -246
  233. package/styles/multi-select/_tailwind-definition.scss +235 -235
  234. package/styles/multi-select/_theme.scss +586 -586
  235. package/styles/multi-select/icons/_bootstrap-dark.scss +26 -26
  236. package/styles/multi-select/icons/_bootstrap.scss +26 -26
  237. package/styles/multi-select/icons/_bootstrap4.scss +37 -37
  238. package/styles/multi-select/icons/_bootstrap5.scss +26 -26
  239. package/styles/multi-select/icons/_fabric-dark.scss +26 -26
  240. package/styles/multi-select/icons/_fabric.scss +26 -26
  241. package/styles/multi-select/icons/_fluent.scss +55 -55
  242. package/styles/multi-select/icons/_fusionnew.scss +26 -26
  243. package/styles/multi-select/icons/_highcontrast-light.scss +26 -26
  244. package/styles/multi-select/icons/_highcontrast.scss +26 -26
  245. package/styles/multi-select/icons/_material-dark.scss +693 -693
  246. package/styles/multi-select/icons/_material.scss +693 -693
  247. package/styles/multi-select/icons/_material3.scss +692 -692
  248. package/styles/multi-select/icons/_tailwind.scss +26 -26
  249. package/styles/multi-select/material3-dark.scss +1 -1
  250. package/styles/multi-select/material3.scss +1 -1
  251. package/.eslintrc.json +0 -260
  252. package/dist/ej2-dropdowns.min.js +0 -10
  253. package/dist/global/ej2-dropdowns.min.js +0 -11
  254. package/dist/global/ej2-dropdowns.min.js.map +0 -1
  255. package/dist/global/index.d.ts +0 -14
  256. package/tslint.json +0 -111
@@ -1,4 +1,4 @@
1
- import { EventHandler, Property, Event, compile, EmitType, KeyboardEvents, append, select, ModuleDeclaration } from '@syncfusion/ej2-base';import { attributes, isNullOrUndefined, getUniqueID, formatUnit, isUndefined, getValue } from '@syncfusion/ej2-base';import { Animation, AnimationModel, Browser, KeyboardEventArgs, NotifyPropertyChanges } from '@syncfusion/ej2-base';import { addClass, removeClass, closest, prepend, detach, classList } from '@syncfusion/ej2-base';import { Popup, isCollide, createSpinner, showSpinner, hideSpinner } from '@syncfusion/ej2-popups';import { IInput, Input, InputObject, FloatLabelType } from '@syncfusion/ej2-inputs';import { incrementalSearch, resetIncrementalSearchValues } from '../common/incremental-search';import { DropDownBase, dropDownBaseClasses, SelectEventArgs, FilteringEventArgs, PopupEventArgs } from '../drop-down-base/drop-down-base';import { FocusEventArgs, ResultData, BeforeOpenEventArgs } from '../drop-down-base/drop-down-base';import { FieldSettingsModel } from '../drop-down-base/drop-down-base-model';import { DataManager, Query, Predicate, DataOptions } from '@syncfusion/ej2-data';import {VirtualScroll, Offsets, ScrollDirection, SentinelType, VirtualInfo} from '../common/virtual-scroll';import { Skeleton } from '@syncfusion/ej2-notifications';
1
+ import { EventHandler, Property, Event, compile, EmitType, KeyboardEvents, append, select, ModuleDeclaration } from '@syncfusion/ej2-base';
2
2
  import {ChangeEventArgs} from "./drop-down-list";
3
3
  import {DropDownBaseModel} from "../drop-down-base/drop-down-base-model";
4
4
 
@@ -8,260 +8,260 @@ import {DropDownBaseModel} from "../drop-down-base/drop-down-base-model";
8
8
  export interface DropDownListModel extends DropDownBaseModel{
9
9
 
10
10
  /**
11
- * Sets CSS classes to the root element of the component that allows customization of appearance.
12
- *
13
- * @default null
14
- */
15
- cssClass?: string;
11
+ * Sets CSS classes to the root element of the component that allows customization of appearance.
12
+ *
13
+ * @default null
14
+ */
15
+ cssClass?: string;
16
16
 
17
17
  /**
18
- * Specifies the width of the component. By default, the component width sets based on the width of
19
- * its parent container. You can also set the width in pixel values.
20
- *
21
- * @default '100%'
22
- * @aspType string
23
- */
24
- width?: string | number;
18
+ * Specifies the width of the component. By default, the component width sets based on the width of
19
+ * its parent container. You can also set the width in pixel values.
20
+ *
21
+ * @default '100%'
22
+ * @aspType string
23
+ */
24
+ width?: string | number;
25
25
 
26
26
  /**
27
- * Specifies a value that indicates whether the component is enabled or not.
28
- *
29
- * @default true
30
-
31
- */
32
- enabled?: boolean;
27
+ * Specifies a value that indicates whether the component is enabled or not.
28
+ *
29
+ * @default true
30
+ * @deprecated
31
+ */
32
+ enabled?: boolean;
33
33
 
34
34
  /**
35
- * Enable or disable persisting component's state between page reloads.
36
- * If enabled, following list of states will be persisted.
37
- * 1. value
38
- *
39
- * @default false
40
-
41
- */
42
- enablePersistence?: boolean;
35
+ * Enable or disable persisting component's state between page reloads.
36
+ * If enabled, following list of states will be persisted.
37
+ * 1. value
38
+ *
39
+ * @default false
40
+ * @deprecated
41
+ */
42
+ enablePersistence?: boolean;
43
43
 
44
44
  /**
45
- * Specifies the height of the popup list.
46
- * > For more details about the popup configuration refer to
47
- * [`Popup Configuration`](../../drop-down-list/getting-started#configure-the-popup-list) documentation.
48
- *
49
- * @default '300px'
50
- * @aspType string
51
- */
52
- popupHeight?: string | number;
45
+ * Specifies the height of the popup list.
46
+ * > For more details about the popup configuration refer to
47
+ * [`Popup Configuration`](../../drop-down-list/getting-started#configure-the-popup-list) documentation.
48
+ *
49
+ * @default '300px'
50
+ * @aspType string
51
+ */
52
+ popupHeight?: string | number;
53
53
 
54
54
  /**
55
- * Specifies the width of the popup list. By default, the popup width sets based on the width of
56
- * the component.
57
- * > For more details about the popup configuration refer to
58
- * [`Popup Configuration`](../../drop-down-list/getting-started#configure-the-popup-list) documentation.
59
- *
60
- * @default '100%'
61
- * @aspType string
62
- */
63
- popupWidth?: string | number;
55
+ * Specifies the width of the popup list. By default, the popup width sets based on the width of
56
+ * the component.
57
+ * > For more details about the popup configuration refer to
58
+ * [`Popup Configuration`](../../drop-down-list/getting-started#configure-the-popup-list) documentation.
59
+ *
60
+ * @default '100%'
61
+ * @aspType string
62
+ */
63
+ popupWidth?: string | number;
64
64
 
65
65
  /**
66
- * Specifies a short hint that describes the expected value of the DropDownList component.
67
- *
68
- * @default null
69
- */
70
- placeholder?: string;
66
+ * Specifies a short hint that describes the expected value of the DropDownList component.
67
+ *
68
+ * @default null
69
+ */
70
+ placeholder?: string;
71
71
 
72
72
  /**
73
- * Accepts the value to be displayed as a watermark text on the filter bar.
74
- *
75
- * @default null
76
- */
77
- filterBarPlaceholder?: string;
73
+ * Accepts the value to be displayed as a watermark text on the filter bar.
74
+ *
75
+ * @default null
76
+ */
77
+ filterBarPlaceholder?: string;
78
78
 
79
79
  /**
80
- * Allows additional HTML attributes such as title, name, etc., and
81
- * accepts n number of attributes in a key-value pair format.
82
- *
83
- * {% codeBlock src='dropdownlist/htmlAttributes/index.md' %}{% endcodeBlock %}
84
- *
85
- * @default {}
86
- */
87
- htmlAttributes?: { [key: string]: string };
80
+ * Allows additional HTML attributes such as title, name, etc., and
81
+ * accepts n number of attributes in a key-value pair format.
82
+ *
83
+ * {% codeBlock src='dropdownlist/htmlAttributes/index.md' %}{% endcodeBlock %}
84
+ *
85
+ * @default {}
86
+ */
87
+ htmlAttributes?: { [key: string]: string };
88
88
 
89
89
  /**
90
- * Accepts the external `Query`
91
- * that execute along with data processing.
92
- *
93
- * {% codeBlock src='dropdownlist/query/index.md' %}{% endcodeBlock %}
94
- *
95
- * @default null
96
-
97
- */
98
- query?: Query;
90
+ * Accepts the external `Query`
91
+ * that execute along with data processing.
92
+ *
93
+ * {% codeBlock src='dropdownlist/query/index.md' %}{% endcodeBlock %}
94
+ *
95
+ * @default null
96
+ * @deprecated
97
+ */
98
+ query?: Query;
99
99
 
100
100
  /**
101
- * Accepts the template design and assigns it to the selected list item in the input element of the component.
102
- * For more details about the available template options refer to
103
- * [`Template`](../../drop-down-list/templates) documentation.
104
- *
105
- * We have built-in `template engine`
106
- * which provides options to compile template string into a executable function.
107
- * For EX: We have expression evolution as like ES6 expression string literals.
108
- *
109
- * @default null
110
- * @aspType string
111
- */
112
- valueTemplate?: string | Function;
101
+ * Accepts the template design and assigns it to the selected list item in the input element of the component.
102
+ * For more details about the available template options refer to
103
+ * [`Template`](../../drop-down-list/templates) documentation.
104
+ *
105
+ * We have built-in `template engine`
106
+ * which provides options to compile template string into a executable function.
107
+ * For EX: We have expression evolution as like ES6 expression string literals.
108
+ *
109
+ * @default null
110
+ * @aspType string
111
+ */
112
+ valueTemplate?: string | Function;
113
113
 
114
114
  /**
115
- * Accepts the template design and assigns it to the header container of the popup list.
116
- * > For more details about the available template options refer to [`Template`](../../drop-down-list/templates) documentation.
117
- *
118
- * @default null
119
- * @aspType string
120
- */
121
- headerTemplate?: string | Function;
115
+ * Accepts the template design and assigns it to the header container of the popup list.
116
+ * > For more details about the available template options refer to [`Template`](../../drop-down-list/templates) documentation.
117
+ *
118
+ * @default null
119
+ * @aspType string
120
+ */
121
+ headerTemplate?: string | Function;
122
122
 
123
123
  /**
124
- * Accepts the template design and assigns it to the footer container of the popup list.
125
- * > For more details about the available template options refer to [`Template`](../../drop-down-list/templates) documentation.
126
- *
127
- * @default null
128
- * @aspType string
129
- */
130
- footerTemplate?: string | Function;
124
+ * Accepts the template design and assigns it to the footer container of the popup list.
125
+ * > For more details about the available template options refer to [`Template`](../../drop-down-list/templates) documentation.
126
+ *
127
+ * @default null
128
+ * @aspType string
129
+ */
130
+ footerTemplate?: string | Function;
131
131
 
132
132
  /**
133
- * When allowFiltering is set to true, show the filter bar (search box) of the component.
134
- * The filter action retrieves matched items through the `filtering` event based on
135
- * the characters typed in the search TextBox.
136
- *
137
- * If no match is found, the value of the `noRecordsTemplate` property will be displayed.
138
- * > For more details about the filtering refer to [`Filtering`](../../drop-down-list/filtering) documentation.
139
- *
140
- * {% codeBlock src="dropdownlist/allow-filtering-api/index.ts" %}{% endcodeBlock %}
141
- *
142
- * {% codeBlock src="dropdownlist/allow-filtering-api/index.html" %}{% endcodeBlock %}
143
- *
144
- * @default false
145
- */
146
- allowFiltering?: boolean;
133
+ * When allowFiltering is set to true, show the filter bar (search box) of the component.
134
+ * The filter action retrieves matched items through the `filtering` event based on
135
+ * the characters typed in the search TextBox.
136
+ *
137
+ * If no match is found, the value of the `noRecordsTemplate` property will be displayed.
138
+ * > For more details about the filtering refer to [`Filtering`](../../drop-down-list/filtering) documentation.
139
+ *
140
+ * {% codeBlock src="dropdownlist/allow-filtering-api/index.ts" %}{% endcodeBlock %}
141
+ *
142
+ * {% codeBlock src="dropdownlist/allow-filtering-api/index.html" %}{% endcodeBlock %}
143
+ *
144
+ * @default false
145
+ */
146
+ allowFiltering?: boolean;
147
147
 
148
148
  /**
149
- * When set to true, the user interactions on the component are disabled.
150
- *
151
- * @default false
152
- */
153
- readonly?: boolean;
149
+ * When set to true, the user interactions on the component are disabled.
150
+ *
151
+ * @default false
152
+ */
153
+ readonly?: boolean;
154
154
 
155
155
  /**
156
- * Defines whether to enable virtual scrolling in the component.
157
- *
158
- * @default false
159
- */
160
- enableVirtualization?: boolean;
156
+ * Defines whether to enable virtual scrolling in the component.
157
+ *
158
+ * @default false
159
+ */
160
+ enableVirtualization?: boolean;
161
161
 
162
162
  /**
163
- * Gets or sets the display text of the selected item in the component.
164
- *
165
- * @default null
166
- */
167
- text?: string;
163
+ * Gets or sets the display text of the selected item in the component.
164
+ *
165
+ * @default null
166
+ */
167
+ text?: string;
168
168
 
169
169
  /**
170
- * Gets or sets the value of the selected item in the component.
171
- *
172
- * @default null
173
- * @isGenericType true
174
- */
175
- value?: number | string | boolean;
170
+ * Gets or sets the value of the selected item in the component.
171
+ *
172
+ * @default null
173
+ * @isGenericType true
174
+ */
175
+ value?: number | string | boolean;
176
176
 
177
177
  /**
178
- * Gets or sets the index of the selected item in the component.
179
- *
180
- * {% codeBlock src="dropdownlist/index-api/index.ts" %}{% endcodeBlock %}
181
- *
182
- * {% codeBlock src="dropdownlist/index-api/index.html" %}{% endcodeBlock %}
183
- *
184
- * @default null
185
- */
186
- index?: number;
178
+ * Gets or sets the index of the selected item in the component.
179
+ *
180
+ * {% codeBlock src="dropdownlist/index-api/index.ts" %}{% endcodeBlock %}
181
+ *
182
+ * {% codeBlock src="dropdownlist/index-api/index.html" %}{% endcodeBlock %}
183
+ *
184
+ * @default null
185
+ */
186
+ index?: number;
187
187
 
188
188
  /**
189
- * Specifies whether to display the floating label above the input element.
190
- * Possible values are:
191
- * * Never: The label will never float in the input when the placeholder is available.
192
- * * Always: The floating label will always float above the input.
193
- * * Auto: The floating label will float above the input after focusing or entering a value in the input.
194
- *
195
- * {% codeBlock src="dropdownlist/float-label-type-api/index.ts" %}{% endcodeBlock %}
196
- *
197
- * {% codeBlock src="dropdownlist/float-label-type-api/index.html" %}{% endcodeBlock %}
198
- *
199
- * @default Syncfusion.EJ2.Inputs.FloatLabelType.Never
200
- * @aspType Syncfusion.EJ2.Inputs.FloatLabelType
201
- * @isEnumeration true
202
- */
203
- floatLabelType?: FloatLabelType;
189
+ * Specifies whether to display the floating label above the input element.
190
+ * Possible values are:
191
+ * * Never: The label will never float in the input when the placeholder is available.
192
+ * * Always: The floating label will always float above the input.
193
+ * * Auto: The floating label will float above the input after focusing or entering a value in the input.
194
+ *
195
+ * {% codeBlock src="dropdownlist/float-label-type-api/index.ts" %}{% endcodeBlock %}
196
+ *
197
+ * {% codeBlock src="dropdownlist/float-label-type-api/index.html" %}{% endcodeBlock %}
198
+ *
199
+ * @default Syncfusion.EJ2.Inputs.FloatLabelType.Never
200
+ * @aspType Syncfusion.EJ2.Inputs.FloatLabelType
201
+ * @isEnumeration true
202
+ */
203
+ floatLabelType?: FloatLabelType;
204
204
 
205
205
  /**
206
- * Specifies whether to show or hide the clear button.
207
- * When the clear button is clicked, `value`, `text`, and `index` properties are reset to null.
208
- *
209
- * @default false
210
- */
211
- showClearButton?: boolean;
206
+ * Specifies whether to show or hide the clear button.
207
+ * When the clear button is clicked, `value`, `text`, and `index` properties are reset to null.
208
+ *
209
+ * @default false
210
+ */
211
+ showClearButton?: boolean;
212
212
 
213
213
  /**
214
- * Triggers on typing a character in the filter bar when the
215
- * [`allowFiltering`](./#allowfiltering)
216
- * is enabled.
217
- * > For more details about the filtering refer to [`Filtering`](../../drop-down-list/filtering) documentation.
218
- *
219
- * @event filtering
220
- */
221
- filtering?: EmitType<FilteringEventArgs>;
214
+ * Triggers on typing a character in the filter bar when the
215
+ * [`allowFiltering`](./#allowfiltering)
216
+ * is enabled.
217
+ * > For more details about the filtering refer to [`Filtering`](../../drop-down-list/filtering) documentation.
218
+ *
219
+ * @event filtering
220
+ */
221
+ filtering?: EmitType<FilteringEventArgs>;
222
222
 
223
223
  /**
224
- * Triggers when an item in a popup is selected or when the model value is changed by user.
225
- * Use change event to
226
- * [`Configure the Cascading DropDownList`](../../drop-down-list/how-to/cascading)
227
- *
228
- * @event change
229
- */
230
- change?: EmitType<ChangeEventArgs>;
224
+ * Triggers when an item in a popup is selected or when the model value is changed by user.
225
+ * Use change event to
226
+ * [`Configure the Cascading DropDownList`](../../drop-down-list/how-to/cascading)
227
+ *
228
+ * @event change
229
+ */
230
+ change?: EmitType<ChangeEventArgs>;
231
231
 
232
232
  /**
233
- * Triggers when the popup before opens.
234
- *
235
- * @event beforeOpen
236
- */
237
- beforeOpen?: EmitType<Object>;
233
+ * Triggers when the popup before opens.
234
+ *
235
+ * @event beforeOpen
236
+ */
237
+ beforeOpen?: EmitType<Object>;
238
238
 
239
239
  /**
240
- * Triggers when the popup opens.
241
- *
242
- * @event open
243
- */
244
- open?: EmitType<PopupEventArgs>;
240
+ * Triggers when the popup opens.
241
+ *
242
+ * @event open
243
+ */
244
+ open?: EmitType<PopupEventArgs>;
245
245
 
246
246
  /**
247
- * Triggers when the popup is closed.
248
- *
249
- * @event close
250
- */
251
- close?: EmitType<PopupEventArgs>;
247
+ * Triggers when the popup is closed.
248
+ *
249
+ * @event close
250
+ */
251
+ close?: EmitType<PopupEventArgs>;
252
252
 
253
253
  /**
254
- * Triggers when focus moves out from the component.
255
- *
256
- * @event blur
257
- */
258
- blur?: EmitType<Object>;
254
+ * Triggers when focus moves out from the component.
255
+ *
256
+ * @event blur
257
+ */
258
+ blur?: EmitType<Object>;
259
259
 
260
260
  /**
261
- * Triggers when the component is focused.
262
- *
263
- * @event focus
264
- */
265
- focus?: EmitType<Object>;
261
+ * Triggers when the component is focused.
262
+ *
263
+ * @event focus
264
+ */
265
+ focus?: EmitType<Object>;
266
266
 
267
267
  }
@@ -158,7 +158,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
158
158
  * Specifies a value that indicates whether the component is enabled or not.
159
159
  *
160
160
  * @default true
161
-
161
+ * @deprecated
162
162
  */
163
163
  enabled: boolean;
164
164
  /**
@@ -167,7 +167,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
167
167
  * 1. value
168
168
  *
169
169
  * @default false
170
-
170
+ * @deprecated
171
171
  */
172
172
  enablePersistence: boolean;
173
173
  /**
@@ -219,7 +219,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
219
219
  * {% codeBlock src='dropdownlist/query/index.md' %}{% endcodeBlock %}
220
220
  *
221
221
  * @default null
222
-
222
+ * @deprecated
223
223
  */
224
224
  query: Query;
225
225
  /**
@@ -523,7 +523,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
523
523
  * @param {Query} query - Specify the query to filter the data.
524
524
  * @param {FieldSettingsModel} fields - Specify the fields to map the column in the data table.
525
525
  * @returns {void}
526
-
526
+ * @deprecated
527
527
  */
528
528
  filter(dataSource: {
529
529
  [key: string]: Object;
@@ -1,22 +1,22 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- extendStatics(d, b);
10
- function __() { this.constructor = d; }
11
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12
- };
13
- })();
14
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
15
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
- return c > 3 && r && Object.defineProperty(target, key, r), r;
19
- };
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ extendStatics(d, b);
10
+ function __() { this.constructor = d; }
11
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12
+ };
13
+ })();
14
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
15
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
19
+ };
20
20
  // eslint-disable-next-line @typescript-eslint/triple-slash-reference
21
21
  /// <reference path='../drop-down-base/drop-down-base-model.d.ts'/>
22
22
  import { EventHandler, Property, Event, compile, KeyboardEvents, append, select } from '@syncfusion/ej2-base';
@@ -1039,6 +1039,7 @@ var DropDownList = /** @class */ (function (_super) {
1039
1039
  this.isDocumentClick = true;
1040
1040
  var isActive = this.isRequested;
1041
1041
  this.hidePopup(e);
1042
+ this.isInteracted = false;
1042
1043
  if (!isActive) {
1043
1044
  this.onFocusOut();
1044
1045
  this.inputWrapper.container.classList.remove(dropDownListClasses.inputFocus);
@@ -1226,6 +1227,7 @@ var DropDownList = /** @class */ (function (_super) {
1226
1227
  }
1227
1228
  };
1228
1229
  DropDownList.prototype.setSelection = function (li, e) {
1230
+ var _this = this;
1229
1231
  if (this.isValidLI(li) && (!li.classList.contains(dropDownBaseClasses.selected) || (this.isPopupOpen && this.isSelected
1230
1232
  && li.classList.contains(dropDownBaseClasses.selected)))) {
1231
1233
  this.updateSelectedItem(li, e, false, true);
@@ -1234,10 +1236,21 @@ var DropDownList = /** @class */ (function (_super) {
1234
1236
  this.setSelectOptions(li, e);
1235
1237
  if (this.enableVirtualization) {
1236
1238
  var fields = (this.fields.value) ? this.fields.value : '';
1237
- var getItem = new DataManager(this.dataSource).executeLocal(new Query().where(new Predicate(fields, 'equal', this.value)));
1238
- if (getItem && getItem.length > 0) {
1239
- this.itemData = getItem[0];
1240
- this.setProperties({ 'text': getItem[0].text, 'value': getItem[0].value }, true);
1239
+ if (this.dataSource instanceof DataManager) {
1240
+ this.dataSource.executeQuery(new Query().where(new Predicate(fields, 'equal', this.value)))
1241
+ .then(function (e) {
1242
+ if (e.result.length > 0) {
1243
+ _this.itemData = e.result[0];
1244
+ _this.setProperties({ 'text': e.result[0].text, 'value': e.result[0].value }, true);
1245
+ }
1246
+ });
1247
+ }
1248
+ else {
1249
+ var getItem = new DataManager(this.dataSource).executeLocal(new Query().where(new Predicate(fields, 'equal', this.value)));
1250
+ if (getItem && getItem.length > 0) {
1251
+ this.itemData = getItem[0];
1252
+ this.setProperties({ 'text': getItem[0].text, 'value': getItem[0].value }, true);
1253
+ }
1241
1254
  }
1242
1255
  }
1243
1256
  }
@@ -1631,7 +1644,7 @@ var DropDownList = /** @class */ (function (_super) {
1631
1644
  * @param {Query} query - Specify the query to filter the data.
1632
1645
  * @param {FieldSettingsModel} fields - Specify the fields to map the column in the data table.
1633
1646
  * @returns {void}
1634
-
1647
+ * @deprecated
1635
1648
  */
1636
1649
  DropDownList.prototype.filter = function (dataSource, query, fields) {
1637
1650
  this.isCustomFilter = true;
@@ -2985,7 +2998,7 @@ var DropDownList = /** @class */ (function (_super) {
2985
2998
  EventHandler.add(this.list, 'scroll', this.setFloatingHeader, this);
2986
2999
  }
2987
3000
  if (!(!isNullOrUndefined(props) && (isNullOrUndefined(props.dataSource)
2988
- || (!(props.dataSource instanceof DataManager) && props.dataSource.length === 0))) || !(props.dataSource === [])) {
3001
+ || (!(props.dataSource instanceof DataManager) && props.dataSource.length === 0))) || !(Array.isArray(props.dataSource) && props.dataSource.length === 0)) {
2989
3002
  this.typedString = '';
2990
3003
  this.resetList(this.dataSource);
2991
3004
  }
@@ -3334,7 +3347,9 @@ var DropDownList = /** @class */ (function (_super) {
3334
3347
  });
3335
3348
  }
3336
3349
  }
3337
- this.invokeRenderPopup(e);
3350
+ if (this.beforePopupOpen) {
3351
+ this.invokeRenderPopup(e);
3352
+ }
3338
3353
  if (this.enableVirtualization && !this.allowFiltering && this.selectedValueInfo != null && this.selectedValueInfo.startIndex > 0 && this.value != null) {
3339
3354
  this.notify("dataProcessAsync", {
3340
3355
  module: "VirtualScroll",
@@ -3394,7 +3409,6 @@ var DropDownList = /** @class */ (function (_super) {
3394
3409
  this.isSelectCustom = false;
3395
3410
  this.clearAll(e);
3396
3411
  }
3397
- this.isInteracted = false;
3398
3412
  };
3399
3413
  /* eslint-disable valid-jsdoc, jsdoc/require-param */
3400
3414
  /**