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
@@ -1,20 +1,22 @@
1
1
  <template>
2
2
  <ul :class="containerClass" :role="root ? 'menubar' : 'menu'">
3
3
  <template v-for="(item, i) of model">
4
- <li role="none" :class="getItemClass(item)" :style="item.style" v-if="visible(item) && !item.separator" :key="item.label + i"
4
+ <li role="none" :class="getItemClass(item)" :style="item.style" v-if="visible(item) && !item.separator" :key="label(item) + i"
5
5
  @mouseenter="onItemMouseEnter($event, item)">
6
- <router-link v-if="item.to && !item.disabled" :to="item.to" :class="getLinkClass(item)" v-ripple
7
- @click.native="onItemClick($event, item)" @keydown.native="onItemKeyDown($event, item)" role="menuitem">
8
- <span :class="['p-menuitem-icon', item.icon]"></span>
9
- <span class="p-menuitem-text">{{item.label}}</span>
6
+ <router-link v-if="item.to && !disabled(item)" :to="item.to" custom v-slot="{navigate, href, isActive, isExactActive}">
7
+ <a :href="href" :class="linkClass(item, {isActive, isExactActive})" @click="onItemClick($event, item, navigate)" @keydown="onItemKeyDown($event, item)"
8
+ role="menuitem" v-ripple>
9
+ <span :class="['p-menuitem-icon', item.icon]"></span>
10
+ <span class="p-menuitem-text">{{label(item)}}</span>
11
+ </a>
10
12
  </router-link>
11
- <a v-else :href="item.url" :class="getLinkClass(item)" :target="item.target" :aria-haspopup="item.items != null" :aria-expanded="item === activeItem"
12
- @click="onItemClick($event, item)" @keydown="onItemKeyDown($event, item)" role="menuitem" :tabindex="item.disabled ? null : '0'" v-ripple>
13
+ <a v-else :href="item.url" :class="linkClass(item)" :target="item.target" :aria-haspopup="item.items != null" :aria-expanded="item === activeItem"
14
+ @click="onItemClick($event, item)" @keydown="onItemKeyDown($event, item)" role="menuitem" :tabindex="disabled(item) ? null : '0'" v-ripple>
13
15
  <span :class="['p-menuitem-icon', item.icon]"></span>
14
- <span class="p-menuitem-text">{{item.label}}</span>
16
+ <span class="p-menuitem-text">{{label(item)}}</span>
15
17
  <span :class="getSubmenuIcon()" v-if="item.items"></span>
16
18
  </a>
17
- <sub-menu :model="item.items" v-if="visible(item) && item.items" :key="item.label + '_sub_'" :mobileActive="mobileActive"
19
+ <sub-menu :model="item.items" v-if="visible(item) && item.items" :key="label(item) + '_sub_'" :exact="exact" :mobileActive="mobileActive"
18
20
  @leaf-click="onLeafClick" @keydown-item="onChildItemKeyDown" :parentActive="item === activeItem" />
19
21
  </li>
20
22
  <li :class="['p-menu-separator', item.class]" :style="item.style" v-if="visible(item) && item.separator" :key="'separator' + i" role="separator"></li>
@@ -48,6 +50,10 @@ export default {
48
50
  mobileActive: {
49
51
  type: Boolean,
50
52
  default: false
53
+ },
54
+ exact: {
55
+ type: Boolean,
56
+ default: true
51
57
  }
52
58
  },
53
59
  documentClickListener: null,
@@ -73,7 +79,7 @@ export default {
73
79
  },
