primevue 3.45.0 → 3.47.0

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 (850) hide show
  1. package/README.md +2 -2
  2. package/api/api.cjs.js +6 -6
  3. package/api/api.cjs.min.js +1 -1
  4. package/api/api.esm.js +6 -6
  5. package/api/api.esm.min.js +1 -1
  6. package/api/api.js +6 -6
  7. package/api/api.min.js +1 -1
  8. package/autocomplete/AutoComplete.d.ts +6 -1
  9. package/autocomplete/AutoComplete.vue +24 -15
  10. package/autocomplete/BaseAutoComplete.vue +6 -2
  11. package/autocomplete/autocomplete.cjs.js +30 -19
  12. package/autocomplete/autocomplete.cjs.min.js +1 -1
  13. package/autocomplete/autocomplete.esm.js +30 -19
  14. package/autocomplete/autocomplete.esm.min.js +1 -1
  15. package/autocomplete/autocomplete.js +30 -19
  16. package/autocomplete/autocomplete.min.js +1 -1
  17. package/basecomponent/basecomponent.cjs.js +1 -3
  18. package/basecomponent/basecomponent.cjs.min.js +1 -1
  19. package/basecomponent/basecomponent.esm.js +1 -3
  20. package/basecomponent/basecomponent.esm.min.js +1 -1
  21. package/basecomponent/basecomponent.js +1 -3
  22. package/basecomponent/basecomponent.min.js +1 -1
  23. package/basecomponent/style/basecomponentstyle.cjs.js +1 -3
  24. package/basecomponent/style/basecomponentstyle.cjs.min.js +1 -1
  25. package/basecomponent/style/basecomponentstyle.esm.js +1 -3
  26. package/basecomponent/style/basecomponentstyle.esm.min.js +1 -1
  27. package/basecomponent/style/basecomponentstyle.js +1 -3
  28. package/basecomponent/style/basecomponentstyle.min.js +1 -1
  29. package/basedirective/basedirective.cjs.js +11 -2
  30. package/basedirective/basedirective.cjs.min.js +1 -1
  31. package/basedirective/basedirective.esm.js +11 -2
  32. package/basedirective/basedirective.esm.min.js +1 -1
  33. package/basedirective/basedirective.js +11 -2
  34. package/basedirective/basedirective.min.js +1 -1
  35. package/baseicon/BaseIcon.vue +6 -1
  36. package/baseicon/baseicon.cjs.js +5 -0
  37. package/baseicon/baseicon.cjs.min.js +1 -1
  38. package/baseicon/baseicon.esm.js +6 -1
  39. package/baseicon/baseicon.esm.min.js +1 -1
  40. package/baseicon/baseicon.js +5 -0
  41. package/baseicon/baseicon.min.js +1 -1
  42. package/calendar/BaseCalendar.vue +1 -1
  43. package/calendar/Calendar.d.ts +53 -2
  44. package/calendar/Calendar.vue +12 -0
  45. package/calendar/calendar.cjs.js +13 -1
  46. package/calendar/calendar.cjs.min.js +1 -1
  47. package/calendar/calendar.esm.js +13 -1
  48. package/calendar/calendar.esm.min.js +1 -1
  49. package/calendar/calendar.js +13 -1
  50. package/calendar/calendar.min.js +1 -1
  51. package/card/Card.d.ts +4 -0
  52. package/card/Card.vue +7 -5
  53. package/card/card.cjs.js +6 -3
  54. package/card/card.cjs.min.js +1 -1
  55. package/card/card.esm.js +6 -3
  56. package/card/card.esm.min.js +1 -1
  57. package/card/card.js +6 -3
  58. package/card/card.min.js +1 -1
  59. package/card/style/cardstyle.cjs.js +1 -0
  60. package/card/style/cardstyle.cjs.min.js +1 -1
  61. package/card/style/cardstyle.esm.js +1 -0
  62. package/card/style/cardstyle.esm.min.js +1 -1
  63. package/card/style/cardstyle.js +1 -0
  64. package/card/style/cardstyle.min.js +1 -1
  65. package/cascadeselect/BaseCascadeSelect.vue +6 -2
  66. package/cascadeselect/CascadeSelect.d.ts +47 -1
  67. package/cascadeselect/CascadeSelect.vue +56 -35
  68. package/cascadeselect/CascadeSelectSub.vue +26 -6
  69. package/cascadeselect/cascadeselect.cjs.js +118 -58
  70. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  71. package/cascadeselect/cascadeselect.esm.js +118 -58
  72. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  73. package/cascadeselect/cascadeselect.js +118 -58
  74. package/cascadeselect/cascadeselect.min.js +1 -1
  75. package/checkbox/BaseCheckbox.vue +0 -4
  76. package/checkbox/Checkbox.d.ts +17 -34
  77. package/checkbox/Checkbox.vue +24 -35
  78. package/checkbox/checkbox.cjs.js +21 -49
  79. package/checkbox/checkbox.cjs.min.js +1 -1
  80. package/checkbox/checkbox.esm.js +21 -49
  81. package/checkbox/checkbox.esm.min.js +1 -1
  82. package/checkbox/checkbox.js +21 -49
  83. package/checkbox/checkbox.min.js +1 -1
  84. package/checkbox/style/checkboxstyle.cjs.js +5 -11
  85. package/checkbox/style/checkboxstyle.cjs.min.js +1 -1
  86. package/checkbox/style/checkboxstyle.esm.js +5 -11
  87. package/checkbox/style/checkboxstyle.esm.min.js +1 -1
  88. package/checkbox/style/checkboxstyle.js +5 -11
  89. package/checkbox/style/checkboxstyle.min.js +1 -1
  90. package/chips/Chips.vue +2 -1
  91. package/chips/chips.cjs.js +2 -1
  92. package/chips/chips.cjs.min.js +1 -1
  93. package/chips/chips.esm.js +2 -1
  94. package/chips/chips.esm.min.js +1 -1
  95. package/chips/chips.js +2 -1
  96. package/chips/chips.min.js +1 -1
  97. package/colorpicker/BaseColorPicker.vue +1 -1
  98. package/colorpicker/ColorPicker.d.ts +1 -1
  99. package/colorpicker/colorpicker.cjs.js +1 -1
  100. package/colorpicker/colorpicker.cjs.min.js +1 -1
  101. package/colorpicker/colorpicker.esm.js +1 -1
  102. package/colorpicker/colorpicker.esm.min.js +1 -1
  103. package/colorpicker/colorpicker.js +1 -1
  104. package/colorpicker/colorpicker.min.js +1 -1
  105. package/column/Column.d.ts +15 -44
  106. package/confirmdialog/ConfirmDialog.vue +1 -1
  107. package/confirmdialog/confirmdialog.cjs.js +1 -1
  108. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  109. package/confirmdialog/confirmdialog.esm.js +1 -1
  110. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  111. package/confirmdialog/confirmdialog.js +1 -1
  112. package/confirmdialog/confirmdialog.min.js +1 -1
  113. package/confirmdialog/style/confirmdialogstyle.cjs.js +3 -6
  114. package/confirmdialog/style/confirmdialogstyle.cjs.min.js +1 -1
  115. package/confirmdialog/style/confirmdialogstyle.esm.js +3 -6
  116. package/confirmdialog/style/confirmdialogstyle.esm.min.js +1 -1
  117. package/confirmdialog/style/confirmdialogstyle.js +3 -6
  118. package/confirmdialog/style/confirmdialogstyle.min.js +1 -1
  119. package/confirmpopup/ConfirmPopup.vue +2 -2
  120. package/confirmpopup/confirmpopup.cjs.js +2 -2
  121. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  122. package/confirmpopup/confirmpopup.esm.js +2 -2
  123. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  124. package/confirmpopup/confirmpopup.js +2 -2
  125. package/confirmpopup/confirmpopup.min.js +1 -1
  126. package/confirmpopup/style/confirmpopupstyle.cjs.js +5 -8
  127. package/confirmpopup/style/confirmpopupstyle.cjs.min.js +1 -1
  128. package/confirmpopup/style/confirmpopupstyle.esm.js +5 -8
  129. package/confirmpopup/style/confirmpopupstyle.esm.min.js +1 -1
  130. package/confirmpopup/style/confirmpopupstyle.js +5 -8
  131. package/confirmpopup/style/confirmpopupstyle.min.js +1 -1
  132. package/contextmenu/BaseContextMenu.vue +1 -1
  133. package/contextmenu/ContextMenu.vue +8 -8
  134. package/contextmenu/ContextMenuSub.vue +6 -1
  135. package/contextmenu/contextmenu.cjs.js +18 -11
  136. package/contextmenu/contextmenu.cjs.min.js +1 -1
  137. package/contextmenu/contextmenu.esm.js +18 -11
  138. package/contextmenu/contextmenu.esm.min.js +1 -1
  139. package/contextmenu/contextmenu.js +18 -11
  140. package/contextmenu/contextmenu.min.js +1 -1
  141. package/core/core.js +973 -679
  142. package/core/core.min.js +70 -62
  143. package/datatable/BaseDataTable.vue +4 -0
  144. package/datatable/BodyCell.vue +11 -1
  145. package/datatable/BodyRow.vue +16 -9
  146. package/datatable/ColumnFilter.vue +5 -2
  147. package/datatable/DataTable.d.ts +5 -0
  148. package/datatable/DataTable.vue +2 -2
  149. package/datatable/HeaderCell.vue +2 -0
  150. package/datatable/HeaderCheckbox.vue +14 -42
  151. package/datatable/RowCheckbox.vue +10 -52
  152. package/datatable/RowRadioButton.vue +11 -32
  153. package/datatable/TableHeader.vue +3 -1
  154. package/datatable/datatable.cjs.js +120 -199
  155. package/datatable/datatable.cjs.min.js +1 -1
  156. package/datatable/datatable.esm.js +119 -200
  157. package/datatable/datatable.esm.min.js +1 -1
  158. package/datatable/datatable.js +120 -201
  159. package/datatable/datatable.min.js +1 -1
  160. package/datatable/style/datatablestyle.cjs.js +24 -73
  161. package/datatable/style/datatablestyle.cjs.min.js +1 -1
  162. package/datatable/style/datatablestyle.esm.js +24 -73
  163. package/datatable/style/datatablestyle.esm.min.js +1 -1
  164. package/datatable/style/datatablestyle.js +24 -73
  165. package/datatable/style/datatablestyle.min.js +1 -1
  166. package/dialog/BaseDialog.vue +1 -1
  167. package/dialog/dialog.cjs.js +1 -1
  168. package/dialog/dialog.cjs.min.js +1 -1
  169. package/dialog/dialog.esm.js +1 -1
  170. package/dialog/dialog.esm.min.js +1 -1
  171. package/dialog/dialog.js +1 -1
  172. package/dialog/dialog.min.js +1 -1
  173. package/dialog/style/dialogstyle.cjs.js +1 -1
  174. package/dialog/style/dialogstyle.cjs.min.js +1 -1
  175. package/dialog/style/dialogstyle.esm.js +1 -1
  176. package/dialog/style/dialogstyle.esm.min.js +1 -1
  177. package/dialog/style/dialogstyle.js +1 -1
  178. package/dialog/style/dialogstyle.min.js +1 -1
  179. package/dropdown/BaseDropdown.vue +18 -2
  180. package/dropdown/Dropdown.d.ts +37 -1
  181. package/dropdown/Dropdown.vue +68 -40
  182. package/dropdown/dropdown.cjs.js +96 -46
  183. package/dropdown/dropdown.cjs.min.js +1 -1
  184. package/dropdown/dropdown.esm.js +94 -46
  185. package/dropdown/dropdown.esm.min.js +1 -1
  186. package/dropdown/dropdown.js +96 -48
  187. package/dropdown/dropdown.min.js +1 -1
  188. package/dropdown/style/dropdownstyle.cjs.js +7 -2
  189. package/dropdown/style/dropdownstyle.cjs.min.js +1 -1
  190. package/dropdown/style/dropdownstyle.esm.js +7 -2
  191. package/dropdown/style/dropdownstyle.esm.min.js +1 -1
  192. package/dropdown/style/dropdownstyle.js +7 -2
  193. package/dropdown/style/dropdownstyle.min.js +1 -1
  194. package/focustrap/focustrap.cjs.js +15 -2
  195. package/focustrap/focustrap.cjs.min.js +1 -1
  196. package/focustrap/focustrap.esm.js +15 -2
  197. package/focustrap/focustrap.esm.min.js +1 -1
  198. package/focustrap/focustrap.js +15 -2
  199. package/focustrap/focustrap.min.js +1 -1
  200. package/icons/arrowdown/index.cjs.js +4 -10
  201. package/icons/arrowdown/index.cjs.min.js +1 -1
  202. package/icons/arrowdown/index.esm.js +4 -10
  203. package/icons/arrowdown/index.esm.min.js +1 -1
  204. package/icons/arrowdown/index.js +6 -11
  205. package/icons/arrowdown/index.min.js +1 -1
  206. package/icons/arrowdown/index.vue +2 -8
  207. package/icons/arrowup/index.cjs.js +4 -10
  208. package/icons/arrowup/index.cjs.min.js +1 -1
  209. package/icons/arrowup/index.esm.js +4 -10
  210. package/icons/arrowup/index.esm.min.js +1 -1
  211. package/icons/arrowup/index.js +6 -11
  212. package/icons/arrowup/index.min.js +1 -1
  213. package/icons/arrowup/index.vue +2 -8
  214. package/icons/ban/index.cjs.js +4 -10
  215. package/icons/ban/index.cjs.min.js +1 -1
  216. package/icons/ban/index.esm.js +4 -10
  217. package/icons/ban/index.esm.min.js +1 -1
  218. package/icons/ban/index.js +6 -11
  219. package/icons/ban/index.min.js +1 -1
  220. package/icons/ban/index.vue +2 -8
  221. package/icons/blank/index.cjs.js +34 -0
  222. package/icons/blank/index.cjs.min.js +1 -0
  223. package/icons/blank/index.d.ts +12 -0
  224. package/icons/blank/index.esm.js +28 -0
  225. package/icons/blank/index.esm.min.js +1 -0
  226. package/icons/blank/index.js +36 -0
  227. package/icons/blank/index.min.js +1 -0
  228. package/icons/blank/index.vue +13 -0
  229. package/icons/blank/package.json +9 -0
  230. package/icons/exclamationtriangle/index.cjs.js +4 -10
  231. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  232. package/icons/exclamationtriangle/index.esm.js +4 -10
  233. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  234. package/icons/exclamationtriangle/index.js +6 -11
  235. package/icons/exclamationtriangle/index.min.js +1 -1
  236. package/icons/exclamationtriangle/index.vue +2 -8
  237. package/icons/eyeslash/index.cjs.js +4 -10
  238. package/icons/eyeslash/index.cjs.min.js +1 -1
  239. package/icons/eyeslash/index.esm.js +4 -10
  240. package/icons/eyeslash/index.esm.min.js +1 -1
  241. package/icons/eyeslash/index.js +6 -11
  242. package/icons/eyeslash/index.min.js +1 -1
  243. package/icons/eyeslash/index.vue +2 -8
  244. package/icons/filter/index.cjs.js +4 -10
  245. package/icons/filter/index.cjs.min.js +1 -1
  246. package/icons/filter/index.esm.js +4 -10
  247. package/icons/filter/index.esm.min.js +1 -1
  248. package/icons/filter/index.js +6 -11
  249. package/icons/filter/index.min.js +1 -1
  250. package/icons/filter/index.vue +2 -8
  251. package/icons/filterslash/index.cjs.js +4 -10
  252. package/icons/filterslash/index.cjs.min.js +1 -1
  253. package/icons/filterslash/index.esm.js +4 -10
  254. package/icons/filterslash/index.esm.min.js +1 -1
  255. package/icons/filterslash/index.js +6 -11
  256. package/icons/filterslash/index.min.js +1 -1
  257. package/icons/filterslash/index.vue +2 -8
  258. package/icons/infocircle/index.cjs.js +4 -10
  259. package/icons/infocircle/index.cjs.min.js +1 -1
  260. package/icons/infocircle/index.esm.js +4 -10
  261. package/icons/infocircle/index.esm.min.js +1 -1
  262. package/icons/infocircle/index.js +6 -11
  263. package/icons/infocircle/index.min.js +1 -1
  264. package/icons/infocircle/index.vue +2 -8
  265. package/icons/pencil/index.cjs.js +4 -10
  266. package/icons/pencil/index.cjs.min.js +1 -1
  267. package/icons/pencil/index.esm.js +4 -10
  268. package/icons/pencil/index.esm.min.js +1 -1
  269. package/icons/pencil/index.js +6 -11
  270. package/icons/pencil/index.min.js +1 -1
  271. package/icons/pencil/index.vue +2 -8
  272. package/icons/plus/index.cjs.js +4 -10
  273. package/icons/plus/index.cjs.min.js +1 -1
  274. package/icons/plus/index.esm.js +4 -10
  275. package/icons/plus/index.esm.min.js +1 -1
  276. package/icons/plus/index.js +6 -11
  277. package/icons/plus/index.min.js +1 -1
  278. package/icons/plus/index.vue +2 -8
  279. package/icons/refresh/index.cjs.js +4 -10
  280. package/icons/refresh/index.cjs.min.js +1 -1
  281. package/icons/refresh/index.esm.js +4 -10
  282. package/icons/refresh/index.esm.min.js +1 -1
  283. package/icons/refresh/index.js +6 -11
  284. package/icons/refresh/index.min.js +1 -1
  285. package/icons/refresh/index.vue +2 -8
  286. package/icons/search/index.cjs.js +4 -10
  287. package/icons/search/index.cjs.min.js +1 -1
  288. package/icons/search/index.esm.js +4 -10
  289. package/icons/search/index.esm.min.js +1 -1
  290. package/icons/search/index.js +6 -11
  291. package/icons/search/index.min.js +1 -1
  292. package/icons/search/index.vue +2 -8
  293. package/icons/searchminus/index.cjs.js +4 -10
  294. package/icons/searchminus/index.cjs.min.js +1 -1
  295. package/icons/searchminus/index.esm.js +4 -10
  296. package/icons/searchminus/index.esm.min.js +1 -1
  297. package/icons/searchminus/index.js +6 -11
  298. package/icons/searchminus/index.min.js +1 -1
  299. package/icons/searchminus/index.vue +2 -8
  300. package/icons/searchplus/index.cjs.js +4 -10
  301. package/icons/searchplus/index.cjs.min.js +1 -1
  302. package/icons/searchplus/index.esm.js +4 -10
  303. package/icons/searchplus/index.esm.min.js +1 -1
  304. package/icons/searchplus/index.js +6 -11
  305. package/icons/searchplus/index.min.js +1 -1
  306. package/icons/searchplus/index.vue +2 -8
  307. package/icons/sortalt/index.cjs.js +4 -10
  308. package/icons/sortalt/index.cjs.min.js +1 -1
  309. package/icons/sortalt/index.esm.js +4 -10
  310. package/icons/sortalt/index.esm.min.js +1 -1
  311. package/icons/sortalt/index.js +6 -11
  312. package/icons/sortalt/index.min.js +1 -1
  313. package/icons/sortalt/index.vue +2 -8
  314. package/icons/sortamountdown/index.cjs.js +4 -10
  315. package/icons/sortamountdown/index.cjs.min.js +1 -1
  316. package/icons/sortamountdown/index.esm.js +4 -10
  317. package/icons/sortamountdown/index.esm.min.js +1 -1
  318. package/icons/sortamountdown/index.js +6 -11
  319. package/icons/sortamountdown/index.min.js +1 -1
  320. package/icons/sortamountdown/index.vue +2 -8
  321. package/icons/sortamountupalt/index.cjs.js +4 -10
  322. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  323. package/icons/sortamountupalt/index.esm.js +4 -10
  324. package/icons/sortamountupalt/index.esm.min.js +1 -1
  325. package/icons/sortamountupalt/index.js +6 -11
  326. package/icons/sortamountupalt/index.min.js +1 -1
  327. package/icons/sortamountupalt/index.vue +2 -8
  328. package/icons/spinner/index.cjs.js +4 -10
  329. package/icons/spinner/index.cjs.min.js +1 -1
  330. package/icons/spinner/index.esm.js +4 -10
  331. package/icons/spinner/index.esm.min.js +1 -1
  332. package/icons/spinner/index.js +6 -11
  333. package/icons/spinner/index.min.js +1 -1
  334. package/icons/spinner/index.vue +2 -8
  335. package/icons/star/index.cjs.js +4 -10
  336. package/icons/star/index.cjs.min.js +1 -1
  337. package/icons/star/index.esm.js +4 -10
  338. package/icons/star/index.esm.min.js +1 -1
  339. package/icons/star/index.js +6 -11
  340. package/icons/star/index.min.js +1 -1
  341. package/icons/star/index.vue +2 -8
  342. package/icons/starfill/index.cjs.js +4 -10
  343. package/icons/starfill/index.cjs.min.js +1 -1
  344. package/icons/starfill/index.esm.js +4 -10
  345. package/icons/starfill/index.esm.min.js +1 -1
  346. package/icons/starfill/index.js +6 -11
  347. package/icons/starfill/index.min.js +1 -1
  348. package/icons/starfill/index.vue +2 -8
  349. package/icons/thlarge/index.cjs.js +4 -10
  350. package/icons/thlarge/index.cjs.min.js +1 -1
  351. package/icons/thlarge/index.esm.js +4 -10
  352. package/icons/thlarge/index.esm.min.js +1 -1
  353. package/icons/thlarge/index.js +6 -11
  354. package/icons/thlarge/index.min.js +1 -1
  355. package/icons/thlarge/index.vue +2 -8
  356. package/icons/timescircle/index.cjs.js +4 -10
  357. package/icons/timescircle/index.cjs.min.js +1 -1
  358. package/icons/timescircle/index.esm.js +4 -10
  359. package/icons/timescircle/index.esm.min.js +1 -1
  360. package/icons/timescircle/index.js +6 -11
  361. package/icons/timescircle/index.min.js +1 -1
  362. package/icons/timescircle/index.vue +2 -8
  363. package/icons/trash/index.cjs.js +4 -10
  364. package/icons/trash/index.cjs.min.js +1 -1
  365. package/icons/trash/index.esm.js +4 -10
  366. package/icons/trash/index.esm.min.js +1 -1
  367. package/icons/trash/index.js +6 -11
  368. package/icons/trash/index.min.js +1 -1
  369. package/icons/trash/index.vue +2 -8
  370. package/icons/undo/index.cjs.js +4 -10
  371. package/icons/undo/index.cjs.min.js +1 -1
  372. package/icons/undo/index.esm.js +4 -10
  373. package/icons/undo/index.esm.min.js +1 -1
  374. package/icons/undo/index.js +6 -11
  375. package/icons/undo/index.min.js +1 -1
  376. package/icons/undo/index.vue +2 -8
  377. package/icons/upload/index.cjs.js +4 -10
  378. package/icons/upload/index.cjs.min.js +1 -1
  379. package/icons/upload/index.esm.js +4 -10
  380. package/icons/upload/index.esm.min.js +1 -1
  381. package/icons/upload/index.js +6 -11
  382. package/icons/upload/index.min.js +1 -1
  383. package/icons/upload/index.vue +2 -8
  384. package/icons/windowmaximize/index.cjs.js +4 -10
  385. package/icons/windowmaximize/index.cjs.min.js +1 -1
  386. package/icons/windowmaximize/index.esm.js +4 -10
  387. package/icons/windowmaximize/index.esm.min.js +1 -1
  388. package/icons/windowmaximize/index.js +6 -11
  389. package/icons/windowmaximize/index.min.js +1 -1
  390. package/icons/windowmaximize/index.vue +2 -8
  391. package/icons/windowminimize/index.cjs.js +4 -10
  392. package/icons/windowminimize/index.cjs.min.js +1 -1
  393. package/icons/windowminimize/index.esm.js +4 -10
  394. package/icons/windowminimize/index.esm.min.js +1 -1
  395. package/icons/windowminimize/index.js +6 -11
  396. package/icons/windowminimize/index.min.js +1 -1
  397. package/icons/windowminimize/index.vue +2 -8
  398. package/inputnumber/InputNumber.vue +22 -9
  399. package/inputnumber/inputnumber.cjs.js +17 -6
  400. package/inputnumber/inputnumber.cjs.min.js +1 -1
  401. package/inputnumber/inputnumber.esm.js +18 -7
  402. package/inputnumber/inputnumber.esm.min.js +1 -1
  403. package/inputnumber/inputnumber.js +17 -6
  404. package/inputnumber/inputnumber.min.js +1 -1
  405. package/inputswitch/BaseInputSwitch.vue +8 -4
  406. package/inputswitch/InputSwitch.d.ts +41 -20
  407. package/inputswitch/InputSwitch.vue +31 -33
  408. package/inputswitch/inputswitch.cjs.js +38 -42
  409. package/inputswitch/inputswitch.cjs.min.js +1 -1
  410. package/inputswitch/inputswitch.esm.js +38 -42
  411. package/inputswitch/inputswitch.esm.min.js +1 -1
  412. package/inputswitch/inputswitch.js +38 -42
  413. package/inputswitch/inputswitch.min.js +1 -1
  414. package/inputswitch/style/inputswitchstyle.cjs.js +4 -4
  415. package/inputswitch/style/inputswitchstyle.cjs.min.js +1 -1
  416. package/inputswitch/style/inputswitchstyle.esm.js +4 -4
  417. package/inputswitch/style/inputswitchstyle.esm.min.js +1 -1
  418. package/inputswitch/style/inputswitchstyle.js +4 -4
  419. package/inputswitch/style/inputswitchstyle.min.js +1 -1
  420. package/listbox/BaseListbox.vue +4 -0
  421. package/listbox/Listbox.d.ts +6 -1
  422. package/listbox/Listbox.vue +47 -26
  423. package/listbox/listbox.cjs.js +88 -50
  424. package/listbox/listbox.cjs.min.js +1 -1
  425. package/listbox/listbox.esm.js +88 -50
  426. package/listbox/listbox.esm.min.js +1 -1
  427. package/listbox/listbox.js +88 -50
  428. package/listbox/listbox.min.js +1 -1
  429. package/listbox/style/listboxstyle.cjs.js +2 -3
  430. package/listbox/style/listboxstyle.cjs.min.js +1 -1
  431. package/listbox/style/listboxstyle.esm.js +2 -3
  432. package/listbox/style/listboxstyle.esm.min.js +1 -1
  433. package/listbox/style/listboxstyle.js +2 -3
  434. package/listbox/style/listboxstyle.min.js +1 -1
  435. package/megamenu/MegaMenu.vue +1 -1
  436. package/megamenu/megamenu.cjs.js +2 -1
  437. package/megamenu/megamenu.cjs.min.js +1 -1
  438. package/megamenu/megamenu.esm.js +2 -1
  439. package/megamenu/megamenu.esm.min.js +1 -1
  440. package/megamenu/megamenu.js +2 -1
  441. package/megamenu/megamenu.min.js +1 -1
  442. package/menu/BaseMenu.vue +1 -1
  443. package/menu/menu.cjs.js +1 -1
  444. package/menu/menu.cjs.min.js +1 -1
  445. package/menu/menu.esm.js +1 -1
  446. package/menu/menu.esm.min.js +1 -1
  447. package/menu/menu.js +1 -1
  448. package/menu/menu.min.js +1 -1
  449. package/menubar/Menubar.vue +3 -2
  450. package/menubar/MenubarSub.vue +5 -1
  451. package/menubar/menubar.cjs.js +12 -5
  452. package/menubar/menubar.cjs.min.js +1 -1
  453. package/menubar/menubar.esm.js +12 -5
  454. package/menubar/menubar.esm.min.js +1 -1
  455. package/menubar/menubar.js +12 -5
  456. package/menubar/menubar.min.js +1 -1
  457. package/message/Message.d.ts +4 -0
  458. package/message/Message.vue +2 -1
  459. package/message/message.cjs.js +2 -1
  460. package/message/message.cjs.min.js +1 -1
  461. package/message/message.esm.js +2 -1
  462. package/message/message.esm.min.js +1 -1
  463. package/message/message.js +2 -1
  464. package/message/message.min.js +1 -1
  465. package/metergroup/BaseMeterGroup.vue +41 -0
  466. package/metergroup/MeterGroup.d.ts +302 -0
  467. package/metergroup/MeterGroup.vue +73 -0
  468. package/metergroup/MeterGroupLabel.vue +36 -0
  469. package/metergroup/metergroup.cjs.js +218 -0
  470. package/metergroup/metergroup.cjs.min.js +1 -0
  471. package/metergroup/metergroup.esm.js +211 -0
  472. package/metergroup/metergroup.esm.min.js +1 -0
  473. package/metergroup/metergroup.js +218 -0
  474. package/metergroup/metergroup.min.js +1 -0
  475. package/metergroup/package.json +9 -0
  476. package/metergroup/style/MeterGroupStyle.d.ts +3 -0
  477. package/metergroup/style/metergroupstyle.cjs.js +40 -0
  478. package/metergroup/style/metergroupstyle.cjs.min.js +1 -0
  479. package/metergroup/style/metergroupstyle.esm.js +34 -0
  480. package/metergroup/style/metergroupstyle.esm.min.js +1 -0
  481. package/metergroup/style/metergroupstyle.js +43 -0
  482. package/metergroup/style/metergroupstyle.min.js +1 -0
  483. package/metergroup/style/package.json +6 -0
  484. package/multiselect/BaseMultiSelect.vue +10 -2
  485. package/multiselect/MultiSelect.d.ts +13 -19
  486. package/multiselect/MultiSelect.vue +108 -76
  487. package/multiselect/multiselect.cjs.js +174 -134
  488. package/multiselect/multiselect.cjs.min.js +1 -1
  489. package/multiselect/multiselect.esm.js +174 -135
  490. package/multiselect/multiselect.esm.min.js +1 -1
  491. package/multiselect/multiselect.js +175 -136
  492. package/multiselect/multiselect.min.js +1 -1
  493. package/multiselect/style/multiselectstyle.cjs.js +7 -30
  494. package/multiselect/style/multiselectstyle.cjs.min.js +1 -1
  495. package/multiselect/style/multiselectstyle.esm.js +7 -30
  496. package/multiselect/style/multiselectstyle.esm.min.js +1 -1
  497. package/multiselect/style/multiselectstyle.js +7 -30
  498. package/multiselect/style/multiselectstyle.min.js +1 -1
  499. package/orderlist/BaseOrderList.vue +8 -0
  500. package/orderlist/OrderList.d.ts +10 -0
  501. package/orderlist/OrderList.vue +72 -52
  502. package/orderlist/orderlist.cjs.js +79 -56
  503. package/orderlist/orderlist.cjs.min.js +1 -1
  504. package/orderlist/orderlist.esm.js +79 -56
  505. package/orderlist/orderlist.esm.min.js +1 -1
  506. package/orderlist/orderlist.js +79 -56
  507. package/orderlist/orderlist.min.js +1 -1
  508. package/orderlist/style/orderliststyle.cjs.js +1 -1
  509. package/orderlist/style/orderliststyle.cjs.min.js +1 -1
  510. package/orderlist/style/orderliststyle.esm.js +1 -1
  511. package/orderlist/style/orderliststyle.esm.min.js +1 -1
  512. package/orderlist/style/orderliststyle.js +1 -1
  513. package/orderlist/style/orderliststyle.min.js +1 -1
  514. package/overlaypanel/BaseOverlayPanel.vue +1 -1
  515. package/overlaypanel/OverlayPanel.d.ts +4 -0
  516. package/overlaypanel/OverlayPanel.vue +1 -1
  517. package/overlaypanel/overlaypanel.cjs.js +2 -2
  518. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  519. package/overlaypanel/overlaypanel.esm.js +2 -2
  520. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  521. package/overlaypanel/overlaypanel.js +2 -2
  522. package/overlaypanel/overlaypanel.min.js +1 -1
  523. package/package.json +1 -1
  524. package/panelmenu/PanelMenuList.vue +1 -1
  525. package/panelmenu/panelmenu.cjs.js +2 -1
  526. package/panelmenu/panelmenu.cjs.min.js +1 -1
  527. package/panelmenu/panelmenu.esm.js +2 -1
  528. package/panelmenu/panelmenu.esm.min.js +1 -1
  529. package/panelmenu/panelmenu.js +2 -1
  530. package/panelmenu/panelmenu.min.js +1 -1
  531. package/password/BasePassword.vue +1 -1
  532. package/password/password.cjs.js +1 -1
  533. package/password/password.cjs.min.js +1 -1
  534. package/password/password.esm.js +1 -1
  535. package/password/password.esm.min.js +1 -1
  536. package/password/password.js +1 -1
  537. package/password/password.min.js +1 -1
  538. package/picklist/BasePickList.vue +8 -0
  539. package/picklist/PickList.d.ts +10 -0
  540. package/picklist/PickList.vue +72 -37
  541. package/picklist/picklist.cjs.js +81 -46
  542. package/picklist/picklist.cjs.min.js +1 -1
  543. package/picklist/picklist.esm.js +81 -46
  544. package/picklist/picklist.esm.min.js +1 -1
  545. package/picklist/picklist.js +81 -46
  546. package/picklist/picklist.min.js +1 -1
  547. package/portal/Portal.vue +1 -1
  548. package/portal/portal.cjs.js +1 -1
  549. package/portal/portal.cjs.min.js +1 -1
  550. package/portal/portal.esm.js +1 -1
  551. package/portal/portal.esm.min.js +1 -1
  552. package/portal/portal.js +1 -1
  553. package/portal/portal.min.js +1 -1
  554. package/progressbar/ProgressBar.vue +1 -1
  555. package/progressbar/progressbar.cjs.js +3 -1
  556. package/progressbar/progressbar.cjs.min.js +1 -1
  557. package/progressbar/progressbar.esm.js +3 -1
  558. package/progressbar/progressbar.esm.min.js +1 -1
  559. package/progressbar/progressbar.js +3 -1
  560. package/progressbar/progressbar.min.js +1 -1
  561. package/radiobutton/BaseRadioButton.vue +9 -4
  562. package/radiobutton/RadioButton.d.ts +48 -22
  563. package/radiobutton/RadioButton.vue +36 -23
  564. package/radiobutton/radiobutton.cjs.js +42 -50
  565. package/radiobutton/radiobutton.cjs.min.js +1 -1
  566. package/radiobutton/radiobutton.esm.js +42 -50
  567. package/radiobutton/radiobutton.esm.min.js +1 -1
  568. package/radiobutton/radiobutton.js +42 -50
  569. package/radiobutton/radiobutton.min.js +1 -1
  570. package/radiobutton/style/radiobuttonstyle.cjs.js +5 -11
  571. package/radiobutton/style/radiobuttonstyle.cjs.min.js +1 -1
  572. package/radiobutton/style/radiobuttonstyle.esm.js +5 -11
  573. package/radiobutton/style/radiobuttonstyle.esm.min.js +1 -1
  574. package/radiobutton/style/radiobuttonstyle.js +5 -11
  575. package/radiobutton/style/radiobuttonstyle.min.js +1 -1
  576. package/resources/themes/arya-blue/theme.css +432 -351
  577. package/resources/themes/arya-green/theme.css +432 -351
  578. package/resources/themes/arya-orange/theme.css +432 -351
  579. package/resources/themes/arya-purple/theme.css +432 -351
  580. package/resources/themes/aura-dark-amber/fonts/Inter-italic.var.woff2 +0 -0
  581. package/resources/themes/aura-dark-amber/fonts/Inter-roman.var.woff2 +0 -0
  582. package/resources/themes/aura-dark-amber/theme.css +7012 -0
  583. package/resources/themes/aura-dark-blue/fonts/Inter-italic.var.woff2 +0 -0
  584. package/resources/themes/aura-dark-blue/fonts/Inter-roman.var.woff2 +0 -0
  585. package/resources/themes/aura-dark-blue/theme.css +7012 -0
  586. package/resources/themes/aura-dark-cyan/fonts/Inter-italic.var.woff2 +0 -0
  587. package/resources/themes/aura-dark-cyan/fonts/Inter-roman.var.woff2 +0 -0
  588. package/resources/themes/aura-dark-cyan/theme.css +7012 -0
  589. package/resources/themes/aura-dark-green/fonts/Inter-italic.var.woff2 +0 -0
  590. package/resources/themes/aura-dark-green/fonts/Inter-roman.var.woff2 +0 -0
  591. package/resources/themes/aura-dark-green/theme.css +7012 -0
  592. package/resources/themes/aura-dark-indigo/fonts/Inter-italic.var.woff2 +0 -0
  593. package/resources/themes/aura-dark-indigo/fonts/Inter-roman.var.woff2 +0 -0
  594. package/resources/themes/aura-dark-indigo/theme.css +7012 -0
  595. package/resources/themes/aura-dark-lime/fonts/Inter-italic.var.woff2 +0 -0
  596. package/resources/themes/aura-dark-lime/fonts/Inter-roman.var.woff2 +0 -0
  597. package/resources/themes/aura-dark-lime/theme.css +7012 -0
  598. package/resources/themes/aura-dark-noir/fonts/Inter-italic.var.woff2 +0 -0
  599. package/resources/themes/aura-dark-noir/fonts/Inter-roman.var.woff2 +0 -0
  600. package/resources/themes/aura-dark-noir/theme.css +7012 -0
  601. package/resources/themes/aura-dark-pink/fonts/Inter-italic.var.woff2 +0 -0
  602. package/resources/themes/aura-dark-pink/fonts/Inter-roman.var.woff2 +0 -0
  603. package/resources/themes/aura-dark-pink/theme.css +7012 -0
  604. package/resources/themes/aura-dark-purple/fonts/Inter-italic.var.woff2 +0 -0
  605. package/resources/themes/aura-dark-purple/fonts/Inter-roman.var.woff2 +0 -0
  606. package/resources/themes/aura-dark-purple/theme.css +7012 -0
  607. package/resources/themes/aura-dark-teal/fonts/Inter-italic.var.woff2 +0 -0
  608. package/resources/themes/aura-dark-teal/fonts/Inter-roman.var.woff2 +0 -0
  609. package/resources/themes/aura-dark-teal/theme.css +7012 -0
  610. package/resources/themes/aura-light-amber/fonts/Inter-italic.var.woff2 +0 -0
  611. package/resources/themes/aura-light-amber/fonts/Inter-roman.var.woff2 +0 -0
  612. package/resources/themes/aura-light-amber/theme.css +7014 -0
  613. package/resources/themes/aura-light-blue/fonts/Inter-italic.var.woff2 +0 -0
  614. package/resources/themes/aura-light-blue/fonts/Inter-roman.var.woff2 +0 -0
  615. package/resources/themes/aura-light-blue/theme.css +7014 -0
  616. package/resources/themes/aura-light-cyan/fonts/Inter-italic.var.woff2 +0 -0
  617. package/resources/themes/aura-light-cyan/fonts/Inter-roman.var.woff2 +0 -0
  618. package/resources/themes/aura-light-cyan/theme.css +7014 -0
  619. package/resources/themes/aura-light-green/fonts/Inter-italic.var.woff2 +0 -0
  620. package/resources/themes/aura-light-green/fonts/Inter-roman.var.woff2 +0 -0
  621. package/resources/themes/aura-light-green/theme.css +7014 -0
  622. package/resources/themes/aura-light-indigo/fonts/Inter-italic.var.woff2 +0 -0
  623. package/resources/themes/aura-light-indigo/fonts/Inter-roman.var.woff2 +0 -0
  624. package/resources/themes/aura-light-indigo/theme.css +7014 -0
  625. package/resources/themes/aura-light-lime/fonts/Inter-italic.var.woff2 +0 -0
  626. package/resources/themes/aura-light-lime/fonts/Inter-roman.var.woff2 +0 -0
  627. package/resources/themes/aura-light-lime/theme.css +7014 -0
  628. package/resources/themes/aura-light-noir/fonts/Inter-italic.var.woff2 +0 -0
  629. package/resources/themes/aura-light-noir/fonts/Inter-roman.var.woff2 +0 -0
  630. package/resources/themes/aura-light-noir/theme.css +7022 -0
  631. package/resources/themes/aura-light-pink/fonts/Inter-italic.var.woff2 +0 -0
  632. package/resources/themes/aura-light-pink/fonts/Inter-roman.var.woff2 +0 -0
  633. package/resources/themes/aura-light-pink/theme.css +7014 -0
  634. package/resources/themes/aura-light-purple/fonts/Inter-italic.var.woff2 +0 -0
  635. package/resources/themes/aura-light-purple/fonts/Inter-roman.var.woff2 +0 -0
  636. package/resources/themes/aura-light-purple/theme.css +7014 -0
  637. package/resources/themes/aura-light-teal/fonts/Inter-italic.var.woff2 +0 -0
  638. package/resources/themes/aura-light-teal/fonts/Inter-roman.var.woff2 +0 -0
  639. package/resources/themes/aura-light-teal/theme.css +7014 -0
  640. package/resources/themes/bootstrap4-dark-blue/theme.css +533 -403
  641. package/resources/themes/bootstrap4-dark-purple/theme.css +533 -403
  642. package/resources/themes/bootstrap4-light-blue/theme.css +533 -403
  643. package/resources/themes/bootstrap4-light-purple/theme.css +533 -403
  644. package/resources/themes/fluent-light/theme.css +431 -350
  645. package/resources/themes/lara-dark-amber/theme.css +534 -404
  646. package/resources/themes/lara-dark-blue/theme.css +534 -404
  647. package/resources/themes/lara-dark-cyan/theme.css +534 -404
  648. package/resources/themes/lara-dark-green/theme.css +534 -404
  649. package/resources/themes/lara-dark-indigo/theme.css +534 -404
  650. package/resources/themes/lara-dark-pink/theme.css +534 -404
  651. package/resources/themes/lara-dark-purple/theme.css +534 -404
  652. package/resources/themes/lara-dark-teal/theme.css +534 -404
  653. package/resources/themes/lara-light-amber/theme.css +535 -405
  654. package/resources/themes/lara-light-blue/theme.css +535 -405
  655. package/resources/themes/lara-light-cyan/theme.css +535 -405
  656. package/resources/themes/lara-light-green/theme.css +535 -405
  657. package/resources/themes/lara-light-indigo/theme.css +535 -405
  658. package/resources/themes/lara-light-pink/theme.css +535 -405
  659. package/resources/themes/lara-light-purple/theme.css +535 -405
  660. package/resources/themes/lara-light-teal/theme.css +535 -405
  661. package/resources/themes/luna-amber/theme.css +432 -351
  662. package/resources/themes/luna-blue/theme.css +432 -351
  663. package/resources/themes/luna-green/theme.css +432 -351
  664. package/resources/themes/luna-pink/theme.css +432 -351
  665. package/resources/themes/md-dark-deeppurple/theme.css +696 -431
  666. package/resources/themes/md-dark-indigo/theme.css +696 -431
  667. package/resources/themes/md-light-deeppurple/theme.css +700 -435
  668. package/resources/themes/md-light-indigo/theme.css +700 -435
  669. package/resources/themes/mdc-dark-deeppurple/theme.css +696 -431
  670. package/resources/themes/mdc-dark-indigo/theme.css +696 -431
  671. package/resources/themes/mdc-light-deeppurple/theme.css +700 -435
  672. package/resources/themes/mdc-light-indigo/theme.css +700 -435
  673. package/resources/themes/mira/theme.css +486 -405
  674. package/resources/themes/nano/theme.css +432 -351
  675. package/resources/themes/nova/theme.css +432 -351
  676. package/resources/themes/nova-accent/theme.css +432 -351
  677. package/resources/themes/nova-alt/theme.css +432 -351
  678. package/resources/themes/nova-vue/theme.css +432 -351
  679. package/resources/themes/rhea/theme.css +432 -351
  680. package/resources/themes/saga-blue/theme.css +432 -351
  681. package/resources/themes/saga-green/theme.css +432 -351
  682. package/resources/themes/saga-orange/theme.css +432 -351
  683. package/resources/themes/saga-purple/theme.css +432 -351
  684. package/resources/themes/soho-dark/theme.css +534 -404
  685. package/resources/themes/soho-light/theme.css +534 -404
  686. package/resources/themes/tailwind-light/theme.css +432 -351
  687. package/resources/themes/vela-blue/theme.css +432 -351
  688. package/resources/themes/vela-green/theme.css +432 -351
  689. package/resources/themes/vela-orange/theme.css +432 -351
  690. package/resources/themes/vela-purple/theme.css +432 -351
  691. package/resources/themes/viva-dark/theme.css +535 -405
  692. package/resources/themes/viva-light/theme.css +535 -405
  693. package/sidebar/Sidebar.vue +16 -1
  694. package/sidebar/sidebar.cjs.js +17 -5
  695. package/sidebar/sidebar.cjs.min.js +1 -1
  696. package/sidebar/sidebar.esm.js +17 -5
  697. package/sidebar/sidebar.esm.min.js +1 -1
  698. package/sidebar/sidebar.js +17 -5
  699. package/sidebar/sidebar.min.js +1 -1
  700. package/slider/Slider.vue +0 -1
  701. package/slider/slider.cjs.js +0 -1
  702. package/slider/slider.cjs.min.js +1 -1
  703. package/slider/slider.esm.js +0 -1
  704. package/slider/slider.esm.min.js +1 -1
  705. package/slider/slider.js +0 -1
  706. package/slider/slider.min.js +1 -1
  707. package/speeddial/SpeedDial.vue +2 -2
  708. package/speeddial/speeddial.cjs.js +2 -2
  709. package/speeddial/speeddial.cjs.min.js +1 -1
  710. package/speeddial/speeddial.esm.js +2 -2
  711. package/speeddial/speeddial.esm.min.js +1 -1
  712. package/speeddial/speeddial.js +2 -2
  713. package/speeddial/speeddial.min.js +1 -1
  714. package/splitbutton/BaseSplitButton.vue +1 -1
  715. package/splitbutton/splitbutton.cjs.js +1 -1
  716. package/splitbutton/splitbutton.cjs.min.js +1 -1
  717. package/splitbutton/splitbutton.esm.js +1 -1
  718. package/splitbutton/splitbutton.esm.min.js +1 -1
  719. package/splitbutton/splitbutton.js +1 -1
  720. package/splitbutton/splitbutton.min.js +1 -1
  721. package/splitbutton/style/splitbuttonstyle.cjs.js +8 -5
  722. package/splitbutton/style/splitbuttonstyle.cjs.min.js +1 -1
  723. package/splitbutton/style/splitbuttonstyle.esm.js +8 -5
  724. package/splitbutton/style/splitbuttonstyle.esm.min.js +1 -1
  725. package/splitbutton/style/splitbuttonstyle.js +8 -5
  726. package/splitbutton/style/splitbuttonstyle.min.js +1 -1
  727. package/steps/Steps.vue +2 -1
  728. package/steps/steps.cjs.js +3 -2
  729. package/steps/steps.cjs.min.js +1 -1
  730. package/steps/steps.esm.js +3 -2
  731. package/steps/steps.esm.min.js +1 -1
  732. package/steps/steps.js +3 -2
  733. package/steps/steps.min.js +1 -1
  734. package/tabview/TabView.vue +2 -3
  735. package/tabview/tabview.cjs.js +3 -3
  736. package/tabview/tabview.cjs.min.js +1 -1
  737. package/tabview/tabview.esm.js +3 -3
  738. package/tabview/tabview.esm.min.js +1 -1
  739. package/tabview/tabview.js +3 -3
  740. package/tabview/tabview.min.js +1 -1
  741. package/tag/Tag.vue +1 -1
  742. package/tag/tag.cjs.js +4 -2
  743. package/tag/tag.cjs.min.js +1 -1
  744. package/tag/tag.esm.js +4 -2
  745. package/tag/tag.esm.min.js +1 -1
  746. package/tag/tag.js +4 -2
  747. package/tag/tag.min.js +1 -1
  748. package/textarea/Textarea.d.ts +2 -2
  749. package/tieredmenu/BaseTieredMenu.vue +1 -1
  750. package/tieredmenu/TieredMenu.d.ts +4 -0
  751. package/tieredmenu/TieredMenu.vue +1 -1
  752. package/tieredmenu/TieredMenuSub.vue +5 -1
  753. package/tieredmenu/tieredmenu.cjs.js +12 -5
  754. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  755. package/tieredmenu/tieredmenu.esm.js +12 -5
  756. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  757. package/tieredmenu/tieredmenu.js +12 -5
  758. package/tieredmenu/tieredmenu.min.js +1 -1
  759. package/togglebutton/BaseToggleButton.vue +4 -4
  760. package/togglebutton/ToggleButton.d.ts +17 -24
  761. package/togglebutton/ToggleButton.vue +41 -67
  762. package/togglebutton/style/togglebuttonstyle.cjs.js +15 -8
  763. package/togglebutton/style/togglebuttonstyle.cjs.min.js +1 -1
  764. package/togglebutton/style/togglebuttonstyle.esm.js +15 -8
  765. package/togglebutton/style/togglebuttonstyle.esm.min.js +1 -1
  766. package/togglebutton/style/togglebuttonstyle.js +15 -8
  767. package/togglebutton/style/togglebuttonstyle.min.js +1 -1
  768. package/togglebutton/togglebutton.cjs.js +45 -80
  769. package/togglebutton/togglebutton.cjs.min.js +1 -1
  770. package/togglebutton/togglebutton.esm.js +46 -81
  771. package/togglebutton/togglebutton.esm.min.js +1 -1
  772. package/togglebutton/togglebutton.js +46 -82
  773. package/togglebutton/togglebutton.min.js +1 -1
  774. package/tooltip/style/tooltipstyle.cjs.js +1 -1
  775. package/tooltip/style/tooltipstyle.cjs.min.js +1 -1
  776. package/tooltip/style/tooltipstyle.esm.js +1 -1
  777. package/tooltip/style/tooltipstyle.esm.min.js +1 -1
  778. package/tooltip/style/tooltipstyle.js +1 -1
  779. package/tooltip/style/tooltipstyle.min.js +1 -1
  780. package/tree/BaseTree.vue +4 -0
  781. package/tree/Tree.d.ts +6 -9
  782. package/tree/Tree.vue +1 -1
  783. package/tree/TreeNode.vue +14 -11
  784. package/tree/style/treestyle.cjs.js +3 -6
  785. package/tree/style/treestyle.cjs.min.js +1 -1
  786. package/tree/style/treestyle.esm.js +3 -6
  787. package/tree/style/treestyle.esm.min.js +1 -1
  788. package/tree/style/treestyle.js +3 -6
  789. package/tree/style/treestyle.min.js +1 -1
  790. package/tree/tree.cjs.js +34 -21
  791. package/tree/tree.cjs.min.js +1 -1
  792. package/tree/tree.esm.js +34 -22
  793. package/tree/tree.esm.min.js +1 -1
  794. package/tree/tree.js +35 -23
  795. package/tree/tree.min.js +1 -1
  796. package/treeselect/BaseTreeSelect.vue +1 -1
  797. package/treeselect/TreeSelect.vue +0 -4
  798. package/treeselect/treeselect.cjs.js +1 -5
  799. package/treeselect/treeselect.cjs.min.js +1 -1
  800. package/treeselect/treeselect.esm.js +1 -5
  801. package/treeselect/treeselect.esm.min.js +1 -1
  802. package/treeselect/treeselect.js +1 -5
  803. package/treeselect/treeselect.min.js +1 -1
  804. package/treetable/BodyCell.vue +26 -24
  805. package/treetable/TreeTable.vue +3 -1
  806. package/treetable/TreeTableRow.vue +2 -0
  807. package/treetable/style/treetablestyle.cjs.js +4 -13
  808. package/treetable/style/treetablestyle.cjs.min.js +1 -1
  809. package/treetable/style/treetablestyle.esm.js +4 -13
  810. package/treetable/style/treetablestyle.esm.min.js +1 -1
  811. package/treetable/style/treetablestyle.js +4 -13
  812. package/treetable/style/treetablestyle.min.js +1 -1
  813. package/treetable/treetable.cjs.js +39 -44
  814. package/treetable/treetable.cjs.min.js +1 -1
  815. package/treetable/treetable.esm.js +39 -45
  816. package/treetable/treetable.esm.min.js +1 -1
  817. package/treetable/treetable.js +40 -46
  818. package/treetable/treetable.min.js +1 -1
  819. package/tristatecheckbox/BaseTriStateCheckbox.vue +17 -9
  820. package/tristatecheckbox/TriStateCheckbox.d.ts +34 -23
  821. package/tristatecheckbox/TriStateCheckbox.vue +49 -61
  822. package/tristatecheckbox/style/tristatecheckboxstyle.cjs.js +7 -13
  823. package/tristatecheckbox/style/tristatecheckboxstyle.cjs.min.js +1 -1
  824. package/tristatecheckbox/style/tristatecheckboxstyle.esm.js +7 -13
  825. package/tristatecheckbox/style/tristatecheckboxstyle.esm.min.js +1 -1
  826. package/tristatecheckbox/style/tristatecheckboxstyle.js +7 -13
  827. package/tristatecheckbox/style/tristatecheckboxstyle.min.js +1 -1
  828. package/tristatecheckbox/tristatecheckbox.cjs.js +69 -87
  829. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  830. package/tristatecheckbox/tristatecheckbox.esm.js +70 -88
  831. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  832. package/tristatecheckbox/tristatecheckbox.js +69 -87
  833. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  834. package/utils/utils.cjs.js +14 -6
  835. package/utils/utils.cjs.min.js +1 -1
  836. package/utils/utils.esm.js +14 -6
  837. package/utils/utils.esm.min.js +1 -1
  838. package/utils/utils.js +14 -6
  839. package/utils/utils.min.js +1 -1
  840. package/vetur-attributes.json +24 -0
  841. package/vetur-tags.json +6 -0
  842. package/virtualscroller/BaseVirtualScroller.vue +1 -1
  843. package/virtualscroller/VirtualScroller.vue +58 -50
  844. package/virtualscroller/virtualscroller.cjs.js +90 -77
  845. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  846. package/virtualscroller/virtualscroller.esm.js +90 -77
  847. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  848. package/virtualscroller/virtualscroller.js +90 -77
  849. package/virtualscroller/virtualscroller.min.js +1 -1
  850. package/web-types.json +71 -6
