primevue 3.44.0 → 3.46.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 (752) hide show
  1. package/accordion/Accordion.vue +1 -0
  2. package/accordion/accordion.cjs.js +1 -0
  3. package/accordion/accordion.cjs.min.js +1 -1
  4. package/accordion/accordion.esm.js +1 -0
  5. package/accordion/accordion.esm.min.js +1 -1
  6. package/accordion/accordion.js +1 -0
  7. package/accordion/accordion.min.js +1 -1
  8. package/autocomplete/BaseAutoComplete.vue +1 -1
  9. package/autocomplete/autocomplete.cjs.js +1 -1
  10. package/autocomplete/autocomplete.cjs.min.js +1 -1
  11. package/autocomplete/autocomplete.esm.js +1 -1
  12. package/autocomplete/autocomplete.esm.min.js +1 -1
  13. package/autocomplete/autocomplete.js +1 -1
  14. package/autocomplete/autocomplete.min.js +1 -1
  15. package/basecomponent/BaseComponent.vue +1 -1
  16. package/basecomponent/basecomponent.cjs.js +2 -2
  17. package/basecomponent/basecomponent.cjs.min.js +1 -1
  18. package/basecomponent/basecomponent.esm.js +2 -2
  19. package/basecomponent/basecomponent.esm.min.js +1 -1
  20. package/basecomponent/basecomponent.js +2 -2
  21. package/basecomponent/basecomponent.min.js +1 -1
  22. package/basecomponent/style/basecomponentstyle.cjs.js +1 -1
  23. package/basecomponent/style/basecomponentstyle.cjs.min.js +1 -1
  24. package/basecomponent/style/basecomponentstyle.esm.js +1 -1
  25. package/basecomponent/style/basecomponentstyle.esm.min.js +1 -1
  26. package/basecomponent/style/basecomponentstyle.js +1 -1
  27. package/basecomponent/style/basecomponentstyle.min.js +1 -1
  28. package/baseicon/BaseIcon.vue +8 -14
  29. package/baseicon/baseicon.cjs.js +10 -15
  30. package/baseicon/baseicon.cjs.min.js +1 -1
  31. package/baseicon/baseicon.esm.js +10 -15
  32. package/baseicon/baseicon.esm.min.js +1 -1
  33. package/baseicon/baseicon.js +10 -15
  34. package/baseicon/baseicon.min.js +1 -1
  35. package/calendar/BaseCalendar.vue +1 -1
  36. package/calendar/Calendar.vue +5 -2
  37. package/calendar/calendar.cjs.js +6 -3
  38. package/calendar/calendar.cjs.min.js +1 -1
  39. package/calendar/calendar.esm.js +6 -3
  40. package/calendar/calendar.esm.min.js +1 -1
  41. package/calendar/calendar.js +6 -3
  42. package/calendar/calendar.min.js +1 -1
  43. package/card/Card.d.ts +4 -0
  44. package/card/Card.vue +7 -5
  45. package/card/card.cjs.js +6 -3
  46. package/card/card.cjs.min.js +1 -1
  47. package/card/card.esm.js +6 -3
  48. package/card/card.esm.min.js +1 -1
  49. package/card/card.js +6 -3
  50. package/card/card.min.js +1 -1
  51. package/card/style/cardstyle.cjs.js +1 -0
  52. package/card/style/cardstyle.cjs.min.js +1 -1
  53. package/card/style/cardstyle.esm.js +1 -0
  54. package/card/style/cardstyle.esm.min.js +1 -1
  55. package/card/style/cardstyle.js +1 -0
  56. package/card/style/cardstyle.min.js +1 -1
  57. package/cascadeselect/BaseCascadeSelect.vue +1 -1
  58. package/cascadeselect/CascadeSelect.d.ts +41 -0
  59. package/cascadeselect/CascadeSelect.vue +1 -0
  60. package/cascadeselect/CascadeSelectSub.vue +18 -5
  61. package/cascadeselect/cascadeselect.cjs.js +20 -6
  62. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  63. package/cascadeselect/cascadeselect.esm.js +20 -6
  64. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  65. package/cascadeselect/cascadeselect.js +20 -6
  66. package/cascadeselect/cascadeselect.min.js +1 -1
  67. package/cascadeselect/style/cascadeselectstyle.cjs.js +1 -1
  68. package/cascadeselect/style/cascadeselectstyle.cjs.min.js +1 -1
  69. package/cascadeselect/style/cascadeselectstyle.esm.js +1 -1
  70. package/cascadeselect/style/cascadeselectstyle.esm.min.js +1 -1
  71. package/cascadeselect/style/cascadeselectstyle.js +1 -1
  72. package/cascadeselect/style/cascadeselectstyle.min.js +1 -1
  73. package/chips/Chips.vue +1 -0
  74. package/chips/chips.cjs.js +1 -0
  75. package/chips/chips.cjs.min.js +1 -1
  76. package/chips/chips.esm.js +1 -0
  77. package/chips/chips.esm.min.js +1 -1
  78. package/chips/chips.js +1 -0
  79. package/chips/chips.min.js +1 -1
  80. package/colorpicker/BaseColorPicker.vue +1 -1
  81. package/colorpicker/ColorPicker.d.ts +1 -1
  82. package/colorpicker/colorpicker.cjs.js +1 -1
  83. package/colorpicker/colorpicker.cjs.min.js +1 -1
  84. package/colorpicker/colorpicker.esm.js +1 -1
  85. package/colorpicker/colorpicker.esm.min.js +1 -1
  86. package/colorpicker/colorpicker.js +1 -1
  87. package/colorpicker/colorpicker.min.js +1 -1
  88. package/column/Column.d.ts +4 -0
  89. package/column/Column.vue +7 -0
  90. package/column/column.cjs.js +9 -0
  91. package/column/column.cjs.min.js +1 -1
  92. package/column/column.esm.js +9 -0
  93. package/column/column.esm.min.js +1 -1
  94. package/column/column.js +9 -0
  95. package/column/column.min.js +1 -1
  96. package/columngroup/ColumnGroup.vue +7 -0
  97. package/columngroup/columngroup.cjs.js +9 -0
  98. package/columngroup/columngroup.cjs.min.js +1 -1
  99. package/columngroup/columngroup.esm.js +9 -0
  100. package/columngroup/columngroup.esm.min.js +1 -1
  101. package/columngroup/columngroup.js +9 -0
  102. package/columngroup/columngroup.min.js +1 -1
  103. package/confirmdialog/ConfirmDialog.d.ts +1 -1
  104. package/confirmdialog/ConfirmDialog.vue +1 -1
  105. package/confirmdialog/confirmdialog.cjs.js +1 -1
  106. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  107. package/confirmdialog/confirmdialog.esm.js +1 -1
  108. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  109. package/confirmdialog/confirmdialog.js +1 -1
  110. package/confirmdialog/confirmdialog.min.js +1 -1
  111. package/confirmdialog/style/confirmdialogstyle.cjs.js +3 -6
  112. package/confirmdialog/style/confirmdialogstyle.cjs.min.js +1 -1
  113. package/confirmdialog/style/confirmdialogstyle.esm.js +3 -6
  114. package/confirmdialog/style/confirmdialogstyle.esm.min.js +1 -1
  115. package/confirmdialog/style/confirmdialogstyle.js +3 -6
  116. package/confirmdialog/style/confirmdialogstyle.min.js +1 -1
  117. package/confirmpopup/ConfirmPopup.vue +3 -3
  118. package/confirmpopup/confirmpopup.cjs.js +3 -3
  119. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  120. package/confirmpopup/confirmpopup.esm.js +3 -3
  121. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  122. package/confirmpopup/confirmpopup.js +3 -3
  123. package/confirmpopup/confirmpopup.min.js +1 -1
  124. package/confirmpopup/style/confirmpopupstyle.cjs.js +5 -8
  125. package/confirmpopup/style/confirmpopupstyle.cjs.min.js +1 -1
  126. package/confirmpopup/style/confirmpopupstyle.esm.js +5 -8
  127. package/confirmpopup/style/confirmpopupstyle.esm.min.js +1 -1
  128. package/confirmpopup/style/confirmpopupstyle.js +5 -8
  129. package/confirmpopup/style/confirmpopupstyle.min.js +1 -1
  130. package/contextmenu/BaseContextMenu.vue +1 -1
  131. package/contextmenu/ContextMenu.vue +1 -0
  132. package/contextmenu/ContextMenuSub.vue +6 -1
  133. package/contextmenu/contextmenu.cjs.js +12 -5
  134. package/contextmenu/contextmenu.cjs.min.js +1 -1
  135. package/contextmenu/contextmenu.esm.js +12 -5
  136. package/contextmenu/contextmenu.esm.min.js +1 -1
  137. package/contextmenu/contextmenu.js +12 -5
  138. package/contextmenu/contextmenu.min.js +1 -1
  139. package/core/core.js +357 -209
  140. package/core/core.min.js +53 -53
  141. package/datatable/BaseDataTable.vue +2 -2
  142. package/datatable/BodyRow.vue +582 -0
  143. package/datatable/ColumnFilter.vue +1 -0
  144. package/datatable/DataTable.d.ts +1 -1
  145. package/datatable/DataTable.vue +111 -132
  146. package/datatable/HeaderCell.vue +10 -7
  147. package/datatable/TableBody.vue +74 -414
  148. package/datatable/TableFooter.vue +19 -26
  149. package/datatable/TableHeader.vue +19 -26
  150. package/datatable/datatable.cjs.js +895 -634
  151. package/datatable/datatable.cjs.min.js +1 -1
  152. package/datatable/datatable.esm.js +896 -635
  153. package/datatable/datatable.esm.min.js +1 -1
  154. package/datatable/datatable.js +895 -634
  155. package/datatable/datatable.min.js +1 -1
  156. package/datatable/style/datatablestyle.cjs.js +5 -4
  157. package/datatable/style/datatablestyle.cjs.min.js +1 -1
  158. package/datatable/style/datatablestyle.esm.js +5 -4
  159. package/datatable/style/datatablestyle.esm.min.js +1 -1
  160. package/datatable/style/datatablestyle.js +5 -4
  161. package/datatable/style/datatablestyle.min.js +1 -1
  162. package/dialog/BaseDialog.vue +1 -1
  163. package/dialog/dialog.cjs.js +1 -1
  164. package/dialog/dialog.cjs.min.js +1 -1
  165. package/dialog/dialog.esm.js +1 -1
  166. package/dialog/dialog.esm.min.js +1 -1
  167. package/dialog/dialog.js +1 -1
  168. package/dialog/dialog.min.js +1 -1
  169. package/dialog/style/dialogstyle.cjs.js +1 -1
  170. package/dialog/style/dialogstyle.cjs.min.js +1 -1
  171. package/dialog/style/dialogstyle.esm.js +1 -1
  172. package/dialog/style/dialogstyle.esm.min.js +1 -1
  173. package/dialog/style/dialogstyle.js +1 -1
  174. package/dialog/style/dialogstyle.min.js +1 -1
  175. package/dock/DockSub.vue +1 -0
  176. package/dock/dock.cjs.js +1 -0
  177. package/dock/dock.cjs.min.js +1 -1
  178. package/dock/dock.esm.js +1 -0
  179. package/dock/dock.esm.min.js +1 -1
  180. package/dock/dock.js +1 -0
  181. package/dock/dock.min.js +1 -1
  182. package/dropdown/BaseDropdown.vue +1 -1
  183. package/dropdown/Dropdown.vue +26 -0
  184. package/dropdown/dropdown.cjs.js +50 -26
  185. package/dropdown/dropdown.cjs.min.js +1 -1
  186. package/dropdown/dropdown.esm.js +50 -26
  187. package/dropdown/dropdown.esm.min.js +1 -1
  188. package/dropdown/dropdown.js +50 -26
  189. package/dropdown/dropdown.min.js +1 -1
  190. package/fieldset/Fieldset.vue +1 -1
  191. package/fieldset/fieldset.cjs.js +1 -1
  192. package/fieldset/fieldset.cjs.min.js +1 -1
  193. package/fieldset/fieldset.esm.js +1 -1
  194. package/fieldset/fieldset.esm.min.js +1 -1
  195. package/fieldset/fieldset.js +1 -1
  196. package/fieldset/fieldset.min.js +1 -1
  197. package/galleria/GalleriaItem.vue +1 -0
  198. package/galleria/GalleriaThumbnails.vue +1 -1
  199. package/galleria/galleria.cjs.js +2 -1
  200. package/galleria/galleria.cjs.min.js +1 -1
  201. package/galleria/galleria.esm.js +2 -1
  202. package/galleria/galleria.esm.min.js +1 -1
  203. package/galleria/galleria.js +2 -1
  204. package/galleria/galleria.min.js +1 -1
  205. package/icons/arrowdown/index.cjs.js +2 -2
  206. package/icons/arrowdown/index.cjs.min.js +1 -1
  207. package/icons/arrowdown/index.esm.js +2 -2
  208. package/icons/arrowdown/index.esm.min.js +1 -1
  209. package/icons/arrowdown/index.js +2 -2
  210. package/icons/arrowdown/index.min.js +1 -1
  211. package/icons/arrowdown/index.vue +1 -1
  212. package/icons/arrowup/index.cjs.js +2 -2
  213. package/icons/arrowup/index.cjs.min.js +1 -1
  214. package/icons/arrowup/index.esm.js +2 -2
  215. package/icons/arrowup/index.esm.min.js +1 -1
  216. package/icons/arrowup/index.js +2 -2
  217. package/icons/arrowup/index.min.js +1 -1
  218. package/icons/arrowup/index.vue +1 -1
  219. package/icons/ban/index.cjs.js +2 -2
  220. package/icons/ban/index.cjs.min.js +1 -1
  221. package/icons/ban/index.esm.js +2 -2
  222. package/icons/ban/index.esm.min.js +1 -1
  223. package/icons/ban/index.js +2 -2
  224. package/icons/ban/index.min.js +1 -1
  225. package/icons/ban/index.vue +1 -1
  226. package/icons/exclamationtriangle/index.cjs.js +2 -2
  227. package/icons/exclamationtriangle/index.cjs.min.js +1 -1
  228. package/icons/exclamationtriangle/index.esm.js +2 -2
  229. package/icons/exclamationtriangle/index.esm.min.js +1 -1
  230. package/icons/exclamationtriangle/index.js +2 -2
  231. package/icons/exclamationtriangle/index.min.js +1 -1
  232. package/icons/exclamationtriangle/index.vue +1 -1
  233. package/icons/eyeslash/index.cjs.js +2 -2
  234. package/icons/eyeslash/index.cjs.min.js +1 -1
  235. package/icons/eyeslash/index.esm.js +2 -2
  236. package/icons/eyeslash/index.esm.min.js +1 -1
  237. package/icons/eyeslash/index.js +2 -2
  238. package/icons/eyeslash/index.min.js +1 -1
  239. package/icons/eyeslash/index.vue +1 -1
  240. package/icons/filter/index.cjs.js +2 -2
  241. package/icons/filter/index.cjs.min.js +1 -1
  242. package/icons/filter/index.esm.js +2 -2
  243. package/icons/filter/index.esm.min.js +1 -1
  244. package/icons/filter/index.js +2 -2
  245. package/icons/filter/index.min.js +1 -1
  246. package/icons/filter/index.vue +1 -1
  247. package/icons/filterslash/index.cjs.js +2 -2
  248. package/icons/filterslash/index.cjs.min.js +1 -1
  249. package/icons/filterslash/index.esm.js +2 -2
  250. package/icons/filterslash/index.esm.min.js +1 -1
  251. package/icons/filterslash/index.js +2 -2
  252. package/icons/filterslash/index.min.js +1 -1
  253. package/icons/filterslash/index.vue +1 -1
  254. package/icons/infocircle/index.cjs.js +2 -2
  255. package/icons/infocircle/index.cjs.min.js +1 -1
  256. package/icons/infocircle/index.esm.js +2 -2
  257. package/icons/infocircle/index.esm.min.js +1 -1
  258. package/icons/infocircle/index.js +2 -2
  259. package/icons/infocircle/index.min.js +1 -1
  260. package/icons/infocircle/index.vue +1 -1
  261. package/icons/pencil/index.cjs.js +2 -2
  262. package/icons/pencil/index.cjs.min.js +1 -1
  263. package/icons/pencil/index.esm.js +2 -2
  264. package/icons/pencil/index.esm.min.js +1 -1
  265. package/icons/pencil/index.js +2 -2
  266. package/icons/pencil/index.min.js +1 -1
  267. package/icons/pencil/index.vue +1 -1
  268. package/icons/plus/index.cjs.js +2 -2
  269. package/icons/plus/index.cjs.min.js +1 -1
  270. package/icons/plus/index.esm.js +2 -2
  271. package/icons/plus/index.esm.min.js +1 -1
  272. package/icons/plus/index.js +2 -2
  273. package/icons/plus/index.min.js +1 -1
  274. package/icons/plus/index.vue +1 -1
  275. package/icons/refresh/index.cjs.js +2 -2
  276. package/icons/refresh/index.cjs.min.js +1 -1
  277. package/icons/refresh/index.esm.js +2 -2
  278. package/icons/refresh/index.esm.min.js +1 -1
  279. package/icons/refresh/index.js +2 -2
  280. package/icons/refresh/index.min.js +1 -1
  281. package/icons/refresh/index.vue +1 -1
  282. package/icons/search/index.cjs.js +2 -2
  283. package/icons/search/index.cjs.min.js +1 -1
  284. package/icons/search/index.esm.js +2 -2
  285. package/icons/search/index.esm.min.js +1 -1
  286. package/icons/search/index.js +2 -2
  287. package/icons/search/index.min.js +1 -1
  288. package/icons/search/index.vue +1 -1
  289. package/icons/searchminus/index.cjs.js +2 -2
  290. package/icons/searchminus/index.cjs.min.js +1 -1
  291. package/icons/searchminus/index.esm.js +2 -2
  292. package/icons/searchminus/index.esm.min.js +1 -1
  293. package/icons/searchminus/index.js +2 -2
  294. package/icons/searchminus/index.min.js +1 -1
  295. package/icons/searchminus/index.vue +1 -1
  296. package/icons/searchplus/index.cjs.js +2 -2
  297. package/icons/searchplus/index.cjs.min.js +1 -1
  298. package/icons/searchplus/index.esm.js +2 -2
  299. package/icons/searchplus/index.esm.min.js +1 -1
  300. package/icons/searchplus/index.js +2 -2
  301. package/icons/searchplus/index.min.js +1 -1
  302. package/icons/searchplus/index.vue +1 -1
  303. package/icons/sortalt/index.cjs.js +2 -2
  304. package/icons/sortalt/index.cjs.min.js +1 -1
  305. package/icons/sortalt/index.esm.js +2 -2
  306. package/icons/sortalt/index.esm.min.js +1 -1
  307. package/icons/sortalt/index.js +2 -2
  308. package/icons/sortalt/index.min.js +1 -1
  309. package/icons/sortalt/index.vue +1 -1
  310. package/icons/sortamountdown/index.cjs.js +12 -9
  311. package/icons/sortamountdown/index.cjs.min.js +1 -1
  312. package/icons/sortamountdown/index.esm.js +13 -10
  313. package/icons/sortamountdown/index.esm.min.js +1 -1
  314. package/icons/sortamountdown/index.js +12 -9
  315. package/icons/sortamountdown/index.min.js +1 -1
  316. package/icons/sortamountdown/index.vue +2 -22
  317. package/icons/sortamountupalt/index.cjs.js +12 -9
  318. package/icons/sortamountupalt/index.cjs.min.js +1 -1
  319. package/icons/sortamountupalt/index.esm.js +13 -10
  320. package/icons/sortamountupalt/index.esm.min.js +1 -1
  321. package/icons/sortamountupalt/index.js +12 -9
  322. package/icons/sortamountupalt/index.min.js +1 -1
  323. package/icons/sortamountupalt/index.vue +2 -22
  324. package/icons/spinner/index.cjs.js +2 -2
  325. package/icons/spinner/index.cjs.min.js +1 -1
  326. package/icons/spinner/index.esm.js +2 -2
  327. package/icons/spinner/index.esm.min.js +1 -1
  328. package/icons/spinner/index.js +2 -2
  329. package/icons/spinner/index.min.js +1 -1
  330. package/icons/spinner/index.vue +1 -1
  331. package/icons/star/index.cjs.js +2 -2
  332. package/icons/star/index.cjs.min.js +1 -1
  333. package/icons/star/index.esm.js +2 -2
  334. package/icons/star/index.esm.min.js +1 -1
  335. package/icons/star/index.js +2 -2
  336. package/icons/star/index.min.js +1 -1
  337. package/icons/star/index.vue +1 -1
  338. package/icons/starfill/index.cjs.js +2 -2
  339. package/icons/starfill/index.cjs.min.js +1 -1
  340. package/icons/starfill/index.esm.js +2 -2
  341. package/icons/starfill/index.esm.min.js +1 -1
  342. package/icons/starfill/index.js +2 -2
  343. package/icons/starfill/index.min.js +1 -1
  344. package/icons/starfill/index.vue +1 -1
  345. package/icons/thlarge/index.cjs.js +2 -2
  346. package/icons/thlarge/index.cjs.min.js +1 -1
  347. package/icons/thlarge/index.esm.js +2 -2
  348. package/icons/thlarge/index.esm.min.js +1 -1
  349. package/icons/thlarge/index.js +2 -2
  350. package/icons/thlarge/index.min.js +1 -1
  351. package/icons/thlarge/index.vue +1 -1
  352. package/icons/timescircle/index.cjs.js +2 -2
  353. package/icons/timescircle/index.cjs.min.js +1 -1
  354. package/icons/timescircle/index.esm.js +2 -2
  355. package/icons/timescircle/index.esm.min.js +1 -1
  356. package/icons/timescircle/index.js +2 -2
  357. package/icons/timescircle/index.min.js +1 -1
  358. package/icons/timescircle/index.vue +1 -1
  359. package/icons/trash/index.cjs.js +2 -2
  360. package/icons/trash/index.cjs.min.js +1 -1
  361. package/icons/trash/index.esm.js +2 -2
  362. package/icons/trash/index.esm.min.js +1 -1
  363. package/icons/trash/index.js +2 -2
  364. package/icons/trash/index.min.js +1 -1
  365. package/icons/trash/index.vue +1 -1
  366. package/icons/undo/index.cjs.js +2 -2
  367. package/icons/undo/index.cjs.min.js +1 -1
  368. package/icons/undo/index.esm.js +2 -2
  369. package/icons/undo/index.esm.min.js +1 -1
  370. package/icons/undo/index.js +2 -2
  371. package/icons/undo/index.min.js +1 -1
  372. package/icons/undo/index.vue +1 -1
  373. package/icons/upload/index.cjs.js +2 -2
  374. package/icons/upload/index.cjs.min.js +1 -1
  375. package/icons/upload/index.esm.js +2 -2
  376. package/icons/upload/index.esm.min.js +1 -1
  377. package/icons/upload/index.js +2 -2
  378. package/icons/upload/index.min.js +1 -1
  379. package/icons/upload/index.vue +1 -1
  380. package/icons/windowmaximize/index.cjs.js +2 -2
  381. package/icons/windowmaximize/index.cjs.min.js +1 -1
  382. package/icons/windowmaximize/index.esm.js +2 -2
  383. package/icons/windowmaximize/index.esm.min.js +1 -1
  384. package/icons/windowmaximize/index.js +2 -2
  385. package/icons/windowmaximize/index.min.js +1 -1
  386. package/icons/windowmaximize/index.vue +1 -1
  387. package/icons/windowminimize/index.cjs.js +2 -2
  388. package/icons/windowminimize/index.cjs.min.js +1 -1
  389. package/icons/windowminimize/index.esm.js +2 -2
  390. package/icons/windowminimize/index.esm.min.js +1 -1
  391. package/icons/windowminimize/index.js +2 -2
  392. package/icons/windowminimize/index.min.js +1 -1
  393. package/icons/windowminimize/index.vue +1 -1
  394. package/image/Image.vue +2 -6
  395. package/image/image.cjs.js +2 -5
  396. package/image/image.cjs.min.js +1 -1
  397. package/image/image.esm.js +2 -5
  398. package/image/image.esm.min.js +1 -1
  399. package/image/image.js +2 -5
  400. package/image/image.min.js +1 -1
  401. package/image/style/imagestyle.cjs.js +1 -1
  402. package/image/style/imagestyle.cjs.min.js +1 -1
  403. package/image/style/imagestyle.esm.js +1 -1
  404. package/image/style/imagestyle.esm.min.js +1 -1
  405. package/image/style/imagestyle.js +1 -1
  406. package/image/style/imagestyle.min.js +1 -1
  407. package/inputnumber/BaseInputNumber.vue +7 -0
  408. package/inputnumber/InputNumber.d.ts +7 -0
  409. package/inputnumber/InputNumber.vue +8 -3
  410. package/inputnumber/inputnumber.cjs.js +16 -3
  411. package/inputnumber/inputnumber.cjs.min.js +1 -1
  412. package/inputnumber/inputnumber.esm.js +16 -3
  413. package/inputnumber/inputnumber.esm.min.js +1 -1
  414. package/inputnumber/inputnumber.js +16 -3
  415. package/inputnumber/inputnumber.min.js +1 -1
  416. package/knob/Knob.vue +1 -1
  417. package/knob/knob.cjs.js +1 -1
  418. package/knob/knob.cjs.min.js +1 -1
  419. package/knob/knob.esm.js +1 -1
  420. package/knob/knob.esm.min.js +1 -1
  421. package/knob/knob.js +1 -1
  422. package/knob/knob.min.js +1 -1
  423. package/listbox/BaseListbox.vue +1 -1
  424. package/listbox/Listbox.d.ts +1 -1
  425. package/listbox/Listbox.vue +2 -0
  426. package/listbox/listbox.cjs.js +3 -1
  427. package/listbox/listbox.cjs.min.js +1 -1
  428. package/listbox/listbox.esm.js +3 -1
  429. package/listbox/listbox.esm.min.js +1 -1
  430. package/listbox/listbox.js +3 -1
  431. package/listbox/listbox.min.js +1 -1
  432. package/megamenu/MegaMenu.vue +2 -1
  433. package/megamenu/megamenu.cjs.js +2 -1
  434. package/megamenu/megamenu.cjs.min.js +1 -1
  435. package/megamenu/megamenu.esm.js +2 -1
  436. package/megamenu/megamenu.esm.min.js +1 -1
  437. package/megamenu/megamenu.js +2 -1
  438. package/megamenu/megamenu.min.js +1 -1
  439. package/menu/BaseMenu.vue +1 -1
  440. package/menu/Menu.vue +1 -0
  441. package/menu/menu.cjs.js +2 -1
  442. package/menu/menu.cjs.min.js +1 -1
  443. package/menu/menu.esm.js +2 -1
  444. package/menu/menu.esm.min.js +1 -1
  445. package/menu/menu.js +2 -1
  446. package/menu/menu.min.js +1 -1
  447. package/menubar/Menubar.vue +4 -2
  448. package/menubar/MenubarSub.vue +5 -1
  449. package/menubar/menubar.cjs.js +12 -5
  450. package/menubar/menubar.cjs.min.js +1 -1
  451. package/menubar/menubar.esm.js +12 -5
  452. package/menubar/menubar.esm.min.js +1 -1
  453. package/menubar/menubar.js +12 -5
  454. package/menubar/menubar.min.js +1 -1
  455. package/menuitem/MenuItem.d.ts +0 -6
  456. package/message/style/messagestyle.cjs.js +1 -1
  457. package/message/style/messagestyle.cjs.min.js +1 -1
  458. package/message/style/messagestyle.esm.js +1 -1
  459. package/message/style/messagestyle.esm.min.js +1 -1
  460. package/message/style/messagestyle.js +1 -1
  461. package/message/style/messagestyle.min.js +1 -1
  462. package/multiselect/BaseMultiSelect.vue +1 -1
  463. package/multiselect/MultiSelect.vue +2 -0
  464. package/multiselect/multiselect.cjs.js +3 -1
  465. package/multiselect/multiselect.cjs.min.js +1 -1
  466. package/multiselect/multiselect.esm.js +3 -1
  467. package/multiselect/multiselect.esm.min.js +1 -1
  468. package/multiselect/multiselect.js +3 -1
  469. package/multiselect/multiselect.min.js +1 -1
  470. package/orderlist/BaseOrderList.vue +1 -1
  471. package/orderlist/OrderList.d.ts +1 -1
  472. package/orderlist/OrderList.vue +1 -0
  473. package/orderlist/orderlist.cjs.js +2 -1
  474. package/orderlist/orderlist.cjs.min.js +1 -1
  475. package/orderlist/orderlist.esm.js +2 -1
  476. package/orderlist/orderlist.esm.min.js +1 -1
  477. package/orderlist/orderlist.js +2 -1
  478. package/orderlist/orderlist.min.js +1 -1
  479. package/organizationchart/OrganizationChartNode.vue +1 -1
  480. package/organizationchart/organizationchart.cjs.js +1 -1
  481. package/organizationchart/organizationchart.cjs.min.js +1 -1
  482. package/organizationchart/organizationchart.esm.js +1 -1
  483. package/organizationchart/organizationchart.esm.min.js +1 -1
  484. package/organizationchart/organizationchart.js +1 -1
  485. package/organizationchart/organizationchart.min.js +1 -1
  486. package/overlaypanel/BaseOverlayPanel.vue +1 -1
  487. package/overlaypanel/overlaypanel.cjs.js +1 -1
  488. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  489. package/overlaypanel/overlaypanel.esm.js +1 -1
  490. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  491. package/overlaypanel/overlaypanel.js +1 -1
  492. package/overlaypanel/overlaypanel.min.js +1 -1
  493. package/package.json +1 -1
  494. package/paginator/Paginator.vue +4 -4
  495. package/paginator/paginator.cjs.js +2 -2
  496. package/paginator/paginator.cjs.min.js +1 -1
  497. package/paginator/paginator.esm.js +2 -2
  498. package/paginator/paginator.esm.min.js +1 -1
  499. package/paginator/paginator.js +2 -2
  500. package/paginator/paginator.min.js +1 -1
  501. package/panel/Panel.vue +1 -1
  502. package/panel/panel.cjs.js +1 -1
  503. package/panel/panel.cjs.min.js +1 -1
  504. package/panel/panel.esm.js +1 -1
  505. package/panel/panel.esm.min.js +1 -1
  506. package/panel/panel.js +1 -1
  507. package/panel/panel.min.js +1 -1
  508. package/panelmenu/PanelMenu.vue +1 -0
  509. package/panelmenu/PanelMenuList.vue +1 -0
  510. package/panelmenu/panelmenu.cjs.js +2 -0
  511. package/panelmenu/panelmenu.cjs.min.js +1 -1
  512. package/panelmenu/panelmenu.esm.js +2 -0
  513. package/panelmenu/panelmenu.esm.min.js +1 -1
  514. package/panelmenu/panelmenu.js +2 -0
  515. package/panelmenu/panelmenu.min.js +1 -1
  516. package/password/BasePassword.vue +1 -1
  517. package/password/password.cjs.js +1 -1
  518. package/password/password.cjs.min.js +1 -1
  519. package/password/password.esm.js +1 -1
  520. package/password/password.esm.min.js +1 -1
  521. package/password/password.js +1 -1
  522. package/password/password.min.js +1 -1
  523. package/picklist/BasePickList.vue +1 -1
  524. package/picklist/PickList.d.ts +1 -1
  525. package/picklist/PickList.vue +2 -1
  526. package/picklist/picklist.cjs.js +3 -2
  527. package/picklist/picklist.cjs.min.js +1 -1
  528. package/picklist/picklist.esm.js +3 -2
  529. package/picklist/picklist.esm.min.js +1 -1
  530. package/picklist/picklist.js +3 -2
  531. package/picklist/picklist.min.js +1 -1
  532. package/picklist/style/pickliststyle.cjs.js +1 -1
  533. package/picklist/style/pickliststyle.cjs.min.js +1 -1
  534. package/picklist/style/pickliststyle.esm.js +1 -1
  535. package/picklist/style/pickliststyle.esm.min.js +1 -1
  536. package/picklist/style/pickliststyle.js +1 -1
  537. package/picklist/style/pickliststyle.min.js +1 -1
  538. package/portal/Portal.vue +1 -1
  539. package/portal/portal.cjs.js +1 -1
  540. package/portal/portal.cjs.min.js +1 -1
  541. package/portal/portal.esm.js +1 -1
  542. package/portal/portal.esm.min.js +1 -1
  543. package/portal/portal.js +1 -1
  544. package/portal/portal.min.js +1 -1
  545. package/resources/themes/arya-blue/theme.css +4 -4
  546. package/resources/themes/arya-green/theme.css +4 -4
  547. package/resources/themes/arya-orange/theme.css +4 -4
  548. package/resources/themes/arya-purple/theme.css +4 -4
  549. package/resources/themes/bootstrap4-dark-blue/theme.css +4 -4
  550. package/resources/themes/bootstrap4-dark-purple/theme.css +4 -4
  551. package/resources/themes/bootstrap4-light-blue/theme.css +4 -4
  552. package/resources/themes/bootstrap4-light-purple/theme.css +4 -4
  553. package/resources/themes/fluent-light/theme.css +4 -4
  554. package/resources/themes/lara-dark-amber/theme.css +4 -4
  555. package/resources/themes/lara-dark-blue/theme.css +4 -4
  556. package/resources/themes/lara-dark-cyan/theme.css +4 -4
  557. package/resources/themes/lara-dark-green/theme.css +4 -4
  558. package/resources/themes/lara-dark-indigo/theme.css +4 -4
  559. package/resources/themes/lara-dark-pink/theme.css +4 -4
  560. package/resources/themes/lara-dark-purple/theme.css +4 -4
  561. package/resources/themes/lara-dark-teal/theme.css +4 -4
  562. package/resources/themes/lara-light-amber/theme.css +4 -4
  563. package/resources/themes/lara-light-blue/theme.css +4 -4
  564. package/resources/themes/lara-light-cyan/theme.css +4 -4
  565. package/resources/themes/lara-light-green/theme.css +4 -4
  566. package/resources/themes/lara-light-indigo/theme.css +4 -4
  567. package/resources/themes/lara-light-pink/theme.css +4 -4
  568. package/resources/themes/lara-light-purple/theme.css +4 -4
  569. package/resources/themes/lara-light-teal/theme.css +44 -44
  570. package/resources/themes/luna-amber/theme.css +4 -4
  571. package/resources/themes/luna-blue/theme.css +4 -4
  572. package/resources/themes/luna-green/theme.css +4 -4
  573. package/resources/themes/luna-pink/theme.css +4 -4
  574. package/resources/themes/md-dark-deeppurple/theme.css +4 -4
  575. package/resources/themes/md-dark-indigo/theme.css +4 -4
  576. package/resources/themes/md-light-deeppurple/theme.css +4 -4
  577. package/resources/themes/md-light-indigo/theme.css +4 -4
  578. package/resources/themes/mdc-dark-deeppurple/theme.css +4 -4
  579. package/resources/themes/mdc-dark-indigo/theme.css +4 -4
  580. package/resources/themes/mdc-light-deeppurple/theme.css +4 -4
  581. package/resources/themes/mdc-light-indigo/theme.css +4 -4
  582. package/resources/themes/mira/theme.css +4 -4
  583. package/resources/themes/nano/theme.css +4 -4
  584. package/resources/themes/nova/theme.css +4 -4
  585. package/resources/themes/nova-accent/theme.css +4 -4
  586. package/resources/themes/nova-alt/theme.css +4 -4
  587. package/resources/themes/nova-vue/theme.css +4 -4
  588. package/resources/themes/rhea/theme.css +4 -4
  589. package/resources/themes/saga-blue/theme.css +4 -4
  590. package/resources/themes/saga-green/theme.css +4 -4
  591. package/resources/themes/saga-orange/theme.css +4 -4
  592. package/resources/themes/saga-purple/theme.css +4 -4
  593. package/resources/themes/soho-dark/theme.css +4 -4
  594. package/resources/themes/soho-light/theme.css +4 -4
  595. package/resources/themes/tailwind-light/theme.css +4 -4
  596. package/resources/themes/vela-blue/theme.css +4 -4
  597. package/resources/themes/vela-green/theme.css +4 -4
  598. package/resources/themes/vela-orange/theme.css +4 -4
  599. package/resources/themes/vela-purple/theme.css +4 -4
  600. package/resources/themes/viva-dark/theme.css +4 -4
  601. package/resources/themes/viva-light/theme.css +4 -4
  602. package/ripple/style/ripplestyle.cjs.js +1 -1
  603. package/ripple/style/ripplestyle.cjs.min.js +1 -1
  604. package/ripple/style/ripplestyle.esm.js +1 -1
  605. package/ripple/style/ripplestyle.esm.min.js +1 -1
  606. package/ripple/style/ripplestyle.js +1 -1
  607. package/ripple/style/ripplestyle.min.js +1 -1
  608. package/row/Row.vue +7 -0
  609. package/row/row.cjs.js +9 -0
  610. package/row/row.cjs.min.js +1 -1
  611. package/row/row.esm.js +9 -0
  612. package/row/row.esm.min.js +1 -1
  613. package/row/row.js +9 -0
  614. package/row/row.min.js +1 -1
  615. package/sidebar/Sidebar.vue +16 -1
  616. package/sidebar/sidebar.cjs.js +17 -5
  617. package/sidebar/sidebar.cjs.min.js +1 -1
  618. package/sidebar/sidebar.esm.js +17 -5
  619. package/sidebar/sidebar.esm.min.js +1 -1
  620. package/sidebar/sidebar.js +17 -5
  621. package/sidebar/sidebar.min.js +1 -1
  622. package/slider/Slider.vue +26 -19
  623. package/slider/slider.cjs.js +19 -11
  624. package/slider/slider.cjs.min.js +1 -1
  625. package/slider/slider.esm.js +19 -11
  626. package/slider/slider.esm.min.js +1 -1
  627. package/slider/slider.js +19 -11
  628. package/slider/slider.min.js +1 -1
  629. package/speeddial/SpeedDial.vue +1 -0
  630. package/speeddial/speeddial.cjs.js +1 -0
  631. package/speeddial/speeddial.cjs.min.js +1 -1
  632. package/speeddial/speeddial.esm.js +1 -0
  633. package/speeddial/speeddial.esm.min.js +1 -1
  634. package/speeddial/speeddial.js +1 -0
  635. package/speeddial/speeddial.min.js +1 -1
  636. package/splitbutton/BaseSplitButton.vue +1 -1
  637. package/splitbutton/splitbutton.cjs.js +1 -1
  638. package/splitbutton/splitbutton.cjs.min.js +1 -1
  639. package/splitbutton/splitbutton.esm.js +1 -1
  640. package/splitbutton/splitbutton.esm.min.js +1 -1
  641. package/splitbutton/splitbutton.js +1 -1
  642. package/splitbutton/splitbutton.min.js +1 -1
  643. package/steps/Steps.vue +3 -1
  644. package/steps/steps.cjs.js +4 -2
  645. package/steps/steps.cjs.min.js +1 -1
  646. package/steps/steps.esm.js +4 -2
  647. package/steps/steps.esm.min.js +1 -1
  648. package/steps/steps.js +4 -2
  649. package/steps/steps.min.js +1 -1
  650. package/tabmenu/TabMenu.vue +1 -0
  651. package/tabmenu/tabmenu.cjs.js +1 -0
  652. package/tabmenu/tabmenu.cjs.min.js +1 -1
  653. package/tabmenu/tabmenu.esm.js +1 -0
  654. package/tabmenu/tabmenu.esm.min.js +1 -1
  655. package/tabmenu/tabmenu.js +1 -0
  656. package/tabmenu/tabmenu.min.js +1 -1
  657. package/tabview/TabView.vue +1 -0
  658. package/tabview/tabview.cjs.js +1 -0
  659. package/tabview/tabview.cjs.min.js +1 -1
  660. package/tabview/tabview.esm.js +1 -0
  661. package/tabview/tabview.esm.min.js +1 -1
  662. package/tabview/tabview.js +1 -0
  663. package/tabview/tabview.min.js +1 -1
  664. package/terminal/Terminal.vue +1 -1
  665. package/terminal/terminal.cjs.js +1 -1
  666. package/terminal/terminal.cjs.min.js +1 -1
  667. package/terminal/terminal.esm.js +1 -1
  668. package/terminal/terminal.esm.min.js +1 -1
  669. package/terminal/terminal.js +1 -1
  670. package/terminal/terminal.min.js +1 -1
  671. package/tieredmenu/BaseTieredMenu.vue +1 -1
  672. package/tieredmenu/TieredMenu.d.ts +4 -0
  673. package/tieredmenu/TieredMenu.vue +1 -0
  674. package/tieredmenu/TieredMenuSub.vue +5 -1
  675. package/tieredmenu/tieredmenu.cjs.js +11 -4
  676. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  677. package/tieredmenu/tieredmenu.esm.js +11 -4
  678. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  679. package/tieredmenu/tieredmenu.js +11 -4
  680. package/tieredmenu/tieredmenu.min.js +1 -1
  681. package/tooltip/style/tooltipstyle.cjs.js +1 -1
  682. package/tooltip/style/tooltipstyle.cjs.min.js +1 -1
  683. package/tooltip/style/tooltipstyle.esm.js +1 -1
  684. package/tooltip/style/tooltipstyle.esm.min.js +1 -1
  685. package/tooltip/style/tooltipstyle.js +1 -1
  686. package/tooltip/style/tooltipstyle.min.js +1 -1
  687. package/tree/BaseTree.vue +1 -1
  688. package/tree/Tree.d.ts +1 -1
  689. package/tree/Tree.vue +1 -1
  690. package/tree/TreeNode.vue +1 -0
  691. package/tree/tree.cjs.js +3 -2
  692. package/tree/tree.cjs.min.js +1 -1
  693. package/tree/tree.esm.js +3 -2
  694. package/tree/tree.esm.min.js +1 -1
  695. package/tree/tree.js +3 -2
  696. package/tree/tree.min.js +1 -1
  697. package/treeselect/BaseTreeSelect.vue +2 -2
  698. package/treeselect/TreeSelect.d.ts +1 -1
  699. package/treeselect/TreeSelect.vue +1 -4
  700. package/treeselect/treeselect.cjs.js +3 -6
  701. package/treeselect/treeselect.cjs.min.js +1 -1
  702. package/treeselect/treeselect.esm.js +3 -6
  703. package/treeselect/treeselect.esm.min.js +1 -1
  704. package/treeselect/treeselect.js +3 -6
  705. package/treeselect/treeselect.min.js +1 -1
  706. package/treetable/BaseTreeTable.vue +5 -1
  707. package/treetable/HeaderCell.vue +1 -1
  708. package/treetable/TreeTable.d.ts +6 -1
  709. package/treetable/TreeTable.vue +32 -24
  710. package/treetable/TreeTableRow.vue +32 -20
  711. package/treetable/style/treetablestyle.cjs.js +1 -1
  712. package/treetable/style/treetablestyle.cjs.min.js +1 -1
  713. package/treetable/style/treetablestyle.esm.js +1 -1
  714. package/treetable/style/treetablestyle.esm.min.js +1 -1
  715. package/treetable/style/treetablestyle.js +1 -1
  716. package/treetable/style/treetablestyle.min.js +1 -1
  717. package/treetable/treetable.cjs.js +70 -43
  718. package/treetable/treetable.cjs.min.js +1 -1
  719. package/treetable/treetable.esm.js +71 -44
  720. package/treetable/treetable.esm.min.js +1 -1
  721. package/treetable/treetable.js +70 -43
  722. package/treetable/treetable.min.js +1 -1
  723. package/tristatecheckbox/TriStateCheckbox.vue +1 -1
  724. package/tristatecheckbox/tristatecheckbox.cjs.js +1 -1
  725. package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
  726. package/tristatecheckbox/tristatecheckbox.esm.js +1 -1
  727. package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
  728. package/tristatecheckbox/tristatecheckbox.js +1 -1
  729. package/tristatecheckbox/tristatecheckbox.min.js +1 -1
  730. package/utils/Utils.d.ts +9 -0
  731. package/utils/utils.cjs.js +142 -41
  732. package/utils/utils.cjs.min.js +1 -1
  733. package/utils/utils.esm.js +142 -42
  734. package/utils/utils.esm.min.js +1 -1
  735. package/utils/utils.js +142 -41
  736. package/utils/utils.min.js +1 -1
  737. package/vetur-attributes.json +4 -0
  738. package/vetur-tags.json +1 -0
  739. package/virtualscroller/VirtualScroller.vue +19 -15
  740. package/virtualscroller/style/virtualscrollerstyle.cjs.js +1 -1
  741. package/virtualscroller/style/virtualscrollerstyle.cjs.min.js +1 -1
  742. package/virtualscroller/style/virtualscrollerstyle.esm.js +1 -1
  743. package/virtualscroller/style/virtualscrollerstyle.esm.min.js +1 -1
  744. package/virtualscroller/style/virtualscrollerstyle.js +1 -1
  745. package/virtualscroller/style/virtualscrollerstyle.min.js +1 -1
  746. package/virtualscroller/virtualscroller.cjs.js +19 -15
  747. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  748. package/virtualscroller/virtualscroller.esm.js +19 -15
  749. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  750. package/virtualscroller/virtualscroller.js +19 -15
  751. package/virtualscroller/virtualscroller.min.js +1 -1
  752. package/web-types.json +11 -1
