@syncfusion/ej2-dropdowns 20.2.40 → 20.2.43-1234

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 (381) hide show
  1. package/.eslintrc.json +16 -1
  2. package/CHANGELOG.md +116 -3
  3. package/GitLeaksReport.json +1 -0
  4. package/{README.md → ReadMe.md} +1 -1
  5. package/dist/ej2-dropdowns.min.js +1 -0
  6. package/dist/ej2-dropdowns.umd.min.js +1 -10
  7. package/dist/ej2-dropdowns.umd.min.js.map +1 -1
  8. package/dist/es6/ej2-dropdowns.es2015.js +2248 -468
  9. package/dist/es6/ej2-dropdowns.es2015.js.map +1 -1
  10. package/dist/es6/ej2-dropdowns.es5.js +2291 -481
  11. package/dist/es6/ej2-dropdowns.es5.js.map +1 -1
  12. package/dist/global/ej2-dropdowns.min.js +1 -10
  13. package/dist/global/ej2-dropdowns.min.js.map +1 -1
  14. package/dist/global/index.d.ts +0 -9
  15. package/gitleaks-ci/gitleaks +0 -0
  16. package/gitleaks-ci.tar.gz +0 -0
  17. package/mention.d.ts +4 -0
  18. package/mention.js +4 -0
  19. package/package.json +76 -76
  20. package/src/auto-complete/auto-complete-model.d.ts +12 -11
  21. package/src/auto-complete/auto-complete.d.ts +20 -18
  22. package/src/auto-complete/auto-complete.js +67 -37
  23. package/src/combo-box/combo-box-model.d.ts +17 -17
  24. package/src/combo-box/combo-box.d.ts +33 -33
  25. package/src/combo-box/combo-box.js +33 -29
  26. package/src/common/incremental-search.d.ts +3 -4
  27. package/src/common/incremental-search.js +22 -7
  28. package/src/drop-down-base/drop-down-base-model.d.ts +13 -31
  29. package/src/drop-down-base/drop-down-base.d.ts +22 -41
  30. package/src/drop-down-base/drop-down-base.js +75 -59
  31. package/src/drop-down-list/drop-down-list-model.d.ts +19 -1
  32. package/src/drop-down-list/drop-down-list.d.ts +35 -11
  33. package/src/drop-down-list/drop-down-list.js +195 -110
  34. package/src/drop-down-tree/drop-down-tree-model.d.ts +16 -2
  35. package/src/drop-down-tree/drop-down-tree.d.ts +15 -1
  36. package/src/drop-down-tree/drop-down-tree.js +49 -14
  37. package/src/index.d.ts +1 -0
  38. package/src/index.js +1 -0
  39. package/src/list-box/list-box-model.d.ts +18 -0
  40. package/src/list-box/list-box.d.ts +23 -1
  41. package/src/list-box/list-box.js +78 -35
  42. package/src/mention/index.d.ts +5 -0
  43. package/src/mention/index.js +4 -0
  44. package/src/mention/mention-model.d.ts +285 -0
  45. package/src/mention/mention.d.ts +457 -0
  46. package/src/mention/mention.js +1465 -0
  47. package/src/multi-select/checkbox-selection.js +11 -12
  48. package/src/multi-select/float-label.js +4 -2
  49. package/src/multi-select/multi-select-model.d.ts +1 -1
  50. package/src/multi-select/multi-select.d.ts +10 -5
  51. package/src/multi-select/multi-select.js +312 -188
  52. package/styles/auto-complete/_all.scss +1 -1
  53. package/styles/auto-complete/_bootstrap-dark-definition.scss +1 -1
  54. package/styles/auto-complete/_bootstrap-definition.scss +1 -1
  55. package/styles/auto-complete/_bootstrap4-definition.scss +2 -2
  56. package/styles/auto-complete/_bootstrap5-definition.scss +1 -1
  57. package/styles/auto-complete/_fabric-dark-definition.scss +1 -1
  58. package/styles/auto-complete/_fabric-definition.scss +1 -1
  59. package/styles/auto-complete/_fluent-definition.scss +1 -1
  60. package/styles/auto-complete/_fusionnew-definition.scss +1 -1
  61. package/styles/auto-complete/_highcontrast-definition.scss +1 -1
  62. package/styles/auto-complete/_highcontrast-light-definition.scss +1 -1
  63. package/styles/auto-complete/_material-dark-definition.scss +1 -1
  64. package/styles/auto-complete/_material-definition.scss +1 -1
  65. package/styles/auto-complete/_material3-definition.scss +1 -1
  66. package/styles/auto-complete/_tailwind-definition.scss +1 -1
  67. package/styles/auto-complete/bootstrap-dark.css +3 -1
  68. package/styles/auto-complete/bootstrap.css +3 -1
  69. package/styles/auto-complete/bootstrap4.css +3 -1
  70. package/styles/auto-complete/bootstrap5-dark.css +3 -1
  71. package/styles/auto-complete/bootstrap5.css +3 -1
  72. package/styles/auto-complete/fabric-dark.css +3 -1
  73. package/styles/auto-complete/fabric.css +3 -1
  74. package/styles/auto-complete/fluent-dark.css +3 -1
  75. package/styles/auto-complete/fluent.css +3 -1
  76. package/styles/auto-complete/highcontrast-light.css +3 -1
  77. package/styles/auto-complete/highcontrast.css +3 -1
  78. package/styles/auto-complete/material-dark.css +3 -1
  79. package/styles/auto-complete/material.css +3 -1
  80. package/styles/auto-complete/tailwind-dark.css +3 -1
  81. package/styles/auto-complete/tailwind.css +3 -1
  82. package/styles/bootstrap-dark.css +121 -44
  83. package/styles/bootstrap-dark.scss +1 -0
  84. package/styles/bootstrap.css +121 -44
  85. package/styles/bootstrap.scss +1 -0
  86. package/styles/bootstrap4.css +134 -55
  87. package/styles/bootstrap4.scss +1 -0
  88. package/styles/bootstrap5-dark.css +135 -50
  89. package/styles/bootstrap5-dark.scss +1 -0
  90. package/styles/bootstrap5.css +135 -50
  91. package/styles/bootstrap5.scss +1 -0
  92. package/styles/combo-box/_all.scss +1 -1
  93. package/styles/combo-box/_bootstrap-dark-definition.scss +1 -1
  94. package/styles/combo-box/_bootstrap-definition.scss +1 -1
  95. package/styles/combo-box/_bootstrap4-definition.scss +2 -2
  96. package/styles/combo-box/_bootstrap5-definition.scss +1 -1
  97. package/styles/combo-box/_fabric-dark-definition.scss +1 -1
  98. package/styles/combo-box/_fabric-definition.scss +1 -1
  99. package/styles/combo-box/_fluent-definition.scss +1 -1
  100. package/styles/combo-box/_fusionnew-definition.scss +1 -1
  101. package/styles/combo-box/_highcontrast-definition.scss +1 -1
  102. package/styles/combo-box/_highcontrast-light-definition.scss +1 -1
  103. package/styles/combo-box/_material-dark-definition.scss +1 -1
  104. package/styles/combo-box/_material-definition.scss +1 -1
  105. package/styles/combo-box/_material3-definition.scss +1 -1
  106. package/styles/combo-box/_tailwind-definition.scss +1 -1
  107. package/styles/combo-box/bootstrap-dark.css +3 -1
  108. package/styles/combo-box/bootstrap.css +3 -1
  109. package/styles/combo-box/bootstrap4.css +3 -1
  110. package/styles/combo-box/bootstrap5-dark.css +3 -1
  111. package/styles/combo-box/bootstrap5.css +3 -1
  112. package/styles/combo-box/fabric-dark.css +3 -1
  113. package/styles/combo-box/fabric.css +3 -1
  114. package/styles/combo-box/fluent-dark.css +3 -1
  115. package/styles/combo-box/fluent.css +3 -1
  116. package/styles/combo-box/highcontrast-light.css +3 -1
  117. package/styles/combo-box/highcontrast.css +3 -1
  118. package/styles/combo-box/material-dark.css +3 -1
  119. package/styles/combo-box/material.css +3 -1
  120. package/styles/combo-box/tailwind-dark.css +3 -1
  121. package/styles/combo-box/tailwind.css +3 -1
  122. package/styles/drop-down-base/_all.scss +1 -1
  123. package/styles/drop-down-base/_bootstrap-dark-definition.scss +9 -2
  124. package/styles/drop-down-base/_bootstrap-definition.scss +7 -1
  125. package/styles/drop-down-base/_bootstrap4-definition.scss +7 -1
  126. package/styles/drop-down-base/_bootstrap5-definition.scss +9 -3
  127. package/styles/drop-down-base/_fabric-dark-definition.scss +7 -1
  128. package/styles/drop-down-base/_fabric-definition.scss +7 -1
  129. package/styles/drop-down-base/_fluent-definition.scss +9 -2
  130. package/styles/drop-down-base/_fusionnew-definition.scss +9 -3
  131. package/styles/drop-down-base/_highcontrast-definition.scss +17 -6
  132. package/styles/drop-down-base/_highcontrast-light-definition.scss +19 -7
  133. package/styles/drop-down-base/_layout.scss +44 -3
  134. package/styles/drop-down-base/_material-dark-definition.scss +8 -1
  135. package/styles/drop-down-base/_material-definition.scss +7 -0
  136. package/styles/drop-down-base/_material3-definition.scss +9 -3
  137. package/styles/drop-down-base/_tailwind-definition.scss +9 -3
  138. package/styles/drop-down-base/_theme.scss +4 -4
  139. package/styles/drop-down-base/bootstrap-dark.css +42 -1
  140. package/styles/drop-down-base/bootstrap.css +42 -1
  141. package/styles/drop-down-base/bootstrap4.css +42 -1
  142. package/styles/drop-down-base/bootstrap5-dark.css +42 -1
  143. package/styles/drop-down-base/bootstrap5.css +42 -1
  144. package/styles/drop-down-base/fabric-dark.css +42 -1
  145. package/styles/drop-down-base/fabric.css +42 -1
  146. package/styles/drop-down-base/fluent-dark.css +42 -1
  147. package/styles/drop-down-base/fluent.css +42 -1
  148. package/styles/drop-down-base/highcontrast-light.css +42 -1
  149. package/styles/drop-down-base/highcontrast.css +42 -1
  150. package/styles/drop-down-base/material-dark.css +42 -1
  151. package/styles/drop-down-base/material.css +42 -1
  152. package/styles/drop-down-base/tailwind-dark.css +42 -1
  153. package/styles/drop-down-base/tailwind.css +42 -1
  154. package/styles/drop-down-list/_all.scss +2 -1
  155. package/styles/drop-down-list/_bootstrap-dark-definition.scss +2 -1
  156. package/styles/drop-down-list/_bootstrap-definition.scss +2 -1
  157. package/styles/drop-down-list/_bootstrap4-definition.scss +3 -1
  158. package/styles/drop-down-list/_bootstrap5-definition.scss +3 -3
  159. package/styles/drop-down-list/_fabric-dark-definition.scss +2 -1
  160. package/styles/drop-down-list/_fabric-definition.scss +2 -0
  161. package/styles/drop-down-list/_fluent-definition.scss +2 -1
  162. package/styles/drop-down-list/_fusionnew-definition.scss +3 -3
  163. package/styles/drop-down-list/_highcontrast-definition.scss +21 -10
  164. package/styles/drop-down-list/_highcontrast-light-definition.scss +22 -11
  165. package/styles/drop-down-list/_layout.scss +11 -9
  166. package/styles/drop-down-list/_material-dark-definition.scss +2 -2
  167. package/styles/drop-down-list/_material-definition.scss +1 -0
  168. package/styles/drop-down-list/_material3-definition.scss +3 -3
  169. package/styles/drop-down-list/_tailwind-definition.scss +1 -0
  170. package/styles/drop-down-list/_theme.scss +3 -3
  171. package/styles/drop-down-list/bootstrap-dark.css +8 -0
  172. package/styles/drop-down-list/bootstrap.css +8 -0
  173. package/styles/drop-down-list/bootstrap4.css +8 -0
  174. package/styles/drop-down-list/bootstrap5-dark.css +9 -0
  175. package/styles/drop-down-list/bootstrap5.css +9 -0
  176. package/styles/drop-down-list/fabric-dark.css +8 -0
  177. package/styles/drop-down-list/fabric.css +8 -0
  178. package/styles/drop-down-list/fluent-dark.css +9 -0
  179. package/styles/drop-down-list/fluent.css +9 -0
  180. package/styles/drop-down-list/highcontrast-light.css +8 -0
  181. package/styles/drop-down-list/highcontrast.css +8 -0
  182. package/styles/drop-down-list/icons/_bootstrap.scss +0 -1
  183. package/styles/drop-down-list/icons/_fabric.scss +0 -1
  184. package/styles/drop-down-list/icons/_material.scss +0 -1
  185. package/styles/drop-down-list/material-dark.css +8 -0
  186. package/styles/drop-down-list/material.css +8 -0
  187. package/styles/drop-down-list/tailwind-dark.css +9 -0
  188. package/styles/drop-down-list/tailwind.css +9 -0
  189. package/styles/drop-down-tree/_all.scss +1 -1
  190. package/styles/drop-down-tree/_bootstrap-dark-definition.scss +1 -1
  191. package/styles/drop-down-tree/_bootstrap-definition.scss +1 -1
  192. package/styles/drop-down-tree/_bootstrap4-definition.scss +1 -1
  193. package/styles/drop-down-tree/_bootstrap5-definition.scss +2 -2
  194. package/styles/drop-down-tree/_fabric-dark-definition.scss +1 -1
  195. package/styles/drop-down-tree/_fabric-definition.scss +2 -2
  196. package/styles/drop-down-tree/_fluent-definition.scss +2 -2
  197. package/styles/drop-down-tree/_fusionnew-definition.scss +2 -2
  198. package/styles/drop-down-tree/_highcontrast-definition.scss +1 -1
  199. package/styles/drop-down-tree/_highcontrast-light-definition.scss +1 -1
  200. package/styles/drop-down-tree/_layout.scss +10 -3
  201. package/styles/drop-down-tree/_material-dark-definition.scss +2 -2
  202. package/styles/drop-down-tree/_material-definition.scss +2 -2
  203. package/styles/drop-down-tree/_material3-definition.scss +2 -2
  204. package/styles/drop-down-tree/_tailwind-definition.scss +2 -2
  205. package/styles/drop-down-tree/bootstrap-dark.css +4 -0
  206. package/styles/drop-down-tree/bootstrap.css +4 -0
  207. package/styles/drop-down-tree/bootstrap4.css +4 -0
  208. package/styles/drop-down-tree/bootstrap5-dark.css +9 -1
  209. package/styles/drop-down-tree/bootstrap5.css +9 -1
  210. package/styles/drop-down-tree/fabric-dark.css +4 -0
  211. package/styles/drop-down-tree/fabric.css +4 -0
  212. package/styles/drop-down-tree/fluent-dark.css +5 -0
  213. package/styles/drop-down-tree/fluent.css +5 -0
  214. package/styles/drop-down-tree/highcontrast-light.css +4 -0
  215. package/styles/drop-down-tree/highcontrast.css +4 -0
  216. package/styles/drop-down-tree/icons/_bootstrap.scss +0 -1
  217. package/styles/drop-down-tree/icons/_bootstrap4.scss +0 -1
  218. package/styles/drop-down-tree/icons/_fabric.scss +0 -1
  219. package/styles/drop-down-tree/icons/_highcontrast-light.scss +0 -1
  220. package/styles/drop-down-tree/icons/_highcontrast.scss +0 -1
  221. package/styles/drop-down-tree/icons/_material-dark.scss +0 -1
  222. package/styles/drop-down-tree/icons/_material.scss +0 -1
  223. package/styles/drop-down-tree/material-dark.css +4 -0
  224. package/styles/drop-down-tree/material.css +4 -0
  225. package/styles/drop-down-tree/tailwind-dark.css +5 -0
  226. package/styles/drop-down-tree/tailwind.css +5 -0
  227. package/styles/fabric-dark.css +129 -52
  228. package/styles/fabric-dark.scss +1 -0
  229. package/styles/fabric.css +129 -52
  230. package/styles/fabric.scss +1 -0
  231. package/styles/fluent-dark.css +129 -47
  232. package/styles/fluent-dark.scss +1 -0
  233. package/styles/fluent.css +129 -47
  234. package/styles/fluent.scss +1 -0
  235. package/styles/highcontrast-light.css +124 -44
  236. package/styles/highcontrast-light.scss +1 -0
  237. package/styles/highcontrast.css +133 -53
  238. package/styles/highcontrast.scss +1 -0
  239. package/styles/list-box/_all.scss +1 -1
  240. package/styles/list-box/_bootstrap-dark-definition.scss +2 -0
  241. package/styles/list-box/_bootstrap-definition.scss +1 -0
  242. package/styles/list-box/_bootstrap4-definition.scss +1 -0
  243. package/styles/list-box/_bootstrap5-definition.scss +3 -0
  244. package/styles/list-box/_fabric-dark-definition.scss +3 -1
  245. package/styles/list-box/_fabric-definition.scss +1 -0
  246. package/styles/list-box/_fluent-definition.scss +3 -0
  247. package/styles/list-box/_fusionnew-definition.scss +1 -0
  248. package/styles/list-box/_highcontrast-definition.scss +1 -0
  249. package/styles/list-box/_highcontrast-light-definition.scss +3 -1
  250. package/styles/list-box/_layout.scss +8 -17
  251. package/styles/list-box/_material-dark-definition.scss +2 -0
  252. package/styles/list-box/_material-definition.scss +1 -0
  253. package/styles/list-box/_material3-definition.scss +1 -0
  254. package/styles/list-box/_tailwind-definition.scss +3 -0
  255. package/styles/list-box/_theme.scss +11 -25
  256. package/styles/list-box/bootstrap-dark.css +12 -33
  257. package/styles/list-box/bootstrap.css +14 -35
  258. package/styles/list-box/bootstrap4.css +14 -35
  259. package/styles/list-box/bootstrap5-dark.css +15 -36
  260. package/styles/list-box/bootstrap5.css +15 -36
  261. package/styles/list-box/fabric-dark.css +12 -33
  262. package/styles/list-box/fabric.css +14 -35
  263. package/styles/list-box/fluent-dark.css +15 -36
  264. package/styles/list-box/fluent.css +15 -36
  265. package/styles/list-box/highcontrast-light.css +12 -33
  266. package/styles/list-box/highcontrast.css +14 -35
  267. package/styles/list-box/icons/_bootstrap-dark.scss +2 -2
  268. package/styles/list-box/icons/_bootstrap.scss +1 -1
  269. package/styles/list-box/icons/_bootstrap4.scss +1 -1
  270. package/styles/list-box/icons/_bootstrap5.scss +1 -1
  271. package/styles/list-box/icons/_fabric-dark.scss +1 -1
  272. package/styles/list-box/icons/_fabric.scss +1 -1
  273. package/styles/list-box/icons/_fluent.scss +1 -1
  274. package/styles/list-box/icons/_fusionnew.scss +1 -1
  275. package/styles/list-box/icons/_highcontrast-light.scss +1 -1
  276. package/styles/list-box/icons/_highcontrast.scss +1 -1
  277. package/styles/list-box/icons/_material-dark.scss +1 -1
  278. package/styles/list-box/icons/_material.scss +2 -2
  279. package/styles/list-box/icons/_material3.scss +1 -1
  280. package/styles/list-box/icons/_tailwind-dark.scss +1 -1
  281. package/styles/list-box/icons/_tailwind.scss +1 -1
  282. package/styles/list-box/material-dark.css +12 -33
  283. package/styles/list-box/material.css +14 -35
  284. package/styles/list-box/tailwind-dark.css +15 -36
  285. package/styles/list-box/tailwind.css +15 -36
  286. package/styles/material-dark.css +120 -43
  287. package/styles/material-dark.scss +1 -0
  288. package/styles/material.css +120 -43
  289. package/styles/material.scss +1 -0
  290. package/styles/mention/_all.scss +1 -0
  291. package/styles/mention/_bootstrap-dark-definition.scss +3 -0
  292. package/styles/mention/_bootstrap-definition.scss +3 -0
  293. package/styles/mention/_bootstrap4-definition.scss +3 -0
  294. package/styles/mention/_bootstrap5-dark-definition.scss +1 -0
  295. package/styles/mention/_bootstrap5-definition.scss +1 -0
  296. package/styles/mention/_fabric-dark-definition.scss +2 -0
  297. package/styles/mention/_fabric-definition.scss +3 -0
  298. package/styles/mention/_fluent-dark-definition.scss +1 -0
  299. package/styles/mention/_fluent-definition.scss +1 -0
  300. package/styles/mention/_fusionnew-definition.scss +1 -0
  301. package/styles/mention/_highcontrast-definition.scss +3 -0
  302. package/styles/mention/_highcontrast-light-definition.scss +3 -0
  303. package/styles/mention/_layout.scss +6 -0
  304. package/styles/mention/_material-dark-definition.scss +3 -0
  305. package/styles/mention/_material-definition.scss +3 -0
  306. package/styles/mention/_material3-definition.scss +1 -0
  307. package/styles/mention/_tailwind-dark-definition.scss +1 -0
  308. package/styles/mention/_tailwind-definition.scss +1 -0
  309. package/styles/mention/bootstrap-dark.css +29 -0
  310. package/styles/mention/bootstrap-dark.scss +6 -0
  311. package/styles/mention/bootstrap.css +29 -0
  312. package/styles/mention/bootstrap.scss +6 -0
  313. package/styles/mention/bootstrap4.css +47 -0
  314. package/styles/mention/bootstrap4.scss +6 -0
  315. package/styles/mention/bootstrap5-dark.css +58 -0
  316. package/styles/mention/bootstrap5-dark.scss +6 -0
  317. package/styles/mention/bootstrap5.css +58 -0
  318. package/styles/mention/bootstrap5.scss +6 -0
  319. package/styles/mention/fabric-dark.css +29 -0
  320. package/styles/mention/fabric-dark.scss +6 -0
  321. package/styles/mention/fabric.css +29 -0
  322. package/styles/mention/fabric.scss +6 -0
  323. package/styles/mention/fluent-dark.css +58 -0
  324. package/styles/mention/fluent-dark.scss +6 -0
  325. package/styles/mention/fluent.css +58 -0
  326. package/styles/mention/fluent.scss +6 -0
  327. package/styles/mention/highcontrast-light.css +43 -0
  328. package/styles/mention/highcontrast-light.scss +6 -0
  329. package/styles/mention/highcontrast.css +43 -0
  330. package/styles/mention/highcontrast.scss +6 -0
  331. package/styles/mention/material-dark.css +29 -0
  332. package/styles/mention/material-dark.scss +6 -0
  333. package/styles/mention/material.css +29 -0
  334. package/styles/mention/material.scss +6 -0
  335. package/styles/mention/tailwind-dark.css +68 -0
  336. package/styles/mention/tailwind-dark.scss +6 -0
  337. package/styles/mention/tailwind.css +68 -0
  338. package/styles/mention/tailwind.scss +6 -0
  339. package/styles/multi-select/_all.scss +1 -1
  340. package/styles/multi-select/_bootstrap-dark-definition.scss +11 -1
  341. package/styles/multi-select/_bootstrap-definition.scss +9 -0
  342. package/styles/multi-select/_bootstrap4-definition.scss +20 -9
  343. package/styles/multi-select/_bootstrap5-definition.scss +11 -3
  344. package/styles/multi-select/_fabric-dark-definition.scss +16 -7
  345. package/styles/multi-select/_fabric-definition.scss +15 -6
  346. package/styles/multi-select/_fluent-definition.scss +11 -2
  347. package/styles/multi-select/_fusionnew-definition.scss +10 -2
  348. package/styles/multi-select/_highcontrast-definition.scss +59 -29
  349. package/styles/multi-select/_highcontrast-light-definition.scss +55 -25
  350. package/styles/multi-select/_layout.scss +91 -78
  351. package/styles/multi-select/_material-dark-definition.scss +10 -1
  352. package/styles/multi-select/_material-definition.scss +8 -0
  353. package/styles/multi-select/_material3-definition.scss +9 -2
  354. package/styles/multi-select/_tailwind-definition.scss +11 -4
  355. package/styles/multi-select/_theme.scss +20 -21
  356. package/styles/multi-select/bootstrap-dark.css +34 -8
  357. package/styles/multi-select/bootstrap.css +34 -8
  358. package/styles/multi-select/bootstrap4.css +46 -19
  359. package/styles/multi-select/bootstrap5-dark.css +38 -11
  360. package/styles/multi-select/bootstrap5.css +38 -11
  361. package/styles/multi-select/fabric-dark.css +42 -16
  362. package/styles/multi-select/fabric.css +42 -16
  363. package/styles/multi-select/fluent-dark.css +36 -9
  364. package/styles/multi-select/fluent.css +36 -9
  365. package/styles/multi-select/highcontrast-light.css +37 -8
  366. package/styles/multi-select/highcontrast.css +46 -17
  367. package/styles/multi-select/icons/_bootstrap5.scss +0 -1
  368. package/styles/multi-select/icons/_fluent.scss +0 -1
  369. package/styles/multi-select/icons/_fusionnew.scss +0 -1
  370. package/styles/multi-select/icons/_material-dark.scss +53 -54
  371. package/styles/multi-select/icons/_material.scss +53 -54
  372. package/styles/multi-select/icons/_material3.scss +0 -1
  373. package/styles/multi-select/icons/_tailwind.scss +0 -1
  374. package/styles/multi-select/material-dark.css +33 -7
  375. package/styles/multi-select/material.css +33 -7
  376. package/styles/multi-select/tailwind-dark.css +38 -9
  377. package/styles/multi-select/tailwind.css +38 -9
  378. package/styles/tailwind-dark.css +132 -47
  379. package/styles/tailwind-dark.scss +1 -0
  380. package/styles/tailwind.css +132 -47
  381. package/styles/tailwind.scss +1 -0