74
80
  methods: {
75
81
  onItemMouseEnter(event, item) {
76
- if (item.disabled || this.mobileActive) {
82
+ if (this.disabled(item) || this.mobileActive) {
77
83
  event.preventDefault();
78
84
  return;
79
85
  }
@@ -87,8 +93,8 @@ export default {
87
93
  this.activeItem = item;
88
94
  }
89
95
  },
90
- onItemClick(event, item) {
91
- if (item.disabled) {
96
+ onItemClick(event, item, navigate) {
97
+ if (this.disabled(item)) {
92
98
  event.preventDefault();
93
99
  return;
94
100
  }
@@ -114,6 +120,10 @@ export default {
114
120
  if (!item.items) {
115
121
  this.onLeafClick();
116
122
  }
123
+
124
+ if (item.to && navigate) {
125
+ navigate(event);
126
+ }
117
127
  },
118
128
  onLeafClick() {
119
129
  this.activeItem = null;
@@ -241,8 +251,12 @@ export default {
241
251
  }
242
252
  ]
243
253
  },
244
- getLinkClass(item) {
245
- return ['p-menuitem-link', {'p-disabled': item.disabled}];
254
+ linkClass(item, routerProps) {
255
+ return ['p-menuitem-link', {
256
+ 'p-disabled': this.disabled(item),
257
+ 'router-link-active': routerProps && routerProps.isActive,
258
+ 'router-link-active-exact': this.exact && routerProps && routerProps.isExactActive
259
+ }];
246
260
  },
247
261
  bindDocumentClickListener() {
248
262
  if (!this.documentClickListener) {
@@ -269,6 +283,12 @@ export default {
269
283
  },
270
284
  visible(item) {
271
285
  return (typeof item.visible === 'function' ? item.visible() : item.visible !== false);
286
+ },
287
+ disabled(item) {
288
+ return (typeof item.disabled === 'function' ? item.disabled() : item.disabled);
289
+ },
290
+ label(item) {
291
+ return (typeof item.label === 'function' ? item.label() : item.label);
272
292
  }
273
293
  },
274
294
  computed: {
package/menubar/demo.html CHANGED
@@ -1,7 +1,7 @@
1
1
  <meta charset="utf-8">
2
- <title>menubar demo</title>
2
+ <title>menubarsub demo</title>
3
3
  <script src="https://unpkg.com/vue"></script>
4
- <script src="./menubar.umd.js"></script>
4
+ <script src="./menubarsub.umd.js"></script>
5
5
 
6
6
 
7
7
  <div id="app">
@@ -11,8 +11,7 @@
11
11
  <script>
12
12
  new Vue({
13
13
  components: {
14
- demo: menubar
14
+ demo: menubarsub
15
15
  }
16
16
  }).$mount('#app')
17
17
  </script>
18
- /script>
@@ -3173,19 +3173,24 @@ if (typeof window !== 'undefined') {
3173
3173
  // Indicate to webpack that this file can be concatenated
3174
3174
  /* harmony default export */ var setPublicPath = (null);
3175
3175
 
3176
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0538004c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/Menubar.vue?vue&type=template&id=9154ca4e&
3177
- var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.containerClass},[(_vm.$slots.start)?_c('div',{staticClass:"p-menubar-start"},[_vm._t("start")],2):_vm._e(),_c('a',{ref:"menubutton",staticClass:"p-menubar-button",attrs:{"tabindex":"0"},on:{"click":function($event){return _vm.toggle($event)}}},[_c('i',{staticClass:"pi pi-bars"})]),_c('MenubarSub',{ref:"rootmenu",attrs:{"model":_vm.model,"root":true,"mobileActive":_vm.mobileActive},on:{"leaf-click":_vm.onLeafClick}}),(_vm.$slots.end)?_c('div',{staticClass:"p-menubar-end"},[_vm._t("end")],2):_vm._e()],1)}
3176
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b9fe9a72-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/Menubar.vue?vue&type=template&id=050a1a2c&
3177
+ var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.containerClass},[(_vm.$slots.start)?_c('div',{staticClass:"p-menubar-start"},[_vm._t("start")],2):_vm._e(),_c('a',{ref:"menubutton",staticClass:"p-menubar-button",attrs:{"tabindex":"0"},on:{"click":function($event){return _vm.toggle($event)}}},[_c('i',{staticClass:"pi pi-bars"})]),_c('MenubarSub',{ref:"rootmenu",attrs:{"model":_vm.model,"root":true,"mobileActive":_vm.mobileActive,"exact":_vm.exact},on:{"leaf-click":_vm.onLeafClick}}),(_vm.$slots.end)?_c('div',{staticClass:"p-menubar-end"},[_vm._t("end")],2):_vm._e()],1)}
3178
3178
  var staticRenderFns = []
3179
3179
 
3180
3180
 
3181
- // CONCATENATED MODULE: ./src/components/menubar/Menubar.vue?vue&type=template&id=9154ca4e&
3181
+ // CONCATENATED MODULE: ./src/components/menubar/Menubar.vue?vue&type=template&id=050a1a2c&
3182
3182
 
3183
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0538004c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/MenubarSub.vue?vue&type=template&id=f64a5562&
3184
- var MenubarSubvue_type_template_id_f64a5562_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{class:_vm.containerClass,attrs:{"role":_vm.root ? 'menubar' : 'menu'}},[_vm._l((_vm.model),function(item,i){return [(_vm.visible(item) && !item.separator)?_c('li',{key:item.label + i,class:_vm.getItemClass(item),style:(item.style),attrs:{"role":"none"},on:{"mouseenter":function($event){return _vm.onItemMouseEnter($event, item)}}},[(item.to && !item.disabled)?_c('router-link',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.getLinkClass(item),attrs:{"to":item.to,"role":"menuitem"},nativeOn:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(item.label))])]):_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.getLinkClass(item),attrs:{"href":item.url,"target":item.target,"aria-haspopup":item.items != null,"aria-expanded":item === _vm.activeItem,"role":"menuitem","tabindex":item.disabled ? null : '0'},on:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(item.label))]),(item.items)?_c('span',{class:_vm.getSubmenuIcon()}):_vm._e()]),(_vm.visible(item) && item.items)?_c('sub-menu',{key:item.label + '_sub_',attrs:{"model":item.items,"mobileActive":_vm.mobileActive,"parentActive":item === _vm.activeItem},on:{"leaf-click":_vm.onLeafClick,"keydown-item":_vm.onChildItemKeyDown}}):_vm._e()],1):_vm._e(),(_vm.visible(item) && item.separator)?_c('li',{key:'separator' + i,class:['p-menu-separator', item.class],style:(item.style),attrs:{"role":"separator"}}):_vm._e()]})],2)}
3185
- var MenubarSubvue_type_template_id_f64a5562_staticRenderFns = []
3183
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b9fe9a72-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/MenubarSub.vue?vue&type=template&id=a44977b2&
3184
+ var MenubarSubvue_type_template_id_a44977b2_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{class:_vm.containerClass,attrs:{"role":_vm.root ? 'menubar' : 'menu'}},[_vm._l((_vm.model),function(item,i){return [(_vm.visible(item) && !item.separator)?_c('li',{key:_vm.label(item) + i,class:_vm.getItemClass(item),style:(item.style),attrs:{"role":"none"},on:{"mouseenter":function($event){return _vm.onItemMouseEnter($event, item)}}},[(item.to && !_vm.disabled(item))?_c('router-link',{attrs:{"to":item.to,"custom":""},scopedSlots:_vm._u([{key:"default",fn:function(ref){
3185
+ var navigate = ref.navigate;
3186
+ var href = ref.href;
3187
+ var isActive = ref.isActive;
3188
+ var isExactActive = ref.isExactActive;
3189
+ return [_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.linkClass(item, {isActive: isActive, isExactActive: isExactActive}),attrs:{"href":href,"role":"menuitem"},on:{"click":function($event){return _vm.onItemClick($event, item, navigate)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(_vm.label(item)))])])]}}],null,true)}):_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.linkClass(item),attrs:{"href":item.url,"target":item.target,"aria-haspopup":item.items != null,"aria-expanded":item === _vm.activeItem,"role":"menuitem","tabindex":_vm.disabled(item) ? null : '0'},on:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(_vm.label(item)))]),(item.items)?_c('span',{class:_vm.getSubmenuIcon()}):_vm._e()]),(_vm.visible(item) && item.items)?_c('sub-menu',{key:_vm.label(item) + '_sub_',attrs:{"model":item.items,"exact":_vm.exact,"mobileActive":_vm.mobileActive,"parentActive":item === _vm.activeItem},on:{"leaf-click":_vm.onLeafClick,"keydown-item":_vm.onChildItemKeyDown}}):_vm._e()],1):_vm._e(),(_vm.visible(item) && item.separator)?_c('li',{key:'separator' + i,class:['p-menu-separator', item.class],style:(item.style),attrs:{"role":"separator"}}):_vm._e()]})],2)}
3190
+ var MenubarSubvue_type_template_id_a44977b2_staticRenderFns = []
3186
3191
 
