@syncfusion/ej2-dropdowns 24.1.44 → 24.1.45-12082

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 (310) hide show
  1. package/CHANGELOG.md +2101 -2083
  2. package/{README.md → ReadMe.md} +217 -217
  3. package/dist/ej2-dropdowns.min.js +1 -10
  4. package/dist/ej2-dropdowns.umd.min.js +1 -10
  5. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  6. package/dist/es6/ej2-dropdowns.es2015.js +74 -68
  7. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  8. package/dist/es6/ej2-dropdowns.es5.js +216 -210
  9. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  10. package/dist/global/ej2-dropdowns.min.js +1 -10
  11. package/dist/global/ej2-dropdowns.min.js.map +1 -1
  12. package/dist/global/index.d.ts +0 -9
  13. package/dist/ts/auto-complete/auto-complete.ts +623 -0
  14. package/dist/ts/combo-box/combo-box.ts +1099 -0
  15. package/dist/ts/common/highlight-search.ts +57 -0
  16. package/dist/ts/common/incremental-search.ts +172 -0
  17. package/dist/ts/common/interface.ts +74 -0
  18. package/dist/ts/common/virtual-scroll.ts +388 -0
  19. package/dist/ts/drop-down-base/drop-down-base.ts +1986 -0
  20. package/dist/ts/drop-down-list/drop-down-list.ts +4261 -0
  21. package/dist/ts/drop-down-tree/drop-down-tree.ts +3747 -0
  22. package/dist/ts/list-box/list-box.ts +2772 -0
  23. package/dist/ts/mention/mention.ts +1875 -0
  24. package/dist/ts/multi-select/checkbox-selection.ts +550 -0
  25. package/dist/ts/multi-select/float-label.ts +176 -0
  26. package/dist/ts/multi-select/interface.ts +70 -0
  27. package/dist/ts/multi-select/multi-select.ts +4882 -0
  28. package/helpers/e2e/autocomplete.js +13 -13
  29. package/helpers/e2e/combobox.js +13 -13
  30. package/helpers/e2e/dropdownlist.js +13 -13
  31. package/helpers/e2e/index.js +3 -3
  32. package/helpers/e2e/listboxHelper.js +13 -13
  33. package/helpers/e2e/multiselect.js +13 -13
  34. package/license +2 -2
  35. package/package.json +80 -80
  36. package/src/auto-complete/auto-complete-model.d.ts +188 -188
  37. package/src/auto-complete/auto-complete.d.ts +12 -12
  38. package/src/auto-complete/auto-complete.js +21 -21
  39. package/src/combo-box/combo-box-model.d.ts +224 -224
  40. package/src/combo-box/combo-box.d.ts +27 -27
  41. package/src/combo-box/combo-box.js +29 -29
  42. package/src/common/virtual-scroll.js +46 -46
  43. package/src/drop-down-base/drop-down-base-model.d.ts +200 -200
  44. package/src/drop-down-base/drop-down-base.d.ts +16 -16
  45. package/src/drop-down-base/drop-down-base.js +20 -20
  46. package/src/drop-down-list/drop-down-list-model.d.ts +202 -202
  47. package/src/drop-down-list/drop-down-list.d.ts +5 -4
  48. package/src/drop-down-list/drop-down-list.js +29 -22
  49. package/src/drop-down-tree/drop-down-tree-model.d.ts +468 -468
  50. package/src/drop-down-tree/drop-down-tree.d.ts +0 -1
  51. package/src/drop-down-tree/drop-down-tree.js +19 -27
  52. package/src/list-box/list-box-model.d.ts +193 -193
  53. package/src/list-box/list-box.d.ts +2 -2
  54. package/src/list-box/list-box.js +19 -19
  55. package/src/mention/mention-model.d.ts +261 -261
  56. package/src/mention/mention.js +27 -20
  57. package/src/multi-select/multi-select-model.d.ts +512 -512
  58. package/src/multi-select/multi-select.js +20 -20
  59. package/styles/auto-complete/_all.scss +1 -1
  60. package/styles/auto-complete/_bds-definition.scss +2 -0
  61. package/styles/auto-complete/_bootstrap-dark-definition.scss +3 -3
  62. package/styles/auto-complete/_bootstrap-definition.scss +2 -2
  63. package/styles/auto-complete/_bootstrap4-definition.scss +11 -11
  64. package/styles/auto-complete/_bootstrap5-definition.scss +2 -2
  65. package/styles/auto-complete/_fabric-dark-definition.scss +2 -2
  66. package/styles/auto-complete/_fabric-definition.scss +2 -2
  67. package/styles/auto-complete/_fluent-definition.scss +2 -2
  68. package/styles/auto-complete/_fusionnew-definition.scss +2 -2
  69. package/styles/auto-complete/_highcontrast-definition.scss +2 -2
  70. package/styles/auto-complete/_highcontrast-light-definition.scss +2 -2
  71. package/styles/auto-complete/_material-dark-definition.scss +2 -2
  72. package/styles/auto-complete/_material-definition.scss +2 -2
  73. package/styles/auto-complete/_material3-definition.scss +2 -2
  74. package/styles/auto-complete/_tailwind-definition.scss +2 -2
  75. package/styles/auto-complete/material3-dark.scss +1 -1
  76. package/styles/auto-complete/material3.scss +1 -1
  77. package/styles/bootstrap-dark.css +5 -0
  78. package/styles/bootstrap.css +5 -0
  79. package/styles/bootstrap4.css +5 -0
  80. package/styles/bootstrap5-dark.css +5 -0
  81. package/styles/bootstrap5.css +5 -0
  82. package/styles/combo-box/_all.scss +1 -1
  83. package/styles/combo-box/_bds-definition.scss +2 -0
  84. package/styles/combo-box/_bootstrap-dark-definition.scss +2 -2
  85. package/styles/combo-box/_bootstrap-definition.scss +2 -2
  86. package/styles/combo-box/_bootstrap4-definition.scss +11 -11
  87. package/styles/combo-box/_bootstrap5-definition.scss +2 -2
  88. package/styles/combo-box/_fabric-dark-definition.scss +2 -2
  89. package/styles/combo-box/_fabric-definition.scss +2 -2
  90. package/styles/combo-box/_fluent-definition.scss +2 -2
  91. package/styles/combo-box/_fusionnew-definition.scss +2 -2
  92. package/styles/combo-box/_highcontrast-definition.scss +2 -2
  93. package/styles/combo-box/_highcontrast-light-definition.scss +3 -3
  94. package/styles/combo-box/_material-dark-definition.scss +2 -2
  95. package/styles/combo-box/_material-definition.scss +2 -2
  96. package/styles/combo-box/_material3-definition.scss +2 -2
  97. package/styles/combo-box/_tailwind-definition.scss +2 -2
  98. package/styles/combo-box/material3-dark.scss +1 -1
  99. package/styles/combo-box/material3.scss +1 -1
  100. package/styles/drop-down-base/_all.scss +2 -2
  101. package/styles/drop-down-base/_bds-definition.scss +129 -0
  102. package/styles/drop-down-base/_bootstrap-dark-definition.scss +83 -83
  103. package/styles/drop-down-base/_bootstrap-definition.scss +83 -83
  104. package/styles/drop-down-base/_bootstrap4-definition.scss +90 -90
  105. package/styles/drop-down-base/_bootstrap5-definition.scss +117 -117
  106. package/styles/drop-down-base/_definition.scss +23 -23
  107. package/styles/drop-down-base/_fabric-dark-definition.scss +86 -86
  108. package/styles/drop-down-base/_fabric-definition.scss +84 -84
  109. package/styles/drop-down-base/_fluent-definition.scss +121 -121
  110. package/styles/drop-down-base/_fusionnew-definition.scss +117 -117
  111. package/styles/drop-down-base/_highcontrast-definition.scss +105 -105
  112. package/styles/drop-down-base/_highcontrast-light-definition.scss +105 -105
  113. package/styles/drop-down-base/_layout.scss +192 -192
  114. package/styles/drop-down-base/_material-dark-definition.scss +86 -86
  115. package/styles/drop-down-base/_material-definition.scss +85 -85
  116. package/styles/drop-down-base/_material3-definition.scss +87 -87
  117. package/styles/drop-down-base/_tailwind-definition.scss +129 -129
  118. package/styles/drop-down-base/_theme.scss +391 -391
  119. package/styles/drop-down-base/material3-dark.scss +1 -1
  120. package/styles/drop-down-base/material3.scss +1 -1
  121. package/styles/drop-down-list/_all.scss +3 -3
  122. package/styles/drop-down-list/_bds-definition.scss +134 -0
  123. package/styles/drop-down-list/_bootstrap-dark-definition.scss +157 -157
  124. package/styles/drop-down-list/_bootstrap-definition.scss +156 -156
  125. package/styles/drop-down-list/_bootstrap4-definition.scss +202 -202
  126. package/styles/drop-down-list/_bootstrap5-definition.scss +201 -201
  127. package/styles/drop-down-list/_fabric-dark-definition.scss +128 -128
  128. package/styles/drop-down-list/_fabric-definition.scss +124 -124
  129. package/styles/drop-down-list/_fluent-definition.scss +185 -185
  130. package/styles/drop-down-list/_fusionnew-definition.scss +201 -201
  131. package/styles/drop-down-list/_highcontrast-definition.scss +142 -142
  132. package/styles/drop-down-list/_highcontrast-light-definition.scss +144 -144
  133. package/styles/drop-down-list/_layout.scss +315 -310
  134. package/styles/drop-down-list/_material-dark-definition.scss +143 -143
  135. package/styles/drop-down-list/_material-definition.scss +167 -167
  136. package/styles/drop-down-list/_material3-definition.scss +180 -180
  137. package/styles/drop-down-list/_tailwind-definition.scss +134 -134
  138. package/styles/drop-down-list/_theme.scss +10 -10
  139. package/styles/drop-down-list/bootstrap-dark.css +5 -0
  140. package/styles/drop-down-list/bootstrap.css +5 -0
  141. package/styles/drop-down-list/bootstrap4.css +5 -0
  142. package/styles/drop-down-list/bootstrap5-dark.css +5 -0
  143. package/styles/drop-down-list/bootstrap5.css +5 -0
  144. package/styles/drop-down-list/fabric-dark.css +5 -0
  145. package/styles/drop-down-list/fabric.css +5 -0
  146. package/styles/drop-down-list/fluent-dark.css +5 -0
  147. package/styles/drop-down-list/fluent.css +5 -0
  148. package/styles/drop-down-list/highcontrast-light.css +5 -0
  149. package/styles/drop-down-list/highcontrast.css +5 -0
  150. package/styles/drop-down-list/icons/_bootstrap-dark.scss +14 -14
  151. package/styles/drop-down-list/icons/_bootstrap.scss +14 -14
  152. package/styles/drop-down-list/icons/_bootstrap4.scss +14 -14
  153. package/styles/drop-down-list/icons/_bootstrap5.scss +14 -14
  154. package/styles/drop-down-list/icons/_fabric-dark.scss +14 -14
  155. package/styles/drop-down-list/icons/_fabric.scss +14 -14
  156. package/styles/drop-down-list/icons/_fluent.scss +14 -14
  157. package/styles/drop-down-list/icons/_fusionnew.scss +14 -14
  158. package/styles/drop-down-list/icons/_highcontrast-light.scss +14 -14
  159. package/styles/drop-down-list/icons/_highcontrast.scss +14 -14
  160. package/styles/drop-down-list/icons/_material-dark.scss +14 -14
  161. package/styles/drop-down-list/icons/_material.scss +14 -14
  162. package/styles/drop-down-list/icons/_material3.scss +14 -14
  163. package/styles/drop-down-list/icons/_tailwind.scss +14 -14
  164. package/styles/drop-down-list/material-dark.css +5 -0
  165. package/styles/drop-down-list/material.css +5 -0
  166. package/styles/drop-down-list/material3-dark.css +5 -0
  167. package/styles/drop-down-list/material3-dark.scss +1 -1
  168. package/styles/drop-down-list/material3.css +5 -0
  169. package/styles/drop-down-list/material3.scss +1 -1
  170. package/styles/drop-down-list/tailwind-dark.css +5 -0
  171. package/styles/drop-down-list/tailwind.css +5 -0
  172. package/styles/drop-down-tree/_all.scss +2 -2
  173. package/styles/drop-down-tree/_bds-definition.scss +61 -0
  174. package/styles/drop-down-tree/_bootstrap-dark-definition.scss +71 -71
  175. package/styles/drop-down-tree/_bootstrap-definition.scss +70 -70
  176. package/styles/drop-down-tree/_bootstrap4-definition.scss +71 -71
  177. package/styles/drop-down-tree/_bootstrap5-definition.scss +59 -59
  178. package/styles/drop-down-tree/_fabric-dark-definition.scss +71 -71
  179. package/styles/drop-down-tree/_fabric-definition.scss +71 -71
  180. package/styles/drop-down-tree/_fluent-definition.scss +65 -65
  181. package/styles/drop-down-tree/_fusionnew-definition.scss +59 -59
  182. package/styles/drop-down-tree/_highcontrast-definition.scss +71 -71
  183. package/styles/drop-down-tree/_highcontrast-light-definition.scss +71 -71
  184. package/styles/drop-down-tree/_layout.scss +1423 -1423
  185. package/styles/drop-down-tree/_material-dark-definition.scss +72 -72
  186. package/styles/drop-down-tree/_material-definition.scss +72 -72
  187. package/styles/drop-down-tree/_material3-definition.scss +76 -76
  188. package/styles/drop-down-tree/_tailwind-definition.scss +61 -61
  189. package/styles/drop-down-tree/_theme.scss +132 -132
  190. package/styles/drop-down-tree/icons/_bootstrap-dark.scss +11 -11
  191. package/styles/drop-down-tree/icons/_bootstrap.scss +11 -11
  192. package/styles/drop-down-tree/icons/_bootstrap4.scss +11 -11
  193. package/styles/drop-down-tree/icons/_bootstrap5.scss +11 -11
  194. package/styles/drop-down-tree/icons/_fabric-dark.scss +11 -11
  195. package/styles/drop-down-tree/icons/_fabric.scss +11 -11
  196. package/styles/drop-down-tree/icons/_fluent.scss +11 -11
  197. package/styles/drop-down-tree/icons/_fusionnew.scss +11 -11
  198. package/styles/drop-down-tree/icons/_highcontrast-light.scss +11 -11
  199. package/styles/drop-down-tree/icons/_highcontrast.scss +11 -11
  200. package/styles/drop-down-tree/icons/_material-dark.scss +11 -11
  201. package/styles/drop-down-tree/icons/_material.scss +11 -11
  202. package/styles/drop-down-tree/icons/_material3.scss +11 -11
  203. package/styles/drop-down-tree/icons/_tailwind-dark.scss +11 -11
  204. package/styles/drop-down-tree/icons/_tailwind.scss +11 -11
  205. package/styles/drop-down-tree/material3-dark.scss +1 -1
  206. package/styles/drop-down-tree/material3.scss +1 -1
  207. package/styles/fabric-dark.css +5 -0
  208. package/styles/fabric.css +5 -0
  209. package/styles/fluent-dark.css +5 -0
  210. package/styles/fluent.css +5 -0
  211. package/styles/highcontrast-light.css +5 -0
  212. package/styles/highcontrast.css +5 -0
  213. package/styles/list-box/_all.scss +2 -2
  214. package/styles/list-box/_bds-definition.scss +119 -0
  215. package/styles/list-box/_bootstrap-dark-definition.scss +126 -126
  216. package/styles/list-box/_bootstrap-definition.scss +119 -119
  217. package/styles/list-box/_bootstrap4-definition.scss +124 -124
  218. package/styles/list-box/_bootstrap5-definition.scss +120 -120
  219. package/styles/list-box/_fabric-dark-definition.scss +126 -126
  220. package/styles/list-box/_fabric-definition.scss +119 -119
  221. package/styles/list-box/_fluent-definition.scss +120 -120
  222. package/styles/list-box/_fusionnew-definition.scss +111 -111
  223. package/styles/list-box/_highcontrast-definition.scss +119 -119
  224. package/styles/list-box/_highcontrast-light-definition.scss +126 -126
  225. package/styles/list-box/_layout.scss +542 -542
  226. package/styles/list-box/_material-dark-definition.scss +126 -126
  227. package/styles/list-box/_material-definition.scss +119 -119
  228. package/styles/list-box/_material3-definition.scss +119 -119
  229. package/styles/list-box/_tailwind-definition.scss +119 -119
  230. package/styles/list-box/_theme.scss +382 -382
  231. package/styles/list-box/icons/_bootstrap-dark.scss +25 -25
  232. package/styles/list-box/icons/_bootstrap.scss +25 -25
  233. package/styles/list-box/icons/_bootstrap4.scss +25 -25
  234. package/styles/list-box/icons/_bootstrap5.scss +25 -25
  235. package/styles/list-box/icons/_fabric-dark.scss +25 -25
  236. package/styles/list-box/icons/_fabric.scss +25 -25
  237. package/styles/list-box/icons/_fluent.scss +25 -25
  238. package/styles/list-box/icons/_fusionnew.scss +25 -25
  239. package/styles/list-box/icons/_highcontrast-light.scss +25 -25
  240. package/styles/list-box/icons/_highcontrast.scss +25 -25
  241. package/styles/list-box/icons/_material-dark.scss +25 -25
  242. package/styles/list-box/icons/_material.scss +25 -25
  243. package/styles/list-box/icons/_material3.scss +25 -25
  244. package/styles/list-box/icons/_tailwind-dark.scss +25 -25
  245. package/styles/list-box/icons/_tailwind.scss +25 -25
  246. package/styles/list-box/material3-dark.scss +1 -1
  247. package/styles/list-box/material3.scss +1 -1
  248. package/styles/material-dark.css +5 -0
  249. package/styles/material.css +5 -0
  250. package/styles/material3-dark.css +5 -0
  251. package/styles/material3-dark.scss +1 -1
  252. package/styles/material3.css +5 -0
  253. package/styles/material3.scss +1 -1
  254. package/styles/mention/_all.scss +1 -1
  255. package/styles/mention/_bds-definition.scss +1 -0
  256. package/styles/mention/_bootstrap-dark-definition.scss +3 -3
  257. package/styles/mention/_bootstrap-definition.scss +3 -3
  258. package/styles/mention/_bootstrap4-definition.scss +3 -3
  259. package/styles/mention/_bootstrap5-definition.scss +1 -1
  260. package/styles/mention/_fabric-dark-definition.scss +2 -2
  261. package/styles/mention/_fabric-definition.scss +3 -3
  262. package/styles/mention/_fluent-definition.scss +1 -1
  263. package/styles/mention/_fusionnew-definition.scss +1 -1
  264. package/styles/mention/_highcontrast-definition.scss +3 -3
  265. package/styles/mention/_highcontrast-light-definition.scss +3 -3
  266. package/styles/mention/_layout.scss +6 -6
  267. package/styles/mention/_material-dark-definition.scss +3 -3
  268. package/styles/mention/_material-definition.scss +3 -3
  269. package/styles/mention/_material3-definition.scss +1 -1
  270. package/styles/mention/_tailwind-definition.scss +1 -1
  271. package/styles/mention/material3-dark.scss +1 -1
  272. package/styles/mention/material3.scss +1 -1
  273. package/styles/multi-select/_all.scss +2 -2
  274. package/styles/multi-select/_bds-definition.scss +235 -0
  275. package/styles/multi-select/_bootstrap-dark-definition.scss +203 -203
  276. package/styles/multi-select/_bootstrap-definition.scss +192 -192
  277. package/styles/multi-select/_bootstrap4-definition.scss +278 -278
  278. package/styles/multi-select/_bootstrap5-definition.scss +230 -230
  279. package/styles/multi-select/_fabric-dark-definition.scss +192 -192
  280. package/styles/multi-select/_fabric-definition.scss +183 -183
  281. package/styles/multi-select/_fluent-definition.scss +241 -241
  282. package/styles/multi-select/_fusionnew-definition.scss +227 -227
  283. package/styles/multi-select/_highcontrast-definition.scss +303 -303
  284. package/styles/multi-select/_highcontrast-light-definition.scss +297 -297
  285. package/styles/multi-select/_layout.scss +2199 -2199
  286. package/styles/multi-select/_material-dark-definition.scss +230 -230
  287. package/styles/multi-select/_material-definition.scss +223 -223
  288. package/styles/multi-select/_material3-definition.scss +246 -246
  289. package/styles/multi-select/_tailwind-definition.scss +235 -235
  290. package/styles/multi-select/_theme.scss +586 -586
  291. package/styles/multi-select/icons/_bootstrap-dark.scss +26 -26
  292. package/styles/multi-select/icons/_bootstrap.scss +26 -26
  293. package/styles/multi-select/icons/_bootstrap4.scss +37 -37
  294. package/styles/multi-select/icons/_bootstrap5.scss +26 -26
  295. package/styles/multi-select/icons/_fabric-dark.scss +26 -26
  296. package/styles/multi-select/icons/_fabric.scss +26 -26
  297. package/styles/multi-select/icons/_fluent.scss +55 -55
  298. package/styles/multi-select/icons/_fusionnew.scss +26 -26
  299. package/styles/multi-select/icons/_highcontrast-light.scss +26 -26
  300. package/styles/multi-select/icons/_highcontrast.scss +26 -26
  301. package/styles/multi-select/icons/_material-dark.scss +693 -693
  302. package/styles/multi-select/icons/_material.scss +693 -693
  303. package/styles/multi-select/icons/_material3.scss +692 -692
  304. package/styles/multi-select/icons/_tailwind.scss +26 -26
  305. package/styles/multi-select/material3-dark.scss +1 -1
  306. package/styles/multi-select/material3.scss +1 -1
  307. package/styles/tailwind-dark.css +5 -0
  308. package/styles/tailwind.css +5 -0
  309. package/.eslintrc.json +0 -260
  310. 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
  }