@@ -130,6 +130,7 @@ var ListBox = /** @class */ (function (_super) {
130
130
  this.isCustomFiltering = false;
131
131
  this.initialSelectedOptions = this.value;
132
132
  _super.prototype.render.call(this);
133
+ this.setEnabled();
133
134
  this.renderComplete();
134
135
  };
135
136
  ListBox.prototype.initWrapper = function () {
@@ -164,7 +165,7 @@ var ListBox = /** @class */ (function (_super) {
164
165
  removeClass([this.list], [dropDownBaseClasses.content, dropDownBaseClasses.root]);
165
166
  this.validationAttribute(this.element, hiddenSelect);
166
167
  this.list.setAttribute('role', 'listbox');
167
- attributes(this.list, { 'role': 'listbox', 'aria-multiselectable': this.selectionSettings.mode === 'Multiple' ? 'true' : 'false' });
168
+ attributes(this.list, { 'role': 'listbox', 'aria-label': 'listbox', 'aria-multiselectable': this.selectionSettings.mode === 'Multiple' ? 'true' : 'false' });
168
169
  this.updateSelectionSettings();
169
170
  };
170
171
  ListBox.prototype.updateSelectionSettings = function () {
@@ -210,8 +211,8 @@ var ListBox = /** @class */ (function (_super) {
210
211
  });
211
212
  }
212
213
  };
213
- ListBox.prototype.updateActionCompleteData = function (li, item) {
214
- this.jsonData.push(item);
214
+ ListBox.prototype.updateActionCompleteData = function (li, item, index) {
215
+ this.jsonData.splice(index, 0, item);
215
216
  };
216
217
  ListBox.prototype.initToolbar = function () {
217
218
  var pos = this.toolbarSettings.position;
@@ -427,10 +428,10 @@ var ListBox = /** @class */ (function (_super) {
427
428
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
428
429
  var event = args.event;
429
430
  var wrapper;
430
- if (args.target && (args.target.classList.contains("e-listbox-wrapper") || args.target.classList.contains("e-list-item")
431
- || args.target.classList.contains("e-filter-parent") || args.target.classList.contains("e-input-group"))) {
432
- if (args.target.classList.contains("e-list-item") || args.target.classList.contains("e-filter-parent")
433
- || args.target.classList.contains("e-input-group")) {
431
+ if (args.target && (args.target.classList.contains('e-listbox-wrapper') || args.target.classList.contains('e-list-item')
432
+ || args.target.classList.contains('e-filter-parent') || args.target.classList.contains('e-input-group'))) {
433
+ if (args.target.classList.contains('e-list-item') || args.target.classList.contains('e-filter-parent')
434
+ || args.target.classList.contains('e-input-group')) {
434
435
  wrapper = args.target.closest('.e-listbox-wrapper');
435
436
  }
436
437
  else {
@@ -485,7 +486,8 @@ var ListBox = /** @class */ (function (_super) {
485
486
  var getArgs = this.getDragArgs({ target: args.droppedElement }, true);
486
487
  var sourceArgs = { previousData: this.dataSource };
487
488
  var destArgs = { previousData: listObj.dataSource };
488
- var dragArgs = extend({}, getArgs, { target: args.target, source: { previousData: this.dataSource }, previousIndex: args.previousIndex, currentIndex: args.currentIndex });
489
+ var dragArgs = extend({}, getArgs, { target: args.target, source: { previousData: this.dataSource },
490
+ previousIndex: args.previousIndex, currentIndex: args.currentIndex });
489
491
  if (listObj !== this) {
490
492
  var sourceArgs1 = extend(sourceArgs, { currentData: this.listData });
491
493
  dragArgs = extend(dragArgs, { source: sourceArgs1, destination: destArgs });
@@ -560,10 +562,10 @@ var ListBox = /** @class */ (function (_super) {
560
562
  sortedData.splice(destIdx, 0, droppedData);
561
563
  liColl.splice(destIdx, 0, fLiColl_1.splice(srcIdx, 1)[0]);
562
564
  if (!value) {
563
- var liCollElem = _this.getItems();
564
- for (var i = 0; i < liCollElem.length; i++) {
565
- if (liCollElem[i].getAttribute('data-value') === null && liCollElem[i].classList.contains('e-list-item')) {
566
- li_1 = liCollElem[i];
565
+ var liCollElem_1 = _this.getItems();
566
+ for (var i = 0; i < liCollElem_1.length; i++) {
567
+ if (liCollElem_1[i].getAttribute('data-value') === null && liCollElem_1[i].classList.contains('e-list-item')) {
568
+ li_1 = liCollElem_1[i];
567
569
  break;
568
570
  }
569
571
  }
@@ -613,10 +615,17 @@ var ListBox = /** @class */ (function (_super) {
613
615
  dragArgs = extend(dragArgs, { destination: dragArgs1 });
614
616
  }
615
617
  this.trigger('drop', dragArgs);
618
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
619
+ var liCollElem = dragArgs.elements;
620
+ if (liCollElem.length) {
621
+ for (var i = 0; i < liCollElem.length; i++) {
622
+ liCollElem[i].classList.remove('e-grabbed');
623
+ }
624
+ }
616
625
  };
617
626
  ListBox.prototype.updateListItems = function (sourceElem, destElem) {
618
627
  var i = 0;
619
- destElem.innerHTML = "";
628
+ destElem.innerHTML = '';
620
629
  while (i < sourceElem.childNodes.length) {
621
630
  destElem.appendChild(sourceElem.childNodes[i]);
622
631
  }
@@ -645,6 +654,14 @@ var ListBox = /** @class */ (function (_super) {
645
654
  }
646
655
  return listObj;
647
656
  };
657
+ /**
658
+ * Sets the enabled state to DropDownBase.
659
+ *
660
+ * @returns {void}
661
+ */
662
+ ListBox.prototype.setEnabled = function () {
663
+ this.element.setAttribute('aria-disabled', (this.enabled) ? 'false' : 'true');
664
+ };
648
665
  ListBox.prototype.listOption = function (dataSource, fields) {
649
666
  this.listCurrentOptions = _super.prototype.listOption.call(this, dataSource, fields);
650
667
  this.listCurrentOptions = extend({}, this.listCurrentOptions, { itemCreated: this.triggerBeforeItemRender.bind(this) }, true);
@@ -756,7 +773,7 @@ var ListBox = /** @class */ (function (_super) {
756
773
  var objValue = void 0;
757
774
  var dupData = [];
758
775
  var itemIdx = void 0;
759
- extend(dupData, [], this.listData);
776
+ extend(dupData, [], this.jsonData);
760
777
  var removeIdxes = [];
761
778
  var removeLiIdxes = [];
762
779
  for (var j = 0; j < items.length; j++) {
@@ -805,7 +822,7 @@ var ListBox = /** @class */ (function (_super) {
805
822
  if (this.listData.length === 0) {
806
823
  this.l10nUpdate();
807
824
  }
808
- this.value = null;
825
+ this.value = [];
809
826
  this.updateToolBarState();
810
827
  };
811
828
  /**
@@ -1094,9 +1111,7 @@ var ListBox = /** @class */ (function (_super) {
1094
1111
  prepend([this.filterParent], this.list);
1095
1112
  attributes(this.filterInput, {
1096
1113
  'aria-disabled': 'false',
1097
- 'aria-owns': this.element.id + '_options',
1098
- 'role': 'listbox',
1099
- 'aria-activedescendant': null,
1114
+ 'aria-label': 'search list item',
1100
1115
  'autocomplete': 'off',
1101
1116
  'autocorrect': 'off',
1102
1117
  'autocapitalize': 'off',
@@ -1133,12 +1148,12 @@ var ListBox = /** @class */ (function (_super) {
1133
1148
  if (li && li.parentElement) {
1134
1149
  currSelIdx = [].slice.call(li.parentElement.children).indexOf(li);
1135
1150
  if (!this.selectionSettings.showCheckbox) {
1136
- if ((e.ctrlKey || Browser.isDevice) && this.isSelected(li)) {
1151
+ if ((e.ctrlKey || e.metaKey || Browser.isDevice) && this.isSelected(li)) {
1137
1152
  li.classList.remove(cssClass.selected);
1138
1153
  li.removeAttribute('aria-selected');
1139
1154
  isSelect = false;
1140
1155
  }
1141
- else if (!(this.selectionSettings.mode === 'Multiple' && (e.ctrlKey || Browser.isDevice))) {
1156
+ else if (!(this.selectionSettings.mode === 'Multiple' && (e.ctrlKey || e.metaKey || Browser.isDevice))) {
1142
1157
  this.getSelectedItems().forEach(function (ele) {
1143
1158
  ele.removeAttribute('aria-selected');
1144
1159
  });
@@ -1498,7 +1513,7 @@ var ListBox = /** @class */ (function (_super) {
1498
1513
  var isRefresh = tListBox.sortOrder !== 'None' || (tListBox.selectionSettings.showCheckbox !==
1499
1514
  fListBox.selectionSettings.showCheckbox) || tListBox.fields.groupBy || tListBox.itemTemplate || fListBox.itemTemplate;
1500
1515
  this.removeSelected(fListBox, fListBox.getSelectedItems());
1501
- var tempItems = [].slice.call(fListBox.jsonData);
1516
+ var tempItems = [].slice.call(fListBox.listData);
1502
1517
  var localDataArgs = { cancel: false, items: tempItems, eventName: this.toolbarAction };
1503
1518
  fListBox.trigger('actionBegin', localDataArgs);
1504
1519
  if (localDataArgs.cancel) {
@@ -1543,12 +1558,18 @@ var ListBox = /** @class */ (function (_super) {
1543
1558
  fListBox.value = [];
1544
1559
  listData = listData
1545
1560
  .filter(function (data) { return data.isHeader !== true; });
1561
+ var sortedData = listData.filter(function (val) {
1562
+ return tListBox.jsonData.indexOf(val) === -1;
1563
+ });
1564
+ for (var i = 0; i < sortedData.length; i++) {
1565
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1566
+ tListBox.jsonData.splice(index + i, 0, sortedData[i]);
1567
+ }
1546
1568
  tListBox.listData = listData;
1547
- tListBox.jsonData = jsonData;
1548
- if (this.listData.length == this.jsonData.length) {
1569
+ if (fListBox.listData.length === fListBox.jsonData.length) {
1549
1570
  fListBox.listData = fListBox.sortedData = fListBox.jsonData = [];
1550
1571
  }
1551
- else if (this.allowFiltering) {
1572
+ else if (fListBox.allowFiltering) {
1552
1573
  for (var i = 0; i < fListBox.listData.length; i++) {
1553
1574
  for (var j = 0; j < fListBox.jsonData.length; j++) {
1554
1575
  if (fListBox.listData[i] === fListBox.jsonData[j]) {
@@ -1611,21 +1632,35 @@ var ListBox = /** @class */ (function (_super) {
1611
1632
  }
1612
1633
  return listObj;
1613
1634
  };
1614
- ListBox.prototype.getGrabbedItems = function () {
1635
+ ListBox.prototype.getGrabbedItems = function (args) {
1636
+ var grabbItems = false;
1615
1637
  for (var i = 0; i < this.value.length; i++) {
1616
- if (this.value[i] === this.dragValue) {
1638
+ if (this.value[i] === this.getFormattedValue(args.target.getAttribute('data-value'))) {
1639
+ grabbItems = true;
1640
+ break;
1641
+ }
1642
+ }
1643
+ if (grabbItems) {
1644
+ for (var i = 0; i < this.value.length; i++) {
1617
1645
  var liColl = this.list.querySelectorAll('[aria-selected="true"]');
1618
- for (var i_1 = 0; i_1 < liColl.length; i_1++) {
1619
- liColl[i_1].classList.add('e-grabbed');
1646
+ for (var j = 0; j < liColl.length; j++) {
1647
+ if (this.value[i] === this.getFormattedValue(liColl[j].getAttribute('data-value'))) {
1648
+ liColl[j].classList.add('e-grabbed');
1649
+ }
1620
1650
  }
1621
- break;
1622
1651
  }
1623
1652
  }
1624
- var elems = Array.prototype.slice.call(this.element.querySelectorAll('.e-grabbed'));
1653
+ var elems;
1654
+ if (this.isAngular) {
1655
+ elems = Array.prototype.slice.call(this.element.getElementsByClassName('e-list-parent')[0].querySelectorAll('.e-grabbed'));
1656
+ }
1657
+ else {
1658
+ elems = Array.prototype.slice.call(this.element.nextElementSibling.querySelectorAll('.e-grabbed'));
1659
+ }
1625
1660
  return elems;
1626
1661
  };
1627
1662
  ListBox.prototype.getDragArgs = function (args, isDragEnd) {
1628
- var elems = this.getGrabbedItems();
1663
+ var elems = this.getGrabbedItems(args);
1629
1664
  if (elems.length) {
1630
1665
  if (isDragEnd) {
1631
1666
  elems.push(args.target);
@@ -1677,7 +1712,7 @@ var ListBox = /** @class */ (function (_super) {
1677
1712
  }
1678
1713
  }
1679
1714
  }
1680
- else if (e.keyCode !== 37 && e.keyCode !== 39 && e.code !== "KeyA") {
1715
+ else if (e.keyCode !== 37 && e.keyCode !== 39 && e.code !== 'KeyA') {
1681
1716
  this.upDownKeyHandler(e);
1682
1717
  }
1683
1718
  }
@@ -1721,8 +1756,8 @@ var ListBox = /** @class */ (function (_super) {
1721
1756
  }
1722
1757
  if (this.selectionSettings.showCheckbox && e.ctrlKey && e.shiftKey && (e.keyCode === 36 || e.keyCode === 35)) {
1723
1758
  var selectedidx = Array.prototype.indexOf.call(ul.children, fli);
1724
- var sidx = e.code === "Home" ? 0 : selectedidx;
1725
- var eidx = e.code === "Home" ? selectedidx : ul.children.length - 1;
1759
+ var sidx = e.code === 'Home' ? 0 : selectedidx;
1760
+ var eidx = e.code === 'Home' ? selectedidx : ul.children.length - 1;
1726
1761
  for (var i = sidx; i <= eidx; i++) {
1727
1762
  var item = ul.children[i];
1728
1763
  this.notify('updatelist', { li: item, e: {
@@ -1880,7 +1915,6 @@ var ListBox = /** @class */ (function (_super) {
1880
1915
  dvalue_1 = _this.getFormattedValue(li.getAttribute('data-value'));
1881
1916
  if (values.indexOf(dvalue_1) < 0) {
1882
1917
  li.getElementsByClassName('e-check')[0].classList.remove('e-check');
1883
- li.getElementsByClassName('e-checkbox-wrapper')[0].removeAttribute('aria-checked');
1884
1918
  li.removeAttribute('aria-selected');
1885
1919
  }
1886
1920
  });
@@ -1902,6 +1936,9 @@ var ListBox = /** @class */ (function (_super) {
1902
1936
  else {
1903
1937
  text = value;
1904
1938
  }
1939
+ if (typeof (text) === 'string') {
1940
+ text = text.split("\\").join("\\\\");
1941
+ }
1905
1942
  li = _this.list.querySelector('[data-value="' + text + '"]');
1906
1943
  if (li) {
1907
1944
  if (_this.selectionSettings.showCheckbox) {
@@ -2232,6 +2269,12 @@ var ListBox = /** @class */ (function (_super) {
2232
2269
  __decorate([
2233
2270
  Property('')
2234
2271
  ], ListBox.prototype, "height", void 0);
2272
+ __decorate([
2273
+ Property(true)
2274
+ ], ListBox.prototype, "enabled", void 0);
2275
+ __decorate([
2276
+ Property(false)
2277
+ ], ListBox.prototype, "enablePersistence", void 0);
2235
2278
  __decorate([
2236
2279
  Property(false)
2237
2280
  ], ListBox.prototype, "allowDragAndDrop", void 0);
@@ -0,0 +1,5 @@
1
+ /**
2
+ * export all modules from current location
3
+ */
4
+ export * from './mention';
5
+ export * from './mention-model';
@@ -0,0 +1,4 @@
1
+ /**
2
+ * export all modules from current location
3
+ */
4
+ export * from './mention';
@@ -0,0 +1,285 @@
1
+ import { KeyboardEvents, compile, Property, EventHandler, Animation, AnimationModel, KeyboardEventArgs, formatUnit, append, attributes } from '@syncfusion/ej2-base';import { isNullOrUndefined, detach, Event, EmitType, Complex, addClass, removeClass, closest, isUndefined, getValue, NotifyPropertyChanges, Browser } from '@syncfusion/ej2-base';import { FieldSettingsModel } from '../drop-down-base/drop-down-base-model';import { FieldSettings, FilteringEventArgs, FilterType } from '../drop-down-base/drop-down-base';import { DropDownBase, PopupEventArgs, SelectEventArgs, BeforeOpenEventArgs, dropDownBaseClasses } from '../drop-down-base/drop-down-base';import { DataManager, Query } from '@syncfusion/ej2-data';import { SortOrder } from '@syncfusion/ej2-lists';import { Popup, isCollide, createSpinner, showSpinner, hideSpinner, getZindexPartial } from '@syncfusion/ej2-popups';import { highlightSearch, revertHighlightSearch } from '../common/highlight-search';
2
+ import {MentionChangeEventArgs} from "./mention";
3
+
4
+ /**
5
+ * Interface for a class Mention
6
+ */
7
+ export interface MentionModel {
8
+
9
+ /**
10
+ * Defines class/multiple classes separated by a space for the mention component.
11
+ *
12
+ * @default null
13
+ */
14
+ cssClass?: string;
15
+
16
+ /**
17
+ * Specifies the symbol or single character which triggers the search action in the mention component.
18
+ *
19
+ * @default '@'
20
+ * @aspType char
21
+ */
22
+ mentionChar?: string;
23
+
24
+ /**
25
+ * Specifies whether to show the configured mentionChar with the text.
26
+ *
27
+ * @default false
28
+ */
29
+ showMentionChar?: boolean;
30
+
31
+ /**
32
+ * Defines whether to allow the space in the middle of mention while searching.
33
+ * When disabled, the space ends the mention component search.
34
+ *
35
+ * @default false
36
+ */
37
+ allowSpaces?: boolean;
38
+
39
+ /**
40
+ * Specifies the custom suffix to append along with the mention component selected item while inserting.
41
+ * You can append space or new line character as suffix.
42
+ *
43
+ * @default null
44
+ */
45
+ suffixText?: string;
46
+
47
+ /**
48
+ * Specifies the number of items in the suggestion list.
49
+ *
50
+ * @default 25
51
+ * @aspType int
52
+ */
53
+ suggestionCount?: number;
54
+
55
+ /**
56
+ * Specifies the minimum length of user input to initiate the search action.
57
+ * The default value is zero, where suggestion the list opened as soon as the user inputs the mention character.
58
+ *
59
+ * @default 0
60
+ * @aspType int
61
+ */
62
+ minLength?: number;
63
+
64
+ /**
65
+ * Specifies the order to sort the data source. The possible sort orders are,
66
+ * * `None` - The data source is not sorted.
67
+ * * `Ascending` - The data source is sorted in ascending order.
68
+ * * `Descending` - The data source is sorted in descending order.
69
+ *
70
+ * @default 'None'
71
+ */
72
+ sortOrder?: SortOrder;
73
+
74
+ /**
75
+ * Specifies whether the searches are case sensitive to find suggestions.
76
+ *
77
+ * @default true
78
+ */
79
+ ignoreCase?: boolean;
80
+
81
+ /**
82
+ * Specifies whether to highlight the searched characters on suggestion list items.
83
+ *
84
+ * @default false
85
+ */
86
+ highlight?: boolean;
87
+
88
+ /**
89
+ * Overrides the global culture and localization value for this component. Default global culture is ‘en-US’.
90
+ *
91
+ * @default 'en-US'
92
+ */
93
+ locale?: string;
94
+
95
+ /**
96
+ * Specifies the width of the popup in pixels/number/percentage. The number value is considered as pixels.
97
+ *
98
+ * @default 'auto'
99
+ * @aspType string
100
+ */
101
+ popupWidth?: string | number;
102
+
103
+ /**
104
+ * Specifies the height of the popup in pixels/number/percentage. The number value is considered as pixels.
105
+ *
106
+ * @default '300px'
107
+ * @aspType string
108
+ */
109
+ popupHeight?: string | number;
110
+
111
+ /**
112
+ * Specifies the template for the selected value from the suggestion list.
113
+ *
114
+ * @default null
115
+ */
116
+ displayTemplate?: string;
117
+
118
+ /**
119
+ * Specifies the template for the suggestion list.
120
+ *
121
+ * @default null
122
+ */
123
+ itemTemplate?: string;
124
+
125
+ /**
126
+ * Specifies the template for no matched item which is displayed when there are no items to display in the suggestion list.
127
+ *
128
+ * @default 'No records found'
129
+ */
130
+ noRecordsTemplate?: string;
131
+
132
+ /**
133
+ * Specifies the template for showing until data is loaded in the popup.
134
+ *
135
+ * @default null
136
+ */
137
+ spinnerTemplate?: string;
138
+
139
+ /**
140
+ * Specifies the target selector where the mention component needs to be displayed.
141
+ * The mention component listens to the target's user input and displays suggestions as soon as the user inputs the mention character.
142
+ *
143
+ */
144
+ target?: HTMLElement | string;
145
+
146
+ /**
147
+ * Accepts the list items either through local or remote service and binds it to the component.
148
+ * It can be an array of JSON Objects or an instance of `DataManager`.
149
+ *
150
+ * @default []
151
+ */
152
+ dataSource?: { [key: string]: Object }[] | DataManager | string[] | number[] | boolean[];
153
+
154
+ /**
155
+ * Specifies the external query, which can be customized and filtered against the data source.
156
+ *
157
+ * @default null
158
+ */
159
+ query?: Query;
160
+
161
+ /**
162
+ * Determines on which filter type, the component needs to be considered on search action.
163
+ * and its supported data types are
164
+ *
165
+ * <table>
166
+ * <tr>
167
+ * <td colSpan=1 rowSpan=1>
168
+ * FilterType<br/></td><td colSpan=1 rowSpan=1>
169
+ * Description<br/></td><td colSpan=1 rowSpan=1>
170
+ * Supported Types<br/></td></tr>
171
+ * <tr>
172
+ * <td colSpan=1 rowSpan=1>
173
+ * StartsWith<br/></td><td colSpan=1 rowSpan=1>
174
+ * Checks whether a value begins with the specified value.<br/></td><td colSpan=1 rowSpan=1>
175
+ * String<br/></td></tr>
176
+ * <tr>
177
+ * <td colSpan=1 rowSpan=1>
178
+ * EndsWith<br/></td><td colSpan=1 rowSpan=1>
179
+ * Checks whether a value ends with a specified value.<br/><br/></td><td colSpan=1 rowSpan=1>
180
+ * <br/>String<br/></td></tr>
181
+ * <tr>
182
+ * <td colSpan=1 rowSpan=1>
183
+ * Contains<br/></td><td colSpan=1 rowSpan=1>
184
+ * Checks whether a value contains with a specified value.<br/><br/></td><td colSpan=1 rowSpan=1>
185
+ * <br/>String<br/></td></tr>
186
+ * </table>
187
+ *
188
+ * The default value set to `Contains`, all the suggestion items which contain typed characters to listed in the suggestion popup.
189
+ *
190
+ * @default 'Contains'
191
+ */
192
+ filterType?: FilterType;
193
+
194
+ /**
195
+ * Defines the fields of the Mention to map with the data source and binds the data to the component.
196
+ * * text - Specifies the text that maps the text filed from the data source for each list item.
197
+ * * value - Specifies the value that maps the value filed from the data source for each list item.
198
+ * * iconCss - Specifies the iconCss that map the icon class filed from the data source for each list item.
199
+ * * groupBy - Specifies the groupBy that groups the list items with its related items by mapping groupBy field.
200
+ *
201
+ * @default
202
+ * {
203
+ * text: null, value: null, iconCss: null, groupBy: null
204
+ * }
205
+ */
206
+ fields?: FieldSettingsModel;
207
+
208
+ /**
209
+ * Triggers before fetching data from the remote server.
210
+ *
211
+ * @event actionBegin
212
+ */
213
+ actionBegin?: EmitType<Object>;
214
+
215
+ /**
216
+ * Triggers after data is fetched successfully from the remote server.
217
+ *
218
+ * @event actionComplete
219
+ */
220
+ actionComplete?: EmitType<Object>;
221
+
222
+ /**
223
+ * Triggers when the data fetch request from the remote server fails.
224
+ *
225
+ * @event actionFailure
226
+ */
227
+ actionFailure?: EmitType<Object>;
228
+
229
+ /**
230
+ * Triggers when an item in a popup is selected and updated in an editor.
231
+ *
232
+ * @event change
233
+ */
234
+ change?: EmitType<MentionChangeEventArgs>;
235
+
236
+ /**
237
+ * Triggers before the popup is opened.
238
+ *
239
+ * @event beforeOpen
240
+ */
241
+ beforeOpen?: EmitType<PopupEventArgs>;
242
+
243
+ /**
244
+ * Triggers after the popup opens.
245
+ *
246
+ * @event opened
247
+ */
248
+ opened?: EmitType<PopupEventArgs>;
249
+
250
+ /**
251
+ * Triggers after the popup is closed.
252
+ *
253
+ * @event closed
254
+ */
255
+ closed?: EmitType<PopupEventArgs>;
256
+
257
+ /**
258
+ * Triggers when an item in the popup is selected by the user either with the mouse/tap or with keyboard navigation.
259
+ *
260
+ * @event select
261
+ */
262
+ select?: EmitType<SelectEventArgs>;
263
+
264
+ /**
265
+ * Triggers on typing a character in the component.
266
+ *
267
+ * @event filtering
268
+ */
269
+ filtering?: EmitType<FilteringEventArgs>;
270
+
271
+ /**
272
+ * Triggers when the component is created.
273
+ *
274
+ * @event created
275
+ */
276
+ created?: EmitType<Object>;
277
+
278
+ /**
279
+      * Triggers when the component is destroyed.
280
+ *
281
+      * @event destroyed
282
+      */
283
+ destroyed?: EmitType<Object>;
284
+
285
+ }