3187
3192
 
3188
- // CONCATENATED MODULE: ./src/components/menubar/MenubarSub.vue?vue&type=template&id=f64a5562&
3193
+ // CONCATENATED MODULE: ./src/components/menubar/MenubarSub.vue?vue&type=template&id=a44977b2&
3189
3194
 
3190
3195
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es7.symbol.async-iterator.js
3191
3196
  var es7_symbol_async_iterator = __webpack_require__("ac4d");
@@ -3244,6 +3249,11 @@ function _defineProperties(target, props) {
3244
3249
  function _createClass(Constructor, protoProps, staticProps) {
3245
3250
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
3246
3251
  if (staticProps) _defineProperties(Constructor, staticProps);
3252
+
3253
+ define_property_default()(Constructor, "prototype", {
3254
+ writable: false
3255
+ });
3256
+
3247
3257
  return Constructor;
3248
3258
  }
3249
3259
  // CONCATENATED MODULE: ./src/components/utils/DomHandler.js
@@ -3776,6 +3786,12 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3776
3786
 
3777
3787
  return visibleFocusableElements;
3778
3788
  }
3789
+ }, {
3790
+ key: "getFirstFocusableElement",
3791
+ value: function getFirstFocusableElement(element) {
3792
+ var focusableElements = this.getFocusableElements(element);
3793
+ return focusableElements.length > 0 ? focusableElements[0] : null;
3794
+ }
3779
3795
  }, {
3780
3796
  key: "isClickable",
3781
3797
  value: function isClickable(element) {
@@ -3783,6 +3799,17 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3783
3799
  var parentNode = element.parentElement && element.parentElement.nodeName;
3784
3800
  return targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' || parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' || this.hasClass(element, 'p-button') || this.hasClass(element.parentElement, 'p-button') || this.hasClass(element.parentElement, 'p-checkbox') || this.hasClass(element.parentElement, 'p-radiobutton');
3785
3801
  }
3802
+ }, {
3803
+ key: "applyStyle",
3804
+ value: function applyStyle(element, style) {
3805
+ if (typeof style === 'string') {
3806
+ element.style.cssText = style;
3807
+ } else {
3808
+ for (var prop in style) {
3809
+ element.style[prop] = style[prop];
3810
+ }
3811
+ }
3812
+ }
3786
3813
  }, {
3787
3814
  key: "isIOS",
3788
3815
  value: function isIOS() {
@@ -3793,6 +3820,11 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3793
3820
  value: function isAndroid() {
3794
3821
  return /(android)/i.test(navigator.userAgent);
3795
3822
  }
3823
+ }, {
3824
+ key: "isTouchDevice",
3825
+ value: function isTouchDevice() {
3826
+ return 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0;
3827
+ }
3796
3828
  }]);
