primevue 2.5.1 → 2.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 (710) hide show
  1. package/accordion/accordion.common.js +1 -1
  2. package/accordion/accordion.umd.js +1 -1
  3. package/accordiontab/accordiontab.common.js +28 -1
  4. package/accordiontab/accordiontab.umd.js +28 -1
  5. package/accordiontab/accordiontab.umd.min.js +1 -1
  6. package/api/Api.d.ts +296 -0
  7. package/api/Api.js +47 -0
  8. package/api/FilterMatchMode.js +26 -0
  9. package/api/FilterOperator.js +12 -0
  10. package/api/FilterService.js +260 -0
  11. package/api/PrimeIcons.js +246 -0
  12. package/api/ToastSeverity.js +14 -0
  13. package/api/api.common.js +4893 -0
  14. package/api/api.umd.js +4903 -0
  15. package/api/api.umd.min.js +1 -0
  16. package/api/demo.html +8 -0
  17. package/api/filtermatchmode.common.js +186 -0
  18. package/api/filtermatchmode.umd.js +196 -0
  19. package/api/filtermatchmode.umd.min.js +1 -0
  20. package/api/filteroperator.common.js +172 -0
  21. package/api/filteroperator.umd.js +182 -0
  22. package/api/filteroperator.umd.min.js +1 -0
  23. package/{utils/filterutils.common.js → api/filterservice.common.js} +207 -106
  24. package/{utils/filterutils.umd.js → api/filterservice.umd.js} +209 -108
  25. package/api/filterservice.umd.min.js +1 -0
  26. package/api/index.d.ts +1 -0
  27. package/api/index.js +2 -0
  28. package/api/primeicons.common.js +406 -0
  29. package/api/primeicons.umd.js +416 -0
  30. package/api/primeicons.umd.min.js +1 -0
  31. package/{confirmationservice/confirmationeventbus.common.js → api/toastseverity.common.js} +9 -9
  32. package/{confirmationservice/confirmationeventbus.umd.js → api/toastseverity.umd.js} +11 -11
  33. package/api/toastseverity.umd.min.js +1 -0
  34. package/autocomplete/AutoComplete.d.ts +1 -0
  35. package/autocomplete/AutoComplete.vue +8 -0
  36. package/autocomplete/autocomplete.common.js +64 -23
  37. package/autocomplete/autocomplete.umd.js +64 -23
  38. package/autocomplete/autocomplete.umd.min.js +1 -1
  39. package/avatar/avatar.common.js +1 -1
  40. package/avatar/avatar.umd.js +1 -1
  41. package/avatargroup/avatargroup.common.js +1 -1
  42. package/avatargroup/avatargroup.umd.js +1 -1
  43. package/badge/badge.common.js +1 -1
  44. package/badge/badge.umd.js +1 -1
  45. package/badgedirective/badgedirective.common.js +27 -0
  46. package/badgedirective/badgedirective.umd.js +27 -0
  47. package/badgedirective/badgedirective.umd.min.js +1 -1
  48. package/blockui/BlockUI.vue +6 -16
  49. package/blockui/blockui.common.js +38 -16
  50. package/blockui/blockui.umd.js +38 -16
  51. package/blockui/blockui.umd.min.js +1 -1
  52. package/breadcrumb/Breadcrumb.d.ts +1 -0
  53. package/breadcrumb/Breadcrumb.vue +6 -2
  54. package/breadcrumb/BreadcrumbItem.vue +30 -11
  55. package/breadcrumb/breadcrumb.common.js +44 -16
  56. package/breadcrumb/breadcrumb.umd.js +44 -16
  57. package/breadcrumb/breadcrumb.umd.min.js +1 -1
  58. package/breadcrumb/breadcrumbitem.common.js +34 -10
  59. package/breadcrumb/breadcrumbitem.umd.js +34 -10
  60. package/breadcrumb/breadcrumbitem.umd.min.js +1 -1
  61. package/button/button.common.js +28 -1
  62. package/button/button.umd.js +28 -1
  63. package/button/button.umd.min.js +1 -1
  64. package/calendar/Calendar.d.ts +5 -0
  65. package/calendar/Calendar.vue +342 -70
  66. package/calendar/calendar.common.js +403 -73
  67. package/calendar/calendar.umd.js +403 -73
  68. package/calendar/calendar.umd.min.js +1 -1
  69. package/card/card.common.js +1 -1
  70. package/card/card.umd.js +1 -1
  71. package/carousel/Carousel.vue +2 -2
  72. package/carousel/carousel.common.js +30 -3
  73. package/carousel/carousel.umd.js +30 -3
  74. package/carousel/carousel.umd.min.js +1 -1
  75. package/cascadeselect/CascadeSelect.d.ts +6 -4
  76. package/cascadeselect/CascadeSelect.vue +3 -1
  77. package/cascadeselect/cascadeselect.common.js +53 -17
  78. package/cascadeselect/cascadeselect.umd.js +53 -17
  79. package/cascadeselect/cascadeselect.umd.min.js +1 -1
  80. package/cascadeselect/cascadeselectsub.common.js +48 -14
  81. package/cascadeselect/cascadeselectsub.umd.js +48 -14
  82. package/cascadeselect/cascadeselectsub.umd.min.js +1 -1
  83. package/cascadeselect/demo.html +4 -3
  84. package/chart/Chart.vue +27 -11
  85. package/chart/chart.common.js +30 -12
  86. package/chart/chart.umd.js +30 -12
  87. package/chart/chart.umd.min.js +1 -1
  88. package/checkbox/Checkbox.css +1 -0
  89. package/checkbox/Checkbox.d.ts +2 -0
  90. package/checkbox/Checkbox.vue +11 -3
  91. package/checkbox/checkbox.common.js +38 -18
  92. package/checkbox/checkbox.umd.js +38 -18
  93. package/checkbox/checkbox.umd.min.js +1 -1
  94. package/chip/chip.common.js +1 -1
  95. package/chip/chip.umd.js +1 -1
  96. package/chips/chips.common.js +1 -1
  97. package/chips/chips.umd.js +1 -1
  98. package/colorpicker/colorpicker.common.js +28 -1
  99. package/colorpicker/colorpicker.umd.js +28 -1
  100. package/colorpicker/colorpicker.umd.min.js +1 -1
  101. package/column/Column.vue +72 -12
  102. package/column/column.common.js +71 -11
  103. package/column/column.umd.js +71 -11
  104. package/column/column.umd.min.js +1 -1
  105. package/columngroup/columngroup.common.js +1 -1
  106. package/columngroup/columngroup.umd.js +1 -1
  107. package/common/Common.css +13 -4
  108. package/config/PrimeVue.d.ts +24 -2
  109. package/config/PrimeVue.js +34 -4
  110. package/config/primevue.common.js +3589 -130
  111. package/config/primevue.umd.js +3589 -130
  112. package/config/primevue.umd.min.js +1 -1
  113. package/{confirmationservice → confirmationeventbus}/ConfirmationEventBus.js +3 -3
  114. package/confirmationeventbus/confirmationeventbus.common.js +1777 -0
  115. package/confirmationeventbus/confirmationeventbus.umd.js +1787 -0
  116. package/confirmationeventbus/confirmationeventbus.umd.min.js +1 -0
  117. package/confirmationeventbus/demo.html +8 -0
  118. package/confirmationeventbus/index.d.ts +1 -0
  119. package/confirmationeventbus/index.js +2 -0
  120. package/confirmationservice/ConfirmationService.js +1 -1
  121. package/confirmationservice/confirmationservice.common.js +1609 -6
  122. package/confirmationservice/confirmationservice.umd.js +1609 -6
  123. package/confirmationservice/confirmationservice.umd.min.js +1 -1
  124. package/confirmdialog/ConfirmDialog.vue +9 -3
  125. package/confirmdialog/confirmdialog.common.js +465 -46
  126. package/confirmdialog/confirmdialog.umd.js +465 -46
  127. package/confirmdialog/confirmdialog.umd.min.js +1 -1
  128. package/confirmpopup/ConfirmPopup.d.ts +4 -1
  129. package/confirmpopup/ConfirmPopup.vue +9 -6
  130. package/confirmpopup/confirmpopup.common.js +535 -13
  131. package/confirmpopup/confirmpopup.umd.js +535 -13
  132. package/confirmpopup/confirmpopup.umd.min.js +1 -1
  133. package/contextmenu/ContextMenu.d.ts +1 -0
  134. package/contextmenu/ContextMenu.vue +5 -1
  135. package/contextmenu/ContextMenuSub.vue +33 -13
  136. package/contextmenu/contextmenu.common.js +68 -14
  137. package/contextmenu/contextmenu.umd.js +68 -14
  138. package/contextmenu/contextmenu.umd.min.js +1 -1
  139. package/contextmenu/contextmenusub.common.js +58 -8
  140. package/contextmenu/contextmenusub.umd.js +58 -8
  141. package/contextmenu/contextmenusub.umd.min.js +1 -1
  142. package/datatable/BodyCell.vue +118 -34
  143. package/datatable/ColumnFilter.vue +558 -0
  144. package/datatable/ColumnSlot.vue +21 -1
  145. package/datatable/DataTable.d.ts +43 -15
  146. package/datatable/DataTable.vue +606 -398
  147. package/datatable/FooterCell.vue +82 -0
  148. package/datatable/HeaderCell.vue +246 -0
  149. package/datatable/HeaderCheckbox.vue +7 -4
  150. package/datatable/RowCheckbox.vue +2 -2
  151. package/datatable/RowRadioButton.vue +1 -1
  152. package/datatable/TableBody.vue +92 -23
  153. package/datatable/TableFooter.vue +34 -18
  154. package/datatable/TableHeader.vue +79 -134
  155. package/datatable/bodycell.common.js +592 -65
  156. package/datatable/bodycell.umd.js +592 -65
  157. package/datatable/bodycell.umd.min.js +1 -1
  158. package/datatable/columnfilter.common.js +7615 -0
  159. package/datatable/columnfilter.umd.js +7625 -0
  160. package/datatable/columnfilter.umd.min.js +1 -0
  161. package/datatable/columnslot.common.js +21 -1
  162. package/datatable/columnslot.umd.js +21 -1
  163. package/datatable/columnslot.umd.min.js +1 -1
  164. package/datatable/datatable.common.js +4384 -1399
  165. package/datatable/datatable.umd.js +4384 -1399
  166. package/datatable/datatable.umd.min.js +1 -1
  167. package/datatable/demo.html +3 -3
  168. package/datatable/footercell.common.js +5457 -0
  169. package/datatable/footercell.umd.js +5467 -0
  170. package/datatable/footercell.umd.min.js +1 -0
  171. package/datatable/headercell.common.js +8066 -0
  172. package/datatable/headercell.umd.js +8076 -0
  173. package/datatable/headercell.umd.min.js +1 -0
  174. package/datatable/headercheckbox.common.js +8 -5
  175. package/datatable/headercheckbox.umd.js +8 -5
  176. package/datatable/headercheckbox.umd.min.js +1 -1
  177. package/datatable/rowcheckbox.common.js +3 -3
  178. package/datatable/rowcheckbox.umd.js +3 -3
  179. package/datatable/rowcheckbox.umd.min.js +1 -1
  180. package/datatable/rowradiobutton.common.js +3 -3
  181. package/datatable/rowradiobutton.umd.js +3 -3
  182. package/datatable/rowradiobutton.umd.min.js +1 -1
  183. package/datatable/tablebody.common.js +1041 -443
  184. package/datatable/tablebody.umd.js +1041 -443
  185. package/datatable/tablebody.umd.min.js +1 -1
  186. package/datatable/tablefooter.common.js +3789 -105
  187. package/datatable/tablefooter.umd.js +3789 -105
  188. package/datatable/tablefooter.umd.min.js +1 -1
  189. package/datatable/tableheader.common.js +6635 -2132
  190. package/datatable/tableheader.umd.js +6635 -2132
  191. package/datatable/tableheader.umd.min.js +1 -1
  192. package/datatable/tableloadingbody.common.js +22 -2
  193. package/datatable/tableloadingbody.umd.js +22 -2
  194. package/datatable/tableloadingbody.umd.min.js +1 -1
  195. package/dataview/DataView.d.ts +2 -2
  196. package/dataview/DataView.vue +8 -8
  197. package/dataview/dataview.common.js +1974 -79
  198. package/dataview/dataview.umd.js +1974 -79
  199. package/dataview/dataview.umd.min.js +1 -1
  200. package/dataviewlayoutoptions/dataviewlayoutoptions.common.js +1 -1
  201. package/dataviewlayoutoptions/dataviewlayoutoptions.umd.js +1 -1
  202. package/deferredcontent/deferredcontent.common.js +1 -1
  203. package/deferredcontent/deferredcontent.umd.js +1 -1
  204. package/dialog/Dialog.d.ts +1 -0
  205. package/dialog/Dialog.vue +41 -24
  206. package/dialog/dialog.common.js +68 -27
  207. package/dialog/dialog.umd.js +68 -27
  208. package/dialog/dialog.umd.min.js +1 -1
  209. package/divider/divider.common.js +1 -1
  210. package/divider/divider.umd.js +1 -1
  211. package/dock/Dock.d.ts +2 -0
  212. package/dock/Dock.vue +12 -2
  213. package/dock/DockSub.vue +45 -21
  214. package/dock/dock.common.js +44 -15
  215. package/dock/dock.umd.js +44 -15
  216. package/dock/dock.umd.min.js +1 -1
  217. package/dock/docksub.common.js +31 -7
  218. package/dock/docksub.umd.js +31 -7
  219. package/dock/docksub.umd.min.js +1 -1
  220. package/dropdown/Dropdown.d.ts +5 -3
  221. package/dropdown/Dropdown.vue +34 -6
  222. package/dropdown/dropdown.common.js +84 -21
  223. package/dropdown/dropdown.umd.js +84 -21
  224. package/dropdown/dropdown.umd.min.js +1 -1
  225. package/editor/editor.common.js +1 -1
  226. package/editor/editor.umd.js +1 -1
  227. package/fieldset/fieldset.common.js +28 -1
  228. package/fieldset/fieldset.umd.js +28 -1
  229. package/fieldset/fieldset.umd.min.js +1 -1
  230. package/fileupload/FileUpload.vue +5 -2
  231. package/fileupload/fileupload.common.js +55 -19
  232. package/fileupload/fileupload.umd.js +55 -19
  233. package/fileupload/fileupload.umd.min.js +1 -1
  234. package/fullcalendar/fullcalendar.common.js +342 -136
  235. package/fullcalendar/fullcalendar.umd.js +342 -136
  236. package/fullcalendar/fullcalendar.umd.min.js +4 -4
  237. package/galleria/Galleria.vue +3 -8
  238. package/galleria/GalleriaContent.vue +9 -0
  239. package/galleria/galleria.common.js +49 -17
  240. package/galleria/galleria.umd.js +49 -17
  241. package/galleria/galleria.umd.min.js +1 -1
  242. package/galleria/galleriacontent.common.js +40 -4
  243. package/galleria/galleriacontent.umd.js +40 -4
  244. package/galleria/galleriacontent.umd.min.js +1 -1
  245. package/galleria/galleriaitem.common.js +28 -1
  246. package/galleria/galleriaitem.umd.js +28 -1
  247. package/galleria/galleriaitem.umd.min.js +1 -1
  248. package/galleria/galleriathumbnails.common.js +28 -1
  249. package/galleria/galleriathumbnails.umd.js +28 -1
  250. package/galleria/galleriathumbnails.umd.min.js +1 -1
  251. package/imagepreview/ImagePreview.d.ts +10 -0
  252. package/imagepreview/ImagePreview.vue +205 -0
  253. package/imagepreview/demo.html +17 -0
  254. package/{datatable/scrollableview.common.js → imagepreview/imagepreview.common.js} +570 -463
  255. package/{datatable/scrollableview.umd.js → imagepreview/imagepreview.umd.js} +572 -465
  256. package/imagepreview/imagepreview.umd.min.js +1 -0
  257. package/imagepreview/index.d.ts +1 -0
  258. package/imagepreview/index.js +2 -0
  259. package/imagepreview/plugin.js +4 -0
  260. package/inlinemessage/inlinemessage.common.js +1 -1
  261. package/inlinemessage/inlinemessage.umd.js +1 -1
  262. package/inplace/inplace.common.js +29 -2
  263. package/inplace/inplace.umd.js +29 -2
  264. package/inplace/inplace.umd.min.js +1 -1
  265. package/inputmask/InputMask.vue +7 -5
  266. package/inputmask/inputmask.common.js +39 -12
  267. package/inputmask/inputmask.umd.js +39 -12
  268. package/inputmask/inputmask.umd.min.js +1 -1
  269. package/inputnumber/InputNumber.vue +183 -62
  270. package/inputnumber/inputnumber.common.js +249 -113
  271. package/inputnumber/inputnumber.umd.js +249 -113
  272. package/inputnumber/inputnumber.umd.min.js +1 -1
  273. package/inputswitch/InputSwitch.d.ts +2 -0
  274. package/inputswitch/InputSwitch.vue +15 -3
  275. package/inputswitch/inputswitch.common.js +17 -5
  276. package/inputswitch/inputswitch.umd.js +17 -5
  277. package/inputswitch/inputswitch.umd.min.js +1 -1
  278. package/inputtext/inputtext.common.js +3 -7
  279. package/inputtext/inputtext.umd.js +3 -7
  280. package/inputtext/inputtext.umd.min.js +1 -1
  281. package/knob/knob.common.js +1 -1
  282. package/knob/knob.umd.js +1 -1
  283. package/listbox/Listbox.d.ts +3 -3
  284. package/listbox/listbox.common.js +48 -14
  285. package/listbox/listbox.umd.js +48 -14
  286. package/listbox/listbox.umd.min.js +1 -1
  287. package/megamenu/MegaMenu.d.ts +6 -1
  288. package/megamenu/MegaMenu.vue +51 -22
  289. package/megamenu/megamenu.common.js +74 -10
  290. package/megamenu/megamenu.umd.js +74 -10
  291. package/megamenu/megamenu.umd.min.js +1 -1
  292. package/menu/Menu.d.ts +1 -0
  293. package/menu/Menu.vue +11 -4
  294. package/menu/Menuitem.vue +25 -11
  295. package/menu/menu.common.js +68 -17
  296. package/menu/menu.umd.js +68 -17
  297. package/menu/menu.umd.min.js +1 -1
  298. package/menu/menuitem.common.js +55 -11
  299. package/menu/menuitem.umd.js +55 -11
  300. package/menu/menuitem.umd.min.js +1 -1
  301. package/menubar/Menubar.d.ts +1 -0
  302. package/menubar/Menubar.vue +5 -1
  303. package/menubar/MenubarSub.vue +34 -14
  304. package/menubar/demo.html +3 -4
  305. package/menubar/menubar.common.js +68 -14
  306. package/menubar/menubar.umd.js +68 -14
  307. package/menubar/menubar.umd.min.js +1 -1
  308. package/menubar/menubarsub.common.js +58 -8
  309. package/menubar/menubarsub.umd.js +58 -8
  310. package/menubar/menubarsub.umd.min.js +1 -1
  311. package/message/Message.d.ts +1 -0
  312. package/message/Message.vue +5 -1
  313. package/message/message.common.js +34 -3
  314. package/message/message.umd.js +34 -3
  315. package/message/message.umd.min.js +1 -1
  316. package/multiselect/MultiSelect.d.ts +4 -3
  317. package/multiselect/MultiSelect.vue +8 -1
  318. package/multiselect/multiselect.common.js +58 -18
  319. package/multiselect/multiselect.umd.js +58 -18
  320. package/multiselect/multiselect.umd.min.js +1 -1
  321. package/orderlist/OrderList.d.ts +2 -0
  322. package/orderlist/OrderList.vue +2 -0
  323. package/orderlist/orderlist.common.js +53 -17
  324. package/orderlist/orderlist.umd.js +53 -17
  325. package/orderlist/orderlist.umd.min.js +1 -1
  326. package/organizationchart/organizationchart.common.js +31 -8
  327. package/organizationchart/organizationchart.umd.js +31 -8
  328. package/organizationchart/organizationchart.umd.min.js +1 -1
  329. package/organizationchart/organizationchartnode.common.js +28 -1
  330. package/organizationchart/organizationchartnode.umd.js +28 -1
  331. package/organizationchart/organizationchartnode.umd.min.js +1 -1
  332. package/overlayeventbus/OverlayEventBus.js +14 -0
  333. package/overlayeventbus/demo.html +8 -0
  334. package/overlayeventbus/index.d.ts +1 -0
  335. package/overlayeventbus/index.js +2 -0
  336. package/overlayeventbus/overlayeventbus.common.js +1777 -0
  337. package/overlayeventbus/overlayeventbus.umd.js +1787 -0
  338. package/overlayeventbus/overlayeventbus.umd.min.js +1 -0
  339. package/overlaypanel/overlaypanel.common.js +28 -1
  340. package/overlaypanel/overlaypanel.umd.js +28 -1
  341. package/overlaypanel/overlaypanel.umd.min.js +1 -1
  342. package/package.json +5 -1
  343. package/paginator/CurrentPageReport.vue +6 -2
  344. package/paginator/JumpToPageDropdown.vue +33 -0
  345. package/paginator/JumpToPageInput.vue +25 -0
  346. package/paginator/Paginator.d.ts +2 -2
  347. package/paginator/Paginator.vue +24 -11
  348. package/paginator/RowsPerPageDropdown.vue +3 -2
  349. package/paginator/currentpagereport.common.js +7 -3
  350. package/paginator/currentpagereport.umd.js +7 -3
  351. package/paginator/currentpagereport.umd.min.js +1 -1
  352. package/paginator/demo.html +3 -3
  353. package/paginator/firstpagelink.common.js +28 -1
  354. package/paginator/firstpagelink.umd.js +28 -1
  355. package/paginator/firstpagelink.umd.min.js +1 -1
  356. package/paginator/jumptopagedropdown.common.js +6505 -0
  357. package/paginator/jumptopagedropdown.umd.js +6515 -0
  358. package/paginator/jumptopagedropdown.umd.min.js +1 -0
  359. package/paginator/jumptopageinput.common.js +7438 -0
  360. package/paginator/jumptopageinput.umd.js +7448 -0
  361. package/paginator/jumptopageinput.umd.min.js +1 -0
  362. package/paginator/lastpagelink.common.js +28 -1
  363. package/paginator/lastpagelink.umd.js +28 -1
  364. package/paginator/lastpagelink.umd.min.js +1 -1
  365. package/paginator/nextpagelink.common.js +28 -1
  366. package/paginator/nextpagelink.umd.js +28 -1
  367. package/paginator/nextpagelink.umd.min.js +1 -1
  368. package/paginator/pagelinks.common.js +28 -1
  369. package/paginator/pagelinks.umd.js +28 -1
  370. package/paginator/pagelinks.umd.min.js +1 -1
  371. package/paginator/paginator.common.js +2280 -118
  372. package/paginator/paginator.umd.js +2280 -118
  373. package/paginator/paginator.umd.min.js +1 -1
  374. package/paginator/prevpagelink.common.js +28 -1
  375. package/paginator/prevpagelink.umd.js +28 -1
  376. package/paginator/prevpagelink.umd.min.js +1 -1
  377. package/paginator/rowsperpagedropdown.common.js +92 -28
  378. package/paginator/rowsperpagedropdown.umd.js +92 -28
  379. package/paginator/rowsperpagedropdown.umd.min.js +1 -1
  380. package/panel/Panel.d.ts +1 -0
  381. package/panel/Panel.vue +1 -1
  382. package/panel/panel.common.js +29 -2
  383. package/panel/panel.umd.js +29 -2
  384. package/panel/panel.umd.min.js +1 -1
  385. package/panelmenu/PanelMenu.d.ts +1 -0
  386. package/panelmenu/PanelMenu.vue +32 -6
  387. package/panelmenu/PanelMenuSub.vue +32 -13
  388. package/panelmenu/panelmenu.common.js +69 -16
  389. package/panelmenu/panelmenu.umd.js +69 -16
  390. package/panelmenu/panelmenu.umd.min.js +1 -1
  391. package/panelmenu/panelmenusub.common.js +29 -7
  392. package/panelmenu/panelmenusub.umd.js +29 -7
  393. package/panelmenu/panelmenusub.umd.min.js +1 -1
  394. package/password/password.common.js +31 -8
  395. package/password/password.umd.js +31 -8
  396. package/password/password.umd.min.js +1 -1
  397. package/picklist/PickList.d.ts +8 -0
  398. package/picklist/PickList.vue +10 -4
  399. package/picklist/picklist.common.js +57 -17
  400. package/picklist/picklist.umd.js +57 -17
  401. package/picklist/picklist.umd.min.js +1 -1
  402. package/progressbar/ProgressBar.vue +18 -14
  403. package/progressbar/progressbar.common.js +7 -5
  404. package/progressbar/progressbar.umd.js +7 -5
  405. package/progressbar/progressbar.umd.min.js +1 -1
  406. package/progressspinner/progressspinner.common.js +1 -1
  407. package/progressspinner/progressspinner.umd.js +1 -1
  408. package/radiobutton/radiobutton.common.js +26 -14
  409. package/radiobutton/radiobutton.umd.js +26 -14
  410. package/radiobutton/radiobutton.umd.min.js +1 -1
  411. package/rating/Rating.vue +1 -1
  412. package/rating/rating.common.js +3 -3
  413. package/rating/rating.umd.js +3 -3
  414. package/rating/rating.umd.min.js +1 -1
  415. package/resources/primevue.css +15 -4
  416. package/resources/primevue.min.css +1 -1
  417. package/resources/themes/arya-blue/theme.css +198 -59
  418. package/resources/themes/arya-green/theme.css +198 -59
  419. package/resources/themes/arya-orange/theme.css +198 -59
  420. package/resources/themes/arya-purple/theme.css +198 -59
  421. package/resources/themes/bootstrap4-dark-blue/theme.css +179 -47
  422. package/resources/themes/bootstrap4-dark-purple/theme.css +179 -47
  423. package/resources/themes/bootstrap4-light-blue/theme.css +179 -47
  424. package/resources/themes/bootstrap4-light-purple/theme.css +179 -47
  425. package/resources/themes/fluent-light/theme.css +202 -63
  426. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff +0 -0
  427. package/resources/themes/lara-dark-blue/fonts/Inter-Bold.woff2 +0 -0
  428. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff +0 -0
  429. package/resources/themes/lara-dark-blue/fonts/Inter-Light.woff2 +0 -0
  430. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff +0 -0
  431. package/resources/themes/lara-dark-blue/fonts/Inter-Medium.woff2 +0 -0
  432. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff +0 -0
  433. package/resources/themes/lara-dark-blue/fonts/Inter-Regular.woff2 +0 -0
  434. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff +0 -0
  435. package/resources/themes/lara-dark-blue/fonts/Inter-SemiBold.woff2 +0 -0
  436. package/resources/themes/lara-dark-blue/theme.css +5421 -0
  437. package/resources/themes/lara-dark-indigo/fonts/Inter-Bold.woff +0 -0
  438. package/resources/themes/lara-dark-indigo/fonts/Inter-Bold.woff2 +0 -0
  439. package/resources/themes/lara-dark-indigo/fonts/Inter-Light.woff +0 -0
  440. package/resources/themes/lara-dark-indigo/fonts/Inter-Light.woff2 +0 -0
  441. package/resources/themes/lara-dark-indigo/fonts/Inter-Medium.woff +0 -0
  442. package/resources/themes/lara-dark-indigo/fonts/Inter-Medium.woff2 +0 -0
  443. package/resources/themes/lara-dark-indigo/fonts/Inter-Regular.woff +0 -0
  444. package/resources/themes/lara-dark-indigo/fonts/Inter-Regular.woff2 +0 -0
  445. package/resources/themes/lara-dark-indigo/fonts/Inter-SemiBold.woff +0 -0
  446. package/resources/themes/lara-dark-indigo/fonts/Inter-SemiBold.woff2 +0 -0
  447. package/resources/themes/lara-dark-indigo/theme.css +5421 -0
  448. package/resources/themes/lara-dark-purple/fonts/Inter-Bold.woff +0 -0
  449. package/resources/themes/lara-dark-purple/fonts/Inter-Bold.woff2 +0 -0
  450. package/resources/themes/lara-dark-purple/fonts/Inter-Light.woff +0 -0
  451. package/resources/themes/lara-dark-purple/fonts/Inter-Light.woff2 +0 -0
  452. package/resources/themes/lara-dark-purple/fonts/Inter-Medium.woff +0 -0
  453. package/resources/themes/lara-dark-purple/fonts/Inter-Medium.woff2 +0 -0
  454. package/resources/themes/lara-dark-purple/fonts/Inter-Regular.woff +0 -0
  455. package/resources/themes/lara-dark-purple/fonts/Inter-Regular.woff2 +0 -0
  456. package/resources/themes/lara-dark-purple/fonts/Inter-SemiBold.woff +0 -0
  457. package/resources/themes/lara-dark-purple/fonts/Inter-SemiBold.woff2 +0 -0
  458. package/resources/themes/lara-dark-purple/theme.css +5421 -0
  459. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff +0 -0
  460. package/resources/themes/lara-dark-teal/fonts/Inter-Bold.woff2 +0 -0
  461. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff +0 -0
  462. package/resources/themes/lara-dark-teal/fonts/Inter-Light.woff2 +0 -0
  463. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff +0 -0
  464. package/resources/themes/lara-dark-teal/fonts/Inter-Medium.woff2 +0 -0
  465. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff +0 -0
  466. package/resources/themes/lara-dark-teal/fonts/Inter-Regular.woff2 +0 -0
  467. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff +0 -0
  468. package/resources/themes/lara-dark-teal/fonts/Inter-SemiBold.woff2 +0 -0
  469. package/resources/themes/lara-dark-teal/theme.css +5421 -0
  470. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff +0 -0
  471. package/resources/themes/lara-light-blue/fonts/Inter-Bold.woff2 +0 -0
  472. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff +0 -0
  473. package/resources/themes/lara-light-blue/fonts/Inter-Light.woff2 +0 -0
  474. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff +0 -0
  475. package/resources/themes/lara-light-blue/fonts/Inter-Medium.woff2 +0 -0
  476. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff +0 -0
  477. package/resources/themes/lara-light-blue/fonts/Inter-Regular.woff2 +0 -0
  478. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff +0 -0
  479. package/resources/themes/lara-light-blue/fonts/Inter-SemiBold.woff2 +0 -0
  480. package/resources/themes/lara-light-blue/theme.css +5421 -0
  481. package/resources/themes/lara-light-indigo/fonts/Inter-Bold.woff +0 -0
  482. package/resources/themes/lara-light-indigo/fonts/Inter-Bold.woff2 +0 -0
  483. package/resources/themes/lara-light-indigo/fonts/Inter-Light.woff +0 -0
  484. package/resources/themes/lara-light-indigo/fonts/Inter-Light.woff2 +0 -0
  485. package/resources/themes/lara-light-indigo/fonts/Inter-Medium.woff +0 -0
  486. package/resources/themes/lara-light-indigo/fonts/Inter-Medium.woff2 +0 -0
  487. package/resources/themes/lara-light-indigo/fonts/Inter-Regular.woff +0 -0
  488. package/resources/themes/lara-light-indigo/fonts/Inter-Regular.woff2 +0 -0
  489. package/resources/themes/lara-light-indigo/fonts/Inter-SemiBold.woff +0 -0
  490. package/resources/themes/lara-light-indigo/fonts/Inter-SemiBold.woff2 +0 -0
  491. package/resources/themes/lara-light-indigo/theme.css +5421 -0
  492. package/resources/themes/lara-light-purple/fonts/Inter-Bold.woff +0 -0
  493. package/resources/themes/lara-light-purple/fonts/Inter-Bold.woff2 +0 -0
  494. package/resources/themes/lara-light-purple/fonts/Inter-Light.woff +0 -0
  495. package/resources/themes/lara-light-purple/fonts/Inter-Light.woff2 +0 -0
  496. package/resources/themes/lara-light-purple/fonts/Inter-Medium.woff +0 -0
  497. package/resources/themes/lara-light-purple/fonts/Inter-Medium.woff2 +0 -0
  498. package/resources/themes/lara-light-purple/fonts/Inter-Regular.woff +0 -0
  499. package/resources/themes/lara-light-purple/fonts/Inter-Regular.woff2 +0 -0
  500. package/resources/themes/lara-light-purple/fonts/Inter-SemiBold.woff +0 -0
  501. package/resources/themes/lara-light-purple/fonts/Inter-SemiBold.woff2 +0 -0
  502. package/resources/themes/lara-light-purple/theme.css +5421 -0
  503. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff +0 -0
  504. package/resources/themes/lara-light-teal/fonts/Inter-Bold.woff2 +0 -0
  505. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff +0 -0
  506. package/resources/themes/lara-light-teal/fonts/Inter-Light.woff2 +0 -0
  507. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff +0 -0
  508. package/resources/themes/lara-light-teal/fonts/Inter-Medium.woff2 +0 -0
  509. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff +0 -0
  510. package/resources/themes/lara-light-teal/fonts/Inter-Regular.woff2 +0 -0
  511. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff +0 -0
  512. package/resources/themes/lara-light-teal/fonts/Inter-SemiBold.woff2 +0 -0
  513. package/resources/themes/lara-light-teal/theme.css +5421 -0
  514. package/resources/themes/luna-amber/theme.css +195 -63
  515. package/resources/themes/luna-blue/theme.css +195 -63
  516. package/resources/themes/luna-green/theme.css +195 -63
  517. package/resources/themes/luna-pink/theme.css +195 -63
  518. package/resources/themes/md-dark-deeppurple/theme.css +382 -87
  519. package/resources/themes/md-dark-indigo/theme.css +382 -87
  520. package/resources/themes/md-light-deeppurple/theme.css +382 -87
  521. package/resources/themes/md-light-indigo/theme.css +382 -87
  522. package/resources/themes/mdc-dark-deeppurple/theme.css +382 -87
  523. package/resources/themes/mdc-dark-indigo/theme.css +382 -87
  524. package/resources/themes/mdc-light-deeppurple/theme.css +382 -87
  525. package/resources/themes/mdc-light-indigo/theme.css +382 -87
  526. package/resources/themes/nova/theme.css +195 -63
  527. package/resources/themes/nova-accent/theme.css +195 -63
  528. package/resources/themes/nova-alt/theme.css +195 -63
  529. package/resources/themes/nova-vue/theme.css +195 -63
  530. package/resources/themes/rhea/theme.css +195 -63
  531. package/resources/themes/saga-blue/theme.css +182 -43
  532. package/resources/themes/saga-green/theme.css +182 -43
  533. package/resources/themes/saga-orange/theme.css +182 -43
  534. package/resources/themes/saga-purple/theme.css +182 -43
  535. package/resources/themes/tailwind-light/fonts/Inter-Bold.woff +0 -0
  536. package/resources/themes/tailwind-light/fonts/Inter-Bold.woff2 +0 -0
  537. package/resources/themes/tailwind-light/fonts/Inter-Light.woff +0 -0
  538. package/resources/themes/tailwind-light/fonts/Inter-Light.woff2 +0 -0
  539. package/resources/themes/tailwind-light/fonts/Inter-Medium.woff +0 -0
  540. package/resources/themes/tailwind-light/fonts/Inter-Medium.woff2 +0 -0
  541. package/resources/themes/tailwind-light/fonts/Inter-Regular.woff +0 -0
  542. package/resources/themes/tailwind-light/fonts/Inter-Regular.woff2 +0 -0
  543. package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff +0 -0
  544. package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff2 +0 -0
  545. package/resources/themes/tailwind-light/theme.css +5496 -0
  546. package/resources/themes/vela-blue/theme.css +198 -59
  547. package/resources/themes/vela-green/theme.css +198 -59
  548. package/resources/themes/vela-orange/theme.css +198 -59
  549. package/resources/themes/vela-purple/theme.css +198 -59
  550. package/ripple/ripple.common.js +27 -0
  551. package/ripple/ripple.umd.js +27 -0
  552. package/ripple/ripple.umd.min.js +1 -1
  553. package/row/row.common.js +1 -1
  554. package/row/row.umd.js +1 -1
  555. package/scrollpanel/scrollpanel.common.js +28 -1
  556. package/scrollpanel/scrollpanel.umd.js +28 -1
  557. package/scrollpanel/scrollpanel.umd.min.js +1 -1
  558. package/scrolltop/scrolltop.common.js +28 -1
  559. package/scrolltop/scrolltop.umd.js +28 -1
  560. package/scrolltop/scrolltop.umd.min.js +1 -1
  561. package/selectbutton/SelectButton.d.ts +3 -3
  562. package/selectbutton/SelectButton.vue +6 -1
  563. package/selectbutton/selectbutton.common.js +55 -16
  564. package/selectbutton/selectbutton.umd.js +55 -16
  565. package/selectbutton/selectbutton.umd.min.js +1 -1
  566. package/sidebar/Sidebar.vue +5 -16
  567. package/sidebar/sidebar.common.js +37 -15
  568. package/sidebar/sidebar.umd.js +37 -15
  569. package/sidebar/sidebar.umd.min.js +1 -1
  570. package/skeleton/skeleton.common.js +1 -1
  571. package/skeleton/skeleton.umd.js +1 -1
  572. package/slider/Slider.vue +20 -12
  573. package/slider/slider.common.js +41 -9
  574. package/slider/slider.umd.js +41 -9
  575. package/slider/slider.umd.min.js +1 -1
  576. package/speeddial/SpeedDial.d.ts +1 -0
  577. package/speeddial/SpeedDial.vue +10 -9
  578. package/speeddial/speeddial.common.js +40 -16
  579. package/speeddial/speeddial.umd.js +40 -16
  580. package/speeddial/speeddial.umd.min.js +1 -1
  581. package/splitbutton/splitbutton.common.js +73 -22
  582. package/splitbutton/splitbutton.umd.js +73 -22
  583. package/splitbutton/splitbutton.umd.min.js +1 -1
  584. package/splitter/splitter.common.js +27 -0
  585. package/splitter/splitter.umd.js +27 -0
  586. package/splitter/splitter.umd.min.js +1 -1
  587. package/steps/Steps.d.ts +1 -0
  588. package/steps/Steps.vue +30 -8
  589. package/steps/steps.common.js +33 -6
  590. package/steps/steps.umd.js +33 -6
  591. package/steps/steps.umd.min.js +1 -1
  592. package/styleclass/styleclass.common.js +27 -0
  593. package/styleclass/styleclass.umd.js +27 -0
  594. package/styleclass/styleclass.umd.min.js +1 -1
  595. package/tabmenu/TabMenu.d.ts +1 -0
  596. package/tabmenu/TabMenu.vue +39 -10
  597. package/tabmenu/tabmenu.common.js +192 -8
  598. package/tabmenu/tabmenu.umd.js +192 -8
  599. package/tabmenu/tabmenu.umd.min.js +1 -1
  600. package/tabpanel/tabpanel.common.js +1 -1
  601. package/tabpanel/tabpanel.umd.js +1 -1
  602. package/tabview/TabView.d.ts +1 -0
  603. package/tabview/TabView.vue +111 -11
  604. package/tabview/tabview.common.js +124 -18
  605. package/tabview/tabview.umd.js +124 -18
  606. package/tabview/tabview.umd.min.js +1 -1
  607. package/tag/Tag.vue +1 -1
  608. package/tag/tag.common.js +3 -3
  609. package/tag/tag.umd.js +3 -3
  610. package/tag/tag.umd.min.js +1 -1
  611. package/terminal/terminal.common.js +1 -1
  612. package/terminal/terminal.umd.js +1 -1
  613. package/textarea/textarea.common.js +3 -7
  614. package/textarea/textarea.umd.js +3 -7
  615. package/textarea/textarea.umd.min.js +1 -1
  616. package/tieredmenu/TieredMenu.d.ts +1 -0
  617. package/tieredmenu/TieredMenu.vue +5 -1
  618. package/tieredmenu/TieredMenuSub.vue +30 -14
  619. package/tieredmenu/tieredmenu.common.js +63 -13
  620. package/tieredmenu/tieredmenu.umd.js +63 -13
  621. package/tieredmenu/tieredmenu.umd.min.js +1 -1
  622. package/tieredmenu/tieredmenusub.common.js +53 -7
  623. package/tieredmenu/tieredmenusub.umd.js +53 -7
  624. package/tieredmenu/tieredmenusub.umd.min.js +1 -1
  625. package/timeline/timeline.common.js +26 -14
  626. package/timeline/timeline.umd.js +26 -14
  627. package/timeline/timeline.umd.min.js +1 -1
  628. package/toast/Toast.d.ts +4 -1
  629. package/toast/Toast.vue +1 -1
  630. package/toast/toast.common.js +30 -5
  631. package/toast/toast.umd.js +30 -5
  632. package/toast/toast.umd.min.js +1 -1
  633. package/toast/toastmessage.common.js +28 -1
  634. package/toast/toastmessage.umd.js +28 -1
  635. package/toast/toastmessage.umd.min.js +1 -1
  636. package/togglebutton/togglebutton.common.js +28 -1
  637. package/togglebutton/togglebutton.umd.js +28 -1
  638. package/togglebutton/togglebutton.umd.min.js +1 -1
  639. package/toolbar/Toolbar.d.ts +1 -1
  640. package/toolbar/Toolbar.vue +2 -2
  641. package/toolbar/toolbar.common.js +3 -3
  642. package/toolbar/toolbar.umd.js +3 -3
  643. package/toolbar/toolbar.umd.min.js +1 -1
  644. package/tooltip/Tooltip.css +1 -0
  645. package/tooltip/Tooltip.js +37 -2
  646. package/tooltip/tooltip.common.js +1760 -69
  647. package/tooltip/tooltip.umd.js +1760 -69
  648. package/tooltip/tooltip.umd.min.js +1 -1
  649. package/tree/Tree.vue +1 -0
  650. package/tree/TreeNode.vue +5 -1
  651. package/tree/tree.common.js +68 -32
  652. package/tree/tree.umd.js +68 -32
  653. package/tree/tree.umd.min.js +1 -1
  654. package/tree/treenode.common.js +36 -9
  655. package/tree/treenode.umd.js +36 -9
  656. package/tree/treenode.umd.min.js +1 -1
  657. package/treetable/FooterCell.vue +81 -0
  658. package/treetable/HeaderCell.vue +183 -0
  659. package/treetable/TreeTable.d.ts +3 -2
  660. package/treetable/TreeTable.vue +73 -114
  661. package/treetable/TreeTableRow.vue +7 -4
  662. package/treetable/footercell.common.js +5304 -0
  663. package/treetable/footercell.umd.js +5314 -0
  664. package/treetable/footercell.umd.min.js +1 -0
  665. package/treetable/headercell.common.js +5533 -0
  666. package/treetable/headercell.umd.js +5543 -0
  667. package/treetable/headercell.umd.min.js +1 -0
  668. package/treetable/treetable.common.js +3795 -1558
  669. package/treetable/treetable.umd.js +3795 -1558
  670. package/treetable/treetable.umd.min.js +1 -1
  671. package/treetable/treetablerow.common.js +58 -22
  672. package/treetable/treetablerow.umd.js +58 -22
  673. package/treetable/treetablerow.umd.min.js +1 -1
  674. package/treetable/treetablerowloader.common.js +61 -26
  675. package/treetable/treetablerowloader.umd.js +61 -26
  676. package/treetable/treetablerowloader.umd.min.js +1 -1
  677. package/tristatecheckbox/tristatecheckbox.common.js +1 -1
  678. package/tristatecheckbox/tristatecheckbox.umd.js +1 -1
  679. package/utils/ConnectedOverlayScrollHandler.js +1 -1
  680. package/utils/DomHandler.js +23 -1
  681. package/utils/EventBus.js +33 -0
  682. package/utils/ObjectUtils.js +15 -2
  683. package/utils/Utils.d.ts +73 -0
  684. package/utils/Utils.js +47 -0
  685. package/utils/connectedoverlayscrollhandler.common.js +27 -0
  686. package/utils/connectedoverlayscrollhandler.umd.js +27 -0
  687. package/utils/connectedoverlayscrollhandler.umd.min.js +1 -1
  688. package/utils/demo.html +3 -3
  689. package/utils/domhandler.common.js +27 -0
  690. package/utils/domhandler.umd.js +27 -0
  691. package/utils/domhandler.umd.min.js +1 -1
  692. package/utils/eventbus.common.js +1774 -0
  693. package/utils/eventbus.umd.js +1784 -0
  694. package/utils/eventbus.umd.min.js +1 -0
  695. package/utils/index.d.ts +1 -0
  696. package/utils/index.js +2 -0
  697. package/utils/objectutils.common.js +25 -13
  698. package/utils/objectutils.umd.js +25 -13
  699. package/utils/objectutils.umd.min.js +1 -1
  700. package/utils/utils.common.js +5486 -0
  701. package/utils/utils.umd.js +5496 -0
  702. package/utils/utils.umd.min.js +1 -0
  703. package/vetur-attributes.json +156 -20
  704. package/vetur-tags.json +60 -21
  705. package/web-types.json +497 -33
  706. package/confirmationservice/confirmationeventbus.umd.min.js +0 -1
  707. package/datatable/ScrollableView.vue +0 -223
  708. package/datatable/scrollableview.umd.min.js +0 -1
  709. package/utils/FilterUtils.js +0 -176
  710. package/utils/filterutils.umd.min.js +0 -1