@@ -145,10 +145,6 @@ export interface MultiSelectPassThroughOptions {
145
145
  * Used to pass attributes to the header's DOM element.
146
146
  */
147
147
  header?: MultiSelectPassThroughOptionType;
148
- /**
149
- * Used to pass attributes to the header checkbox container's DOM element.
150
- */
151
- headerCheckboxContainer?: MultiSelectPassThroughOptionType;
152
148
  /**
153
149
  * Used to pass attributes to the header checkbox's DOM element.
154
150
  */
@@ -195,17 +191,9 @@ export interface MultiSelectPassThroughOptions {
195
191
  */
196
192
  item?: MultiSelectPassThroughOptionType;
197
193
  /**
198
- * Used to pass attributes to the checkbox container's DOM element.
199
- */
200
- checkboxContainer?: MultiSelectPassThroughOptionType;
201
- /**
202
- * Used to pass attributes to the checkbox's DOM element.
194
+ * Used to pass attributes to the item checkbox's DOM element.
203
195
  */
204
- checkbox?: MultiSelectPassThroughOptionType;
205
- /**
206
- * Used to pass attributes to the checkbox icon's DOM element.
207
- */
208
- checkboxIcon?: MultiSelectPassThroughOptionType;
196
+ itemCheckbox?: MultiSelectPassThroughOptionType;
209
197
  /**
210
198
  * Used to pass attributes to the option's DOM element.
211
199
  */
@@ -214,10 +202,6 @@ export interface MultiSelectPassThroughOptions {
214
202
  * Used to pass attributes to the emptyMessage's DOM element.
215
203
  */
216
204
  emptyMessage?: MultiSelectPassThroughOptionType;
217
- /**
218
- * Used to pass attributes to the hidden input wrapper's DOM element.
219
- */
220
- hiddenInputWrapper?: MultiSelectPassThroughOptionType;
221
205
  /**
222
206
  * Used to pass attributes to the hidden input's DOM element.
223
207
  */
@@ -486,7 +470,7 @@ export interface MultiSelectProps {
486
470
  virtualScrollerOptions?: VirtualScrollerProps;
487
471
  /**
488
472
  * Whether to focus on the first visible or selected element when the overlay panel is shown.
489
- * @defaultValue true
473
+ * @defaultValue false
490
474
  */
491
475
  autoOptionFocus?: boolean | undefined;
492
476
  /**
@@ -494,6 +478,16 @@ export interface MultiSelectProps {
494
478
  * @defaultValue false
495
479
  */
496
480
  autoFilterFocus?: boolean | undefined;
481
+ /**
482
+ * When enabled, the focus is placed on the hovered option.
483
+ * @defaultValue true
484
+ */
485
+ focusOnHover?: boolean | undefined;
486
+ /**
487
+ * Highlights automatically the first item.
488
+ * @defaultValue false
489
+ */
490
+ highlightOnSelect?: boolean | undefined;
497
491
  /**
498
492
  * Text to be displayed in hidden accessible field when filtering returns any results. Defaults to value from PrimeVue locale configuration.
499
493
  * @defaultValue '{0} results are available'
@@ -68,16 +68,21 @@
68
68
  ></span>
69
69
  <slot name="header" :value="modelValue" :options="visibleOptions"></slot>
70
70
  <div v-if="(showToggleAll && selectionLimit == null) || filter" :class="cx('header')" v-bind="ptm('header')">
71
- <div v-if="showToggleAll && selectionLimit == null" :class="cx('headerCheckboxContainer')" @click="onToggleAll" v-bind="ptm('headerCheckboxContainer')">
72
- <div class="p-hidden-accessible" v-bind="ptm('hiddenInputWrapper')" :data-p-hidden-accessible="true">
73
- <input type="checkbox" readonly :checked="allSelected" :aria-label="toggleAllAriaLabel" @focus="onHeaderCheckboxFocus" @blur="onHeaderCheckboxBlur" v-bind="ptm('headerCheckbox')" />
74
- </div>
75
- <div :class="cx('headerCheckbox')" v-bind="getHeaderCheckboxPTOptions('headerCheckbox')">
76
- <slot name="headercheckboxicon" :allSelected="allSelected" :class="cx('headerCheckboxIcon')">
77
- <component v-show="allSelected" :is="checkboxIcon ? 'span' : 'CheckIcon'" :class="[cx('headerCheckboxIcon'), { [checkboxIcon]: allSelected }]" v-bind="getHeaderCheckboxPTOptions('headerCheckboxIcon')" />
78
- </slot>
79
- </div>
80
- </div>
71
+ <Checkbox
72
+ v-if="showToggleAll && selectionLimit == null"
73
+ :modelValue="allSelected"
74
+ :binary="true"
75
+ :disabled="disabled"
76
+ :aria-label="toggleAllAriaLabel"
77
+ @change="onToggleAll"
78
+ :unstyled="unstyled"
79
+ :pt="getHeaderCheckboxPTOptions('headerCheckbox')"
80
+ >
81
+ <template #icon="slotProps">
82
+ <component v-if="$slots.headercheckboxicon" :is="$slots.headercheckboxicon" :checked="slotProps.checked" :class="slotProps.class" />
83
+ <component v-else-if="slotProps.checked" :is="checkboxIcon ? 'span' : 'CheckIcon'" :class="[slotProps.class, { [checkboxIcon]: slotProps.checked }]" v-bind="getHeaderCheckboxPTOptions('headerCheckbox.icon')" />
84
+ </template>
85
+ </Checkbox>
81
86
  <div v-if="filter" :class="cx('filterContainer')" v-bind="ptm('filterContainer')">
82
87
  <input
83
88
  ref="filterInput"
@@ -135,18 +140,17 @@
135
140
  :data-p-focused="focusedOptionIndex === getOptionIndex(i, getItemOptions)"
136
141
  :data-p-disabled="isOptionDisabled(option)"
137
142
  >
138
- <div :class="cx('checkboxContainer')" v-bind="ptm('checkboxContainer')">
139
- <div :class="cx('checkbox', { option })" v-bind="getCheckboxPTOptions(option, getItemOptions, i, 'checkbox')">
140
- <slot name="itemcheckboxicon" :selected="isSelected(option)" :class="cx('checkboxIcon')">
141
- <component
142
- v-show="isSelected(option)"
143
- :is="checkboxIcon ? 'span' : 'CheckIcon'"
144
- :class="[cx('checkboxIcon'), { [checkboxIcon]: isSelected(option) }]"
145
- v-bind="getCheckboxPTOptions(option, getItemOptions, i, 'checkboxIcon')"
146
- />
147
- </slot>
148
- </div>
149
- </div>
143
+ <Checkbox :modelValue="isSelected(option)" :binary="true" :tabindex="-1" :unstyled="unstyled" :pt="getCheckboxPTOptions(option, getItemOptions, i, 'itemCheckbox')">
144
+ <template #icon="slotProps">
145
+ <component v-if="$slots.itemcheckboxicon" :is="$slots.itemcheckboxicon" :checked="slotProps.checked" :class="slotProps.class" />
146
+ <component
147
+ v-else-if="slotProps.checked"
148
+ :is="checkboxIcon ? 'span' : 'CheckIcon'"
149
+ :class="[slotProps.class, { [checkboxIcon]: slotProps.checked }]"
150
+ v-bind="getCheckboxPTOptions(option, getItemOptions, i, 'itemCheckbox.icon')"
151
+ />
152
+ </template>
153
+ </Checkbox>
150
154
  <slot name="option" :option="option" :index="getOptionIndex(i, getItemOptions)">
151
155
  <span v-bind="ptm('option')">{{ getOptionLabel(option) }}</span>
152
156
  </slot>
@@ -191,6 +195,7 @@
191
195
 
192
196
  <script>
193
197
  import { FilterService } from 'primevue/api';
198
+ import Checkbox from 'primevue/checkbox';
194
199
  import CheckIcon from 'primevue/icons/check';
195
200
  import ChevronDownIcon from 'primevue/icons/chevrondown';
196
201
  import SearchIcon from 'primevue/icons/search';
@@ -218,13 +223,12 @@ export default {
218
223
  searchTimeout: null,
219
224
  searchValue: '',
220
225
  selectOnFocus: false,
221
- focusOnHover: false,
222
226
  data() {
223
227
  return {
224
228
  id: this.$attrs.id,
229
+ clicked: false,
225
230
  focused: false,
226
231
  focusedOptionIndex: -1,
227
- headerCheckboxFocused: false,
228
232
  filterValue: null,
229
233
  overlayVisible: false
230
234
  };
@@ -239,7 +243,6 @@ export default {
239
243
  },
240
244
  mounted() {
241
245
  this.id = this.id || UniqueComponentId();
242
-
243
246
  this.autoUpdateModel();
244
247
  },
245
248
  beforeUnmount() {
@@ -272,8 +275,7 @@ export default {
272
275
  getHeaderCheckboxPTOptions(key) {
273
276
  return this.ptm(key, {
274
277
  context: {
275
- selected: this.allSelected,
276
- focused: this.headerCheckboxFocused
278
+ selected: this.allSelected
277
279
  }
278
280
  });
279
281
  },
@@ -308,7 +310,7 @@ export default {
308
310
  show(isFocus) {
309
311
  this.$emit('before-show');
310
312
  this.overlayVisible = true;
311
- this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : -1;
313
+ this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
312
314
 
313
315
  isFocus && DomHandler.focus(this.$refs.focusInput);
314
316
  },
@@ -316,6 +318,7 @@ export default {
316
318
  const _hide = () => {
317
319
  this.$emit('before-hide');
318
320
  this.overlayVisible = false;
321
+ this.clicked = false;
319
322
  this.focusedOptionIndex = -1;
320
323
  this.searchValue = '';
321
324
 
@@ -334,11 +337,16 @@ export default {
334
337
  }
335
338
 
336
339
  this.focused = true;
337
- this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.overlayVisible && this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : -1;
338
- this.overlayVisible && this.scrollInView(this.focusedOptionIndex);
340
+
341
+ if (this.overlayVisible) {
342
+ this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
343
+ this.scrollInView(this.focusedOptionIndex);
344
+ }
345
+
339
346
  this.$emit('focus', event);
340
347
  },
341
348
  onBlur(event) {
349
+ this.clicked = false;
342
350
  this.focused = false;
343
351
  this.focusedOptionIndex = -1;
344
352
  this.searchValue = '';
@@ -415,6 +423,8 @@ export default {
415
423
 
416
424
  break;
417
425
  }
426
+
427
+ this.clicked = false;
418
428
  },
419
429
  onContainerClick(event) {
420
430
  if (this.disabled || this.loading) {
@@ -424,6 +434,8 @@ export default {
424
434
  if (!this.overlay || !this.overlay.contains(event.target)) {
425
435
  this.overlayVisible ? this.hide(true) : this.show(true);
426
436
  }
437
+
438
+ this.clicked = true;
427
439
  },
428
440
  onFirstHiddenFocus(event) {
429
441
  const focusableEl = event.relatedTarget === this.$refs.focusInput ? DomHandler.getFirstFocusableElement(this.overlay, ':not([data-p-hidden-focusable="true"])') : this.$refs.focusInput;
@@ -438,12 +450,6 @@ export default {
438
450
  onCloseClick() {
439
451
  this.hide(true);
440
452
  },
441
- onHeaderCheckboxFocus() {
442
- this.headerCheckboxFocused = true;
443
- },
444
- onHeaderCheckboxBlur() {
445
- this.headerCheckboxFocused = false;
446
- },
447
453
  onOptionSelect(event, option, index = -1, isFocus = false) {
448
454
  if (this.disabled || this.isOptionDisabled(option)) {
449
455
  return;
@@ -553,15 +559,18 @@ export default {
553
559
  }
554
560
  },
555
561
  onArrowDownKey(event) {
556
- const optionIndex = this.focusedOptionIndex !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex) : this.findFirstFocusedOptionIndex();
562
+ if (!this.overlayVisible) {
563
+ this.show();
564
+ } else {
565
+ const optionIndex = this.focusedOptionIndex !== -1 ? this.findNextOptionIndex(this.focusedOptionIndex) : this.clicked ? this.findFirstOptionIndex() : this.findFirstFocusedOptionIndex();
557
566
 
558
- if (event.shiftKey) {
559
- this.onOptionSelectRange(event, this.startRangeIndex, optionIndex);
560
- }
567
+ if (event.shiftKey) {
568
+ this.onOptionSelectRange(event, this.startRangeIndex, optionIndex);
569
+ }
561
570
 
562
- this.changeFocusedOptionIndex(event, optionIndex);
571
+ this.changeFocusedOptionIndex(event, optionIndex);
572
+ }
563
573
 
564
- !this.overlayVisible && this.show();
565
574
  event.preventDefault();
566
575
  },
567
576
  onArrowUpKey(event, pressedInInputText = false) {
@@ -573,7 +582,7 @@ export default {
573
582
  this.overlayVisible && this.hide();
574
583
  event.preventDefault();
575
584
  } else {
576
- const optionIndex = this.focusedOptionIndex !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex) : this.findLastFocusedOptionIndex();
585
+ const optionIndex = this.focusedOptionIndex !== -1 ? this.findPrevOptionIndex(this.focusedOptionIndex) : this.clicked ? this.findLastOptionIndex() : this.findLastFocusedOptionIndex();
577
586
 
578
587
  if (event.shiftKey) {
579
588
  this.onOptionSelectRange(event, optionIndex, this.startRangeIndex);
@@ -644,6 +653,7 @@ export default {
644
653
  },
645
654
  onEnterKey(event) {
646
655
  if (!this.overlayVisible) {
656
+ this.focusedOptionIndex = -1; // reset
647
657
  this.onArrowDownKey(event);
648
658
  } else {
649
659
  if (this.focusedOptionIndex !== -1) {
@@ -788,8 +798,6 @@ export default {
788
798
 
789
799
  this.updateModel(event, value);
790
800
  }
791
-
792
- this.headerCheckboxFocused = true;
793
801
  },
794
802
  removeOption(event, optionValue) {
795
803
  let value = this.modelValue.filter((val) => !ObjectUtils.equals(val, optionValue, this.equalityKey));
@@ -803,7 +811,7 @@ export default {
803
811
  return DomHandler.getFocusableElements(this.overlay, ':not([data-p-hidden-focusable="true"])').length > 0;
804
812
  },
805
813
  isOptionMatched(option) {
806
- return this.isValidOption(option) && this.getOptionLabel(option).toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale));
814
+ return this.isValidOption(option) && this.getOptionLabel(option)?.toLocaleLowerCase(this.filterLocale).startsWith(this.searchValue.toLocaleLowerCase(this.filterLocale));
807
815
  },
808
816
  isValidOption(option) {
809
817
  return ObjectUtils.isNotEmpty(option) && !(this.isOptionDisabled(option) || this.isOptionGroup(option));
@@ -811,10 +819,13 @@ export default {
811
819
  isValidSelectedOption(option) {
812
820
  return this.isValidOption(option) && this.isSelected(option);
813
821
  },
822
+ isEquals(value1, value2) {
823
+ return ObjectUtils.equals(value1, value2, this.equalityKey);
824
+ },
814
825
  isSelected(option) {
815
826
  const optionValue = this.getOptionValue(option);
816
827
 
817
- return (this.modelValue || []).some((value) => ObjectUtils.equals(value, optionValue, this.equalityKey));
828
+ return (this.modelValue || []).some((value) => this.isEquals(value, optionValue));
818
829
  },
819
830
  findFirstOptionIndex() {
820
831
  return this.visibleOptions.findIndex((option) => this.isValidOption(option));
@@ -832,6 +843,18 @@ export default {
832
843
 
833
844
  return matchedOptionIndex > -1 ? matchedOptionIndex : index;
834
845
  },
846
+ findSelectedOptionIndex() {
847
+ if (this.hasSelectedOption) {
848
+ for (let index = this.modelValue.length - 1; index >= 0; index--) {
849
+ const value = this.modelValue[index];
850
+ const matchedOptionIndex = this.visibleOptions.findIndex((option) => this.isValidSelectedOption(option) && this.isEquals(value, this.getOptionValue(option)));
851
+
852
+ if (matchedOptionIndex > -1) return matchedOptionIndex;
853
+ }
854
+ }
855
+
856
+ return -1;
857
+ },
835
858
  findFirstSelectedOptionIndex() {
836
859
  return this.hasSelectedOption ? this.visibleOptions.findIndex((option) => this.isValidSelectedOption(option)) : -1;
837
860
  },
@@ -864,12 +887,12 @@ export default {
864
887
  return matchedOptionIndex > -1 ? matchedOptionIndex : index;
865
888
  },
866
889
  findFirstFocusedOptionIndex() {
867
- const selectedIndex = this.findFirstSelectedOptionIndex();
890
+ const selectedIndex = this.findSelectedOptionIndex();
868
891
 
869
892
  return selectedIndex < 0 ? this.findFirstOptionIndex() : selectedIndex;
870
893
  },
871
894
  findLastFocusedOptionIndex() {
872
- const selectedIndex = this.findLastSelectedOptionIndex();
895
+ const selectedIndex = this.findSelectedOptionIndex();
873
896
 
874
897
  return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
875
898
  },
@@ -878,19 +901,21 @@ export default {
878
901
 
879
902
  let optionIndex = -1;
880
903
 
881
- if (this.focusedOptionIndex !== -1) {
882
- optionIndex = this.visibleOptions.slice(this.focusedOptionIndex).findIndex((option) => this.isOptionMatched(option));
883
- optionIndex = optionIndex === -1 ? this.visibleOptions.slice(0, this.focusedOptionIndex).findIndex((option) => this.isOptionMatched(option)) : optionIndex + this.focusedOptionIndex;
884
- } else {
885
- optionIndex = this.visibleOptions.findIndex((option) => this.isOptionMatched(option));
886
- }
904
+ if (ObjectUtils.isNotEmpty(this.searchValue)) {
905
+ if (this.focusedOptionIndex !== -1) {
906
+ optionIndex = this.visibleOptions.slice(this.focusedOptionIndex).findIndex((option) => this.isOptionMatched(option));
907
+ optionIndex = optionIndex === -1 ? this.visibleOptions.slice(0, this.focusedOptionIndex).findIndex((option) => this.isOptionMatched(option)) : optionIndex + this.focusedOptionIndex;
908
+ } else {
909
+ optionIndex = this.visibleOptions.findIndex((option) => this.isOptionMatched(option));
910
+ }
887
911
 
888
- if (optionIndex === -1 && this.focusedOptionIndex === -1) {
889
- optionIndex = this.findFirstFocusedOptionIndex();
890
- }
912
+ if (optionIndex === -1 && this.focusedOptionIndex === -1) {
913
+ optionIndex = this.findFirstFocusedOptionIndex();
914
+ }
891
915
 
892
- if (optionIndex !== -1) {
893
- this.changeFocusedOptionIndex(event, optionIndex);
916
+ if (optionIndex !== -1) {
917
+ this.changeFocusedOptionIndex(event, optionIndex);
918
+ }
894
919
  }
895
920
 
896
921
  if (this.searchTimeout) {
@@ -906,17 +931,23 @@ export default {
906
931
  if (this.focusedOptionIndex !== index) {
907
932
  this.focusedOptionIndex = index;
908
933
  this.scrollInView();
934
+
935
+ if (this.selectOnFocus) {
936
+ this.onOptionSelect(event, this.visibleOptions[index]);
937
+ }
909
938
  }
910
939
  },
911
940
  scrollInView(index = -1) {
912
- const id = index !== -1 ? `${this.id}_${index}` : this.focusedOptionId;
913
- const element = DomHandler.findSingle(this.list, `li[id="${id}"]`);
914
-
915
- if (element) {
916
- element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
917
- } else if (!this.virtualScrollerDisabled) {
918
- this.virtualScroller && this.virtualScroller.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex);
919
- }
941
+ this.$nextTick(() => {
942
+ const id = index !== -1 ? `${this.id}_${index}` : this.focusedOptionId;
943
+ const element = DomHandler.findSingle(this.list, `li[id="${id}"]`);
944
+
945
+ if (element) {
946
+ element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'nearest' });
947
+ } else if (!this.virtualScrollerDisabled) {
948
+ this.virtualScroller && this.virtualScroller.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex);
949
+ }
950
+ });
920
951
  },
921
952
  autoUpdateModel() {
922
953
  if (this.selectOnFocus && this.autoOptionFocus && !this.hasSelectedOption) {
@@ -1061,14 +1092,15 @@ export default {
1061
1092
  ripple: Ripple
1062
1093
  },
1063
1094
  components: {
1064
- VirtualScroller: VirtualScroller,
1065
- Portal: Portal,
1066
- TimesIcon: TimesIcon,
1067
- SearchIcon: SearchIcon,
1068
- TimesCircleIcon: TimesCircleIcon,
1069
- ChevronDownIcon: ChevronDownIcon,
1070
- SpinnerIcon: SpinnerIcon,
1071
- CheckIcon: CheckIcon
1095
+ Checkbox,
1096
+ VirtualScroller,
1097
+ Portal,
1098
+ TimesIcon,
1099
+ SearchIcon,
1100
+ TimesCircleIcon,
1101
+ ChevronDownIcon,
1102
+ SpinnerIcon,
1103
+ CheckIcon
1072
1104
  }
1073
1105
  };
1074
1106
  </script>