3797
3829
 
3798
3830
  return DomHandler;
@@ -3902,6 +3934,8 @@ var Ripple = {
3902
3934
  //
3903
3935
  //
3904
3936
  //
3937
+ //
3938
+ //
3905
3939
 
3906
3940
 
3907
3941
  /* harmony default export */ var MenubarSubvue_type_script_lang_js_ = ({
@@ -3926,6 +3960,10 @@ var Ripple = {
3926
3960
  mobileActive: {
3927
3961
  type: Boolean,
3928
3962
  default: false
3963
+ },
3964
+ exact: {
3965
+ type: Boolean,
3966
+ default: true
3929
3967
  }
3930
3968
  },
3931
3969
  documentClickListener: null,
@@ -3951,7 +3989,7 @@ var Ripple = {
3951
3989
  },
3952
3990
  methods: {
3953
3991
  onItemMouseEnter: function onItemMouseEnter(event, item) {
3954
- if (item.disabled || this.mobileActive) {
3992
+ if (this.disabled(item) || this.mobileActive) {
3955
3993
  event.preventDefault();
3956
3994
  return;
3957
3995
  }
@@ -3964,8 +4002,8 @@ var Ripple = {
3964
4002
  this.activeItem = item;
3965
4003
  }
3966
4004
  },
3967
- onItemClick: function onItemClick(event, item) {
3968
- if (item.disabled) {
4005
+ onItemClick: function onItemClick(event, item, navigate) {
4006
+ if (this.disabled(item)) {
3969
4007
  event.preventDefault();
3970
4008
  return;
3971
4009
  }
@@ -3988,6 +4026,10 @@ var Ripple = {
3988
4026
  if (!item.items) {
3989
4027
  this.onLeafClick();
3990
4028
  }
4029
+
4030
+ if (item.to && navigate) {
4031
+ navigate(event);
4032
+ }
3991
4033
  },
3992
4034
  onLeafClick: function onLeafClick() {
3993
4035
  this.activeItem = null;
@@ -4104,9 +4146,11 @@ var Ripple = {
4104
4146
  'p-menuitem-active': this.activeItem === item
4105
4147
  }];
4106
4148
  },
4107
- getLinkClass: function getLinkClass(item) {
4149
+ linkClass: function linkClass(item, routerProps) {
4108
4150
  return ['p-menuitem-link', {
4109
- 'p-disabled': item.disabled
4151
+ 'p-disabled': this.disabled(item),
4152
+ 'router-link-active': routerProps && routerProps.isActive,
4153
+ 'router-link-active-exact': this.exact && routerProps && routerProps.isExactActive
4110
4154
  }];
4111
4155
  },
4112
4156
  bindDocumentClickListener: function bindDocumentClickListener() {
@@ -4138,6 +4182,12 @@ var Ripple = {
4138
4182
  },
4139
4183
  visible: function visible(item) {
4140
4184
  return typeof item.visible === 'function' ? item.visible() : item.visible !== false;
4185
+ },
4186
+ disabled: function disabled(item) {
4187
+ return typeof item.disabled === 'function' ? item.disabled() : item.disabled;
4188
+ },
4189
+ label: function label(item) {
4190
+ return typeof item.label === 'function' ? item.label() : item.label;
4141
4191
  }
4142
4192
  },
4143
4193
  computed: {
@@ -4264,8 +4314,8 @@ function normalizeComponent (
4264
4314
 
4265
4315
  var component = normalizeComponent(
4266
4316
  menubar_MenubarSubvue_type_script_lang_js_,
4267
- MenubarSubvue_type_template_id_f64a5562_render,
4268
- MenubarSubvue_type_template_id_f64a5562_staticRenderFns,
4317
+ MenubarSubvue_type_template_id_a44977b2_render,
4318
+ MenubarSubvue_type_template_id_a44977b2_staticRenderFns,
4269
4319
  false,
4270
4320
  null,
4271
4321
  null,
@@ -4297,6 +4347,10 @@ var component = normalizeComponent(
4297
4347
  model: {
4298
4348
  type: Array,
4299
4349
  default: null
4350
+ },
4351
+ exact: {
4352
+ type: Boolean,
4353
+ default: true
4300
4354
  }
4301
4355
  },
4302
4356
  outsideClickListener: null,
@@ -3182,19 +3182,24 @@ if (typeof window !== 'undefined') {
3182
3182
  // Indicate to webpack that this file can be concatenated
3183
3183
  /* harmony default export */ var setPublicPath = (null);
3184
3184
 
3185
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0538004c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/Menubar.vue?vue&type=template&id=9154ca4e&
3186
- var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.containerClass},[(_vm.$slots.start)?_c('div',{staticClass:"p-menubar-start"},[_vm._t("start")],2):_vm._e(),_c('a',{ref:"menubutton",staticClass:"p-menubar-button",attrs:{"tabindex":"0"},on:{"click":function($event){return _vm.toggle($event)}}},[_c('i',{staticClass:"pi pi-bars"})]),_c('MenubarSub',{ref:"rootmenu",attrs:{"model":_vm.model,"root":true,"mobileActive":_vm.mobileActive},on:{"leaf-click":_vm.onLeafClick}}),(_vm.$slots.end)?_c('div',{staticClass:"p-menubar-end"},[_vm._t("end")],2):_vm._e()],1)}
3185
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b9fe9a72-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/Menubar.vue?vue&type=template&id=050a1a2c&
3186
+ var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.containerClass},[(_vm.$slots.start)?_c('div',{staticClass:"p-menubar-start"},[_vm._t("start")],2):_vm._e(),_c('a',{ref:"menubutton",staticClass:"p-menubar-button",attrs:{"tabindex":"0"},on:{"click":function($event){return _vm.toggle($event)}}},[_c('i',{staticClass:"pi pi-bars"})]),_c('MenubarSub',{ref:"rootmenu",attrs:{"model":_vm.model,"root":true,"mobileActive":_vm.mobileActive,"exact":_vm.exact},on:{"leaf-click":_vm.onLeafClick}}),(_vm.$slots.end)?_c('div',{staticClass:"p-menubar-end"},[_vm._t("end")],2):_vm._e()],1)}
3187
3187
  var staticRenderFns = []
3188
3188
 
3189
3189
 
3190
- // CONCATENATED MODULE: ./src/components/menubar/Menubar.vue?vue&type=template&id=9154ca4e&
3190
+ // CONCATENATED MODULE: ./src/components/menubar/Menubar.vue?vue&type=template&id=050a1a2c&
3191
3191
 
3192
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"0538004c-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/MenubarSub.vue?vue&type=template&id=f64a5562&
3193
- var MenubarSubvue_type_template_id_f64a5562_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{class:_vm.containerClass,attrs:{"role":_vm.root ? 'menubar' : 'menu'}},[_vm._l((_vm.model),function(item,i){return [(_vm.visible(item) && !item.separator)?_c('li',{key:item.label + i,class:_vm.getItemClass(item),style:(item.style),attrs:{"role":"none"},on:{"mouseenter":function($event){return _vm.onItemMouseEnter($event, item)}}},[(item.to && !item.disabled)?_c('router-link',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.getLinkClass(item),attrs:{"to":item.to,"role":"menuitem"},nativeOn:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(item.label))])]):_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.getLinkClass(item),attrs:{"href":item.url,"target":item.target,"aria-haspopup":item.items != null,"aria-expanded":item === _vm.activeItem,"role":"menuitem","tabindex":item.disabled ? null : '0'},on:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(item.label))]),(item.items)?_c('span',{class:_vm.getSubmenuIcon()}):_vm._e()]),(_vm.visible(item) && item.items)?_c('sub-menu',{key:item.label + '_sub_',attrs:{"model":item.items,"mobileActive":_vm.mobileActive,"parentActive":item === _vm.activeItem},on:{"leaf-click":_vm.onLeafClick,"keydown-item":_vm.onChildItemKeyDown}}):_vm._e()],1):_vm._e(),(_vm.visible(item) && item.separator)?_c('li',{key:'separator' + i,class:['p-menu-separator', item.class],style:(item.style),attrs:{"role":"separator"}}):_vm._e()]})],2)}
3194
- var MenubarSubvue_type_template_id_f64a5562_staticRenderFns = []
3192
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b9fe9a72-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/menubar/MenubarSub.vue?vue&type=template&id=a44977b2&
3193
+ var MenubarSubvue_type_template_id_a44977b2_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{class:_vm.containerClass,attrs:{"role":_vm.root ? 'menubar' : 'menu'}},[_vm._l((_vm.model),function(item,i){return [(_vm.visible(item) && !item.separator)?_c('li',{key:_vm.label(item) + i,class:_vm.getItemClass(item),style:(item.style),attrs:{"role":"none"},on:{"mouseenter":function($event){return _vm.onItemMouseEnter($event, item)}}},[(item.to && !_vm.disabled(item))?_c('router-link',{attrs:{"to":item.to,"custom":""},scopedSlots:_vm._u([{key:"default",fn:function(ref){
3194
+ var navigate = ref.navigate;
3195
+ var href = ref.href;
3196
+ var isActive = ref.isActive;
3197
+ var isExactActive = ref.isExactActive;
3198
+ return [_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.linkClass(item, {isActive: isActive, isExactActive: isExactActive}),attrs:{"href":href,"role":"menuitem"},on:{"click":function($event){return _vm.onItemClick($event, item, navigate)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(_vm.label(item)))])])]}}],null,true)}):_c('a',{directives:[{name:"ripple",rawName:"v-ripple"}],class:_vm.linkClass(item),attrs:{"href":item.url,"target":item.target,"aria-haspopup":item.items != null,"aria-expanded":item === _vm.activeItem,"role":"menuitem","tabindex":_vm.disabled(item) ? null : '0'},on:{"click":function($event){return _vm.onItemClick($event, item)},"keydown":function($event){return _vm.onItemKeyDown($event, item)}}},[_c('span',{class:['p-menuitem-icon', item.icon]}),_c('span',{staticClass:"p-menuitem-text"},[_vm._v(_vm._s(_vm.label(item)))]),(item.items)?_c('span',{class:_vm.getSubmenuIcon()}):_vm._e()]),(_vm.visible(item) && item.items)?_c('sub-menu',{key:_vm.label(item) + '_sub_',attrs:{"model":item.items,"exact":_vm.exact,"mobileActive":_vm.mobileActive,"parentActive":item === _vm.activeItem},on:{"leaf-click":_vm.onLeafClick,"keydown-item":_vm.onChildItemKeyDown}}):_vm._e()],1):_vm._e(),(_vm.visible(item) && item.separator)?_c('li',{key:'separator' + i,class:['p-menu-separator', item.class],style:(item.style),attrs:{"role":"separator"}}):_vm._e()]})],2)}
3199
+ var MenubarSubvue_type_template_id_a44977b2_staticRenderFns = []
3195
3200
 
