primevue 3.7.2 → 3.9.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 (504) hide show
  1. package/README.md +2 -2
  2. package/accordion/Accordion.vue +1 -1
  3. package/accordion/accordion.cjs.js +1 -1
  4. package/accordion/accordion.cjs.min.js +1 -1
  5. package/accordion/accordion.esm.js +1 -1
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +1 -1
  8. package/accordion/accordion.min.js +1 -1
  9. package/api/Api.d.ts +73 -32
  10. package/api/api.cjs.js +66 -32
  11. package/api/api.cjs.min.js +1 -1
  12. package/api/api.esm.js +66 -32
  13. package/api/api.esm.min.js +1 -1
  14. package/api/api.js +66 -32
  15. package/api/api.min.js +1 -1
  16. package/autocomplete/AutoComplete.d.ts +43 -9
  17. package/autocomplete/AutoComplete.vue +16 -9
  18. package/autocomplete/autocomplete.cjs.js +19 -11
  19. package/autocomplete/autocomplete.cjs.min.js +1 -1
  20. package/autocomplete/autocomplete.esm.js +19 -11
  21. package/autocomplete/autocomplete.esm.min.js +1 -1
  22. package/autocomplete/autocomplete.js +19 -11
  23. package/autocomplete/autocomplete.min.js +1 -1
  24. package/blockui/BlockUI.vue +1 -1
  25. package/blockui/blockui.cjs.js +5 -7
  26. package/blockui/blockui.cjs.min.js +1 -1
  27. package/blockui/blockui.esm.js +6 -8
  28. package/blockui/blockui.esm.min.js +1 -1
  29. package/blockui/blockui.js +5 -7
  30. package/blockui/blockui.min.js +1 -1
  31. package/breadcrumb/Breadcrumb.d.ts +7 -0
  32. package/breadcrumb/Breadcrumb.vue +4 -0
  33. package/breadcrumb/BreadcrumbItem.vue +5 -2
  34. package/breadcrumb/breadcrumb.cjs.js +6 -3
  35. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  36. package/breadcrumb/breadcrumb.esm.js +6 -3
  37. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  38. package/breadcrumb/breadcrumb.js +6 -3
  39. package/breadcrumb/breadcrumb.min.js +1 -1
  40. package/calendar/Calendar.d.ts +11 -1
  41. package/calendar/Calendar.vue +362 -67
  42. package/calendar/calendar.cjs.js +459 -168
  43. package/calendar/calendar.cjs.min.js +1 -1
  44. package/calendar/calendar.esm.js +461 -170
  45. package/calendar/calendar.esm.min.js +1 -1
  46. package/calendar/calendar.js +459 -168
  47. package/calendar/calendar.min.js +1 -1
  48. package/carousel/Carousel.d.ts +6 -1
  49. package/carousel/Carousel.vue +2 -2
  50. package/carousel/carousel.cjs.js +6 -6
  51. package/carousel/carousel.cjs.min.js +1 -1
  52. package/carousel/carousel.esm.js +6 -6
  53. package/carousel/carousel.esm.min.js +1 -1
  54. package/carousel/carousel.js +6 -6
  55. package/carousel/carousel.min.js +1 -1
  56. package/cascadeselect/CascadeSelect.d.ts +19 -6
  57. package/chart/Chart.vue +9 -2
  58. package/chart/chart.cjs.js +9 -2
  59. package/chart/chart.cjs.min.js +1 -1
  60. package/chart/chart.esm.js +9 -2
  61. package/chart/chart.esm.min.js +1 -1
  62. package/chart/chart.js +9 -2
  63. package/chart/chart.min.js +1 -1
  64. package/chips/Chips.d.ts +5 -1
  65. package/colorpicker/ColorPicker.d.ts +3 -0
  66. package/colorpicker/ColorPicker.vue +6 -1
  67. package/colorpicker/colorpicker.cjs.js +6 -1
  68. package/colorpicker/colorpicker.cjs.min.js +1 -1
  69. package/colorpicker/colorpicker.esm.js +6 -1
  70. package/colorpicker/colorpicker.esm.min.js +1 -1
  71. package/colorpicker/colorpicker.js +6 -1
  72. package/colorpicker/colorpicker.min.js +1 -1
  73. package/column/Column.d.ts +42 -11
  74. package/confirmationservice/ConfirmationService.d.ts +3 -2
  75. package/confirmdialog/ConfirmDialog.vue +8 -2
  76. package/confirmdialog/confirmdialog.cjs.js +11 -4
  77. package/confirmdialog/confirmdialog.cjs.min.js +1 -1
  78. package/confirmdialog/confirmdialog.esm.js +11 -4
  79. package/confirmdialog/confirmdialog.esm.min.js +1 -1
  80. package/confirmdialog/confirmdialog.js +11 -4
  81. package/confirmdialog/confirmdialog.min.js +1 -1
  82. package/confirmpopup/ConfirmPopup.d.ts +7 -0
  83. package/confirmpopup/ConfirmPopup.vue +7 -4
  84. package/confirmpopup/confirmpopup.cjs.js +13 -5
  85. package/confirmpopup/confirmpopup.cjs.min.js +1 -1
  86. package/confirmpopup/confirmpopup.esm.js +14 -6
  87. package/confirmpopup/confirmpopup.esm.min.js +1 -1
  88. package/confirmpopup/confirmpopup.js +13 -5
  89. package/confirmpopup/confirmpopup.min.js +1 -1
  90. package/contextmenu/ContextMenu.d.ts +5 -1
  91. package/contextmenu/ContextMenuSub.vue +8 -5
  92. package/contextmenu/contextmenu.cjs.js +8 -5
  93. package/contextmenu/contextmenu.cjs.min.js +1 -1
  94. package/contextmenu/contextmenu.esm.js +8 -5
  95. package/contextmenu/contextmenu.esm.min.js +1 -1
  96. package/contextmenu/contextmenu.js +8 -5
  97. package/contextmenu/contextmenu.min.js +1 -1
  98. package/core/core.js +7644 -0
  99. package/core/core.min.js +47 -0
  100. package/datatable/BodyCell.vue +37 -17
  101. package/datatable/ColumnFilter.vue +17 -6
  102. package/datatable/DataTable.d.ts +37 -9
  103. package/datatable/DataTable.vue +90 -48
  104. package/datatable/FooterCell.vue +2 -2
  105. package/datatable/HeaderCell.vue +2 -2
  106. package/datatable/TableBody.vue +15 -6
  107. package/datatable/TableFooter.vue +17 -2
  108. package/datatable/TableHeader.vue +17 -2
  109. package/datatable/datatable.cjs.js +321 -197
  110. package/datatable/datatable.cjs.min.js +1 -1
  111. package/datatable/datatable.esm.js +321 -197
  112. package/datatable/datatable.esm.min.js +1 -1
  113. package/datatable/datatable.js +321 -197
  114. package/datatable/datatable.min.js +1 -1
  115. package/dataview/DataView.d.ts +9 -4
  116. package/dataview/DataView.vue +8 -8
  117. package/dataview/dataview.cjs.js +12 -12
  118. package/dataview/dataview.cjs.min.js +1 -1
  119. package/dataview/dataview.esm.js +12 -12
  120. package/dataview/dataview.esm.min.js +1 -1
  121. package/dataview/dataview.js +12 -12
  122. package/dataview/dataview.min.js +1 -1
  123. package/dialog/Dialog.vue +6 -1
  124. package/dialog/dialog.cjs.js +4 -2
  125. package/dialog/dialog.cjs.min.js +1 -1
  126. package/dialog/dialog.esm.js +4 -2
  127. package/dialog/dialog.esm.min.js +1 -1
  128. package/dialog/dialog.js +4 -2
  129. package/dialog/dialog.min.js +1 -1
  130. package/dock/Dock.d.ts +10 -1
  131. package/dock/Dock.vue +1 -1
  132. package/dock/DockSub.vue +13 -8
  133. package/dock/dock.cjs.js +24 -10
  134. package/dock/dock.cjs.min.js +1 -1
  135. package/dock/dock.esm.js +20 -10
  136. package/dock/dock.esm.min.js +1 -1
  137. package/dock/dock.js +25 -12
  138. package/dock/dock.min.js +1 -1
  139. package/dropdown/Dropdown.d.ts +56 -13
  140. package/dropdown/Dropdown.vue +1 -0
  141. package/dropdown/dropdown.cjs.js +1 -0
  142. package/dropdown/dropdown.cjs.min.js +1 -1
  143. package/dropdown/dropdown.esm.js +1 -0
  144. package/dropdown/dropdown.esm.min.js +1 -1
  145. package/dropdown/dropdown.js +1 -0
  146. package/dropdown/dropdown.min.js +1 -1
  147. package/fileupload/FileUpload.d.ts +5 -0
  148. package/galleria/Galleria.d.ts +20 -4
  149. package/inplace/Inplace.d.ts +1 -0
  150. package/inplace/Inplace.vue +12 -1
  151. package/inplace/inplace.cjs.js +13 -2
  152. package/inplace/inplace.cjs.min.js +1 -1
  153. package/inplace/inplace.esm.js +13 -2
  154. package/inplace/inplace.esm.min.js +1 -1
  155. package/inplace/inplace.js +13 -2
  156. package/inplace/inplace.min.js +1 -1
  157. package/inputnumber/InputNumber.d.ts +1 -1
  158. package/inputnumber/InputNumber.vue +19 -3
  159. package/inputnumber/inputnumber.cjs.js +19 -3
  160. package/inputnumber/inputnumber.cjs.min.js +1 -1
  161. package/inputnumber/inputnumber.esm.js +19 -3
  162. package/inputnumber/inputnumber.esm.min.js +1 -1
  163. package/inputnumber/inputnumber.js +19 -3
  164. package/inputnumber/inputnumber.min.js +1 -1
  165. package/inputswitch/InputSwitch.vue +6 -3
  166. package/inputswitch/inputswitch.cjs.js +6 -3
  167. package/inputswitch/inputswitch.cjs.min.js +1 -1
  168. package/inputswitch/inputswitch.esm.js +6 -3
  169. package/inputswitch/inputswitch.esm.min.js +1 -1
  170. package/inputswitch/inputswitch.js +6 -3
  171. package/inputswitch/inputswitch.min.js +1 -1
  172. package/inputtext/InputText.d.ts +1 -1
  173. package/inputtext/InputText.vue +1 -1
  174. package/inputtext/inputtext.cjs.js +2 -2
  175. package/inputtext/inputtext.cjs.min.js +1 -1
  176. package/inputtext/inputtext.esm.js +3 -3
  177. package/inputtext/inputtext.esm.min.js +1 -1
  178. package/inputtext/inputtext.js +2 -2
  179. package/inputtext/inputtext.min.js +1 -1
  180. package/listbox/Listbox.d.ts +48 -12
  181. package/megamenu/MegaMenu.d.ts +5 -1
  182. package/megamenu/MegaMenu.vue +11 -8
  183. package/megamenu/megamenu.cjs.js +11 -8
  184. package/megamenu/megamenu.cjs.min.js +1 -1
  185. package/megamenu/megamenu.esm.js +11 -8
  186. package/megamenu/megamenu.esm.min.js +1 -1
  187. package/megamenu/megamenu.js +11 -8
  188. package/megamenu/megamenu.min.js +1 -1
  189. package/menu/Menu.d.ts +5 -1
  190. package/menu/Menu.vue +6 -3
  191. package/menu/Menuitem.vue +5 -2
  192. package/menu/menu.cjs.js +11 -5
  193. package/menu/menu.cjs.min.js +1 -1
  194. package/menu/menu.esm.js +11 -5
  195. package/menu/menu.esm.min.js +1 -1
  196. package/menu/menu.js +11 -5
  197. package/menu/menu.min.js +1 -1
  198. package/menubar/Menubar.d.ts +5 -1
  199. package/menubar/MenubarSub.vue +8 -5
  200. package/menubar/menubar.cjs.js +8 -5
  201. package/menubar/menubar.cjs.min.js +1 -1
  202. package/menubar/menubar.esm.js +8 -5
  203. package/menubar/menubar.esm.min.js +1 -1
  204. package/menubar/menubar.js +8 -5
  205. package/menubar/menubar.min.js +1 -1
  206. package/message/Message.d.ts +1 -0
  207. package/message/Message.vue +6 -2
  208. package/message/message.cjs.js +6 -2
  209. package/message/message.cjs.min.js +1 -1
  210. package/message/message.esm.js +6 -2
  211. package/message/message.esm.min.js +1 -1
  212. package/message/message.js +6 -2
  213. package/message/message.min.js +1 -1
  214. package/multiselect/MultiSelect.d.ts +61 -14
  215. package/orderlist/OrderList.d.ts +8 -1
  216. package/orderlist/OrderList.vue +2 -0
  217. package/orderlist/orderlist.cjs.js +3 -1
  218. package/orderlist/orderlist.cjs.min.js +1 -1
  219. package/orderlist/orderlist.esm.js +3 -1
  220. package/orderlist/orderlist.esm.min.js +1 -1
  221. package/orderlist/orderlist.js +3 -1
  222. package/orderlist/orderlist.min.js +1 -1
  223. package/overlaypanel/OverlayPanel.vue +1 -0
  224. package/overlaypanel/overlaypanel.cjs.js +1 -0
  225. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  226. package/overlaypanel/overlaypanel.esm.js +1 -0
  227. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  228. package/overlaypanel/overlaypanel.js +1 -0
  229. package/overlaypanel/overlaypanel.min.js +1 -1
  230. package/package.json +5 -1
  231. package/paginator/CurrentPageReport.vue +5 -1
  232. package/paginator/JumpToPageInput.vue +1 -1
  233. package/paginator/Paginator.d.ts +10 -4
  234. package/paginator/Paginator.vue +10 -7
  235. package/paginator/paginator.cjs.js +16 -8
  236. package/paginator/paginator.cjs.min.js +1 -1
  237. package/paginator/paginator.esm.js +16 -8
  238. package/paginator/paginator.esm.min.js +1 -1
  239. package/paginator/paginator.js +16 -8
  240. package/paginator/paginator.min.js +1 -1
  241. package/panel/Panel.d.ts +1 -0
  242. package/panel/Panel.vue +1 -1
  243. package/panelmenu/PanelMenu.d.ts +5 -3
  244. package/panelmenu/PanelMenu.vue +6 -3
  245. package/panelmenu/PanelMenuSub.vue +8 -5
  246. package/panelmenu/panelmenu.cjs.js +14 -8
  247. package/panelmenu/panelmenu.cjs.min.js +1 -1
  248. package/panelmenu/panelmenu.esm.js +14 -8
  249. package/panelmenu/panelmenu.esm.min.js +1 -1
  250. package/panelmenu/panelmenu.js +14 -8
  251. package/panelmenu/panelmenu.min.js +1 -1
  252. package/picklist/PickList.d.ts +14 -3
  253. package/picklist/PickList.vue +10 -4
  254. package/picklist/picklist.cjs.js +13 -7
  255. package/picklist/picklist.cjs.min.js +1 -1
  256. package/picklist/picklist.esm.js +13 -7
  257. package/picklist/picklist.esm.min.js +1 -1
  258. package/picklist/picklist.js +13 -7
  259. package/picklist/picklist.min.js +1 -1
  260. package/progressbar/ProgressBar.vue +13 -12
  261. package/progressbar/progressbar.cjs.js +13 -12
  262. package/progressbar/progressbar.cjs.min.js +1 -1
  263. package/progressbar/progressbar.esm.js +14 -13
  264. package/progressbar/progressbar.esm.min.js +1 -1
  265. package/progressbar/progressbar.js +13 -12
  266. package/progressbar/progressbar.min.js +1 -1
  267. package/rating/Rating.vue +1 -1
  268. package/rating/rating.cjs.js +1 -1
  269. package/rating/rating.cjs.min.js +1 -1
  270. package/rating/rating.esm.js +1 -1
  271. package/rating/rating.esm.min.js +1 -1
  272. package/rating/rating.js +1 -1
  273. package/rating/rating.min.js +1 -1
  274. package/resources/primevue.css +5 -0
  275. package/resources/primevue.min.css +1 -1
  276. package/resources/themes/arya-blue/theme.css +57 -16
  277. package/resources/themes/arya-green/theme.css +57 -16
  278. package/resources/themes/arya-orange/theme.css +57 -16
  279. package/resources/themes/arya-purple/theme.css +57 -16
  280. package/resources/themes/bootstrap4-dark-blue/theme.css +54 -20
  281. package/resources/themes/bootstrap4-dark-purple/theme.css +54 -20
  282. package/resources/themes/bootstrap4-light-blue/theme.css +54 -20
  283. package/resources/themes/bootstrap4-light-purple/theme.css +54 -20
  284. package/resources/themes/fluent-light/theme.css +57 -16
  285. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff +0 -0
  286. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff2 +0 -0
  287. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff +0 -0
  288. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff2 +0 -0
  289. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff +0 -0
  290. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff2 +0 -0
  291. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff +0 -0
  292. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff2 +0 -0
  293. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff +0 -0
  294. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff2 +0 -0
  295. package/resources/themes/lara-dark-blue/theme.css +5414 -0
  296. package/resources/themes/lara-dark-indigo/fonts/Inter-Bold.woff +0 -0
  297. package/resources/themes/lara-dark-indigo/fonts/Inter-Bold.woff2 +0 -0
  298. package/resources/themes/lara-dark-indigo/fonts/Inter-Light.woff +0 -0
  299. package/resources/themes/lara-dark-indigo/fonts/Inter-Light.woff2 +0 -0
  300. package/resources/themes/lara-dark-indigo/fonts/Inter-Medium.woff +0 -0
  301. package/resources/themes/lara-dark-indigo/fonts/Inter-Medium.woff2 +0 -0
  302. package/resources/themes/lara-dark-indigo/fonts/Inter-Regular.woff +0 -0
  303. package/resources/themes/lara-dark-indigo/fonts/Inter-Regular.woff2 +0 -0
  304. package/resources/themes/lara-dark-indigo/fonts/Inter-SemiBold.woff +0 -0
  305. package/resources/themes/lara-dark-indigo/fonts/Inter-SemiBold.woff2 +0 -0
  306. package/resources/themes/lara-dark-indigo/theme.css +5414 -0
  307. package/resources/themes/lara-dark-purple/fonts/Inter-Bold.woff +0 -0
  308. package/resources/themes/lara-dark-purple/fonts/Inter-Bold.woff2 +0 -0
  309. package/resources/themes/lara-dark-purple/fonts/Inter-Light.woff +0 -0
  310. package/resources/themes/lara-dark-purple/fonts/Inter-Light.woff2 +0 -0
  311. package/resources/themes/lara-dark-purple/fonts/Inter-Medium.woff +0 -0
  312. package/resources/themes/lara-dark-purple/fonts/Inter-Medium.woff2 +0 -0
  313. package/resources/themes/lara-dark-purple/fonts/Inter-Regular.woff +0 -0
  314. package/resources/themes/lara-dark-purple/fonts/Inter-Regular.woff2 +0 -0
  315. package/resources/themes/lara-dark-purple/fonts/Inter-SemiBold.woff +0 -0
  316. package/resources/themes/lara-dark-purple/fonts/Inter-SemiBold.woff2 +0 -0
  317. package/resources/themes/lara-dark-purple/theme.css +5414 -0
  318. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff +0 -0
  319. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff2 +0 -0
  320. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff +0 -0
  321. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff2 +0 -0
  322. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff +0 -0
  323. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff2 +0 -0
  324. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff +0 -0
  325. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff2 +0 -0
  326. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff +0 -0
  327. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff2 +0 -0
  328. package/resources/themes/lara-dark-teal/theme.css +5414 -0
  329. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff +0 -0
  330. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff2 +0 -0
  331. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff +0 -0
  332. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff2 +0 -0
  333. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff +0 -0
  334. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff2 +0 -0
  335. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff +0 -0
  336. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff2 +0 -0
  337. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff +0 -0
  338. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff2 +0 -0
  339. package/resources/themes/lara-light-blue/theme.css +5414 -0
  340. package/resources/themes/lara-light-indigo/fonts/Inter-Bold.woff +0 -0
  341. package/resources/themes/lara-light-indigo/fonts/Inter-Bold.woff2 +0 -0
  342. package/resources/themes/lara-light-indigo/fonts/Inter-Light.woff +0 -0
  343. package/resources/themes/lara-light-indigo/fonts/Inter-Light.woff2 +0 -0
  344. package/resources/themes/lara-light-indigo/fonts/Inter-Medium.woff +0 -0
  345. package/resources/themes/lara-light-indigo/fonts/Inter-Medium.woff2 +0 -0
  346. package/resources/themes/lara-light-indigo/fonts/Inter-Regular.woff +0 -0
  347. package/resources/themes/lara-light-indigo/fonts/Inter-Regular.woff2 +0 -0
  348. package/resources/themes/lara-light-indigo/fonts/Inter-SemiBold.woff +0 -0
  349. package/resources/themes/lara-light-indigo/fonts/Inter-SemiBold.woff2 +0 -0
  350. package/resources/themes/lara-light-indigo/theme.css +5414 -0
  351. package/resources/themes/lara-light-purple/fonts/Inter-Bold.woff +0 -0
  352. package/resources/themes/lara-light-purple/fonts/Inter-Bold.woff2 +0 -0
  353. package/resources/themes/lara-light-purple/fonts/Inter-Light.woff +0 -0
  354. package/resources/themes/lara-light-purple/fonts/Inter-Light.woff2 +0 -0
  355. package/resources/themes/lara-light-purple/fonts/Inter-Medium.woff +0 -0
  356. package/resources/themes/lara-light-purple/fonts/Inter-Medium.woff2 +0 -0
  357. package/resources/themes/lara-light-purple/fonts/Inter-Regular.woff +0 -0
  358. package/resources/themes/lara-light-purple/fonts/Inter-Regular.woff2 +0 -0
  359. package/resources/themes/lara-light-purple/fonts/Inter-SemiBold.woff +0 -0
  360. package/resources/themes/lara-light-purple/fonts/Inter-SemiBold.woff2 +0 -0
  361. package/resources/themes/lara-light-purple/theme.css +5414 -0
  362. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff +0 -0
  363. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff2 +0 -0
  364. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff +0 -0
  365. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff2 +0 -0
  366. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff +0 -0
  367. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff2 +0 -0
  368. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff +0 -0
  369. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff2 +0 -0
  370. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff +0 -0
  371. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff2 +0 -0
  372. package/resources/themes/lara-light-teal/theme.css +5414 -0
  373. package/resources/themes/luna-amber/theme.css +54 -20
  374. package/resources/themes/luna-blue/theme.css +54 -20
  375. package/resources/themes/luna-green/theme.css +54 -20
  376. package/resources/themes/luna-pink/theme.css +54 -20
  377. package/resources/themes/md-dark-deeppurple/theme.css +245 -48
  378. package/resources/themes/md-dark-indigo/theme.css +245 -48
  379. package/resources/themes/md-light-deeppurple/theme.css +245 -48
  380. package/resources/themes/md-light-indigo/theme.css +245 -48
  381. package/resources/themes/mdc-dark-deeppurple/theme.css +245 -48
  382. package/resources/themes/mdc-dark-indigo/theme.css +245 -48
  383. package/resources/themes/mdc-light-deeppurple/theme.css +245 -48
  384. package/resources/themes/mdc-light-indigo/theme.css +245 -48
  385. package/resources/themes/nova/theme.css +54 -20
  386. package/resources/themes/nova-accent/theme.css +54 -20
  387. package/resources/themes/nova-alt/theme.css +54 -20
  388. package/resources/themes/nova-vue/theme.css +54 -20
  389. package/resources/themes/rhea/theme.css +54 -20
  390. package/resources/themes/saga-blue/theme.css +57 -16
  391. package/resources/themes/saga-green/theme.css +57 -16
  392. package/resources/themes/saga-orange/theme.css +57 -16
  393. package/resources/themes/saga-purple/theme.css +57 -16
  394. package/resources/themes/tailwind-light/theme.css +68 -19
  395. package/resources/themes/vela-blue/theme.css +57 -16
  396. package/resources/themes/vela-green/theme.css +57 -16
  397. package/resources/themes/vela-orange/theme.css +57 -16
  398. package/resources/themes/vela-purple/theme.css +57 -16
  399. package/selectbutton/SelectButton.d.ts +13 -5
  400. package/selectbutton/SelectButton.vue +8 -2
  401. package/selectbutton/selectbutton.cjs.js +14 -9
  402. package/selectbutton/selectbutton.cjs.min.js +1 -1
  403. package/selectbutton/selectbutton.esm.js +14 -9
  404. package/selectbutton/selectbutton.esm.min.js +1 -1
  405. package/selectbutton/selectbutton.js +14 -9
  406. package/selectbutton/selectbutton.min.js +1 -1
  407. package/speeddial/SpeedDial.d.ts +5 -1
  408. package/speeddial/SpeedDial.vue +2 -1
  409. package/speeddial/speeddial.cjs.js +2 -1
  410. package/speeddial/speeddial.cjs.min.js +1 -1
  411. package/speeddial/speeddial.esm.js +2 -1
  412. package/speeddial/speeddial.esm.min.js +1 -1
  413. package/speeddial/speeddial.js +2 -1
  414. package/speeddial/speeddial.min.js +1 -1
  415. package/splitter/Splitter.vue +5 -3
  416. package/splitter/splitter.cjs.js +4 -2
  417. package/splitter/splitter.cjs.min.js +1 -1
  418. package/splitter/splitter.esm.js +5 -3
  419. package/splitter/splitter.esm.min.js +1 -1
  420. package/splitter/splitter.js +4 -2
  421. package/splitter/splitter.min.js +1 -1
  422. package/steps/Steps.d.ts +5 -3
  423. package/steps/Steps.vue +5 -2
  424. package/steps/steps.cjs.js +5 -2
  425. package/steps/steps.cjs.min.js +1 -1
  426. package/steps/steps.esm.js +5 -2
  427. package/steps/steps.esm.min.js +1 -1
  428. package/steps/steps.js +5 -2
  429. package/steps/steps.min.js +1 -1
  430. package/tabmenu/TabMenu.d.ts +5 -3
  431. package/tabmenu/TabMenu.vue +10 -3
  432. package/tabmenu/tabmenu.cjs.js +7 -4
  433. package/tabmenu/tabmenu.cjs.min.js +1 -1
  434. package/tabmenu/tabmenu.esm.js +7 -4
  435. package/tabmenu/tabmenu.esm.min.js +1 -1
  436. package/tabmenu/tabmenu.js +7 -4
  437. package/tabmenu/tabmenu.min.js +1 -1
  438. package/terminal/terminal.js +1 -1
  439. package/terminal/terminal.min.js +1 -1
  440. package/terminalservice/TerminalService.d.ts +9 -6
  441. package/tieredmenu/TieredMenu.d.ts +5 -3
  442. package/tieredmenu/TieredMenuSub.vue +8 -5
  443. package/tieredmenu/tieredmenu.cjs.js +8 -5
  444. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  445. package/tieredmenu/tieredmenu.esm.js +8 -5
  446. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  447. package/tieredmenu/tieredmenu.js +8 -5
  448. package/tieredmenu/tieredmenu.min.js +1 -1
  449. package/timeline/Timeline.d.ts +8 -3
  450. package/toast/Toast.d.ts +7 -0
  451. package/toastservice/ToastService.d.ts +3 -2
  452. package/tooltip/tooltip.cjs.js +5 -1
  453. package/tooltip/tooltip.cjs.min.js +1 -1
  454. package/tooltip/tooltip.esm.js +5 -1
  455. package/tooltip/tooltip.esm.min.js +1 -1
  456. package/tooltip/tooltip.js +5 -1
  457. package/tooltip/tooltip.min.js +1 -1
  458. package/tree/Tree.d.ts +5 -1
  459. package/tree/TreeNode.vue +4 -1
  460. package/tree/tree.cjs.js +4 -1
  461. package/tree/tree.cjs.min.js +1 -1
  462. package/tree/tree.esm.js +4 -1
  463. package/tree/tree.esm.min.js +1 -1
  464. package/tree/tree.js +4 -1
  465. package/tree/tree.min.js +1 -1
  466. package/treeselect/TreeSelect.d.ts +20 -3
  467. package/treeselect/TreeSelect.vue +9 -0
  468. package/treeselect/treeselect.cjs.js +9 -0
  469. package/treeselect/treeselect.cjs.min.js +1 -1
  470. package/treeselect/treeselect.esm.js +9 -0
  471. package/treeselect/treeselect.esm.min.js +1 -1
  472. package/treeselect/treeselect.js +9 -0
  473. package/treeselect/treeselect.min.js +1 -1
  474. package/treetable/BodyCell.vue +2 -3
  475. package/treetable/FooterCell.vue +2 -2
  476. package/treetable/HeaderCell.vue +2 -2
  477. package/treetable/TreeTable.d.ts +2 -2
  478. package/treetable/TreeTable.vue +10 -10
  479. package/treetable/TreeTableRow.vue +2 -2
  480. package/treetable/treetable.cjs.js +18 -18
  481. package/treetable/treetable.cjs.min.js +1 -1
  482. package/treetable/treetable.esm.js +19 -19
  483. package/treetable/treetable.esm.min.js +1 -1
  484. package/treetable/treetable.js +18 -18
  485. package/treetable/treetable.min.js +1 -1
  486. package/utils/Utils.d.ts +80 -0
  487. package/utils/package.json +3 -2
  488. package/utils/utils.cjs.js +126 -108
  489. package/utils/utils.cjs.min.js +1 -1
  490. package/utils/utils.esm.js +126 -108
  491. package/utils/utils.esm.min.js +1 -1
  492. package/utils/utils.js +126 -108
  493. package/utils/utils.min.js +1 -1
  494. package/vetur-attributes.json +24 -0
  495. package/vetur-tags.json +9 -3
  496. package/virtualscroller/VirtualScroller.d.ts +52 -6
  497. package/virtualscroller/VirtualScroller.vue +1 -1
  498. package/virtualscroller/virtualscroller.cjs.js +1 -1
  499. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  500. package/virtualscroller/virtualscroller.esm.js +1 -1
  501. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  502. package/virtualscroller/virtualscroller.js +1 -1
  503. package/virtualscroller/virtualscroller.min.js +1 -1
  504. package/web-types.json +228 -13