@@ -124,7 +124,7 @@ export default {
124
124
  },
125
125
  metaKeySelection: {
126
126
  type: Boolean,
127
- default: true
127
+ default: false
128
128
  },
129
129
  contextMenu: {
130
130
  type: Boolean,
@@ -167,7 +167,7 @@ export default {
167
167
  default: false
168
168
  },
169
169
  expandedRows: {
170
- type: Array,
170
+ type: [Array, Object],
171
171
  default: null
172
172
  },
173
173
  expandedRowIcon: {
@@ -0,0 +1,582 @@
1
+ <template>
2
+ <template v-if="!empty">
3
+ <tr v-if="templates['groupheader'] && rowGroupMode === 'subheader' && shouldRenderRowGroupHeader" :class="cx('rowGroupHeader')" :style="rowGroupHeaderStyle" role="row" v-bind="ptm('rowGroupHeader')">
4
+ <td :colspan="columnsLength - 1" v-bind="{ ...getColumnPT('bodycell'), ...ptm('rowGroupHeaderCell') }">
5
+ <button v-if="expandableRowGroups" :class="cx('rowGroupToggler')" @click="onRowGroupToggle" type="button" v-bind="ptm('rowGroupToggler')">
6
+ <component v-if="templates['rowgrouptogglericon']" :is="templates['rowgrouptogglericon']" :expanded="isRowGroupExpanded" />
7
+ <template v-else>
8
+ <span v-if="isRowGroupExpanded && expandedRowIcon" :class="[cx('rowGroupTogglerIcon'), expandedRowIcon]" v-bind="ptm('rowGroupTogglerIcon')" />
9
+ <ChevronDownIcon v-else-if="isRowGroupExpanded && !expandedRowIcon" :class="cx('rowGroupTogglerIcon')" v-bind="ptm('rowGroupTogglerIcon')" />
10
+ <span v-else-if="!isRowGroupExpanded && collapsedRowIcon" :class="[cx('rowGroupTogglerIcon'), collapsedRowIcon]" v-bind="ptm('rowGroupTogglerIcon')" />
11
+ <ChevronRightIcon v-else-if="!isRowGroupExpanded && !collapsedRowIcon" :class="cx('rowGroupTogglerIcon')" v-bind="ptm('rowGroupTogglerIcon')" />
12
+ </template>
13
+ </button>
14
+ <component :is="templates['groupheader']" :data="rowData" :index="rowIndex" />
15
+ </td>
16
+ </tr>
17
+ <tr
18
+ v-if="expandableRowGroups ? isRowGroupExpanded : true"
19
+ :class="rowClasses"
20
+ :style="rowStyles"
21
+ :tabindex="rowTabindex"
22
+ role="row"
23
+ :aria-selected="selectionMode ? isSelected : null"
24
+ @click="onRowClick"
25
+ @dblclick="onRowDblClick"
26
+ @contextmenu="onRowRightClick"
27
+ @touchend="onRowTouchEnd"
28
+ @keydown.self="onRowKeyDown"
29
+ @mousedown="onRowMouseDown"
30
+ @dragstart="onRowDragStart"
31
+ @dragover="onRowDragOver"
32
+ @dragleave="onRowDragLeave"
33
+ @dragend="onRowDragEnd"
34
+ @drop="onRowDrop"
35
+ v-bind="getBodyRowPTOptions('bodyRow')"
36
+ :data-p-index="rowIndex"
37
+ :data-p-selectable-row="selectionMode ? true : false"
38
+ :data-p-highlight="selection && isSelected"
39
+ :data-p-highlight-contextmenu="contextMenuSelection && isSelectedWithContextMenu"
40
+ >
41
+ <template v-for="(col, i) of columns">
42
+ <DTBodyCell
43
+ v-if="shouldRenderBodyCell(col)"
44
+ :key="columnProp(col, 'columnKey') || columnProp(col, 'field') || i"
45
+ :rowData="rowData"
46
+ :column="col"
47
+ :rowIndex="rowIndex"
48
+ :index="i"
49
+ :selected="isSelected"
50
+ :frozenRow="frozenRow"
51
+ :rowspan="rowGroupMode === 'rowspan' ? calculateRowGroupSize(col) : null"
52
+ :editMode="editMode"
53
+ :editing="editMode === 'row' && isRowEditing"
54
+ :editingMeta="editingMeta"
55
+ :responsiveLayout="responsiveLayout"
56
+ :virtualScrollerContentProps="virtualScrollerContentProps"
57
+ :ariaControls="expandedRowId + '_' + rowIndex + '_expansion'"
58
+ :name="nameAttributeSelector"
59
+ :isRowExpanded="d_rowExpanded"
60
+ :expandedRowIcon="expandedRowIcon"
61
+ :collapsedRowIcon="collapsedRowIcon"
62
+ @radio-change="onRadioChange"
63
+ @checkbox-change="onCheckboxChange"
64
+ @row-toggle="onRowToggle"
65
+ @cell-edit-init="onCellEditInit"
66
+ @cell-edit-complete="onCellEditComplete"
67
+ @cell-edit-cancel="onCellEditCancel"
68
+ @row-edit-init="onRowEditInit"
69
+ @row-edit-save="onRowEditSave"
70
+ @row-edit-cancel="onRowEditCancel"
71
+ @editing-meta-change="onEditingMetaChange"
72
+ :unstyled="unstyled"
73
+ :pt="pt"
74
+ />
75
+ </template>
76
+ </tr>
77
+ <tr v-if="templates['expansion'] && expandedRows && d_rowExpanded" :id="expandedRowId + '_' + rowIndex + '_expansion'" :class="cx('rowExpansion')" role="row" v-bind="ptm('rowExpansion')">
78
+ <td :colspan="columnsLength" v-bind="{ ...getColumnPT('bodycell'), ...ptm('rowExpansionCell') }">
79
+ <component :is="templates['expansion']" :data="rowData" :index="rowIndex" />
80
+ </td>
81
+ </tr>
82
+ <tr v-if="templates['groupfooter'] && rowGroupMode === 'subheader' && shouldRenderRowGroupFooter" :class="cx('rowGroupFooter')" role="row" v-bind="ptm('rowGroupFooter')">
83
+ <td :colspan="columnsLength - 1" v-bind="{ ...getColumnPT('bodycell'), ...ptm('rowGroupFooterCell') }">
84
+ <component :is="templates['groupfooter']" :data="rowData" :index="rowIndex" />
85
+ </td>
86
+ </tr>
87
+ </template>
88
+ <tr v-else :class="cx('emptyMessage')" role="row" v-bind="ptm('emptyMessage')">
89
+ <td :colspan="columnsLength" v-bind="{ ...getColumnPT('bodycell'), ...ptm('emptyMessageCell') }">
90
+ <component v-if="templates.empty" :is="templates.empty" />
91
+ </td>
92
+ </tr>
93
+ </template>
94
+
95
+ <script>
96
+ import BaseComponent from 'primevue/basecomponent';
97
+ import ChevronDownIcon from 'primevue/icons/chevrondown';
98
+ import ChevronRightIcon from 'primevue/icons/chevronright';
99
+ import { ObjectUtils } from 'primevue/utils';
100
+ import { mergeProps } from 'vue';
101
+ import BodyCell from './BodyCell.vue';
102
+
103
+ export default {
104
+ name: 'BodyRow',
105
+ hostName: 'DataTable',
106
+ extends: BaseComponent,
107
+ emits: [
108
+ 'rowgroup-toggle',
109
+ 'row-click',
110
+ 'row-dblclick',
111
+ 'row-rightclick',
112
+ 'row-touchend',
113
+ 'row-keydown',
114
+ 'row-mousedown',
115
+ 'row-dragstart',
116
+ 'row-dragover',
117
+ 'row-dragleave',
118
+ 'row-dragend',
119
+ 'row-drop',
120
+ 'row-toggle',
121
+ 'radio-change',
122
+ 'checkbox-change',
123
+ 'cell-edit-init',
124
+ 'cell-edit-complete',
125
+ 'cell-edit-cancel',
126
+ 'row-edit-init',
127
+ 'row-edit-save',
128
+ 'row-edit-cancel',
129
+ 'editing-meta-change'
130
+ ],
131
+ props: {
132
+ rowData: {
133
+ type: Object,
134
+ default: null
135
+ },
136
+ index: {
137
+ type: Number,
138
+ default: 0
139
+ },
140
+ value: {
141
+ type: Array,
142
+ default: null
143
+ },
144
+ columns: {
145
+ type: null,
146
+ default: null
147
+ },
148
+ frozenRow: {
149
+ type: Boolean,
150
+ default: false
151
+ },
152
+ empty: {
153
+ type: Boolean,
154
+ default: false
155
+ },
156
+ rowGroupMode: {
157
+ type: String,
158
+ default: null
159
+ },
160
+ groupRowsBy: {
161
+ type: [Array, String, Function],
162
+ default: null
163
+ },
164
+ expandableRowGroups: {
165
+ type: Boolean,
166
+ default: false
167
+ },
168
+ expandedRowGroups: {
169
+ type: Array,
170
+ default: null
171
+ },
172
+ first: {
173
+ type: Number,
174
+ default: 0
175
+ },
176
+ dataKey: {
177
+ type: [String, Function],
178
+ default: null
179
+ },
180
+ expandedRowIcon: {
181
+ type: String,
182
+ default: null
183
+ },
184
+ collapsedRowIcon: {
185
+ type: String,
186
+ default: null
187
+ },
188
+ expandedRows: {
189
+ type: [Array, Object],
190
+ default: null
191
+ },
192
+ selection: {
193
+ type: [Array, Object],
194
+ default: null
195
+ },
196
+ selectionKeys: {
197
+ type: null,
198
+ default: null
199
+ },
200
+ selectionMode: {
201
+ type: String,
202
+ default: null
203
+ },
204
+ contextMenu: {
205
+ type: Boolean,
206
+ default: false
207
+ },
208
+ contextMenuSelection: {
209
+ type: Object,
210
+ default: null
211
+ },
212
+ rowClass: {
213
+ type: null,
214
+ default: null
215
+ },
216
+ rowStyle: {
217
+ type: null,
218
+ default: null
219
+ },
220
+ rowGroupHeaderStyle: {
221
+ type: null,
222
+ default: null
223
+ },
224
+ editMode: {
225
+ type: String,
226
+ default: null
227
+ },
228
+ compareSelectionBy: {
229
+ type: String,
230
+ default: 'deepEquals'
231
+ },
232
+ editingRows: {
233
+ type: Array,
234
+ default: null
235
+ },
236
+ editingRowKeys: {
237
+ type: null,
238
+ default: null
239
+ },
240
+ editingMeta: {
241
+ type: Object,
242
+ default: null
243
+ },
244
+ templates: {
245
+ type: null,
246
+ default: null
247
+ },
248
+ scrollable: {
249
+ type: Boolean,
250
+ default: false
251
+ },
252
+ responsiveLayout: {
253
+ type: String,
254
+ default: 'stack'
255
+ },
256
+ virtualScrollerContentProps: {
257
+ type: Object,
258
+ default: null
259
+ },
260
+ isVirtualScrollerDisabled: {
261
+ type: Boolean,
262
+ default: false
263
+ },
264
+ expandedRowId: {
265
+ type: String,
266
+ default: null
267
+ },
268
+ nameAttributeSelector: {
269
+ type: String,
270
+ default: null
271
+ }
272
+ },
273
+ data() {
274
+ return {
275
+ d_rowExpanded: false
276
+ };
277
+ },
278
+ watch: {
279
+ expandedRows(newValue) {
280
+ this.d_rowExpanded = this.dataKey ? newValue?.[ObjectUtils.resolveFieldData(this.rowData, this.dataKey)] !== undefined : newValue?.some((d) => this.equals(this.rowData, d));
281
+ }
282
+ },
283
+ methods: {
284
+ columnProp(col, prop) {
285
+ return ObjectUtils.getVNodeProp(col, prop);
286
+ },
287
+ //@todo - update this method
288
+ getColumnPT(key) {
289
+ const columnMetaData = {
290
+ parent: {
291
+ instance: this,
292
+ props: this.$props,
293
+ state: this.$data
294
+ }
295
+ };
296
+
297
+ return mergeProps(this.ptm(`column.${key}`, { column: columnMetaData }), this.ptm(`column.${key}`, columnMetaData), this.ptmo(this.columnProp({}, 'pt'), key, columnMetaData));
298
+ },
299
+ //@todo - update this method
300
+ getBodyRowPTOptions(key) {
301
+ const datatable = this.$parentInstance?.$parentInstance;
302
+
303
+ return this.ptm(key, {
304
+ context: {
305
+ index: this.rowIndex,
306
+ selectable: datatable?.rowHover || datatable?.selectionMode,
307
+ selected: this.isSelected,
308
+ stripedRows: datatable?.stripedRows || false
309
+ }
310
+ });
311
+ },
312
+ shouldRenderBodyCell(column) {
313
+ const isHidden = this.columnProp(column, 'hidden');
314
+
315
+ if (this.rowGroupMode && !isHidden) {
316
+ const field = this.columnProp(column, 'field');
317
+
318
+ if (this.rowGroupMode === 'subheader') {
319
+ return this.groupRowsBy !== field;
320
+ } else if (this.rowGroupMode === 'rowspan') {
321
+ if (this.isGrouped(column)) {
322
+ let prevRowData = this.value[this.rowIndex - 1];
323
+
324
+ if (prevRowData) {
325
+ const currentRowFieldData = ObjectUtils.resolveFieldData(this.value[this.rowIndex], field);
326
+ const previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, field);
327
+
328
+ return currentRowFieldData !== previousRowFieldData;
329
+ } else {
330
+ return true;
331
+ }
332
+ } else {
333
+ return true;
334
+ }
335
+ }
336
+ } else {
337
+ return !isHidden;
338
+ }
339
+ },
340
+ calculateRowGroupSize(column) {
341
+ if (this.isGrouped(column)) {
342
+ let index = this.rowIndex;
343
+ const field = this.columnProp(column, 'field');
344
+ const currentRowFieldData = ObjectUtils.resolveFieldData(this.value[index], field);
345
+ let nextRowFieldData = currentRowFieldData;
346
+ let groupRowSpan = 0;
347
+
348
+ while (currentRowFieldData === nextRowFieldData) {
349
+ groupRowSpan++;
350
+ let nextRowData = this.value[++index];
351
+
352
+ if (nextRowData) {
353
+ nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, field);
354
+ } else {
355
+ break;
356
+ }
357
+ }
358
+
359
+ return groupRowSpan === 1 ? null : groupRowSpan;
360
+ } else {
361
+ return null;
362
+ }
363
+ },
364
+ isGrouped(column) {
365
+ const field = this.columnProp(column, 'field');
366
+
367
+ if (this.groupRowsBy && field) {
368
+ if (Array.isArray(this.groupRowsBy)) return this.groupRowsBy.indexOf(field) > -1;
369
+ else return this.groupRowsBy === field;
370
+ } else {
371
+ return false;
372
+ }
373
+ },
374
+ findIndexInSelection(data) {
375
+ return this.findIndex(data, this.selection);
376
+ },
377
+ findIndex(data, collection) {
378
+ let index = -1;
379
+
380
+ if (collection && collection.length) {
381
+ for (let i = 0; i < collection.length; i++) {
382
+ if (this.equals(data, collection[i])) {
383
+ index = i;
384
+ break;
385
+ }
386
+ }
387
+ }
388
+
389
+ return index;
390
+ },
391
+ equals(data1, data2) {
392
+ return this.compareSelectionBy === 'equals' ? data1 === data2 : ObjectUtils.equals(data1, data2, this.dataKey);
393
+ },
394
+ onRowGroupToggle(event) {
395
+ this.$emit('rowgroup-toggle', { originalEvent: event, data: this.rowData });
396
+ },
397
+ onRowClick(event) {
398
+ this.$emit('row-click', { originalEvent: event, data: this.rowData, index: this.rowIndex });
399
+ },
400
+ onRowDblClick(event) {
401
+ this.$emit('row-dblclick', { originalEvent: event, data: this.rowData, index: this.rowIndex });
402
+ },
403
+ onRowRightClick(event) {
404
+ this.$emit('row-rightclick', { originalEvent: event, data: this.rowData, index: this.rowIndex });
405
+ },
406
+ onRowTouchEnd(event) {
407
+ this.$emit('row-touchend', event);
408
+ },
409
+ onRowKeyDown(event) {
410
+ this.$emit('row-keydown', { originalEvent: event, data: this.rowData, index: this.rowIndex });
411
+ },
412
+ onRowMouseDown(event) {
413
+ this.$emit('row-mousedown', event);
414
+ },
415
+ onRowDragStart(event) {
416
+ this.$emit('row-dragstart', { originalEvent: event, index: this.rowIndex });
417
+ },
418
+ onRowDragOver(event) {
419
+ this.$emit('row-dragover', { originalEvent: event, index: this.rowIndex });
420
+ },
421
+ onRowDragLeave(event) {
422
+ this.$emit('row-dragleave', event);
423
+ },
424
+ onRowDragEnd(event) {
425
+ this.$emit('row-dragend', event);
426
+ },
427
+ onRowDrop(event) {
428
+ this.$emit('row-drop', event);
429
+ },
430
+ onRowToggle(event) {
431
+ this.d_rowExpanded = !this.d_rowExpanded;
432
+
433
+ this.$emit('row-toggle', { ...event, expanded: this.d_rowExpanded });
434
+ },
435
+ onRadioChange(event) {
436
+ this.$emit('radio-change', event);
437
+ },
438
+ onCheckboxChange(event) {
439
+ this.$emit('checkbox-change', event);
440
+ },
441
+ onCellEditInit(event) {
442
+ this.$emit('cell-edit-init', event);
443
+ },
444
+ onCellEditComplete(event) {
445
+ this.$emit('cell-edit-complete', event);
446
+ },
447
+ onCellEditCancel(event) {
448
+ this.$emit('cell-edit-cancel', event);
449
+ },
450
+ onRowEditInit(event) {
451
+ this.$emit('row-edit-init', event);
452
+ },
453
+ onRowEditSave(event) {
454
+ this.$emit('row-edit-save', event);
455
+ },
456
+ onRowEditCancel(event) {
457
+ this.$emit('row-edit-cancel', event);
458
+ },
459
+ onEditingMetaChange(event) {
460
+ this.$emit('editing-meta-change', event);
461
+ },
462
+ getVirtualScrollerProp(option, options) {
463
+ options = options || this.virtualScrollerContentProps;
464
+
465
+ return options ? options[option] : null;
466
+ }
467
+ },
468
+ computed: {
469
+ rowIndex() {
470
+ const getItemOptions = this.getVirtualScrollerProp('getItemOptions');
471
+
472
+ return getItemOptions ? getItemOptions(this.index).index : this.index;
473
+ },
474
+ rowStyles() {
475
+ return this.rowStyle?.(this.rowData);
476
+ },
477
+ rowClasses() {
478
+ let rowStyleClass = [];
479
+
480
+ if (this.rowClass) {
481
+ let rowClassValue = this.rowClass(this.rowData);
482
+
483
+ if (rowClassValue) {
484
+ rowStyleClass.push(rowClassValue);
485
+ }
486
+ }
487
+
488
+ return [this.cx('row', { rowData: this.rowData, index: this.rowIndex }), rowStyleClass];
489
+ },
490
+ rowTabindex() {
491
+ if (this.selection === null && (this.selectionMode === 'single' || this.selectionMode === 'multiple')) {
492
+ return this.rowIndex === 0 ? 0 : -1;
493
+ }
494
+
495
+ return -1;
496
+ },
497
+ isRowEditing() {
498
+ if (this.rowData && this.editingRows) {
499
+ if (this.dataKey) return this.editingRowKeys ? this.editingRowKeys[ObjectUtils.resolveFieldData(this.rowData, this.dataKey)] !== undefined : false;
500
+ else return this.findIndex(this.rowData, this.editingRows) > -1;
501
+ }
502
+
503
+ return false;
504
+ },
505
+ isRowGroupExpanded() {
506
+ if (this.expandableRowGroups && this.expandedRowGroups) {
507
+ const groupFieldValue = ObjectUtils.resolveFieldData(this.rowData, this.groupRowsBy);
508
+
509
+ return this.expandedRowGroups.indexOf(groupFieldValue) > -1;
510
+ }
511
+
512
+ return false;
513
+ },
514
+ isSelected() {
515
+ if (this.rowData && this.selection) {
516
+ if (this.dataKey) {
517
+ return this.selectionKeys ? this.selectionKeys[ObjectUtils.resolveFieldData(this.rowData, this.dataKey)] !== undefined : false;
518
+ } else {
519
+ if (this.selection instanceof Array) return this.findIndexInSelection(this.rowData) > -1;
520
+ else return this.equals(this.rowData, this.selection);
521
+ }
522
+ }
523
+
524
+ return false;
525
+ },
526
+ isSelectedWithContextMenu() {
527
+ if (this.rowData && this.contextMenuSelection) {
528
+ return this.equals(this.rowData, this.contextMenuSelection, this.dataKey);
529
+ }
530
+
531
+ return false;
532
+ },
533
+ shouldRenderRowGroupHeader() {
534
+ const currentRowFieldData = ObjectUtils.resolveFieldData(this.rowData, this.groupRowsBy);
535
+ const prevRowData = this.value[this.rowIndex - 1];
536
+
537
+ if (prevRowData) {
538
+ const previousRowFieldData = ObjectUtils.resolveFieldData(prevRowData, this.groupRowsBy);
539
+
540
+ return currentRowFieldData !== previousRowFieldData;
541
+ } else {
542
+ return true;
543
+ }
544
+ },
545
+ shouldRenderRowGroupFooter() {
546
+ if (this.expandableRowGroups && !this.isRowGroupExpanded) {
547
+ return false;
548
+ } else {
549
+ let currentRowFieldData = ObjectUtils.resolveFieldData(this.rowData, this.groupRowsBy);
550
+ let nextRowData = this.value[this.rowIndex + 1];
551
+
552
+ if (nextRowData) {
553
+ let nextRowFieldData = ObjectUtils.resolveFieldData(nextRowData, this.groupRowsBy);
554
+
555
+ return currentRowFieldData !== nextRowFieldData;
556
+ } else {
557
+ return true;
558
+ }
559
+ }
560
+ },
561
+ columnsLength() {
562
+ if (this.columns) {
563
+ let hiddenColLength = 0;
564
+
565
+ this.columns.forEach((column) => {
566
+ if (this.columnProp(column, 'selectionMode') === 'single') hiddenColLength--;
567
+ if (this.columnProp(column, 'hidden')) hiddenColLength++;
568
+ });
569
+
570
+ return this.columns.length - hiddenColLength;
571
+ }
572
+
573
+ return 0;
574
+ }
575
+ },
576
+ components: {
577
+ DTBodyCell: BodyCell,
578
+ ChevronDownIcon: ChevronDownIcon,
579
+ ChevronRightIcon: ChevronRightIcon
580
+ }
581
+ };
582
+ </script>
@@ -402,6 +402,7 @@ export default {
402
402
  onToggleButtonKeyDown(event) {
403
403
  switch (event.code) {
404
404
  case 'Enter':
405
+ case 'NumpadEnter':
405
406
  case 'Space':
406
407
  this.toggleMenu(event);
407
408
 
@@ -966,7 +966,7 @@ export interface DataTableProps {
966
966
  /**
967
967
  * Defines whether metaKey is requred or not for the selection. When true metaKey needs to be pressed to select or unselect an item and
968
968
  * when set to false selection of each item can be toggled individually. On touch enabled devices, metaKeySelection is turned off automatically.
969
- * @defaultValue true
969
+ * @defaultValue false
970
970
  */
971
971
  metaKeySelection?: boolean | undefined;
972
972
  /**