3196
3201
 
3197
- // CONCATENATED MODULE: ./src/components/menubar/MenubarSub.vue?vue&type=template&id=f64a5562&
3202
+ // CONCATENATED MODULE: ./src/components/menubar/MenubarSub.vue?vue&type=template&id=a44977b2&
3198
3203
 
3199
3204
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es7.symbol.async-iterator.js
3200
3205
  var es7_symbol_async_iterator = __webpack_require__("ac4d");
@@ -3253,6 +3258,11 @@ function _defineProperties(target, props) {
3253
3258
  function _createClass(Constructor, protoProps, staticProps) {
3254
3259
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
3255
3260
  if (staticProps) _defineProperties(Constructor, staticProps);
3261
+
3262
+ define_property_default()(Constructor, "prototype", {
3263
+ writable: false
3264
+ });
3265
+
3256
3266
  return Constructor;
3257
3267
  }
3258
3268
  // CONCATENATED MODULE: ./src/components/utils/DomHandler.js
@@ -3785,6 +3795,12 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3785
3795
 
3786
3796
  return visibleFocusableElements;
3787
3797
  }
3798
+ }, {
3799
+ key: "getFirstFocusableElement",
3800
+ value: function getFirstFocusableElement(element) {
3801
+ var focusableElements = this.getFocusableElements(element);
3802
+ return focusableElements.length > 0 ? focusableElements[0] : null;
3803
+ }
3788
3804
  }, {
3789
3805
  key: "isClickable",
3790
3806
  value: function isClickable(element) {
@@ -3792,6 +3808,17 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3792
3808
  var parentNode = element.parentElement && element.parentElement.nodeName;
3793
3809
  return targetNode == 'INPUT' || targetNode == 'BUTTON' || targetNode == 'A' || parentNode == 'INPUT' || parentNode == 'BUTTON' || parentNode == 'A' || this.hasClass(element, 'p-button') || this.hasClass(element.parentElement, 'p-button') || this.hasClass(element.parentElement, 'p-checkbox') || this.hasClass(element.parentElement, 'p-radiobutton');
3794
3810
  }
3811
+ }, {
3812
+ key: "applyStyle",
3813
+ value: function applyStyle(element, style) {
3814
+ if (typeof style === 'string') {
3815
+ element.style.cssText = style;
3816
+ } else {
3817
+ for (var prop in style) {
3818
+ element.style[prop] = style[prop];
3819
+ }
3820
+ }
3821
+ }
3795
3822
  }, {
3796
3823
  key: "isIOS",
3797
3824
  value: function isIOS() {
@@ -3802,6 +3829,11 @@ var DomHandler_DomHandler = /*#__PURE__*/function () {
3802
3829
  value: function isAndroid() {
3803
3830
  return /(android)/i.test(navigator.userAgent);
3804
3831
  }
3832
+ }, {
3833
+ key: "isTouchDevice",
3834
+ value: function isTouchDevice() {
3835
+ return 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0;
3836
+ }
3805
3837
  }]);