@@ -161,7 +161,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
161
161
  * Specifies a value that indicates whether the component is enabled or not.
162
162
  *
163
163
  * @default true
164
-
164
+ * @deprecated
165
165
  */
166
166
  enabled: boolean;
167
167
  /**
@@ -170,7 +170,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
170
170
  * 1. value
171
171
  *
172
172
  * @default false
173
-
173
+ * @deprecated
174
174
  */
175
175
  enablePersistence: boolean;
176
176
  /**
@@ -222,7 +222,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
222
222
  * {% codeBlock src='dropdownlist/query/index.md' %}{% endcodeBlock %}
223
223
  *
224
224
  * @default null
225
-
225
+ * @deprecated
226
226
  */
227
227
  query: Query;
228
228
  /**
@@ -529,7 +529,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
529
529
  * @param {Query} query - Specify the query to filter the data.
530
530
  * @param {FieldSettingsModel} fields - Specify the fields to map the column in the data table.
531
531
  * @returns {void}
532
-
532
+ * @deprecated
533
533
  */
534
534
  filter(dataSource: {
535
535
  [key: string]: Object;
@@ -567,6 +567,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
567
567
  protected getFocusElement(): void;
568
568
  private isFilterLayout;
569
569
  private scrollHandler;
570
+ private isElementInViewport;
570
571
  private setSearchBoxPosition;
571
572
  private setPopupPosition;
572
573
  private setWidth;
@@ -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';
@@ -1873,7 +1873,7 @@ var DropDownList = /** @class */ (function (_super) {
1873
1873
  * @param {Query} query - Specify the query to filter the data.
1874
1874
  * @param {FieldSettingsModel} fields - Specify the fields to map the column in the data table.
1875
1875
  * @returns {void}
1876
-
1876
+ * @deprecated
1877
1877
  */
1878
1878
  DropDownList.prototype.filter = function (dataSource, query, fields) {
1879
1879
  this.isCustomFilter = true;
@@ -2594,9 +2594,16 @@ var DropDownList = /** @class */ (function (_super) {
2594
2594
  DropDownList.prototype.scrollHandler = function () {
2595
2595
  if (Browser.isDevice && ((this.getModuleName() === 'dropdownlist' &&
2596
2596
  !this.isFilterLayout()) || (this.getModuleName() === 'combobox' && !this.allowFiltering && this.isDropDownClick))) {
2597
- this.hidePopup();
2597
+ if (this.element && !(this.isElementInViewport(this.element))) {
2598
+ this.hidePopup();
2599
+ }
2598
2600
  }
2599
2601
  };
2602
+ DropDownList.prototype.isElementInViewport = function (element) {
2603
+ var elementRect = element.getBoundingClientRect();
2604
+ return (elementRect.top >= 0 && elementRect.left >= 0 && elementRect.bottom <= window.innerHeight && elementRect.right <= window.innerWidth);
2605
+ };
2606
+ ;
2600
2607
  DropDownList.prototype.setSearchBoxPosition = function () {
2601
2608
  var searchBoxHeight = this.filterInput.parentElement.getBoundingClientRect().height;
2602
2609
  this.popupObj.element.style.maxHeight = '100%';
@@ -3742,7 +3749,7 @@ var DropDownList = /** @class */ (function (_super) {
3742
3749
  if (!this.enabled) {
3743
3750
  return;
3744
3751
  }
3745
- if (!this.enableVirtualization && this.getModuleName() === 'combobox') {
3752
+ if (!this.enableVirtualization && (this.getModuleName() === 'combobox' || this.getModuleName() === 'autocomplete')) {
3746
3753
  this.isTyped = true;
3747
3754
  }
3748
3755
  this.hidePopup(e);