@@ -9,7 +9,7 @@
9
9
  <button v-if="showClearButton && display === 'row'" :class="{'p-hidden-space': !hasRowFilter()}" type="button" class="p-column-filter-clear-button p-link" @click="clearFilter()"><span class="pi pi-filter-slash"></span></button>
10
10
  <Teleport to="body">
11
11
  <transition name="p-connected-overlay" @enter="onOverlayEnter" @leave="onOverlayLeave" @after-leave="onOverlayAfterLeave">
12
- <div :ref="overlayRef" :class="overlayClass" v-if="overlayVisible" @keydown.escape="onEscape" @click="onContentClick">
12
+ <div :ref="overlayRef" :class="overlayClass" v-if="overlayVisible" @keydown.escape="onEscape" @click="onContentClick" @mousedown="onContentMouseDown">
13
13
  <component :is="filterHeaderTemplate" :field="field" :filterModel="filters[field]" :filterCallback="filterCallback" />
14
14
  <template v-if="display === 'row'">
15
15
  <ul class="p-column-filter-row-items">
@@ -346,7 +346,15 @@ export default {
346
346
  hide() {
347
347
  this.overlayVisible = false;
348
348
  },
349
- onContentClick() {
349
+ onContentClick(event) {
350
+ this.selfClick = true;
351
+
352
+ OverlayEventBus.emit('overlay-click', {
353
+ originalEvent: event,
354
+ target: this.overlay
355
+ });
356
+ },
357
+ onContentMouseDown() {
350
358
  this.selfClick = true;
351
359
  },
352
360
  onOverlayEnter(el) {
@@ -360,7 +368,7 @@ export default {
360
368
  this.bindResizeListener();
361
369
 
362
370
  this.overlayEventListener = (e) => {
363
- if (this.overlay.contains(e.target)) {
371
+ if (!this.isOutsideClicked(e.target)) {
364
372
  this.selfClick = true;
365
373
  }
366
374
  }
@@ -383,13 +391,16 @@ export default {
383
391
  overlayRef(el) {
384
392
  this.overlay = el;
385
393
  },
386
- isTargetClicked(event) {
387
- return this.$refs.icon && (this.$refs.icon === event.target || this.$refs.icon.contains(event.target));
394
+ isOutsideClicked(target) {
395
+ return !this.isTargetClicked(target) && this.overlay && !(this.overlay.isSameNode(target) || this.overlay.contains(target));
396
+ },
397
+ isTargetClicked(target) {
398
+ return this.$refs.icon && (this.$refs.icon.isSameNode(target) || this.$refs.icon.contains(target));
388
399
  },
389
400
  bindOutsideClickListener() {
390
401
  if (!this.outsideClickListener) {
391
402
  this.outsideClickListener = (event) => {
392
- if (this.overlayVisible && !this.selfClick && !this.isTargetClicked(event)) {
403
+ if (this.overlayVisible && !this.selfClick && this.isOutsideClicked(event.target)) {
393
404
  this.overlayVisible = false;
394
405
  }
395
406
  this.selfClick = false;
@@ -61,6 +61,31 @@ interface DataTableProps {
61
61
  breakpoing?: string;
62
62
  showGridlines?: boolean;
63
63
  stripedRows?: boolean;
64
+ tableStyle?: object;
65
+ tableClass?: string;
66
+ }
67
+
68
+ interface DataTableHeaderSlotInterface {
69
+ column: any;
70
+ }
71
+
72
+ interface DataTableFooterSlotInterface {
73
+ column: any;
74
+ }
75
+
76
+ interface DataTableGroupHeaderSlotInterface {
77
+ data: any;
78
+ index: number;
79
+ }
80
+
81
+ interface DataTableGroupFooterSlotInterface {
82
+ data: any;
83
+ index: number;
84
+ }
85
+
86
+ interface DataTableExpansionSlotInterface {
87
+ data: any;
88
+ index: number;
64
89
  }
65
90
 
66
91
  declare class DataTable {
@@ -81,8 +106,9 @@ declare class DataTable {
81
106
  $emit(eventName: 'sort', event: Event): this;
82
107
  $emit(eventName: 'filter', event: Event): this;
83
108
  $emit(eventName: 'value-change', value: any[]): this;
84
- $emit(eventName: 'row-click', event: Event): this;
85
- $emit(eventName: 'row-dblclick', event: Event): this;
109
+ $emit(eventName: 'row-click', event: {originalEvent: Event, data: any, index: number}): this;
110
+ $emit(eventName: 'row-dblclick', event: {originalEvent: Event, data: any, index: number}): this;
111
+ $emit(eventName: 'row-rightclick', event: {originalEvent: Event, data: any, index: number}): this;
86
112
  $emit(eventName: 'row-contextmenu', event: Event): this;
87
113
  $emit(eventName: 'row-select', event: {originalEvent: Event, data: any, index: number, type: string}): this;
88
114
  $emit(eventName: 'row-select-all', event: {originalEvent: Event, data: any}): this;
@@ -101,19 +127,21 @@ declare class DataTable {
101
127
  $emit(eventName: 'row-edit-init', event: Event): this;
102
128
  $emit(eventName: 'row-edit-save', event: Event): this;
103
129
  $emit(eventName: 'row-edit-cancel', event: Event): this;
104
- $emit(eventName: 'editing-cell-change', event: Event): this;
105
130
  $emit(eventName: 'state-restore', value: any[]): this;
106
131
  $emit(eventName: 'state-save', value: any[]): this;
107
132
 
133
+ exportCSV(options?: any): void;
134
+
108
135
  $slots: {
109
- header: VNode[];
110
- paginatorLeft: VNode[];
111
- paginatorRight: VNode[];
136
+ header: DataTableHeaderSlotInterface;
137
+ footer: DataTableFooterSlotInterface;
138
+ paginatorstart: VNode[];
139
+ paginatorend: VNode[];
112
140
  empty: VNode[];
113
- footer: VNode[];
114
- groupheader: VNode[];
115
- groupfooter: VNode[];
141
+ groupheader: DataTableGroupHeaderSlotInterface;
142
+ groupfooter: DataTableGroupFooterSlotInterface;
116
143
  loading: VNode[];
144
+ expansion: DataTableExpansionSlotInterface;
117
145
  };
118
146
  }
119
147
 
@@ -7,17 +7,17 @@
7
7
  <div class="p-datatable-header" v-if="$slots.header">
8
8
  <slot name="header"></slot>
9
9
  </div>
10
- <DTPaginator v-if="paginatorTop" :rows="d_rows" :first="d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
10
+ <DTPaginator v-if="paginatorTop" :rows="d_rows" :first="lazy ? 0 : d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
11
11
  :currentPageReportTemplate="currentPageReportTemplate" class="p-paginator-top" @page="onPage($event)" :alwaysShow="alwaysShowPaginator">
12
- <template #left v-if="$slots.paginatorLeft">
13
- <slot name="paginatorLeft"></slot>
12
+ <template #start v-if="$slots.paginatorstart">
13
+ <slot name="paginatorstart"></slot>
14
14
  </template>
15
- <template #right v-if="$slots.paginatorRight">
16
- <slot name="paginatorRight"></slot>
15
+ <template #end v-if="$slots.paginatorend">
16
+ <slot name="paginatorend"></slot>
17
17
  </template>
18
18
  </DTPaginator>
19
19
  <div class="p-datatable-wrapper" :style="{maxHeight: scrollHeight}">
20
- <table ref="table" role="table" class="p-datatable-table">
20
+ <table ref="table" role="table" :class="[tableClass, 'p-datatable-table']" :style="tableStyle">
21
21
  <DTTableHeader :columnGroup="headerColumnGroup" :columns="columns" :rowGroupMode="rowGroupMode"
22
22
  :groupRowsBy="groupRowsBy" :groupRowSortField="groupRowSortField" :resizableColumns="resizableColumns" :allRowsSelected="allRowsSelected" :empty="empty"
23
23
  :sortMode="sortMode" :sortField="d_sortField" :sortOrder="d_sortOrder" :multiSortMeta="d_multiSortMeta" :filters="d_filters" :filtersStore="filters" :filterDisplay="filterDisplay"
@@ -25,33 +25,35 @@
25
25
  @column-dragstart="onColumnHeaderDragStart($event)" @column-dragover="onColumnHeaderDragOver($event)" @column-dragleave="onColumnHeaderDragLeave($event)" @column-drop="onColumnHeaderDrop($event)"
26
26
  @column-resizestart="onColumnResizeStart($event)" @checkbox-change="toggleRowsWithCheckbox($event)" />
27
27
  <DTTableBody v-if="frozenValue" :value="frozenValue" :frozenRow="true" class="p-datatable-frozen-tbody" :columns="columns" :dataKey="dataKey" :selection="selection" :selectionKeys="d_selectionKeys" :selectionMode="selectionMode" :contextMenu="contextMenu" :contextMenuSelection="contextMenuSelection"
28
- :rowGroupMode="rowGroupMode" :groupRowsBy="groupRowsBy" :expandableRowGroups="expandableRowGroups" :rowClass="rowClass" :editMode="editMode" :compareSelectionBy="compareSelectionBy" :scrollable="scrollable"
28
+ :rowGroupMode="rowGroupMode" :groupRowsBy="groupRowsBy" :expandableRowGroups="expandableRowGroups" :rowClass="rowClass" :rowStyle="rowStyle" :editMode="editMode" :compareSelectionBy="compareSelectionBy" :scrollable="scrollable"
29
29
  :expandedRowIcon="expandedRowIcon" :collapsedRowIcon="collapsedRowIcon" :expandedRows="expandedRows" :expandedRowKeys="d_expandedRowKeys" :expandedRowGroups="expandedRowGroups"
30
30
  :editingRows="editingRows" :editingRowKeys="d_editingRowKeys" :templates="$slots" :loading="loading" :responsiveLayout="responsiveLayout"
31
31
  @rowgroup-toggle="toggleRowGroup" @row-click="onRowClick($event)" @row-dblclick="onRowDblClick($event)" @row-rightclick="onRowRightClick($event)" @row-touchend="onRowTouchEnd" @row-keydown="onRowKeyDown"
32
32
  @row-mousedown="onRowMouseDown" @row-dragstart="onRowDragStart($event)" @row-dragover="onRowDragOver($event)" @row-dragleave="onRowDragLeave($event)" @row-dragend="onRowDragEnd($event)" @row-drop="onRowDrop($event)"
33
33
  @row-toggle="toggleRow($event)" @radio-change="toggleRowWithRadio($event)" @checkbox-change="toggleRowWithCheckbox($event)"
34
34
  @cell-edit-init="onCellEditInit($event)" @cell-edit-complete="onCellEditComplete($event)" @cell-edit-cancel="onCellEditCancel($event)"
35
- @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)" @editing-cell-change="onEditingCellChange($event)"/>
35
+ @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)"
36
+ :editingMeta="d_editingMeta" @editing-meta-change="onEditingMetaChange" />
36
37
  <DTTableBody :value="dataToRender" :columns="columns" :empty="empty" :dataKey="dataKey" :selection="selection" :selectionKeys="d_selectionKeys" :selectionMode="selectionMode" :contextMenu="contextMenu" :contextMenuSelection="contextMenuSelection"
37
- :rowGroupMode="rowGroupMode" :groupRowsBy="groupRowsBy" :expandableRowGroups="expandableRowGroups" :rowClass="rowClass" :editMode="editMode" :compareSelectionBy="compareSelectionBy" :scrollable="scrollable"
38
+ :rowGroupMode="rowGroupMode" :groupRowsBy="groupRowsBy" :expandableRowGroups="expandableRowGroups" :rowClass="rowClass" :rowStyle="rowStyle" :editMode="editMode" :compareSelectionBy="compareSelectionBy" :scrollable="scrollable"
38
39
  :expandedRowIcon="expandedRowIcon" :collapsedRowIcon="collapsedRowIcon" :expandedRows="expandedRows" :expandedRowKeys="d_expandedRowKeys" :expandedRowGroups="expandedRowGroups"
39
40
  :editingRows="editingRows" :editingRowKeys="d_editingRowKeys" :templates="$slots" :loading="loading" :responsiveLayout="responsiveLayout"
40
41
  @rowgroup-toggle="toggleRowGroup" @row-click="onRowClick($event)" @row-dblclick="onRowDblClick($event)" @row-rightclick="onRowRightClick($event)" @row-touchend="onRowTouchEnd" @row-keydown="onRowKeyDown"
41
42
  @row-mousedown="onRowMouseDown" @row-dragstart="onRowDragStart($event)" @row-dragover="onRowDragOver($event)" @row-dragleave="onRowDragLeave($event)" @row-dragend="onRowDragEnd($event)" @row-drop="onRowDrop($event)"
42
43
  @row-toggle="toggleRow($event)" @radio-change="toggleRowWithRadio($event)" @checkbox-change="toggleRowWithCheckbox($event)"
43
44
  @cell-edit-init="onCellEditInit($event)" @cell-edit-complete="onCellEditComplete($event)" @cell-edit-cancel="onCellEditCancel($event)"
44
- @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)" @editing-cell-change="onEditingCellChange($event)"/>
45
+ @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)"
46
+ :editingMeta="d_editingMeta" @editing-meta-change="onEditingMetaChange" />
45
47
  <DTTableFooter :columnGroup="footerColumnGroup" :columns="columns" />
46
48
  </table>
47
49
  </div>
48
- <DTPaginator v-if="paginatorBottom" :rows="d_rows" :first="d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
50
+ <DTPaginator v-if="paginatorBottom" :rows="d_rows" :first="lazy ? 0 : d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
49
51
  :currentPageReportTemplate="currentPageReportTemplate" class="p-paginator-bottom" @page="onPage($event)" :alwaysShow="alwaysShowPaginator">
50
- <template #left v-if="$slots.paginatorLeft">
51
- <slot name="paginatorLeft"></slot>
52
+ <template #start v-if="$slots.paginatorstart">
53
+ <slot name="paginatorstart"></slot>
52
54
  </template>
53
- <template #right v-if="$slots.paginatorRight">
54
- <slot name="paginatorRight"></slot>
55
+ <template #end v-if="$slots.paginatorend">
56
+ <slot name="paginatorend"></slot>
55
57
  </template>
56
58
  </DTPaginator>
57
59
  <div class="p-datatable-footer" v-if="$slots.footer">
@@ -77,7 +79,7 @@ export default {
77
79
  'update:selection', 'row-select', 'row-unselect', 'update:contextMenuSelection', 'row-contextmenu', 'row-unselect-all', 'row-select-all',
78
80
  'column-resize-end', 'column-reorder', 'row-reorder', 'update:expandedRows', 'row-collapse', 'row-expand',
79
81
  'update:expandedRowGroups', 'rowgroup-collapse', 'rowgroup-expand', 'update:filters', 'state-restore', 'state-save',
80
- 'cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel', 'update:editingRows', 'row-edit-init', 'row-edit-save', 'row-edit-cancel', 'editing-cell-change'],
82
+ 'cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel', 'update:editingRows', 'row-edit-init', 'row-edit-save', 'row-edit-cancel'],
81
83
  props: {
82
84
  value: {
83
85
  type: Array,
@@ -283,6 +285,10 @@ export default {
283
285
  type: null,
284
286
  default: null
285
287
  },
288
+ rowStyle: {
289
+ type: null,
290
+ default: null
291
+ },
286
292
  scrollable: {
287
293
  type: Boolean,
288
294
  default: false
@@ -314,6 +320,14 @@ export default {
314
320
  stripedRows: {
315
321
  type: Boolean,
316
322
  default: false
323
+ },
324
+ tableStyle: {
325
+ type: null,
326
+ default: null
327
+ },
328
+ tableClass: {
329
+ type: String,
330
+ default: null
317
331
  }
318
332
  },
319
333
  data() {
@@ -328,8 +342,8 @@ export default {
328
342
  d_expandedRowKeys: null,
329
343
  d_columnOrder: null,
330
344
  d_editingRowKeys: null,
331
- d_filters: this.cloneFilters(this.filters),
332
- d_editingCells: []
345
+ d_editingMeta: {},
346
+ d_filters: this.cloneFilters(this.filters)
333
347
  };
334
348
  },
335
349
  rowTouched: false,
@@ -405,6 +419,10 @@ export default {
405
419
  if (this.isStateful() && this.resizableColumns) {
406
420
  this.restoreColumnWidths();
407
421
  }
422
+
423
+ if (this.editMode === 'row' && this.dataKey && !this.d_editingRowKeys) {
424
+ this.updateEditingRowKeys(this.editingRows);
425
+ }
408
426
  },
409
427
  beforeUnmount() {
410
428
  this.unbindColumnResizeEvents();
@@ -415,12 +433,18 @@ export default {
415
433
  if (this.isStateful()) {
416
434
  this.saveState();
417
435
  }
436
+
437
+ if (this.editMode === 'row' && this.dataKey && !this.d_editingRowKeys) {
438
+ this.updateEditingRowKeys(this.editingRows);
439
+ }
418
440
  },
419
441
  methods: {
420
442
  columnProp(col, prop) {
421
- return col.props ? ((col.type.props[prop].type === Boolean && col.props[prop] === '') ? true : col.props[prop]) : null;
443
+ return ObjectUtils.getVNodeProp(col, prop);
422
444
  },
423
445
  onPage(event) {
446
+ this.clearEditingMetaData();
447
+
424
448
  this.d_first = event.first;
425
449
  this.d_rows = event.rows;
426
450
 
@@ -480,6 +504,8 @@ export default {
480
504
  }
481
505
  },
482
506
  sortSingle(value) {
507
+ this.clearEditingMetaData();
508
+
483
509
  if (this.groupRowsBy && this.groupRowsBy === this.sortField) {
484
510
  this.d_multiSortMeta = [
485
511
  {field: this.sortField, order: this.sortOrder || this.defaultSortOrder},
@@ -514,6 +540,8 @@ export default {
514
540
  return data;
515
541
  },
516
542
  sortMultiple(value) {
543
+ this.clearEditingMetaData();
544
+
517
545
  if (this.groupRowsBy && (this.d_groupRowsSortMeta || (this.d_multiSortMeta.length && this.groupRowsBy === this.d_multiSortMeta[0].field))) {
518
546
  const firstSortMeta = this.d_multiSortMeta[0];
519
547
  !this.d_groupRowsSortMeta && (this.d_groupRowsSortMeta = firstSortMeta);
@@ -571,6 +599,8 @@ export default {
571
599
  return;
572
600
  }
573
601
 
602
+ this.clearEditingMetaData();
603
+
574
604
  let globalFilterFieldsArray;
575
605
  if (this.filters['global']) {
576
606
  globalFilterFieldsArray = this.globalFilterFields|| this.columns.map(col => this.columnProp(col, 'filterField') || this.columnProp(col, 'field'));
@@ -661,7 +691,7 @@ export default {
661
691
 
662
692
  if (this.selectionMode) {
663
693
  const rowData = e.data;
664
- const rowIndex = e.index;
694
+ const rowIndex = this.d_first + e.index;
665
695
 
666
696
  if (this.isMultipleSelectionMode() && event.shiftKey && this.anchorRowIndex != null) {
667
697
  DomHandler.clearSelection();
@@ -1585,18 +1615,6 @@ export default {
1585
1615
  onCellEditCancel(event) {
1586
1616
  this.$emit('cell-edit-cancel', event);
1587
1617
  },
1588
- onEditingCellChange(event) {
1589
- let { rowIndex, cellIndex, editing } = event;
1590
- let _editingCells = [...this.d_editingCells];
1591
-
1592
- if (editing)
1593
- _editingCells.push({ rowIndex, cellIndex });
1594
- else
1595
- _editingCells = _editingCells.filter(cell => !(cell.rowIndex === rowIndex && cell.cellIndex === cellIndex));
1596
-
1597
- this.d_editingCells = _editingCells;
1598
- this.$emit('value-change', this.processedData);
1599
- },
1600
1618
  onRowEditInit(event) {
1601
1619
  let _editingRows = this.editingRows ? [...this.editingRows] : [];
1602
1620
  _editingRows.push(event.data);
@@ -1615,6 +1633,24 @@ export default {
1615
1633
  this.$emit('update:editingRows', _editingRows);
1616
1634
  this.$emit('row-edit-cancel', event);
1617
1635
  },
1636
+ onEditingMetaChange(event) {
1637
+ let { data, field, index, editing } = event;
1638
+ let meta = this.d_editingMeta[index];
1639
+
1640
+ if (editing) {
1641
+ !meta && (meta = this.d_editingMeta[index] = { data: { ...data }, fields: [] });
1642
+ meta['fields'].push(field);
1643
+ }
1644
+ else if (meta) {
1645
+ const fields = meta['fields'].filter(f => f !== field);
1646
+ !fields.length ? (delete this.d_editingMeta[index]) : (meta['fields'] = fields);
1647
+ }
1648
+ },
1649
+ clearEditingMetaData() {
1650
+ if (this.editMode) {
1651
+ this.d_editingMeta = {};
1652
+ }
1653
+ },
1618
1654
  createLazyLoadEvent(event) {
1619
1655
  return {
1620
1656
  originalEvent: event,
@@ -1714,7 +1750,22 @@ export default {
1714
1750
  document.head.removeChild(this.styleElement);
1715
1751
  this.styleElement = null;
1716
1752
  }
1717
- }
1753
+ },
1754
+ recursiveGetChildren(children, results) {
1755
+ if (!results) {
1756
+ results = [];
1757
+ }
1758
+ if (children && children.length) {
1759
+ children.forEach((child) => {
1760
+ if (child.children instanceof Array) {
1761
+ results.concat(this.recursiveGetChildren(child.children, results));
1762
+ } else if (child.type.name == 'Column') {
1763
+ results.push(child);
1764
+ }
1765
+ });
1766
+ }
1767
+ return results;
1768
+ },
1718
1769
  },
1719
1770
  computed: {
1720
1771
  containerClass() {
@@ -1739,19 +1790,13 @@ export default {
1739
1790
  ];
1740
1791
  },
1741
1792
  columns() {
1742
- let cols = [];
1743
1793
  let children = this.getChildren();
1744
1794
 
1745
1795
  if (!children) {
1746
1796
  return;
1747
1797
  }
1748
1798
 
1749
- children.forEach(child => {
1750
- if (child.children && child.children instanceof Array)
1751
- cols = [...cols, ...child.children];
1752
- else if (child.type.name === 'Column')
1753
- cols.push(child);
1754
- });
1799
+ const cols = this.recursiveGetChildren(children, []);
1755
1800
 
1756
1801
  if (this.reorderableColumns && this.d_columnOrder) {
1757
1802
  let orderedColumns = [];
@@ -1794,24 +1839,21 @@ export default {
1794
1839
  hasFilters() {
1795
1840
  return this.filters && Object.keys(this.filters).length > 0 && this.filters.constructor === Object;
1796
1841
  },
1797
- hasEditingCell() {
1798
- return this.d_editingCells && this.d_editingCells.length !== 0;
1799
- },
1800
1842
  processedData() {
1801
1843
  let data = this.value || [];
1802
1844
 
1803
- if (!this.lazy && !this.hasEditingCell) {
1845
+ if (!this.lazy) {
1804
1846
  if (data && data.length) {
1847
+ if (this.hasFilters) {
1848
+ data = this.filter(data);
1849
+ }
1850
+
1805
1851
  if (this.sorted) {
1806
1852
  if(this.sortMode === 'single')
1807
1853
  data = this.sortSingle(data);
1808
1854
  else if(this.sortMode === 'multiple')
1809
1855
  data = this.sortMultiple(data);
1810
1856
  }
1811
-
1812
- if (this.hasFilters) {
1813
- data = this.filter(data);
1814
- }
1815
1857
  }
1816
1858
  }
1817
1859
 
@@ -7,7 +7,7 @@
7
7
  </template>
8
8
 
9
9
  <script>
10
- import {DomHandler} from 'primevue/utils';
10
+ import {DomHandler,ObjectUtils} from 'primevue/utils';
11
11
 
12
12
  export default {
13
13
  name: 'FooterCell',
@@ -34,7 +34,7 @@ export default {
34
34
  },
35
35
  methods: {
36
36
  columnProp(prop) {
37
- return this.column.props ? ((this.column.type.props[prop].type === Boolean && this.column.props[prop] === '') ? true : this.column.props[prop]) : null;
37
+ return ObjectUtils.getVNodeProp(this.column, prop);
38
38
  },
39
39
  updateStickyPosition() {
40
40
  if (this.columnProp('frozen')) {
@@ -23,7 +23,7 @@
23
23
  </template>
24
24
 
25
25
  <script>
26
- import {DomHandler} from 'primevue/utils';
26
+ import {DomHandler,ObjectUtils} from 'primevue/utils';
27
27
  import HeaderCheckbox from './HeaderCheckbox.vue';
28
28
  import ColumnFilter from './ColumnFilter.vue';
29
29
 
@@ -107,7 +107,7 @@ export default {
107
107
  },
108
108
  methods: {
109
109
  columnProp(prop) {
110
- return this.column.props ? ((this.column.type.props[prop].type === Boolean && this.column.props[prop] === '') ? true : this.column.props[prop]) : null;
110
+ return ObjectUtils.getVNodeProp(this.column, prop);
111
111
  },
112
112
  onClick(event) {
113
113
  this.$emit('column-click', {originalEvent: event, column: this.column});
@@ -10,7 +10,7 @@
10
10
  <component :is="templates['groupheader']" :data="rowData" :index="index" />
11
11
  </td>
12
12
  </tr>
13
- <tr :class="getRowClass(rowData)" :key="getRowKey(rowData, index)"
13
+ <tr :class="getRowClass(rowData)" :style="rowStyle" :key="getRowKey(rowData, index)"
14
14
  v-if="expandableRowGroups ? isRowGroupExpanded(rowData): true"
15
15
  @click="onRowClick($event, rowData, index)" @dblclick="onRowDblClick($event, rowData, index)" @contextmenu="onRowRightClick($event, rowData, index)" @touchend="onRowTouchEnd($event)" @keydown="onRowKeyDown($event, rowData, index)" :tabindex="selectionMode || contextMenu ? '0' : null"
16
16
  @mousedown="onRowMouseDown($event)" @dragstart="onRowDragStart($event, index)" @dragover="onRowDragOver($event,index)" @dragleave="onRowDragLeave($event)" @dragend="onRowDragEnd($event)" @drop="onRowDrop($event)" role="row">
@@ -21,7 +21,8 @@
21
21
  :editMode="editMode" :editing="editMode === 'row' && isRowEditing(rowData)" :responsiveLayout="responsiveLayout"
22
22
  @radio-change="onRadioChange($event)" @checkbox-change="onCheckboxChange($event)" @row-toggle="onRowToggle($event)"
23
23
  @cell-edit-init="onCellEditInit($event)" @cell-edit-complete="onCellEditComplete($event)" @cell-edit-cancel="onCellEditCancel($event)"
24
- @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)" @editing-cell-change="onEditingCellChange($event)"/>
24
+ @row-edit-init="onRowEditInit($event)" @row-edit-save="onRowEditSave($event)" @row-edit-cancel="onRowEditCancel($event)"
25
+ :editingMeta="editingMeta" @editing-meta-change="onEditingMetaChange"/>
25
26
  </template>
26
27
  </tr>
27
28
  <tr class="p-datatable-row-expansion" v-if="templates['expansion'] && expandedRows && isRowExpanded(rowData)" :key="getRowKey(rowData, index) + '_expansion'" role="row">
@@ -52,7 +53,7 @@ export default {
52
53
  emits: ['rowgroup-toggle', 'row-click', 'row-dblclick', 'row-rightclick', 'row-touchend', 'row-keydown', 'row-mousedown',
53
54
  'row-dragstart', 'row-dragover', 'row-dragleave', 'row-dragend', 'row-drop', 'row-toggle',
54
55
  'radio-change', 'checkbox-change', 'cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel',
55
- 'row-edit-init', 'row-edit-save', 'row-edit-cancel', 'editing-cell-change'],
56
+ 'row-edit-init', 'row-edit-save', 'row-edit-cancel', 'editing-meta-change'],
56
57
  props: {
57
58
  value: {
58
59
  type: Array,
@@ -130,6 +131,10 @@ export default {
130
131
  type: null,
131
132
  default: null
132
133
  },
134
+ rowStyle: {
135
+ type: null,
136
+ default: null
137
+ },
133
138
  editMode: {
134
139
  type: String,
135
140
  default: null
@@ -146,6 +151,10 @@ export default {
146
151
  type: null,
147
152
  default: null
148
153
  },
154
+ editingMeta: {
155
+ type: Object,
156
+ default: null
157
+ },
149
158
  loading: {
150
159
  type: Boolean,
151
160
  default: false
@@ -188,7 +197,7 @@ export default {
188
197
  },
189
198
  methods: {
190
199
  columnProp(col, prop) {
191
- return col.props ? ((col.type.props[prop].type === Boolean && col.props[prop] === '') ? true : col.props[prop]) : null;
200
+ return ObjectUtils.getVNodeProp(col, prop);
192
201
  },
193
202
  shouldRenderRowGroupHeader(value, rowData, i) {
194
203
  let currentRowFieldData = ObjectUtils.resolveFieldData(rowData, this.groupRowsBy);
@@ -447,8 +456,8 @@ export default {
447
456
  onRowEditCancel(event) {
448
457
  this.$emit('row-edit-cancel', event);
449
458
  },
450
- onEditingCellChange(event) {
451
- this.$emit('editing-cell-change', event);
459
+ onEditingMetaChange(event) {
460
+ this.$emit('editing-meta-change', event);
452
461
  },
453
462
  updateFrozenRowStickyPosition() {
454
463
  this.$el.style.top = DomHandler.getOuterHeight(this.$el.previousElementSibling) + 'px';
@@ -7,7 +7,7 @@
7
7
  </tr>
8
8
  <template v-else>
9
9
  <tr v-for="(row,i) of columnGroup.children.default()" :key="i" role="row">
10
- <template v-for="(col,j) of row.children.default()" :key="columnProp(col,'columnKey')||columnProp(col,'field')||j">
10
+ <template v-for="(col,j) of getFooterColumns(row)" :key="columnProp(col,'columnKey')||columnProp(col,'field')||j">
11
11
  <DTFooterCell :column="col" v-if="!columnProp(col,'hidden')"/>
12
12
  </template>
13
13
  </tr>
@@ -17,6 +17,7 @@
17
17
 
18
18
  <script>
19
19
  import FooterCell from './FooterCell.vue';
20
+ import {ObjectUtils} from 'primevue/utils';
20
21
 
21
22
  export default {
22
23
  name: 'TableFooter',
@@ -32,7 +33,21 @@ export default {
32
33
  },
33
34
  methods: {
34
35
  columnProp(col, prop) {
35
- return col.props ? ((col.type.props[prop].type === Boolean && col.props[prop] === '') ? true : col.props[prop]) : null;
36
+ return ObjectUtils.getVNodeProp(col, prop);
37
+ },
38
+ getFooterColumns(row){
39
+ let cols = [];
40
+
41
+ if (row.children && row.children.default) {
42
+ row.children.default().forEach(child => {
43
+ if (child.children && child.children instanceof Array)
44
+ cols = [...cols, ...child.children];
45
+ else if (child.type.name === 'Column')
46
+ cols.push(child);
47
+ });
48
+
49
+ return cols;
50
+ }
36
51
  }
37
52
  },
38
53
  computed: {
@@ -33,7 +33,7 @@
33
33
  </template>
34
34
  <template v-else>
35
35
  <tr v-for="(row,i) of columnGroup.children.default()" :key="i" role="row">
36
- <template v-for="(col,j) of row.children.default()" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||j">
36
+ <template v-for="(col,j) of getHeaderColumns(row)" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||j">
37
37
  <DTHeaderCell v-if="!columnProp(col, 'hidden') && (rowGroupMode !== 'subheader' || (groupRowsBy !== columnProp(col, 'field'))) && (typeof col.children !== 'string')" :column="col"
38
38
  @column-click="$emit('column-click', $event)" @column-mousedown="$emit('column-mousedown', $event)"
39
39
  :groupRowsBy="groupRowsBy" :groupRowSortField="groupRowSortField" :sortMode="sortMode" :sortField="sortField" :sortOrder="sortOrder" :multiSortMeta="multiSortMeta"
@@ -51,6 +51,7 @@
51
51
  import HeaderCell from './HeaderCell.vue';
52
52
  import HeaderCheckbox from './HeaderCheckbox.vue';
53
53
  import ColumnFilter from './ColumnFilter.vue';
54
+ import {ObjectUtils} from 'primevue/utils';
54
55
 
55
56
  export default {
56
57
  name: 'TableHeader',
@@ -121,7 +122,7 @@ export default {
121
122
  },
122
123
  methods: {
123
124
  columnProp(col, prop) {
124
- return col.props ? ((col.type.props[prop].type === Boolean && col.props[prop] === '') ? true : col.props[prop]) : null;
125
+ return ObjectUtils.getVNodeProp(col, prop);
125
126
  },
126
127
  getFilterColumnHeaderClass(column) {
127
128
  return ['p-filter-column', this.columnProp(column, 'filterHeaderClass'), this.columnProp(column, 'class'), {
@@ -130,6 +131,20 @@ export default {
130
131
  },
131
132
  getFilterColumnHeaderStyle(column) {
132
133
  return [this.columnProp(column, 'filterHeaderStyle'), this.columnProp(column, 'style')];
134
+ },
135
+ getHeaderColumns(row){
136
+ let cols = [];
137
+
138
+ if (row.children && row.children.default) {
139
+ row.children.default().forEach(child => {
140
+ if (child.children && child.children instanceof Array)
141
+ cols = [...cols, ...child.children];
142
+ else if (child.type.name === 'Column')
143
+ cols.push(child);
144
+ });
145
+
146
+ return cols;
147
+ }
133
148
  }
134
149
  },
135
150
  components: {