3806
3838
 
3807
3839
  return DomHandler;
@@ -3911,6 +3943,8 @@ var Ripple = {
3911
3943
  //
3912
3944
  //
3913
3945
  //
3946
+ //
3947
+ //
3914
3948
 
3915
3949
 
3916
3950
  /* harmony default export */ var MenubarSubvue_type_script_lang_js_ = ({
@@ -3935,6 +3969,10 @@ var Ripple = {
3935
3969
  mobileActive: {
3936
3970
  type: Boolean,
3937
3971
  default: false
3972
+ },
3973
+ exact: {
3974
+ type: Boolean,
3975
+ default: true
3938
3976
  }
3939
3977
  },
3940
3978
  documentClickListener: null,
@@ -3960,7 +3998,7 @@ var Ripple = {
3960
3998
  },
3961
3999
  methods: {
3962
4000
  onItemMouseEnter: function onItemMouseEnter(event, item) {
3963
- if (item.disabled || this.mobileActive) {
4001
+ if (this.disabled(item) || this.mobileActive) {
3964
4002
  event.preventDefault();
3965
4003
  return;
3966
4004
  }
@@ -3973,8 +4011,8 @@ var Ripple = {
3973
4011
  this.activeItem = item;
3974
4012
  }
3975
4013
  },
3976
- onItemClick: function onItemClick(event, item) {
3977
- if (item.disabled) {
4014
+ onItemClick: function onItemClick(event, item, navigate) {
4015
+ if (this.disabled(item)) {
3978
4016
  event.preventDefault();
3979
4017
  return;
3980
4018
  }
@@ -3997,6 +4035,10 @@ var Ripple = {
3997
4035
  if (!item.items) {
3998
4036
  this.onLeafClick();
3999
4037
  }
4038
+
4039
+ if (item.to && navigate) {
4040
+ navigate(event);
4041
+ }
4000
4042
  },
4001
4043
  onLeafClick: function onLeafClick() {
4002
4044
  this.activeItem = null;
@@ -4113,9 +4155,11 @@ var Ripple = {
4113
4155
  'p-menuitem-active': this.activeItem === item
4114
4156
  }];
4115
4157
  },
4116
- getLinkClass: function getLinkClass(item) {
4158
+ linkClass: function linkClass(item, routerProps) {
4117
4159
  return ['p-menuitem-link', {
4118
- 'p-disabled': item.disabled
4160
+ 'p-disabled': this.disabled(item),
4161
+ 'router-link-active': routerProps && routerProps.isActive,
4162
+ 'router-link-active-exact': this.exact && routerProps && routerProps.isExactActive
4119
4163
  }];
4120
4164
  },
4121
4165
  bindDocumentClickListener: function bindDocumentClickListener() {
@@ -4147,6 +4191,12 @@ var Ripple = {
4147
4191
  },
4148
4192
  visible: function visible(item) {
4149
4193
  return typeof item.visible === 'function' ? item.visible() : item.visible !== false;
4194
+ },
4195
+ disabled: function disabled(item) {
4196
+ return typeof item.disabled === 'function' ? item.disabled() : item.disabled;
4197
+ },
4198
+ label: function label(item) {
4199
+ return typeof item.label === 'function' ? item.label() : item.label;
4150
4200
  }
4151
4201
  },
4152
4202
  computed: {
@@ -4273,8 +4323,8 @@ function normalizeComponent (
4273
4323
 
4274
4324
  var component = normalizeComponent(
4275
4325
  menubar_MenubarSubvue_type_script_lang_js_,
4276
- MenubarSubvue_type_template_id_f64a5562_render,
4277
- MenubarSubvue_type_template_id_f64a5562_staticRenderFns,
4326
+ MenubarSubvue_type_template_id_a44977b2_render,
4327
+ MenubarSubvue_type_template_id_a44977b2_staticRenderFns,
4278
4328
  false,
4279
4329
  null,
4280
4330
  null,
@@ -4306,6 +4356,10 @@ var component = normalizeComponent(
4306
4356
  model: {
4307
4357
  type: Array,
4308
4358
  default: null
4359
+ },
4360
+ exact: {
4361
+ type: Boolean,
4362
+ default: true
4309
4363
  }
4310
4364
  },
4311
4365
  outsideClickListener: null,