@@ -0,0 +1,183 @@
1
+ <template>
2
+ <th :style="containerStyle" :class="containerClass" @click="onClick" @keydown="onKeyDown"
3
+ :tabindex="columnProp('sortable') ? '0' : null" :aria-sort="ariaSort">
4
+ <span class="p-column-resizer" @mousedown="onResizeStart" v-if="resizableColumns && !columnProp('frozen')"></span>
5
+ <TTColumnSlot :column="column" v-if="column.children && column.children.header" />
6
+ <span class="p-column-title" v-if="columnProp('header')">{{columnProp('header')}}</span>
7
+ <span v-if="columnProp('sortable')" :class="sortableColumnIcon"></span>
8
+ <span v-if="isMultiSorted()" class="p-sortable-column-badge">{{getMultiSortMetaIndex() + 1}}</span>
9
+ </th>
10
+ </template>
11
+
12
+ <script>
13
+ import DomHandler from '../utils/DomHandler.js';
14
+ import ObjectUtils from '../utils/ObjectUtils.js';
15
+ import TreeTableColumnSlot from './TreeTableColumnSlot.vue';
16
+
17
+ export default {
18
+ props: {
19
+ column: {
20
+ type: Object,
21
+ default: null
22
+ },
23
+ resizableColumns: {
24
+ type: Boolean,
25
+ default: false
26
+ },
27
+ sortField: {
28
+ type: [String, Function],
29
+ default: null
30
+ },
31
+ sortOrder: {
32
+ type: Number,
33
+ default: null
34
+ },
35
+ multiSortMeta: {
36
+ type: Array,
37
+ default: null
38
+ },
39
+ sortMode: {
40
+ type: String,
41
+ default: 'single'
42
+ }
43
+ },
44
+ data() {
45
+ return {
46
+ styleObject: {
47
+ left: '',
48
+ right: ''
49
+ }
50
+ }
51
+ },
52
+ mounted() {
53
+ if (this.columnProp('frozen')) {
54
+ this.updateStickyPosition();
55
+ }
56
+ },
57
+ updated() {
58
+ if (this.columnProp('frozen')) {
59
+ this.updateStickyPosition();
60
+ }
61
+ },
62
+ methods: {
63
+ columnProp(prop) {
64
+ return ObjectUtils.getVNodeProp(this.column, prop);
65
+ },
66
+ updateStickyPosition() {
67
+ if (this.columnProp('frozen')) {
68
+ let align = this.columnProp('alignFrozen');
69
+ if (align === 'right') {
70
+ let right = 0;
71
+ let next = this.$el.nextElementSibling;
72
+ if (next) {
73
+ right = DomHandler.getOuterWidth(next) + parseFloat(next.style.right);
74
+ }
75
+ this.styleObject.right = right + 'px';
76
+ }
77
+ else {
78
+ let left = 0;
79
+ let prev = this.$el.previousElementSibling;
80
+ if (prev) {
81
+ left = DomHandler.getOuterWidth(prev) + parseFloat(prev.style.left);
82
+ }
83
+ this.styleObject.left = left + 'px';
84
+ }
85
+
86
+ let filterRow = this.$el.parentElement.nextElementSibling;
87
+ if (filterRow) {
88
+ let index = DomHandler.index(this.$el);
89
+ filterRow.children[index].style.left = this.styleObject.left;
90
+ filterRow.children[index].style.right = this.styleObject.right;
91
+ }
92
+ }
93
+ },
94
+ onClick(event) {
95
+ this.$emit('column-click', {originalEvent: event, column: this.column});
96
+ },
97
+ onKeyDown(event) {
98
+ if (event.which === 13 && event.currentTarget.nodeName === 'TH' && DomHandler.hasClass(event.currentTarget, 'p-sortable-column')) {
99
+ this.$emit('column-click', {originalEvent: event, column: this.column});
100
+ }
101
+ },
102
+ onResizeStart(event) {
103
+ this.$emit('column-resizestart', event);
104
+ },
105
+ getMultiSortMetaIndex() {
106
+ let index = -1;
107
+
108
+ for (let i = 0; i < this.multiSortMeta.length; i++) {
109
+ let meta = this.multiSortMeta[i];
110
+ if (meta.field === this.columnProp('field') || meta.field === this.columnProp('sortField')) {
111
+ index = i;
112
+ break;
113
+ }
114
+ }
115
+
116
+ return index;
117
+ },
118
+ isMultiSorted() {
119
+ return this.columnProp('sortable') && this.getMultiSortMetaIndex() > -1
120
+ },
121
+ isColumnSorted() {
122
+ return this.sortMode === 'single' ? (this.sortField && (this.sortField === this.columnProp('field') || this.sortField === this.columnProp('sortField'))) : this.isMultiSorted();
123
+ }
124
+ },
125
+ computed: {
126
+ containerClass() {
127
+ return [this.columnProp('headerClass'), this.columnProp('className'), {
128
+ 'p-sortable-column': this.columnProp('sortable'),
129
+ 'p-resizable-column': this.resizableColumns,
130
+ 'p-highlight': this.isColumnSorted(),
131
+ 'p-frozen-column': this.columnProp('frozen')
132
+ }];
133
+ },
134
+ containerStyle() {
135
+ let headerStyle = this.columnProp('headerStyle');
136
+ let columnStyle = this.columnProp('styles');
137
+
138
+ return this.columnProp('frozen') ? [columnStyle, headerStyle, this.styleObject]: [columnStyle, headerStyle];
139
+ },
140
+ sortableColumnIcon() {
141
+ let sorted = false;
142
+ let sortOrder = null;
143
+
144
+ if (this.sortMode === 'single') {
145
+ sorted = this.sortField && (this.sortField === this.columnProp('field') || this.sortField === this.columnProp('sortField'));
146
+ sortOrder = sorted ? this.sortOrder: 0;
147
+ }
148
+ else if (this.sortMode === 'multiple') {
149
+ let metaIndex = this.getMultiSortMetaIndex();
150
+ if (metaIndex > -1) {
151
+ sorted = true;
152
+ sortOrder = this.multiSortMeta[metaIndex].order;
153
+ }
154
+ }
155
+
156
+ return [
157
+ 'p-sortable-column-icon pi pi-fw', {
158
+ 'pi-sort-alt': !sorted,
159
+ 'pi-sort-amount-up-alt': sorted && sortOrder > 0,
160
+ 'pi-sort-amount-down': sorted && sortOrder < 0
161
+ }
162
+ ];
163
+ },
164
+ ariaSort() {
165
+ if (this.columnProp('sortable')) {
166
+ const sortIcon = this.sortableColumnIcon;
167
+ if (sortIcon[1]['pi-sort-amount-down'])
168
+ return 'descending';
169
+ else if (sortIcon[1]['pi-sort-amount-up-alt'])
170
+ return 'ascending';
171
+ else
172
+ return 'none';
173
+ }
174
+ else {
175
+ return null;
176
+ }
177
+ },
178
+ },
179
+ components: {
180
+ 'TTColumnSlot': TreeTableColumnSlot
181
+ },
182
+ }
183
+ </script>
@@ -35,6 +35,7 @@ declare class TreeTable extends Vue {
35
35
  resizableColumns?: boolean;
36
36
  columnResizeMode?: string;
37
37
  indentation?: number;
38
+ showGridlines?: boolean;
38
39
  $emit(eventName: 'page', event: Event): this;
39
40
  $emit(eventName: 'sort', event: Event): this;
40
41
  $emit(eventName: 'filter', event: Event): this;
@@ -45,8 +46,8 @@ declare class TreeTable extends Vue {
45
46
  $emit(eventName: 'column-resize-end', event: Event): this;
46
47
  $slots: {
47
48
  header: VNode[];
48
- paginatorLeft: VNode[];
49
- paginatorRight: VNode[];
49
+ paginatorstart: VNode[];
50
+ paginatorend: VNode[];
50
51
  empty: VNode[];
51
52
  footer: VNode[];
52
53
  }
@@ -9,44 +9,34 @@
9
9
  <div class="p-treetable-header" v-if="$scopedSlots.header">
10
10
  <slot name="header"></slot>
11
11
  </div>
12
- <TTPaginator v-if="paginatorTop" :rows="d_rows" :first="d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
12
+ <TTPaginator v-if="paginatorTop" :rows="d_rows" :first="d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
13
13
  :currentPageReportTemplate="currentPageReportTemplate" class="p-paginator-top" @page="onPage($event)" :alwaysShow="alwaysShowPaginator">
14
- <template #left v-if="$scopedSlots.paginatorLeft">
15
- <slot name="paginatorLeft"></slot>
14
+ <template #start v-if="$scopedSlots.paginatorstart">
15
+ <slot name="paginatorstart"></slot>
16
16
  </template>
17
- <template #right v-if="$scopedSlots.paginatorRight">
18
- <slot name="paginatorRight"></slot>
17
+ <template #end v-if="$scopedSlots.paginatorend">
18
+ <slot name="paginatorend"></slot>
19
19
  </template>
20
20
  </TTPaginator>
21
21
  <div class="p-treetable-wrapper">
22
22
  <table ref="table">
23
23
  <thead class="p-treetable-thead">
24
24
  <tr>
25
- <th v-for="(col,i) of columns" :key="col.columnKey||col.field||i" :style="col.headerStyle" :class="getColumnHeaderClass(col)" @click="onColumnHeaderClick($event, col)"
26
- :tabindex="col.sortable ? '0' : null" :aria-sort="getAriaSort(col)" @keydown="onColumnKeyDown($event, col)">
27
- <span class="p-column-resizer" @mousedown="onColumnResizeStart" v-if="resizableColumns"></span>
28
- <TTColumnSlot :column="col" type="header" v-if="col.$scopedSlots.header" />
29
- <span class="p-column-title" v-if="col.header">{{col.header}}</span>
30
- <span v-if="col.sortable" :class="getSortableColumnIcon(col)"></span>
31
- <span v-if="isMultiSorted(col)" class="p-sortable-column-badge">{{getMultiSortMetaIndex(col) + 1}}</span>
32
- </th>
25
+ <template v-for="(col,i) of columns">
26
+ <TTHeaderCell v-if="!columnProp(col, 'hidden')" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||i" :column="col" :resizableColumns="resizableColumns"
27
+ :sortField="d_sortField" :sortOrder="d_sortOrder" :multiSortMeta="d_multiSortMeta" :sortMode="sortMode"
28
+ @column-click="onColumnHeaderClick" @column-resizestart="onColumnResizeStart"></TTHeaderCell>
29
+ </template>
33
30
  </tr>
34
31
  <tr v-if="hasColumnFilter()">
35
32
  <template v-for="(col,i) of columns">
36
- <th :key="col.columnKey||col.field||i" :class="getFilterColumnHeaderClass(col)" :style="col.filterHeaderStyle">
33
+ <th v-if="!columnProp(col, 'hidden')" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||i"
34
+ :class="getFilterColumnHeaderClass(col)" :style="[columnProp(col, 'styles'),columnProp(col, 'filterHeaderStyle')]">
37
35
  <TTColumnSlot :column="col" type="filter" v-if="col.$scopedSlots.filter" />
38
36
  </th>
39
37
  </template>
40
38
  </tr>
41
39
  </thead>
42
- <tfoot class="p-treetable-tfoot" v-if="hasFooter">
43
- <tr>
44
- <td v-for="(col,i) of columns" :key="col.columnKey||col.field||i" :style="col.footerStyle" :class="col.footerClass">
45
- <TTColumnSlot :column="col" type="footer" v-if="col.$scopedSlots.footer" />
46
- {{col.footer}}
47
- </td>
48
- </tr>
49
- </tfoot>
50
40
  <tbody class="p-treetable-tbody">
51
41
  <template v-if="!empty">
52
42
  <TTRow v-for="node of dataToRender" :key="node.key" :columns="columns" :node="node" :level="0"
@@ -59,15 +49,22 @@
59
49
  </td>
60
50
  </tr>
61
51
  </tbody>
52
+ <tfoot class="p-treetable-tfoot" v-if="hasFooter">
53
+ <tr>
54
+ <template v-for="(col,i) of columns">
55
+ <TTFooterCell v-if="!columnProp(col, 'hidden')" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||i" :column="col"></TTFooterCell>
56
+ </template>
57
+ </tr>
58
+ </tfoot>
62
59
  </table>
63
60
  </div>
64
61
  <TTPaginator v-if="paginatorBottom" :rows="d_rows" :first="d_first" :totalRecords="totalRecordsLength" :pageLinkSize="pageLinkSize" :template="paginatorTemplate" :rowsPerPageOptions="rowsPerPageOptions"
65
62
  :currentPageReportTemplate="currentPageReportTemplate" class="p-paginator-bottom" @page="onPage($event)" :alwaysShow="alwaysShowPaginator">
66
- <template #left v-if="$scopedSlots.paginatorLeft">
67
- <slot name="paginatorLeft"></slot>
63
+ <template #start v-if="$scopedSlots.paginatorstart">
64
+ <slot name="paginatorstart"></slot>
68
65
  </template>
69
- <template #right v-if="$scopedSlots.paginatorRight">
70
- <slot name="paginatorRight"></slot>
66
+ <template #end v-if="$scopedSlots.paginatorend">
67
+ <slot name="paginatorend"></slot>
71
68
  </template>
72
69
  </TTPaginator>
73
70
  <div class="p-treetable-footer" v-if="$scopedSlots.footer">
@@ -79,10 +76,12 @@
79
76
 
80
77
  <script>
81
78
  import ObjectUtils from '../utils/ObjectUtils';
82
- import FilterUtils from '../utils/FilterUtils';
83
79
  import DomHandler from '../utils/DomHandler';
80
+ import FilterService from '../api/FilterService';
84
81
  import TreeTableColumnSlot from './TreeTableColumnSlot';
85
82
  import TreeTableRowLoader from './TreeTableRowLoader';
83
+ import FooterCell from './FooterCell.vue';
84
+ import HeaderCell from './HeaderCell.vue';
86
85
  import Paginator from '../paginator/Paginator';
87
86
 
88
87
  export default {
@@ -214,6 +213,10 @@ export default {
214
213
  indentation: {
215
214
  type: Number,
216
215
  default: 1
216
+ },
217
+ showGridlines: {
218
+ type: Boolean,
219
+ default: false
217
220
  }
218
221
  },
219
222
  documentColumnResizeListener: null,
@@ -255,6 +258,9 @@ export default {
255
258
  this.allChildren = this.$children;
256
259
  },
257
260
  methods: {
261
+ columnProp(col, prop) {
262
+ return ObjectUtils.getVNodeProp(col, prop);
263
+ },
258
264
  onNodeToggle(node) {
259
265
  const key = node.key;
260
266
 
@@ -373,67 +379,18 @@ export default {
373
379
  this.d_first = 0;
374
380
  this.$emit('update:first', this.d_first);
375
381
  },
376
- isMultiSorted(column) {
377
- return column.sortable && this.getMultiSortMetaIndex(column) > -1
378
- },
379
- isColumnSorted(column) {
380
- if (column.sortable) {
381
- return this.sortMode === 'single' ? (this.d_sortField === (column.field || column.sortField)) : this.getMultiSortMetaIndex(column) > -1;
382
- }
383
-
384
- return false;
385
- },
386
- getColumnHeaderClass(column) {
387
- return [column.headerClass,
388
- {'p-sortable-column': column.sortable},
389
- {'p-resizable-column': this.resizableColumns},
390
- {'p-highlight': this.isColumnSorted(column)}
391
- ];
392
- },
393
382
  getFilterColumnHeaderClass(column) {
394
- return ['p-filter-column', column.filterHeaderClass];
395
- },
396
- getSortableColumnIcon(column) {
397
- let sorted = false;
398
- let sortOrder = null;
399
-
400
- if (this.sortMode === 'single') {
401
- sorted = this.d_sortField === (column.field || column.sortField);
402
- sortOrder = sorted ? this.d_sortOrder: 0;
403
- }
404
- else if (this.sortMode === 'multiple') {
405
- let metaIndex = this.getMultiSortMetaIndex(column);
406
- if (metaIndex > -1) {
407
- sorted = true;
408
- sortOrder = this.d_multiSortMeta[metaIndex].order;
409
- }
410
- }
411
-
412
- return [
413
- 'p-sortable-column-icon pi pi-fw', {
414
- 'pi-sort-alt': !sorted,
415
- 'pi-sort-amount-up-alt': sorted && sortOrder > 0,
416
- 'pi-sort-amount-down': sorted && sortOrder < 0
417
- }
418
- ];
383
+ return ['p-filter-column', this.columnProp(column, 'filterHeaderClass'), {
384
+ 'p-frozen-column': this.columnProp(column, 'frozen')
385
+ }];
419
386
  },
420
- getMultiSortMetaIndex(column) {
421
- let index = -1;
387
+ onColumnHeaderClick(e) {
388
+ let event = e.originalEvent;
389
+ let column = e.column;
422
390
 
423
- for (let i = 0; i < this.d_multiSortMeta.length; i++) {
424
- let meta = this.d_multiSortMeta[i];
425
- if (meta.field === (column.field || column.sortField)) {
426
- index = i;
427
- break;
428
- }
429
- }
430
-
431
- return index;
432
- },
433
- onColumnHeaderClick(event, column) {
434
- if (column.sortable) {
391
+ if (this.columnProp(column, 'sortable')) {
435
392
  const targetNode = event.target;
436
- const columnField = column.sortField || column.field;
393
+ const columnField = this.columnProp(column, 'sortField') || this.columnProp(column, 'field');
437
394
 
438
395
  if (DomHandler.hasClass(targetNode, 'p-sortable-column') || DomHandler.hasClass(targetNode, 'p-column-title')
439
396
  || DomHandler.hasClass(targetNode, 'p-sortable-column-icon') || DomHandler.hasClass(targetNode.parentElement, 'p-sortable-column-icon')) {
@@ -561,13 +518,13 @@ export default {
561
518
 
562
519
  for (let j = 0; j < this.columns.length; j++) {
563
520
  let col = this.columns[j];
564
- let filterField = col.field;
521
+ let filterField = this.columnProp(col, 'field');
565
522
 
566
523
  //local
567
- if (Object.prototype.hasOwnProperty.call(this.filters, col.field)) {
568
- let filterMatchMode = col.filterMatchMode;
569
- let filterValue = this.filters[col.field];
570
- let filterConstraint = FilterUtils[filterMatchMode];
524
+ if (Object.prototype.hasOwnProperty.call(this.filters, this.columnProp(col, 'field'))) {
525
+ let filterMatchMode = this.columnProp(col, 'filterMatchMode') || 'startsWith';
526
+ let filterValue = this.filters[this.columnProp(col, 'field')];
527
+ let filterConstraint = FilterService.filters[filterMatchMode];
571
528
  let paramsWithoutNode = {filterField, filterValue, filterConstraint, strict};
572
529
 
573
530
  if ((strict && !(this.findFilteredNodes(copyNode, paramsWithoutNode) || this.isFilterMatched(copyNode, paramsWithoutNode))) ||
@@ -584,7 +541,7 @@ export default {
584
541
  if (this.hasGlobalFilter() && !globalMatch) {
585
542
  let copyNodeForGlobal = {...copyNode};
586
543
  let filterValue = this.filters['global'];
587
- let filterConstraint = FilterUtils['contains'];
544
+ let filterConstraint = FilterService.filters['contains'];
588
545
  let globalFilterParamsWithoutNode = {filterField, filterValue, filterConstraint, strict};
589
546
 
590
547
  if ((strict && (this.findFilteredNodes(copyNodeForGlobal, globalFilterParamsWithoutNode) || this.isFilterMatched(copyNodeForGlobal, globalFilterParamsWithoutNode))) ||
@@ -655,8 +612,8 @@ export default {
655
612
  if (this.hasFilters()) {
656
613
  filterMatchModes = {};
657
614
  this.columns.forEach(col => {
658
- if (col.field) {
659
- filterMatchModes[col.field] = col.filterMatchMode;
615
+ if (this.columnProp(col, 'field')) {
616
+ filterMatchModes[col.field] = this.columnProp(col, 'filterMatchMode');
660
617
  }
661
618
  });
662
619
  }
@@ -695,7 +652,7 @@ export default {
695
652
  let newColumnWidth = columnWidth + delta;
696
653
  let minWidth = this.resizeColumnElement.style.minWidth||15;
697
654
 
698
- if(columnWidth + delta > parseInt(minWidth, 10)) {
655
+ if (columnWidth + delta > parseInt(minWidth, 10)) {
699
656
  if(this.columnResizeMode === 'fit') {
700
657
  let nextColumn = this.resizeColumnElement.nextElementSibling;
701
658
  let nextColumnWidth = nextColumn.offsetWidth - delta;
@@ -724,6 +681,23 @@ export default {
724
681
 
725
682
  this.unbindColumnResizeEvents();
726
683
  },
684
+ resizeTableCells(newColumnWidth, nextColumnWidth) {
685
+ let colIndex = DomHandler.index(this.resizeColumnElement);
686
+ let children = this.$refs.table.children;
687
+ for (let child of children) {
688
+ for (let row of child.children) {
689
+ let resizeCell = row.children[colIndex];
690
+ resizeCell.style.flex = '0 0 ' + newColumnWidth + 'px';
691
+
692
+ if (this.columnResizeMode === 'fit') {
693
+ let nextCell = resizeCell.nextElementSibling;
694
+ if (nextCell) {
695
+ nextCell.style.flex = '0 0 ' + nextColumnWidth + 'px';
696
+ }
697
+ }
698
+ }
699
+ }
700
+ },
727
701
  bindColumnResizeEvents() {
728
702
  if (!this.documentColumnResizeListener) {
729
703
  this.documentColumnResizeListener = document.addEventListener('mousemove', () => {
@@ -751,7 +725,7 @@ export default {
751
725
 
752
726
  if (this.documentColumnResizeEndListener) {
753
727
  document.removeEventListener('document', this.documentColumnResizeEndListener);
754
- this.documentColumnResizeEndListener = null;
728
+ this.documentColumnResizeEndListener = null;
755
729
  }
756
730
  },
757
731
  onColumnKeyDown(event, col) {
@@ -759,24 +733,10 @@ export default {
759
733
  this.onColumnHeaderClick(event, col);
760
734
  }
761
735
  },
762
- getAriaSort(column) {
763
- if (column.sortable) {
764
- const sortIcon = this.getSortableColumnIcon(column);
765
- if (sortIcon[1]['pi-sort-amount-down'])
766
- return 'descending';
767
- else if (sortIcon[1]['pi-sort-amount-up-alt'])
768
- return 'ascending';
769
- else
770
- return 'none';
771
- }
772
- else {
773
- return null;
774
- }
775
- },
776
736
  hasColumnFilter() {
777
737
  if (this.columns) {
778
738
  for (let col of this.columns) {
779
- if (col.$scopedSlots.filter) {
739
+ if (col.children && col.children.filter) {
780
740
  return true;
781
741
  }
782
742
  }
@@ -798,6 +758,7 @@ export default {
798
758
  'p-treetable-auto-layout': this.autoLayout,
799
759
  'p-treetable-resizable': this.resizableColumns,
800
760
  'p-treetable-resizable-fit': this.resizableColumns && this.columnResizeMode === 'fit',
761
+ 'p-treetable-gridlines': this.showGridlines
801
762
  }];
802
763
  },
803
764
  columns() {
@@ -894,6 +855,8 @@ export default {
894
855
  'TTColumnSlot': TreeTableColumnSlot,
895
856
  'TTRow': TreeTableRowLoader,
896
857
  'TTPaginator': Paginator,
858
+ 'TTHeaderCell': HeaderCell,
859
+ 'TTFooterCell': FooterCell
897
860
  }
898
861
  }
899
862
  </script>
@@ -914,10 +877,6 @@ export default {
914
877
  user-select: none;
915
878
  }
916
879
 
917
- .p-treetable-auto-layout > .p-treetable-wrapper {
918
- overflow-x: auto;
919
- }
920
-
921
880
  .p-treetable-auto-layout > .p-treetable-wrapper > table {
922
881
  table-layout: auto;
923
882
  }
@@ -956,7 +915,7 @@ export default {
956
915
  overflow: hidden;
957
916
  }
958
917
 
959
- .p-treetable-resizable .p-resizable-column {
918
+ .p-treetable-resizable .p-resizable-column:not(.p-frozen-column) {
960
919
  background-clip: padding-box;
961
920
  position: relative;
962
921
  }
@@ -1,10 +1,10 @@
1
1
  <template>
2
2
  <tr :class="containerClass" @click="onClick" @keydown="onKeyDown" @touchend="onTouchEnd" :style="node.style" tabindex="0">
3
- <td v-for="(col,i) of columns" :key="col.columnKey||col.field||i" :style="col.bodyStyle" :class="col.bodyClass">
4
- <button type="button" class="p-treetable-toggler p-link" @click="toggle" v-if="col.expander" :style="togglerStyle" tabindex="-1" v-ripple>
3
+ <td v-for="(col,i) of columns" :key="columnProp(col, 'columnKey')||columnProp(col, 'field')||i" :style="columnProp(col, 'bodyStyle')" :class="columnProp(col, 'bodyClass')">
4
+ <button type="button" class="p-treetable-toggler p-link" @click="toggle" v-if="columnProp(col,'expander')" :style="togglerStyle" tabindex="-1" v-ripple>
5
5
  <i :class="togglerIcon"></i>
6
6
  </button>
7
- <div class="p-checkbox p-treetable-checkbox p-component" @click="toggleCheckbox" v-if="checkboxSelectionMode && col.expander" role="checkbox" :aria-checked="checked">
7
+ <div :class="['p-checkbox p-treetable-checkbox p-component', {'p-checkbox-focused': checkboxFocused}]" @click="toggleCheckbox" v-if="checkboxSelectionMode && columnProp(col,'expander')" role="checkbox" :aria-checked="checked">
8
8
  <div class="p-hidden-accessible">
9
9
  <input type="checkbox" @focus="onCheckboxFocus" @blur="onCheckboxBlur" />
10
10
  </div>
@@ -67,6 +67,9 @@ export default {
67
67
  },
68
68
  nodeTouched: false,
69
69
  methods: {
70
+ columnProp(column, prop) {
71
+ return ObjectUtils.getVNodeProp(column, prop);
72
+ },
70
73
  resolveFieldData(rowData, field) {
71
74
  return ObjectUtils.resolveFieldData(rowData, field);
72
75
  },
@@ -198,7 +201,7 @@ export default {
198
201
  });
199
202
  },
200
203
  onCheckboxFocus() {
201
- this.checkboxFocused = true;
204
+ this.checkboxFocused = true;
202
205
  },
203
206
  onCheckboxBlur() {
204
207
  this.checkboxFocused = false;