primevue 3.32.2 → 3.34.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 (426) hide show
  1. package/accordion/Accordion.d.ts +21 -2
  2. package/accordion/accordion.cjs.js +3 -3
  3. package/accordion/accordion.esm.js +3 -3
  4. package/accordion/accordion.js +3 -3
  5. package/accordiontab/AccordionTab.d.ts +24 -2
  6. package/autocomplete/AutoComplete.d.ts +24 -2
  7. package/autocomplete/AutoComplete.vue +1 -1
  8. package/autocomplete/autocomplete.cjs.js +5 -5
  9. package/autocomplete/autocomplete.cjs.min.js +1 -1
  10. package/autocomplete/autocomplete.esm.js +5 -5
  11. package/autocomplete/autocomplete.esm.min.js +1 -1
  12. package/autocomplete/autocomplete.js +5 -5
  13. package/autocomplete/autocomplete.min.js +1 -1
  14. package/avatar/Avatar.d.ts +21 -2
  15. package/avatargroup/AvatarGroup.d.ts +8 -2
  16. package/badge/Badge.d.ts +18 -2
  17. package/badgedirective/BadgeDirective.d.ts +12 -2
  18. package/badgedirective/badgedirective.cjs.js +3 -3
  19. package/badgedirective/badgedirective.esm.js +3 -3
  20. package/badgedirective/badgedirective.js +3 -3
  21. package/basecomponent/BaseComponent.vue +20 -22
  22. package/basecomponent/basecomponent.cjs.js +41 -28
  23. package/basecomponent/basecomponent.cjs.min.js +1 -1
  24. package/basecomponent/basecomponent.esm.js +41 -28
  25. package/basecomponent/basecomponent.esm.min.js +1 -1
  26. package/basecomponent/basecomponent.js +41 -28
  27. package/basecomponent/basecomponent.min.js +1 -1
  28. package/basedirective/basedirective.cjs.js +42 -25
  29. package/basedirective/basedirective.cjs.min.js +1 -1
  30. package/basedirective/basedirective.esm.js +42 -25
  31. package/basedirective/basedirective.esm.min.js +1 -1
  32. package/basedirective/basedirective.js +42 -25
  33. package/basedirective/basedirective.min.js +1 -1
  34. package/blockui/BlockUI.d.ts +21 -2
  35. package/breadcrumb/Breadcrumb.d.ts +47 -2
  36. package/breadcrumb/Breadcrumb.vue +7 -2
  37. package/breadcrumb/BreadcrumbItem.vue +28 -3
  38. package/breadcrumb/breadcrumb.cjs.js +35 -8
  39. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  40. package/breadcrumb/breadcrumb.esm.js +36 -9
  41. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  42. package/breadcrumb/breadcrumb.js +35 -8
  43. package/breadcrumb/breadcrumb.min.js +1 -1
  44. package/button/Button.d.ts +24 -2
  45. package/button/button.cjs.js +1 -1
  46. package/button/button.esm.js +1 -1
  47. package/button/button.js +1 -1
  48. package/calendar/Calendar.d.ts +26 -4
  49. package/calendar/Calendar.vue +63 -29
  50. package/calendar/calendar.cjs.js +137 -51
  51. package/calendar/calendar.cjs.min.js +1 -1
  52. package/calendar/calendar.esm.js +137 -51
  53. package/calendar/calendar.esm.min.js +1 -1
  54. package/calendar/calendar.js +137 -51
  55. package/calendar/calendar.min.js +1 -1
  56. package/card/Card.d.ts +8 -2
  57. package/carousel/Carousel.d.ts +24 -2
  58. package/carousel/Carousel.vue +22 -2
  59. package/carousel/carousel.cjs.js +9 -5
  60. package/carousel/carousel.cjs.min.js +1 -1
  61. package/carousel/carousel.esm.js +9 -5
  62. package/carousel/carousel.esm.min.js +1 -1
  63. package/carousel/carousel.js +9 -5
  64. package/carousel/carousel.min.js +1 -1
  65. package/cascadeselect/CascadeSelect.d.ts +21 -2
  66. package/cascadeselect/cascadeselect.cjs.js +3 -3
  67. package/cascadeselect/cascadeselect.esm.js +3 -3
  68. package/cascadeselect/cascadeselect.js +3 -3
  69. package/chart/Chart.d.ts +18 -2
  70. package/chart/chart.cjs.js +3 -3
  71. package/chart/chart.esm.js +3 -3
  72. package/chart/chart.js +3 -3
  73. package/checkbox/Checkbox.d.ts +24 -2
  74. package/checkbox/checkbox.cjs.js +3 -3
  75. package/checkbox/checkbox.esm.js +3 -3
  76. package/checkbox/checkbox.js +3 -3
  77. package/chip/Chip.d.ts +21 -2
  78. package/chips/Chips.d.ts +21 -2
  79. package/chips/chips.cjs.js +3 -3
  80. package/chips/chips.esm.js +3 -3
  81. package/chips/chips.js +3 -3
  82. package/colorpicker/ColorPicker.d.ts +21 -2
  83. package/column/Column.d.ts +24 -2
  84. package/columngroup/ColumnGroup.d.ts +24 -2
  85. package/config/PrimeVue.d.ts +93 -92
  86. package/config/config.cjs.js +4 -3
  87. package/config/config.cjs.min.js +1 -1
  88. package/config/config.esm.js +4 -3
  89. package/config/config.esm.min.js +1 -1
  90. package/config/config.js +4 -3
  91. package/config/config.min.js +1 -1
  92. package/confirmdialog/ConfirmDialog.d.ts +21 -2
  93. package/confirmpopup/ConfirmPopup.d.ts +21 -2
  94. package/confirmpopup/confirmpopup.cjs.js +3 -3
  95. package/confirmpopup/confirmpopup.esm.js +3 -3
  96. package/confirmpopup/confirmpopup.js +3 -3
  97. package/contextmenu/ContextMenu.d.ts +54 -2
  98. package/contextmenu/ContextMenu.vue +13 -7
  99. package/contextmenu/ContextMenuSub.vue +34 -2
  100. package/contextmenu/contextmenu.cjs.js +41 -14
  101. package/contextmenu/contextmenu.cjs.min.js +1 -1
  102. package/contextmenu/contextmenu.esm.js +42 -15
  103. package/contextmenu/contextmenu.esm.min.js +1 -1
  104. package/contextmenu/contextmenu.js +41 -14
  105. package/contextmenu/contextmenu.min.js +1 -1
  106. package/core/core.js +256 -147
  107. package/core/core.min.js +12 -12
  108. package/datatable/BodyCell.vue +14 -4
  109. package/datatable/DataTable.d.ts +41 -3
  110. package/datatable/DataTable.vue +6 -3
  111. package/datatable/TableBody.vue +7 -8
  112. package/datatable/datatable.cjs.js +63 -57
  113. package/datatable/datatable.cjs.min.js +1 -1
  114. package/datatable/datatable.esm.js +63 -57
  115. package/datatable/datatable.esm.min.js +1 -1
  116. package/datatable/datatable.js +63 -57
  117. package/datatable/datatable.min.js +1 -1
  118. package/dataview/DataView.d.ts +21 -2
  119. package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +21 -2
  120. package/deferredcontent/DeferredContent.d.ts +21 -2
  121. package/dialog/Dialog.d.ts +21 -2
  122. package/dialog/Dialog.vue +2 -2
  123. package/dialog/dialog.cjs.js +7 -5
  124. package/dialog/dialog.cjs.min.js +1 -1
  125. package/dialog/dialog.esm.js +8 -6
  126. package/dialog/dialog.esm.min.js +1 -1
  127. package/dialog/dialog.js +7 -5
  128. package/dialog/dialog.min.js +1 -1
  129. package/divider/Divider.d.ts +18 -2
  130. package/dock/Dock.d.ts +46 -2
  131. package/dock/Dock.vue +5 -0
  132. package/dock/DockSub.vue +20 -1
  133. package/dock/dock.cjs.js +21 -2
  134. package/dock/dock.cjs.min.js +1 -1
  135. package/dock/dock.esm.js +22 -3
  136. package/dock/dock.esm.min.js +1 -1
  137. package/dock/dock.js +21 -2
  138. package/dock/dock.min.js +1 -1
  139. package/dropdown/Dropdown.d.ts +24 -2
  140. package/dropdown/dropdown.cjs.js +6 -6
  141. package/dropdown/dropdown.esm.js +6 -6
  142. package/dropdown/dropdown.js +6 -6
  143. package/editor/Editor.d.ts +22 -2
  144. package/editor/editor.cjs.js +3 -3
  145. package/editor/editor.esm.js +3 -3
  146. package/editor/editor.js +3 -3
  147. package/fieldset/Fieldset.d.ts +21 -2
  148. package/fieldset/fieldset.cjs.js +4 -4
  149. package/fieldset/fieldset.esm.js +4 -4
  150. package/fieldset/fieldset.js +4 -4
  151. package/fileupload/FileContent.vue +8 -6
  152. package/fileupload/FileUpload.d.ts +21 -2
  153. package/fileupload/FileUpload.vue +9 -7
  154. package/fileupload/fileupload.cjs.js +17 -13
  155. package/fileupload/fileupload.cjs.min.js +1 -1
  156. package/fileupload/fileupload.esm.js +17 -13
  157. package/fileupload/fileupload.esm.min.js +1 -1
  158. package/fileupload/fileupload.js +17 -13
  159. package/fileupload/fileupload.min.js +1 -1
  160. package/focustrap/FocusTrap.d.ts +8 -2
  161. package/galleria/Galleria.d.ts +24 -2
  162. package/galleria/galleria.cjs.js +9 -9
  163. package/galleria/galleria.esm.js +9 -9
  164. package/galleria/galleria.js +9 -9
  165. package/image/Image.d.ts +21 -2
  166. package/image/image.cjs.js +3 -3
  167. package/image/image.esm.js +3 -3
  168. package/image/image.js +3 -3
  169. package/inlinemessage/InlineMessage.d.ts +21 -2
  170. package/inplace/Inplace.d.ts +21 -2
  171. package/inplace/inplace.cjs.js +3 -3
  172. package/inplace/inplace.esm.js +3 -3
  173. package/inplace/inplace.js +3 -3
  174. package/inputmask/InputMask.d.ts +21 -2
  175. package/inputmask/InputMask.vue +3 -1
  176. package/inputmask/inputmask.cjs.js +2 -1
  177. package/inputmask/inputmask.cjs.min.js +1 -1
  178. package/inputmask/inputmask.esm.js +2 -1
  179. package/inputmask/inputmask.esm.min.js +1 -1
  180. package/inputmask/inputmask.js +2 -1
  181. package/inputmask/inputmask.min.js +1 -1
  182. package/inputnumber/InputNumber.d.ts +21 -2
  183. package/inputnumber/inputnumber.cjs.js +6 -6
  184. package/inputnumber/inputnumber.esm.js +6 -6
  185. package/inputnumber/inputnumber.js +6 -6
  186. package/inputswitch/InputSwitch.d.ts +21 -2
  187. package/inputswitch/inputswitch.cjs.js +3 -3
  188. package/inputswitch/inputswitch.esm.js +3 -3
  189. package/inputswitch/inputswitch.js +3 -3
  190. package/inputtext/InputText.d.ts +21 -2
  191. package/knob/Knob.d.ts +21 -2
  192. package/listbox/Listbox.d.ts +24 -2
  193. package/listbox/listbox.cjs.js +3 -3
  194. package/listbox/listbox.esm.js +3 -3
  195. package/listbox/listbox.js +3 -3
  196. package/megamenu/MegaMenu.d.ts +58 -2
  197. package/megamenu/MegaMenu.vue +6 -30
  198. package/megamenu/MegaMenuSub.vue +34 -3
  199. package/megamenu/megamenu.cjs.js +36 -39
  200. package/megamenu/megamenu.cjs.min.js +1 -1
  201. package/megamenu/megamenu.esm.js +37 -40
  202. package/megamenu/megamenu.esm.min.js +1 -1
  203. package/megamenu/megamenu.js +36 -39
  204. package/megamenu/megamenu.min.js +1 -1
  205. package/menu/Menu.d.ts +60 -2
  206. package/menu/Menu.vue +6 -1
  207. package/menu/Menuitem.vue +26 -1
  208. package/menu/menu.cjs.js +29 -7
  209. package/menu/menu.cjs.min.js +1 -1
  210. package/menu/menu.esm.js +30 -8
  211. package/menu/menu.esm.min.js +1 -1
  212. package/menu/menu.js +29 -7
  213. package/menu/menu.min.js +1 -1
  214. package/menubar/Menubar.d.ts +62 -2
  215. package/menubar/Menubar.vue +6 -0
  216. package/menubar/MenubarSub.vue +32 -1
  217. package/menubar/menubar.cjs.js +34 -6
  218. package/menubar/menubar.cjs.min.js +1 -1
  219. package/menubar/menubar.esm.js +35 -7
  220. package/menubar/menubar.esm.min.js +1 -1
  221. package/menubar/menubar.js +34 -6
  222. package/menubar/menubar.min.js +1 -1
  223. package/menuitem/MenuItem.d.ts +1 -0
  224. package/message/Message.d.ts +21 -2
  225. package/message/message.cjs.js +3 -3
  226. package/message/message.esm.js +3 -3
  227. package/message/message.js +3 -3
  228. package/multiselect/MultiSelect.d.ts +24 -2
  229. package/multiselect/multiselect.cjs.js +6 -6
  230. package/multiselect/multiselect.esm.js +6 -6
  231. package/multiselect/multiselect.js +6 -6
  232. package/orderlist/OrderList.d.ts +24 -2
  233. package/orderlist/OrderList.vue +7 -5
  234. package/orderlist/orderlist.cjs.js +10 -8
  235. package/orderlist/orderlist.cjs.min.js +1 -1
  236. package/orderlist/orderlist.esm.js +10 -8
  237. package/orderlist/orderlist.esm.min.js +1 -1
  238. package/orderlist/orderlist.js +10 -8
  239. package/orderlist/orderlist.min.js +1 -1
  240. package/organizationchart/OrganizationChart.d.ts +24 -2
  241. package/organizationchart/organizationchart.cjs.js +4 -4
  242. package/organizationchart/organizationchart.esm.js +4 -4
  243. package/organizationchart/organizationchart.js +4 -4
  244. package/overlaypanel/OverlayPanel.d.ts +21 -2
  245. package/overlaypanel/overlaypanel.cjs.js +3 -3
  246. package/overlaypanel/overlaypanel.esm.js +3 -3
  247. package/overlaypanel/overlaypanel.js +3 -3
  248. package/package.json +1 -1
  249. package/paginator/FirstPageLink.vue +1 -1
  250. package/paginator/JumpToPageDropdown.vue +1 -0
  251. package/paginator/LastPageLink.vue +1 -1
  252. package/paginator/NextPageLink.vue +1 -1
  253. package/paginator/Paginator.d.ts +24 -2
  254. package/paginator/PrevPageLink.vue +1 -1
  255. package/paginator/RowsPerPageDropdown.vue +1 -0
  256. package/paginator/paginator.cjs.js +19 -9
  257. package/paginator/paginator.cjs.min.js +1 -1
  258. package/paginator/paginator.esm.js +19 -9
  259. package/paginator/paginator.esm.min.js +1 -1
  260. package/paginator/paginator.js +19 -9
  261. package/paginator/paginator.min.js +1 -1
  262. package/panel/Panel.d.ts +21 -2
  263. package/panel/panel.cjs.js +3 -3
  264. package/panel/panel.esm.js +3 -3
  265. package/panel/panel.js +3 -3
  266. package/panelmenu/PanelMenu.d.ts +58 -2
  267. package/panelmenu/PanelMenu.vue +6 -0
  268. package/panelmenu/PanelMenuList.vue +1 -0
  269. package/panelmenu/PanelMenuSub.vue +33 -1
  270. package/panelmenu/panelmenu.cjs.js +41 -12
  271. package/panelmenu/panelmenu.cjs.min.js +1 -1
  272. package/panelmenu/panelmenu.esm.js +42 -13
  273. package/panelmenu/panelmenu.esm.min.js +1 -1
  274. package/panelmenu/panelmenu.js +41 -12
  275. package/panelmenu/panelmenu.min.js +1 -1
  276. package/passthrough/index.cjs.js +15 -9
  277. package/passthrough/index.cjs.min.js +1 -1
  278. package/passthrough/index.d.ts +4 -4
  279. package/passthrough/index.esm.js +15 -9
  280. package/passthrough/index.esm.min.js +1 -1
  281. package/passthrough/index.js +15 -9
  282. package/passthrough/index.min.js +1 -1
  283. package/passthrough/tailwind/index.cjs.js +3 -3
  284. package/passthrough/tailwind/index.cjs.min.js +1 -1
  285. package/passthrough/tailwind/index.esm.js +3 -3
  286. package/passthrough/tailwind/index.esm.min.js +1 -1
  287. package/passthrough/tailwind/index.js +3 -3
  288. package/passthrough/tailwind/index.min.js +1 -1
  289. package/password/Password.d.ts +21 -2
  290. package/password/password.cjs.js +3 -3
  291. package/password/password.esm.js +3 -3
  292. package/password/password.js +3 -3
  293. package/picklist/PickList.d.ts +24 -2
  294. package/picklist/PickList.vue +8 -5
  295. package/picklist/picklist.cjs.js +10 -8
  296. package/picklist/picklist.cjs.min.js +1 -1
  297. package/picklist/picklist.esm.js +10 -8
  298. package/picklist/picklist.esm.min.js +1 -1
  299. package/picklist/picklist.js +10 -8
  300. package/picklist/picklist.min.js +1 -1
  301. package/progressbar/ProgressBar.d.ts +18 -2
  302. package/progressspinner/ProgressSpinner.d.ts +18 -2
  303. package/radiobutton/RadioButton.d.ts +21 -2
  304. package/radiobutton/radiobutton.cjs.js +3 -3
  305. package/radiobutton/radiobutton.esm.js +3 -3
  306. package/radiobutton/radiobutton.js +3 -3
  307. package/rating/Rating.d.ts +24 -2
  308. package/ripple/Ripple.d.ts +8 -2
  309. package/row/Row.d.ts +16 -0
  310. package/scrollpanel/ScrollPanel.d.ts +21 -2
  311. package/scrolltop/ScrollTop.d.ts +21 -2
  312. package/selectbutton/SelectButton.d.ts +24 -2
  313. package/sidebar/Sidebar.d.ts +21 -2
  314. package/sidebar/sidebar.cjs.js +3 -3
  315. package/sidebar/sidebar.esm.js +3 -3
  316. package/sidebar/sidebar.js +3 -3
  317. package/skeleton/Skeleton.d.ts +18 -2
  318. package/slider/Slider.d.ts +18 -2
  319. package/speeddial/SpeedDial.d.ts +24 -2
  320. package/speeddial/speeddial.cjs.js +4 -4
  321. package/speeddial/speeddial.esm.js +4 -4
  322. package/speeddial/speeddial.js +4 -4
  323. package/splitbutton/SplitButton.d.ts +35 -2
  324. package/splitbutton/SplitButton.vue +6 -2
  325. package/splitbutton/splitbutton.cjs.js +17 -9
  326. package/splitbutton/splitbutton.cjs.min.js +1 -1
  327. package/splitbutton/splitbutton.esm.js +18 -10
  328. package/splitbutton/splitbutton.esm.min.js +1 -1
  329. package/splitbutton/splitbutton.js +17 -9
  330. package/splitbutton/splitbutton.min.js +1 -1
  331. package/splitter/Splitter.d.ts +24 -2
  332. package/splitterpanel/SplitterPanel.d.ts +21 -2
  333. package/steps/Steps.d.ts +51 -2
  334. package/steps/Steps.vue +31 -1
  335. package/steps/steps.cjs.js +31 -3
  336. package/steps/steps.cjs.min.js +1 -1
  337. package/steps/steps.esm.js +31 -3
  338. package/steps/steps.esm.min.js +1 -1
  339. package/steps/steps.js +32 -4
  340. package/steps/steps.min.js +1 -1
  341. package/styleclass/StyleClass.d.ts +8 -2
  342. package/tabmenu/TabMenu.d.ts +50 -2
  343. package/tabmenu/TabMenu.vue +27 -1
  344. package/tabmenu/tabmenu.cjs.js +26 -3
  345. package/tabmenu/tabmenu.cjs.min.js +1 -1
  346. package/tabmenu/tabmenu.esm.js +26 -3
  347. package/tabmenu/tabmenu.esm.min.js +1 -1
  348. package/tabmenu/tabmenu.js +27 -4
  349. package/tabmenu/tabmenu.min.js +1 -1
  350. package/tabpanel/TabPanel.d.ts +24 -2
  351. package/tabview/TabView.d.ts +8 -2
  352. package/tabview/tabview.cjs.js +3 -3
  353. package/tabview/tabview.esm.js +3 -3
  354. package/tabview/tabview.js +3 -3
  355. package/tag/Tag.d.ts +18 -2
  356. package/terminal/Terminal.d.ts +21 -2
  357. package/textarea/Textarea.d.ts +21 -2
  358. package/tieredmenu/TieredMenu.d.ts +58 -2
  359. package/tieredmenu/TieredMenu.vue +6 -0
  360. package/tieredmenu/TieredMenuSub.vue +33 -1
  361. package/tieredmenu/tieredmenu.cjs.js +35 -7
  362. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  363. package/tieredmenu/tieredmenu.esm.js +36 -8
  364. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  365. package/tieredmenu/tieredmenu.js +35 -7
  366. package/tieredmenu/tieredmenu.min.js +1 -1
  367. package/timeline/Timeline.d.ts +21 -2
  368. package/toast/Toast.d.ts +21 -2
  369. package/toast/toast.cjs.js +7 -7
  370. package/toast/toast.esm.js +7 -7
  371. package/toast/toast.js +7 -7
  372. package/togglebutton/ToggleButton.d.ts +24 -2
  373. package/togglebutton/ToggleButton.vue +4 -4
  374. package/togglebutton/togglebutton.cjs.js +7 -7
  375. package/togglebutton/togglebutton.cjs.min.js +1 -1
  376. package/togglebutton/togglebutton.esm.js +7 -7
  377. package/togglebutton/togglebutton.esm.min.js +1 -1
  378. package/togglebutton/togglebutton.js +7 -7
  379. package/togglebutton/togglebutton.min.js +1 -1
  380. package/toolbar/Toolbar.d.ts +18 -2
  381. package/tooltip/Tooltip.d.ts +12 -2
  382. package/tooltip/tooltip.cjs.js +2 -2
  383. package/tooltip/tooltip.esm.js +2 -2
  384. package/tooltip/tooltip.js +2 -2
  385. package/tree/Tree.d.ts +24 -2
  386. package/tree/Tree.vue +1 -1
  387. package/tree/tree.cjs.js +7 -7
  388. package/tree/tree.cjs.min.js +1 -1
  389. package/tree/tree.esm.js +7 -7
  390. package/tree/tree.esm.min.js +1 -1
  391. package/tree/tree.js +7 -7
  392. package/tree/tree.min.js +1 -1
  393. package/treeselect/TreeSelect.d.ts +21 -2
  394. package/treeselect/treeselect.cjs.js +6 -6
  395. package/treeselect/treeselect.esm.js +6 -6
  396. package/treeselect/treeselect.js +6 -6
  397. package/treetable/BodyCell.vue +1 -1
  398. package/treetable/TreeTable.d.ts +24 -2
  399. package/treetable/TreeTableRow.vue +1 -1
  400. package/treetable/treetable.cjs.js +22 -20
  401. package/treetable/treetable.cjs.min.js +1 -1
  402. package/treetable/treetable.esm.js +22 -20
  403. package/treetable/treetable.esm.min.js +1 -1
  404. package/treetable/treetable.js +22 -20
  405. package/treetable/treetable.min.js +1 -1
  406. package/tristatecheckbox/TriStateCheckbox.d.ts +24 -2
  407. package/tristatecheckbox/tristatecheckbox.cjs.js +3 -3
  408. package/tristatecheckbox/tristatecheckbox.esm.js +3 -3
  409. package/tristatecheckbox/tristatecheckbox.js +3 -3
  410. package/ts-helpers.d.ts +2 -2
  411. package/utils/utils.cjs.js +30 -20
  412. package/utils/utils.cjs.min.js +1 -1
  413. package/utils/utils.esm.js +30 -20
  414. package/utils/utils.esm.min.js +1 -1
  415. package/utils/utils.js +30 -20
  416. package/utils/utils.min.js +1 -1
  417. package/vetur-attributes.json +1 -1
  418. package/virtualscroller/BaseVirtualScroller.vue +3 -3
  419. package/virtualscroller/VirtualScroller.d.ts +21 -2
  420. package/virtualscroller/virtualscroller.cjs.js +6 -6
  421. package/virtualscroller/virtualscroller.cjs.min.js +1 -1
  422. package/virtualscroller/virtualscroller.esm.js +6 -6
  423. package/virtualscroller/virtualscroller.esm.min.js +1 -1
  424. package/virtualscroller/virtualscroller.js +6 -6
  425. package/virtualscroller/virtualscroller.min.js +1 -1
  426. package/web-types.json +13 -3
@@ -11,7 +11,8 @@
11
11
  import { TransitionProps, VNode } from 'vue';
12
12
  import { ComponentHooks } from '../basecomponent';
13
13
  import { MenuItem } from '../menuitem';
14
- import { ClassComponent, GlobalComponentConstructor, PTOptions } from '../ts-helpers';
14
+ import { PassThroughOptions } from '../passthrough';
15
+ import { ClassComponent, GlobalComponentConstructor, PassThrough } from '../ts-helpers';
15
16
 
16
17
  export declare type ContextMenuPassThroughOptionType = ContextMenuPassThroughAttributes | ((options: ContextMenuPassThroughMethodOptions) => ContextMenuPassThroughAttributes | string) | string | null | undefined;
17
18
 
@@ -21,10 +22,26 @@ export declare type ContextMenuPassThroughTransitionType = TransitionProps | ((o
21
22
  * Custom passthrough(pt) option method.
22
23
  */
23
24
  export interface ContextMenuPassThroughMethodOptions {
25
+ /**
26
+ * Defines instance.
27
+ */
24
28
  instance: any;
29
+ /**
30
+ * Defines valid properties.
31
+ */
25
32
  props: ContextMenuProps;
33
+ /**
34
+ * Defines current inline state.
35
+ */
26
36
  state: ContextMenuState;
37
+ /**
38
+ * Defines current options.
39
+ */
27
40
  context: ContextMenuContext;
41
+ /**
42
+ * Defines passthrough(pt) options in global config.
43
+ */
44
+ global: object | undefined;
28
45
  }
29
46
 
30
47
  /**
@@ -167,6 +184,28 @@ export interface ContextMenuContext {
167
184
  focused: boolean;
168
185
  }
169
186
 
187
+ /**
188
+ * Defines valid router binding props in ContextMenu component.
189
+ */
190
+ export interface ContextMenuRouterBindProps {
191
+ /**
192
+ * Action element binding
193
+ */
194
+ action: object;
195
+ /**
196
+ * Icon element binding
197
+ */
198
+ icon: object;
199
+ /**
200
+ * Label element binding
201
+ */
202
+ label: object;
203
+ /**
204
+ * Submenuicon elemnt binding
205
+ */
206
+ submenuicon: object;
207
+ }
208
+
170
209
  /**
171
210
  * Defines valid properties in ContextMenu component.
172
211
  */
@@ -216,7 +255,12 @@ export interface ContextMenuProps {
216
255
  * Used to pass attributes to DOM elements inside the component.
217
256
  * @type {ContextMenuPassThroughOptions}
218
257
  */
219
- pt?: PTOptions<ContextMenuPassThroughOptions>;
258
+ pt?: PassThrough<ContextMenuPassThroughOptions>;
259
+ /**
260
+ * Used to configure passthrough(pt) options of the component.
261
+ * @type {PassThroughOptions}
262
+ */
263
+ ptOptions?: PassThroughOptions;
220
264
  /**
221
265
  * When enabled, it removes component related styles in the core.
222
266
  * @defaultValue false
@@ -237,6 +281,14 @@ export interface ContextMenuSlots {
237
281
  * Menuitem instance
238
282
  */
239
283
  item: MenuItem;
284
+ /**
285
+ * Label property of the menuitem
286
+ */
287
+ label: string | ((...args: any) => string) | undefined;
288
+ /**
289
+ * Binding properties of the menuitem
290
+ */
291
+ props: ContextMenuRouterBindProps;
240
292
  }): VNode[];
241
293
  /**
242
294
  * Custom item icon template.
@@ -22,6 +22,7 @@
22
22
  :level="0"
23
23
  :visible="submenuVisible"
24
24
  :pt="pt"
25
+ :unstyled="unstyled"
25
26
  @focus="onFocus"
26
27
  @blur="onBlur"
27
28
  @keydown="onKeyDown"
@@ -78,6 +79,18 @@ export default {
78
79
  }
79
80
  }
80
81
  },
82
+ beforeMount() {
83
+ if (!this.$slots.item) {
84
+ console.warn('In future versions, vue-router support will be removed. Item templating should be used.');
85
+ }
86
+ },
87
+ mounted() {
88
+ this.id = this.id || UniqueComponentId();
89
+
90
+ if (this.global) {
91
+ this.bindDocumentContextMenuListener();
92
+ }
93
+ },
81
94
  beforeUnmount() {
82
95
  this.unbindResizeListener();
83
96
  this.unbindOutsideClickListener();
@@ -90,13 +103,6 @@ export default {
90
103
  this.target = null;
91
104
  this.container = null;
92
105
  },
93
- mounted() {
94
- this.id = this.id || UniqueComponentId();
95
-
96
- if (this.global) {
97
- this.bindDocumentContextMenuListener();
98
- }
99
- },
100
106
  methods: {
101
107
  getItemProp(item, name) {
102
108
  return item ? ObjectUtils.getItemValue(item[name]) : undefined;
@@ -39,7 +39,7 @@
39
39
  </template>
40
40
  </a>
41
41
  </template>
42
- <component v-else :is="templates.item" :item="processedItem.item"></component>
42
+ <component v-else :is="templates.item" :item="processedItem.item" :label="getItemLabel(processedItem)" :props="getMenuItemProps(processedItem, index)"></component>
43
43
  </div>
44
44
  <ContextMenuSub
45
45
  v-if="isItemVisible(processedItem) && isItemGroup(processedItem)"
@@ -53,8 +53,9 @@
53
53
  :activeItemPath="activeItemPath"
54
54
  :exact="exact"
55
55
  :level="level + 1"
56
- :pt="pt"
57
56
  :visible="isItemActive(processedItem) && isItemGroup(processedItem)"
57
+ :pt="pt"
58
+ :unstyled="unstyled"
58
59
  @item-click="$emit('item-click', $event)"
59
60
  @item-mouseenter="$emit('item-mouseenter', $event)"
60
61
  v-bind="ptm('submenu')"
@@ -78,6 +79,7 @@ import BaseComponent from 'primevue/basecomponent';
78
79
  import AngleRightIcon from 'primevue/icons/angleright';
79
80
  import Ripple from 'primevue/ripple';
80
81
  import { DomHandler, ObjectUtils } from 'primevue/utils';
82
+ import { mergeProps } from 'vue';
81
83
 
82
84
  export default {
83
85
  name: 'ContextMenuSub',
@@ -197,6 +199,36 @@ export default {
197
199
  } else {
198
200
  this.$refs.container.style.left = itemOuterWidth + 'px';
199
201
  }
202
+ },
203
+ getMenuItemProps(processedItem, index) {
204
+ return {
205
+ action: mergeProps(
206
+ {
207
+ class: this.cx('action'),
208
+ tabindex: -1,
209
+ 'aria-hidden': true
210
+ },
211
+ this.getPTOptions('action', processedItem, index)
212
+ ),
213
+ icon: mergeProps(
214
+ {
215
+ class: [this.cx('icon'), this.getItemProp(processedItem, 'icon')]
216
+ },
217
+ this.getPTOptions('icon', processedItem, index)
218
+ ),
219
+ label: mergeProps(
220
+ {
221
+ class: this.cx('label')
222
+ },
223
+ this.getPTOptions('label', processedItem, index)
224
+ ),
225
+ submenuicon: mergeProps(
226
+ {
227
+ class: this.cx('submenuIcon')
228
+ },
229
+ this.getPTOptions('submenuicon', processedItem, index)
230
+ )
231
+ };
200
232
  }
201
233
  },
202
234
  components: {
@@ -241,6 +241,24 @@ var script$1 = {
241
241
  } else {
242
242
  this.$refs.container.style.left = itemOuterWidth + 'px';
243
243
  }
244
+ },
245
+ getMenuItemProps: function getMenuItemProps(processedItem, index) {
246
+ return {
247
+ action: vue.mergeProps({
248
+ "class": this.cx('action'),
249
+ tabindex: -1,
250
+ 'aria-hidden': true
251
+ }, this.getPTOptions('action', processedItem, index)),
252
+ icon: vue.mergeProps({
253
+ "class": [this.cx('icon'), this.getItemProp(processedItem, 'icon')]
254
+ }, this.getPTOptions('icon', processedItem, index)),
255
+ label: vue.mergeProps({
256
+ "class": this.cx('label')
257
+ }, this.getPTOptions('label', processedItem, index)),
258
+ submenuicon: vue.mergeProps({
259
+ "class": this.cx('submenuIcon')
260
+ }, this.getPTOptions('submenuicon', processedItem, index))
261
+ };
244
262
  }
245
263
  },
246
264
  components: {
@@ -363,8 +381,10 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
363
381
  "class": _ctx.cx('submenuIcon')
364
382
  }, $options.getPTOptions('submenuicon', processedItem, index)), null, 16, ["class"]))], 64)) : vue.createCommentVNode("", true)], 16, _hoisted_5)), [[_directive_ripple]])], 64)) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.item), {
365
383
  key: 1,
366
- item: processedItem.item
367
- }, null, 8, ["item"]))], 16, _hoisted_3), $options.isItemVisible(processedItem) && $options.isItemGroup(processedItem) ? (vue.openBlock(), vue.createBlock(_component_ContextMenuSub, vue.mergeProps({
384
+ item: processedItem.item,
385
+ label: $options.getItemLabel(processedItem),
386
+ props: $options.getMenuItemProps(processedItem, index)
387
+ }, null, 8, ["item", "label", "props"]))], 16, _hoisted_3), $options.isItemVisible(processedItem) && $options.isItemGroup(processedItem) ? (vue.openBlock(), vue.createBlock(_component_ContextMenuSub, vue.mergeProps({
368
388
  key: 0,
369
389
  id: $options.getItemId(processedItem) + '_list',
370
390
  role: "menu",
@@ -376,15 +396,16 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
376
396
  activeItemPath: $props.activeItemPath,
377
397
  exact: $props.exact,
378
398
  level: $props.level + 1,
379
- pt: _ctx.pt,
380
399
  visible: $options.isItemActive(processedItem) && $options.isItemGroup(processedItem),
400
+ pt: _ctx.pt,
401
+ unstyled: _ctx.unstyled,
381
402
  onItemClick: _cache[0] || (_cache[0] = function ($event) {
382
403
  return _ctx.$emit('item-click', $event);
383
404
  }),
384
405
  onItemMouseenter: _cache[1] || (_cache[1] = function ($event) {
385
406
  return _ctx.$emit('item-mouseenter', $event);
386
407
  })
387
- }, _ctx.ptm('submenu')), null, 16, ["id", "class", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "level", "pt", "visible"])) : vue.createCommentVNode("", true)], 16, _hoisted_2)) : vue.createCommentVNode("", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (vue.openBlock(), vue.createElementBlock("li", vue.mergeProps({
408
+ }, _ctx.ptm('submenu')), null, 16, ["id", "class", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "level", "visible", "pt", "unstyled"])) : vue.createCommentVNode("", true)], 16, _hoisted_2)) : vue.createCommentVNode("", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (vue.openBlock(), vue.createElementBlock("li", vue.mergeProps({
388
409
  key: 1,
389
410
  id: $options.getItemId(processedItem),
390
411
  style: $options.getItemProp(processedItem, 'style'),
@@ -442,6 +463,17 @@ var script = {
442
463
  }
443
464
  }
444
465
  },
466
+ beforeMount: function beforeMount() {
467
+ if (!this.$slots.item) {
468
+ console.warn('In future versions, vue-router support will be removed. Item templating should be used.');
469
+ }
470
+ },
471
+ mounted: function mounted() {
472
+ this.id = this.id || utils.UniqueComponentId();
473
+ if (this.global) {
474
+ this.bindDocumentContextMenuListener();
475
+ }
476
+ },
445
477
  beforeUnmount: function beforeUnmount() {
446
478
  this.unbindResizeListener();
447
479
  this.unbindOutsideClickListener();
@@ -452,12 +484,6 @@ var script = {
452
484
  this.target = null;
453
485
  this.container = null;
454
486
  },
455
- mounted: function mounted() {
456
- this.id = this.id || utils.UniqueComponentId();
457
- if (this.global) {
458
- this.bindDocumentContextMenuListener();
459
- }
460
- },
461
487
  methods: {
462
488
  getItemProp: function getItemProp(item, name) {
463
489
  return item ? utils.ObjectUtils.getItemValue(item[name]) : undefined;
@@ -983,9 +1009,9 @@ var script = {
983
1009
  }
984
1010
  };
985
1011
 
986
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
987
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
988
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1012
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
1013
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1014
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
989
1015
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
990
1016
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
991
1017
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
@@ -1030,12 +1056,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1030
1056
  level: 0,
1031
1057
  visible: $data.submenuVisible,
1032
1058
  pt: _ctx.pt,
1059
+ unstyled: _ctx.unstyled,
1033
1060
  onFocus: $options.onFocus,
1034
1061
  onBlur: $options.onBlur,
1035
1062
  onKeydown: $options.onKeyDown,
1036
1063
  onItemClick: $options.onItemClick,
1037
1064
  onItemMouseenter: $options.onItemMouseEnter
1038
- }, null, 8, ["id", "class", "tabindex", "aria-activedescendant", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "aria-labelledby", "aria-label", "visible", "pt", "onFocus", "onBlur", "onKeydown", "onItemClick", "onItemMouseenter"])], 16)) : vue.createCommentVNode("", true)];
1065
+ }, null, 8, ["id", "class", "tabindex", "aria-activedescendant", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "aria-labelledby", "aria-label", "visible", "pt", "unstyled", "onFocus", "onBlur", "onKeydown", "onItemClick", "onItemMouseenter"])], 16)) : vue.createCommentVNode("", true)];
1039
1066
  }),
1040
1067
  _: 1
1041
1068
  }, 16, ["onEnter", "onAfterEnter", "onLeave", "onAfterLeave"])];
@@ -1 +1 @@
1
- "use strict";var e=require("primevue/portal"),t=require("primevue/utils"),n=require("primevue/basecomponent"),i=require("primevue/usestyle"),o=require("primevue/icons/angleright"),s=require("primevue/ripple"),r=require("vue");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=c(e),l=c(n),u=c(o),m=c(s),d=i.useStyle("\n.p-contextmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-contextmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n}\n\n.p-contextmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-text {\n line-height: 1;\n}\n\n.p-contextmenu .p-menuitem {\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n\n.p-contextmenu-enter-from {\n opacity: 0;\n}\n\n.p-contextmenu-enter-active {\n transition: opacity 250ms;\n}\n",{name:"contextmenu",manual:!0}),f={name:"BaseContextMenu",extends:l.default,props:{model:{type:Array,default:null},appendTo:{type:String,default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:function(e){var t=e.instance;return["p-contextmenu p-component",{"p-input-filled":"filled"===t.$primevue.config.inputStyle,"p-ripple-disabled":!1===t.$primevue.config.ripple}]},menu:"p-contextmenu-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":t.isItemActive(n),"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},loadStyle:d.load},provide:function(){return{$parentInstance:this}}},h={name:"ContextMenuSub",hostName:"ContextMenu",extends:l.default,emits:["item-click","item-mouseenter"],props:{items:{type:Array,default:null},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},root:{type:Boolean,default:!1},visible:{type:Boolean,default:!1},level:{type:Number,default:0},templates:{type:Object,default:null},exact:{type:Boolean,default:!0},activeItemPath:{type:Object,default:null},tabindex:{type:Number,default:0}},methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,n,i){return e&&e.item?t.ObjectUtils.getItemValue(e.item[n],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,n){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),index:n}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter:function(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1},onEnter:function(){this.position()},position:function(){var e=this.$refs.container.parentElement,n=t.DomHandler.getOffset(this.$refs.container.parentElement),i=t.DomHandler.getViewport(),o=this.$refs.container.offsetParent?this.$refs.container.offsetWidth:t.DomHandler.getHiddenElementOuterWidth(this.$refs.container),s=t.DomHandler.getOuterWidth(e.children[0]);this.$refs.container.style.top="0px",this.$refs.container.style.left=parseInt(n.left,10)+s+o>i.width-t.DomHandler.calculateScrollbarWidth()?-1*o+"px":s+"px"}},components:{AngleRightIcon:u.default},directives:{ripple:m.default}},p=["tabindex"],I=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],v=["onClick","onMouseenter"],b=["href","onClick"],g=["href","target"],x=["id"];h.render=function(e,t,n,i,o,s){var c=r.resolveComponent("router-link"),a=r.resolveComponent("AngleRightIcon"),l=r.resolveComponent("ContextMenuSub",!0),u=r.resolveDirective("ripple");return r.openBlock(),r.createBlock(r.Transition,r.mergeProps({name:"p-contextmenusub",onEnter:s.onEnter},e.ptm("menu.transition")),{default:r.withCtx((function(){return[n.root||n.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:n.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.items,(function(i,o){return r.openBlock(),r.createElementBlock(r.Fragment,{key:s.getItemKey(i)},[s.isItemVisible(i)&&!s.getItemProp(i,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:s.getItemId(i),style:s.getItemProp(i,"style"),class:[e.cx("menuitem",{processedItem:i}),s.getItemProp(i,"class")],role:"menuitem","aria-label":s.getItemLabel(i),"aria-disabled":s.isItemDisabled(i)||void 0,"aria-expanded":s.isItemGroup(i)?s.isItemActive(i):void 0,"aria-haspopup":s.isItemGroup(i)&&!s.getItemProp(i,"to")?"menu":void 0,"aria-level":n.level+1,"aria-setsize":s.getAriaSetSize(),"aria-posinset":s.getAriaPosInset(o)},s.getPTOptions("menuitem",i,o),{"data-p-highlight":s.isItemActive(i),"data-p-focused":s.isItemFocused(i),"data-p-disabled":s.isItemDisabled(i)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return s.onItemClick(e,i)},onMouseenter:function(e){return s.onItemMouseEnter(e,i)}},s.getPTOptions("content",i,o)),[n.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.item),{key:1,item:i.item},null,8,["item"])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[s.getItemProp(i,"to")&&!s.isItemDisabled(i)?(r.openBlock(),r.createBlock(c,{key:0,to:s.getItemProp(i,"to"),custom:""},{default:r.withCtx((function(t){var c=t.navigate,a=t.href,l=t.isActive,m=t.isExactActive;return[r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({href:a,class:e.cx("action",{isActive:l,isExactActive:m}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return s.onItemActionClick(e,c)}},s.getPTOptions("action",i,o)),[n.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:r.normalizeClass([e.cx("icon"),s.getItemProp(i,"icon")])},null,8,["item","class"])):s.getItemProp(i,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),s.getItemProp(i,"icon")]},s.getPTOptions("icon",i,o)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:e.cx("label")},s.getPTOptions("label",i,o)),r.toDisplayString(s.getItemLabel(i)),17)],16,b)),[[u]])]})),_:2},1032,["to"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:1,href:s.getItemProp(i,"url"),class:e.cx("action"),target:s.getItemProp(i,"target"),tabindex:"-1","aria-hidden":"true"},s.getPTOptions("action",i,o)),[n.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:r.normalizeClass([e.cx("icon"),s.getItemProp(i,"icon")])},null,8,["item","class"])):s.getItemProp(i,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),s.getItemProp(i,"icon")]},s.getPTOptions("icon",i,o)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:e.cx("label")},s.getPTOptions("label",i,o)),r.toDisplayString(s.getItemLabel(i)),17),s.getItemProp(i,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[n.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.submenuicon),{key:0,active:s.isItemActive(i),class:r.normalizeClass(e.cx("submenuIcon"))},null,8,["active","class"])):(r.openBlock(),r.createBlock(a,r.mergeProps({key:1,class:e.cx("submenuIcon")},s.getPTOptions("submenuicon",i,o)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,g)),[[u]])],64))],16,v),s.isItemVisible(i)&&s.isItemGroup(i)?(r.openBlock(),r.createBlock(l,r.mergeProps({key:0,id:s.getItemId(i)+"_list",role:"menu",class:e.cx("submenu"),menuId:n.menuId,focusedItemId:n.focusedItemId,items:i.items,templates:n.templates,activeItemPath:n.activeItemPath,exact:n.exact,level:n.level+1,pt:e.pt,visible:s.isItemActive(i)&&s.isItemGroup(i),onItemClick:t[0]||(t[0]=function(t){return e.$emit("item-click",t)}),onItemMouseenter:t[1]||(t[1]=function(t){return e.$emit("item-mouseenter",t)})},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","exact","level","pt","visible"])):r.createCommentVNode("",!0)],16,I)):r.createCommentVNode("",!0),s.isItemVisible(i)&&s.getItemProp(i,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:s.getItemId(i),style:s.getItemProp(i,"style"),class:[e.cx("separator"),s.getItemProp(i,"class")],role:"separator"},e.ptm("separator")),null,16,x)):r.createCommentVNode("",!0)],64)})),128))],16,p)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var y={name:"ContextMenu",extends:f,inheritAttrs:!1,emits:["focus","blur","show","hide"],target:null,outsideClickListener:null,resizeListener:null,documentContextMenuListener:null,pageX:null,pageY:null,container:null,list:null,data:function(){return{id:this.$attrs.id,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],visible:!1,submenuVisible:!1}},watch:{"$attrs.id":function(e){this.id=e||t.UniqueComponentId()},activeItemPath:function(e){t.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener()):this.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener())}},beforeUnmount:function(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.unbindDocumentContextMenuListener(),this.container&&this.autoZIndex&&t.ZIndexUtils.clear(this.container),this.target=null,this.container=null},mounted:function(){this.id=this.id||t.UniqueComponentId(),this.global&&this.bindDocumentContextMenuListener()},methods:{getItemProp:function(e,n){return e?t.ObjectUtils.getItemValue(e[n]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator:function(e){return this.getItemProp(e,"separator")},getProccessedItemLabel:function(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:function(e){return e&&t.ObjectUtils.isNotEmpty(e.items)},toggle:function(e){this.visible?this.hide():this.show(e)},show:function(e){this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},t.DomHandler.focus(this.list),this.pageX=e.pageX,this.pageY=e.pageY,this.visible?this.position():this.visible=!0,e.stopPropagation(),e.preventDefault()},hide:function(){this.visible=!1,this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""}},onFocus:function(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:-1,level:0,parentKey:""},this.$emit("focus",e)},onBlur:function(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.$emit("blur",e)},onKeyDown:function(e){var n=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":this.onEscapeKey(e);break;case"Tab":this.onTabKey(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!n&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,i=e.isFocus;if(!t.ObjectUtils.isEmpty(n)){var o=n.index,s=n.key,r=n.level,c=n.parentKey,a=t.ObjectUtils.isNotEmpty(n.items),l=this.activeItemPath.filter((function(e){return e.parentKey!==c&&e.parentKey!==s}));a&&(l.push(n),this.submenuVisible=!0),this.focusedItemInfo={index:o,level:r,parentKey:c},this.activeItemPath=l,i&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var n=e.processedItem,i=this.isProccessedItemGroup(n);if(this.isSelected(n)){var o=n.index,s=n.key,r=n.level,c=n.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return s!==e.key&&s.startsWith(e.key)})),this.focusedItemInfo={index:o,level:r,parentKey:c},t.DomHandler.focus(this.list)}else i?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onArrowDownKey:function(e){var t=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()},onArrowUpKey:function(e){if(e.altKey){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.popup&&this.hide(),e.preventDefault()}else{var n=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,n),e.preventDefault()}},onArrowLeftKey:function(e){var n=this,i=this.visibleItems[this.focusedItemInfo.index],o=this.activeItemPath.find((function(e){return e.key===i.parentKey}));t.ObjectUtils.isEmpty(i.parent)||(this.focusedItemInfo={index:-1,parentKey:o?o.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==n.focusedItemInfo.parentKey})),e.preventDefault()},onArrowRightKey:function(e){var t=this.visibleItems[this.focusedItemInfo.index];this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.searchValue="",this.onArrowDownKey(e)),e.preventDefault()},onHomeKey:function(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey:function(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey:function(e){if(-1!==this.focusedItemInfo.index){var n=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=n&&t.DomHandler.findSingle(n,'a[data-pc-section="action"]');i?i.click():n&&n.click(),!this.isProccessedItemGroup(this.visibleItems[this.focusedItemInfo.index])&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onEscapeKey:function(e){this.hide(),!this.popup&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex()),e.preventDefault()},onTabKey:function(e){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},onEnter:function(e){t.DomHandler.addStyles(e,{position:"absolute"}),this.position(),this.autoZIndex&&t.ZIndexUtils.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu)},onAfterEnter:function(){this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener(),this.$emit("show"),t.DomHandler.focus(this.list)},onLeave:function(){this.$emit("hide"),this.container=null},onAfterLeave:function(e){this.autoZIndex&&t.ZIndexUtils.clear(e),this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener()},position:function(){var e=this.pageX+1,n=this.pageY+1,i=this.container.offsetParent?this.container.offsetWidth:t.DomHandler.getHiddenElementOuterWidth(this.container),o=this.container.offsetParent?this.container.offsetHeight:t.DomHandler.getHiddenElementOuterHeight(this.container),s=t.DomHandler.getViewport();e+i-document.body.scrollLeft>s.width&&(e-=i),n+o-document.body.scrollTop>s.height&&(n-=o),e<document.body.scrollLeft&&(e=document.body.scrollLeft),n<document.body.scrollTop&&(n=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=n+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var n=e.container&&!e.container.contains(t.target),i=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));n&&i&&e.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindResizeListener:function(){var e=this;this.resizeListener||(this.resizeListener=function(){e.visible&&!t.DomHandler.isTouchDevice()&&e.hide()},window.addEventListener("resize",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},bindDocumentContextMenuListener:function(){var e=this;this.documentContextMenuListener||(this.documentContextMenuListener=function(t){2!==t.button?e.show(t):e.hide()},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem:function(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},findFirstItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidItem(t)}))},findLastItemIndex:function(){var e=this;return t.ObjectUtils.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,n=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return n>-1?n+e+1:e},findPrevItemIndex:function(e){var n=this,i=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return n.isValidItem(e)})):-1;return i>-1?i:e},findSelectedItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidSelectedItem(t)}))},findFirstFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems:function(e,t){var n=this;this.searchValue=(this.searchValue||"")+t;var i=-1,o=!1;return-1!==(i=-1!==this.focusedItemInfo.index?-1===(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})):i+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return n.isItemMatched(e)})))&&(o=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){n.searchValue="",n.searchTimeout=null}),500),o},changeFocusedItemIndex:function(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemId,i=t.DomHandler.findSingle(this.list,'li[id="'.concat(n,'"]'));i&&i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",s=[];return e&&e.forEach((function(e,r){var c=(""!==o?o+"_":"")+r,a={item:e,index:r,level:n,key:c,parent:i,parentKey:o};a.items=t.createProcessedItems(e.items,n+1,a,c),s.push(a)})),s},containerRef:function(e){this.container=e},listRef:function(e){this.list=e?e.$el:void 0}},computed:{processedItems:function(){return this.createProcessedItems(this.model||[])},visibleItems:function(){var e=this,t=this.activeItemPath.find((function(t){return t.key===e.focusedItemInfo.parentKey}));return t?t.items:this.processedItems},focusedItemId:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{ContextMenuSub:h,Portal:a.default}};function k(e){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},k(e)}function P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?P(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):P(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function C(e,t,n){return(t=E(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e){var t=D(e,"string");return"symbol"===k(t)?t:String(t)}function D(e,t){if("object"!==k(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==k(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}y.render=function(e,t,n,i,o,s){var c=r.resolveComponent("ContextMenuSub"),a=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(a,{appendTo:e.appendTo},{default:r.withCtx((function(){return[r.createVNode(r.Transition,r.mergeProps({name:"p-contextmenu",onEnter:s.onEnter,onAfterEnter:s.onAfterEnter,onLeave:s.onLeave,onAfterLeave:s.onAfterLeave},e.ptm("transition")),{default:r.withCtx((function(){return[o.visible?(r.openBlock(),r.createElementBlock("div",r.mergeProps({key:0,ref:s.containerRef,class:e.cx("root")},L(L({},e.$attrs),e.ptm("root")),{"data-pc-name":"contextmenu"}),[r.createVNode(c,{ref:s.listRef,id:o.id+"_list",class:r.normalizeClass(e.cx("menu")),role:"menubar",root:!0,tabindex:e.tabindex,"aria-orientation":"vertical","aria-activedescendant":o.focused?s.focusedItemId:void 0,menuId:o.id,focusedItemId:o.focused?s.focusedItemId:void 0,items:s.processedItems,templates:e.$slots,activeItemPath:o.activeItemPath,exact:e.exact,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,level:0,visible:o.submenuVisible,pt:e.pt,onFocus:s.onFocus,onBlur:s.onBlur,onKeydown:s.onKeyDown,onItemClick:s.onItemClick,onItemMouseenter:s.onItemMouseEnter},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","exact","aria-labelledby","aria-label","visible","pt","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},module.exports=y;
1
+ "use strict";var e=require("primevue/portal"),t=require("primevue/utils"),n=require("primevue/basecomponent"),i=require("primevue/usestyle"),s=require("primevue/icons/angleright"),o=require("primevue/ripple"),r=require("vue");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=c(e),l=c(n),u=c(s),m=c(o),d=i.useStyle("\n.p-contextmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-contextmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n}\n\n.p-contextmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-text {\n line-height: 1;\n}\n\n.p-contextmenu .p-menuitem {\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n\n.p-contextmenu-enter-from {\n opacity: 0;\n}\n\n.p-contextmenu-enter-active {\n transition: opacity 250ms;\n}\n",{name:"contextmenu",manual:!0}),h={name:"BaseContextMenu",extends:l.default,props:{model:{type:Array,default:null},appendTo:{type:String,default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:function(e){var t=e.instance;return["p-contextmenu p-component",{"p-input-filled":"filled"===t.$primevue.config.inputStyle,"p-ripple-disabled":!1===t.$primevue.config.ripple}]},menu:"p-contextmenu-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":t.isItemActive(n),"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},loadStyle:d.load},provide:function(){return{$parentInstance:this}}},p={name:"ContextMenuSub",hostName:"ContextMenu",extends:l.default,emits:["item-click","item-mouseenter"],props:{items:{type:Array,default:null},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},root:{type:Boolean,default:!1},visible:{type:Boolean,default:!1},level:{type:Number,default:0},templates:{type:Object,default:null},exact:{type:Boolean,default:!0},activeItemPath:{type:Object,default:null},tabindex:{type:Number,default:0}},methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,n,i){return e&&e.item?t.ObjectUtils.getItemValue(e.item[n],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,n){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),index:n}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter:function(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1},onEnter:function(){this.position()},position:function(){var e=this.$refs.container.parentElement,n=t.DomHandler.getOffset(this.$refs.container.parentElement),i=t.DomHandler.getViewport(),s=this.$refs.container.offsetParent?this.$refs.container.offsetWidth:t.DomHandler.getHiddenElementOuterWidth(this.$refs.container),o=t.DomHandler.getOuterWidth(e.children[0]);this.$refs.container.style.top="0px",this.$refs.container.style.left=parseInt(n.left,10)+o+s>i.width-t.DomHandler.calculateScrollbarWidth()?-1*s+"px":o+"px"},getMenuItemProps:function(e,t){return{action:r.mergeProps({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions("action",e,t)),icon:r.mergeProps({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions("icon",e,t)),label:r.mergeProps({class:this.cx("label")},this.getPTOptions("label",e,t)),submenuicon:r.mergeProps({class:this.cx("submenuIcon")},this.getPTOptions("submenuicon",e,t))}}},components:{AngleRightIcon:u.default},directives:{ripple:m.default}},f=["tabindex"],I=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],b=["onClick","onMouseenter"],v=["href","onClick"],g=["href","target"],x=["id"];p.render=function(e,t,n,i,s,o){var c=r.resolveComponent("router-link"),a=r.resolveComponent("AngleRightIcon"),l=r.resolveComponent("ContextMenuSub",!0),u=r.resolveDirective("ripple");return r.openBlock(),r.createBlock(r.Transition,r.mergeProps({name:"p-contextmenusub",onEnter:o.onEnter},e.ptm("menu.transition")),{default:r.withCtx((function(){return[n.root||n.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:n.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.items,(function(i,s){return r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(i)},[o.isItemVisible(i)&&!o.getItemProp(i,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(i),style:o.getItemProp(i,"style"),class:[e.cx("menuitem",{processedItem:i}),o.getItemProp(i,"class")],role:"menuitem","aria-label":o.getItemLabel(i),"aria-disabled":o.isItemDisabled(i)||void 0,"aria-expanded":o.isItemGroup(i)?o.isItemActive(i):void 0,"aria-haspopup":o.isItemGroup(i)&&!o.getItemProp(i,"to")?"menu":void 0,"aria-level":n.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",i,s),{"data-p-highlight":o.isItemActive(i),"data-p-focused":o.isItemFocused(i),"data-p-disabled":o.isItemDisabled(i)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,i)},onMouseenter:function(e){return o.onItemMouseEnter(e,i)}},o.getPTOptions("content",i,s)),[n.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.item),{key:1,item:i.item,label:o.getItemLabel(i),props:o.getMenuItemProps(i,s)},null,8,["item","label","props"])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[o.getItemProp(i,"to")&&!o.isItemDisabled(i)?(r.openBlock(),r.createBlock(c,{key:0,to:o.getItemProp(i,"to"),custom:""},{default:r.withCtx((function(t){var c=t.navigate,a=t.href,l=t.isActive,m=t.isExactActive;return[r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({href:a,class:e.cx("action",{isActive:l,isExactActive:m}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return o.onItemActionClick(e,c)}},o.getPTOptions("action",i,s)),[n.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:r.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions("icon",i,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:e.cx("label")},o.getPTOptions("label",i,s)),r.toDisplayString(o.getItemLabel(i)),17)],16,v)),[[u]])]})),_:2},1032,["to"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:1,href:o.getItemProp(i,"url"),class:e.cx("action"),target:o.getItemProp(i,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",i,s)),[n.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:r.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions("icon",i,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:e.cx("label")},o.getPTOptions("label",i,s)),r.toDisplayString(o.getItemLabel(i)),17),o.getItemProp(i,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[n.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.templates.submenuicon),{key:0,active:o.isItemActive(i),class:r.normalizeClass(e.cx("submenuIcon"))},null,8,["active","class"])):(r.openBlock(),r.createBlock(a,r.mergeProps({key:1,class:e.cx("submenuIcon")},o.getPTOptions("submenuicon",i,s)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,g)),[[u]])],64))],16,b),o.isItemVisible(i)&&o.isItemGroup(i)?(r.openBlock(),r.createBlock(l,r.mergeProps({key:0,id:o.getItemId(i)+"_list",role:"menu",class:e.cx("submenu"),menuId:n.menuId,focusedItemId:n.focusedItemId,items:i.items,templates:n.templates,activeItemPath:n.activeItemPath,exact:n.exact,level:n.level+1,visible:o.isItemActive(i)&&o.isItemGroup(i),pt:e.pt,unstyled:e.unstyled,onItemClick:t[0]||(t[0]=function(t){return e.$emit("item-click",t)}),onItemMouseenter:t[1]||(t[1]=function(t){return e.$emit("item-mouseenter",t)})},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","exact","level","visible","pt","unstyled"])):r.createCommentVNode("",!0)],16,I)):r.createCommentVNode("",!0),o.isItemVisible(i)&&o.getItemProp(i,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(i),style:o.getItemProp(i,"style"),class:[e.cx("separator"),o.getItemProp(i,"class")],role:"separator"},e.ptm("separator")),null,16,x)):r.createCommentVNode("",!0)],64)})),128))],16,f)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var y={name:"ContextMenu",extends:h,inheritAttrs:!1,emits:["focus","blur","show","hide"],target:null,outsideClickListener:null,resizeListener:null,documentContextMenuListener:null,pageX:null,pageY:null,container:null,list:null,data:function(){return{id:this.$attrs.id,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],visible:!1,submenuVisible:!1}},watch:{"$attrs.id":function(e){this.id=e||t.UniqueComponentId()},activeItemPath:function(e){t.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener()):this.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener())}},beforeMount:function(){this.$slots.item||console.warn("In future versions, vue-router support will be removed. Item templating should be used.")},mounted:function(){this.id=this.id||t.UniqueComponentId(),this.global&&this.bindDocumentContextMenuListener()},beforeUnmount:function(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.unbindDocumentContextMenuListener(),this.container&&this.autoZIndex&&t.ZIndexUtils.clear(this.container),this.target=null,this.container=null},methods:{getItemProp:function(e,n){return e?t.ObjectUtils.getItemValue(e[n]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator:function(e){return this.getItemProp(e,"separator")},getProccessedItemLabel:function(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:function(e){return e&&t.ObjectUtils.isNotEmpty(e.items)},toggle:function(e){this.visible?this.hide():this.show(e)},show:function(e){this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},t.DomHandler.focus(this.list),this.pageX=e.pageX,this.pageY=e.pageY,this.visible?this.position():this.visible=!0,e.stopPropagation(),e.preventDefault()},hide:function(){this.visible=!1,this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""}},onFocus:function(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:-1,level:0,parentKey:""},this.$emit("focus",e)},onBlur:function(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.$emit("blur",e)},onKeyDown:function(e){var n=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":this.onEscapeKey(e);break;case"Tab":this.onTabKey(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!n&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,i=e.isFocus;if(!t.ObjectUtils.isEmpty(n)){var s=n.index,o=n.key,r=n.level,c=n.parentKey,a=t.ObjectUtils.isNotEmpty(n.items),l=this.activeItemPath.filter((function(e){return e.parentKey!==c&&e.parentKey!==o}));a&&(l.push(n),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:c},this.activeItemPath=l,i&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var n=e.processedItem,i=this.isProccessedItemGroup(n);if(this.isSelected(n)){var s=n.index,o=n.key,r=n.level,c=n.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:c},t.DomHandler.focus(this.list)}else i?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onArrowDownKey:function(e){var t=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()},onArrowUpKey:function(e){if(e.altKey){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.popup&&this.hide(),e.preventDefault()}else{var n=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,n),e.preventDefault()}},onArrowLeftKey:function(e){var n=this,i=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===i.parentKey}));t.ObjectUtils.isEmpty(i.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==n.focusedItemInfo.parentKey})),e.preventDefault()},onArrowRightKey:function(e){var t=this.visibleItems[this.focusedItemInfo.index];this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.searchValue="",this.onArrowDownKey(e)),e.preventDefault()},onHomeKey:function(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey:function(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey:function(e){if(-1!==this.focusedItemInfo.index){var n=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=n&&t.DomHandler.findSingle(n,'a[data-pc-section="action"]');i?i.click():n&&n.click(),!this.isProccessedItemGroup(this.visibleItems[this.focusedItemInfo.index])&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onEscapeKey:function(e){this.hide(),!this.popup&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex()),e.preventDefault()},onTabKey:function(e){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},onEnter:function(e){t.DomHandler.addStyles(e,{position:"absolute"}),this.position(),this.autoZIndex&&t.ZIndexUtils.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu)},onAfterEnter:function(){this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener(),this.$emit("show"),t.DomHandler.focus(this.list)},onLeave:function(){this.$emit("hide"),this.container=null},onAfterLeave:function(e){this.autoZIndex&&t.ZIndexUtils.clear(e),this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener()},position:function(){var e=this.pageX+1,n=this.pageY+1,i=this.container.offsetParent?this.container.offsetWidth:t.DomHandler.getHiddenElementOuterWidth(this.container),s=this.container.offsetParent?this.container.offsetHeight:t.DomHandler.getHiddenElementOuterHeight(this.container),o=t.DomHandler.getViewport();e+i-document.body.scrollLeft>o.width&&(e-=i),n+s-document.body.scrollTop>o.height&&(n-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),n<document.body.scrollTop&&(n=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=n+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var n=e.container&&!e.container.contains(t.target),i=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));n&&i&&e.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindResizeListener:function(){var e=this;this.resizeListener||(this.resizeListener=function(){e.visible&&!t.DomHandler.isTouchDevice()&&e.hide()},window.addEventListener("resize",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},bindDocumentContextMenuListener:function(){var e=this;this.documentContextMenuListener||(this.documentContextMenuListener=function(t){2!==t.button?e.show(t):e.hide()},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem:function(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},findFirstItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidItem(t)}))},findLastItemIndex:function(){var e=this;return t.ObjectUtils.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,n=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return n>-1?n+e+1:e},findPrevItemIndex:function(e){var n=this,i=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return n.isValidItem(e)})):-1;return i>-1?i:e},findSelectedItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidSelectedItem(t)}))},findFirstFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems:function(e,t){var n=this;this.searchValue=(this.searchValue||"")+t;var i=-1,s=!1;return-1!==(i=-1!==this.focusedItemInfo.index?-1===(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})):i+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return n.isItemMatched(e)})))&&(s=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){n.searchValue="",n.searchTimeout=null}),500),s},changeFocusedItemIndex:function(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemId,i=t.DomHandler.findSingle(this.list,'li[id="'.concat(n,'"]'));i&&i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",o=[];return e&&e.forEach((function(e,r){var c=(""!==s?s+"_":"")+r,a={item:e,index:r,level:n,key:c,parent:i,parentKey:s};a.items=t.createProcessedItems(e.items,n+1,a,c),o.push(a)})),o},containerRef:function(e){this.container=e},listRef:function(e){this.list=e?e.$el:void 0}},computed:{processedItems:function(){return this.createProcessedItems(this.model||[])},visibleItems:function(){var e=this,t=this.activeItemPath.find((function(t){return t.key===e.focusedItemInfo.parentKey}));return t?t.items:this.processedItems},focusedItemId:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{ContextMenuSub:p,Portal:a.default}};function k(e){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},k(e)}function P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function L(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?P(Object(n),!0).forEach((function(t){C(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):P(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function C(e,t,n){return(t=E(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e){var t=w(e,"string");return"symbol"===k(t)?t:String(t)}function w(e,t){if("object"!==k(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==k(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}y.render=function(e,t,n,i,s,o){var c=r.resolveComponent("ContextMenuSub"),a=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(a,{appendTo:e.appendTo},{default:r.withCtx((function(){return[r.createVNode(r.Transition,r.mergeProps({name:"p-contextmenu",onEnter:o.onEnter,onAfterEnter:o.onAfterEnter,onLeave:o.onLeave,onAfterLeave:o.onAfterLeave},e.ptm("transition")),{default:r.withCtx((function(){return[s.visible?(r.openBlock(),r.createElementBlock("div",r.mergeProps({key:0,ref:o.containerRef,class:e.cx("root")},L(L({},e.$attrs),e.ptm("root")),{"data-pc-name":"contextmenu"}),[r.createVNode(c,{ref:o.listRef,id:s.id+"_list",class:r.normalizeClass(e.cx("menu")),role:"menubar",root:!0,tabindex:e.tabindex,"aria-orientation":"vertical","aria-activedescendant":s.focused?o.focusedItemId:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemId:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,exact:e.exact,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,level:0,visible:s.submenuVisible,pt:e.pt,unstyled:e.unstyled,onFocus:o.onFocus,onBlur:o.onBlur,onKeydown:o.onKeyDown,onItemClick:o.onItemClick,onItemMouseenter:o.onItemMouseEnter},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","exact","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},module.exports=y;
@@ -4,7 +4,7 @@ import BaseComponent from 'primevue/basecomponent';
4
4
  import { useStyle } from 'primevue/usestyle';
5
5
  import AngleRightIcon from 'primevue/icons/angleright';
6
6
  import Ripple from 'primevue/ripple';
7
- import { resolveComponent, resolveDirective, openBlock, createBlock, Transition, mergeProps, withCtx, createElementBlock, Fragment, renderList, createElementVNode, withDirectives, resolveDynamicComponent, normalizeClass, createCommentVNode, toDisplayString, createVNode } from 'vue';
7
+ import { mergeProps, resolveComponent, resolveDirective, openBlock, createBlock, Transition, withCtx, createElementBlock, Fragment, renderList, createElementVNode, withDirectives, resolveDynamicComponent, normalizeClass, createCommentVNode, toDisplayString, createVNode } from 'vue';
8
8
 
9
9
  var styles = "\n.p-contextmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-contextmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n}\n\n.p-contextmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-text {\n line-height: 1;\n}\n\n.p-contextmenu .p-menuitem {\n position: relative;\n}\n\n.p-contextmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n\n.p-contextmenu-enter-from {\n opacity: 0;\n}\n\n.p-contextmenu-enter-active {\n transition: opacity 250ms;\n}\n";
10
10
  var classes = {
@@ -232,6 +232,24 @@ var script$1 = {
232
232
  } else {
233
233
  this.$refs.container.style.left = itemOuterWidth + 'px';
234
234
  }
235
+ },
236
+ getMenuItemProps: function getMenuItemProps(processedItem, index) {
237
+ return {
238
+ action: mergeProps({
239
+ "class": this.cx('action'),
240
+ tabindex: -1,
241
+ 'aria-hidden': true
242
+ }, this.getPTOptions('action', processedItem, index)),
243
+ icon: mergeProps({
244
+ "class": [this.cx('icon'), this.getItemProp(processedItem, 'icon')]
245
+ }, this.getPTOptions('icon', processedItem, index)),
246
+ label: mergeProps({
247
+ "class": this.cx('label')
248
+ }, this.getPTOptions('label', processedItem, index)),
249
+ submenuicon: mergeProps({
250
+ "class": this.cx('submenuIcon')
251
+ }, this.getPTOptions('submenuicon', processedItem, index))
252
+ };
235
253
  }
236
254
  },
237
255
  components: {
@@ -354,8 +372,10 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
354
372
  "class": _ctx.cx('submenuIcon')
355
373
  }, $options.getPTOptions('submenuicon', processedItem, index)), null, 16, ["class"]))], 64)) : createCommentVNode("", true)], 16, _hoisted_5)), [[_directive_ripple]])], 64)) : (openBlock(), createBlock(resolveDynamicComponent($props.templates.item), {
356
374
  key: 1,
357
- item: processedItem.item
358
- }, null, 8, ["item"]))], 16, _hoisted_3), $options.isItemVisible(processedItem) && $options.isItemGroup(processedItem) ? (openBlock(), createBlock(_component_ContextMenuSub, mergeProps({
375
+ item: processedItem.item,
376
+ label: $options.getItemLabel(processedItem),
377
+ props: $options.getMenuItemProps(processedItem, index)
378
+ }, null, 8, ["item", "label", "props"]))], 16, _hoisted_3), $options.isItemVisible(processedItem) && $options.isItemGroup(processedItem) ? (openBlock(), createBlock(_component_ContextMenuSub, mergeProps({
359
379
  key: 0,
360
380
  id: $options.getItemId(processedItem) + '_list',
361
381
  role: "menu",
@@ -367,15 +387,16 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
367
387
  activeItemPath: $props.activeItemPath,
368
388
  exact: $props.exact,
369
389
  level: $props.level + 1,
370
- pt: _ctx.pt,
371
390
  visible: $options.isItemActive(processedItem) && $options.isItemGroup(processedItem),
391
+ pt: _ctx.pt,
392
+ unstyled: _ctx.unstyled,
372
393
  onItemClick: _cache[0] || (_cache[0] = function ($event) {
373
394
  return _ctx.$emit('item-click', $event);
374
395
  }),
375
396
  onItemMouseenter: _cache[1] || (_cache[1] = function ($event) {
376
397
  return _ctx.$emit('item-mouseenter', $event);
377
398
  })
378
- }, _ctx.ptm('submenu')), null, 16, ["id", "class", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "level", "pt", "visible"])) : createCommentVNode("", true)], 16, _hoisted_2)) : createCommentVNode("", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (openBlock(), createElementBlock("li", mergeProps({
399
+ }, _ctx.ptm('submenu')), null, 16, ["id", "class", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "level", "visible", "pt", "unstyled"])) : createCommentVNode("", true)], 16, _hoisted_2)) : createCommentVNode("", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (openBlock(), createElementBlock("li", mergeProps({
379
400
  key: 1,
380
401
  id: $options.getItemId(processedItem),
381
402
  style: $options.getItemProp(processedItem, 'style'),
@@ -433,6 +454,17 @@ var script = {
433
454
  }
434
455
  }
435
456
  },
457
+ beforeMount: function beforeMount() {
458
+ if (!this.$slots.item) {
459
+ console.warn('In future versions, vue-router support will be removed. Item templating should be used.');
460
+ }
461
+ },
462
+ mounted: function mounted() {
463
+ this.id = this.id || UniqueComponentId();
464
+ if (this.global) {
465
+ this.bindDocumentContextMenuListener();
466
+ }
467
+ },
436
468
  beforeUnmount: function beforeUnmount() {
437
469
  this.unbindResizeListener();
438
470
  this.unbindOutsideClickListener();
@@ -443,12 +475,6 @@ var script = {
443
475
  this.target = null;
444
476
  this.container = null;
445
477
  },
446
- mounted: function mounted() {
447
- this.id = this.id || UniqueComponentId();
448
- if (this.global) {
449
- this.bindDocumentContextMenuListener();
450
- }
451
- },
452
478
  methods: {
453
479
  getItemProp: function getItemProp(item, name) {
454
480
  return item ? ObjectUtils.getItemValue(item[name]) : undefined;
@@ -974,9 +1000,9 @@ var script = {
974
1000
  }
975
1001
  };
976
1002
 
977
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
978
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
979
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1003
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
1004
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1005
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
980
1006
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
981
1007
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
982
1008
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
@@ -1021,12 +1047,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1021
1047
  level: 0,
1022
1048
  visible: $data.submenuVisible,
1023
1049
  pt: _ctx.pt,
1050
+ unstyled: _ctx.unstyled,
1024
1051
  onFocus: $options.onFocus,
1025
1052
  onBlur: $options.onBlur,
1026
1053
  onKeydown: $options.onKeyDown,
1027
1054
  onItemClick: $options.onItemClick,
1028
1055
  onItemMouseenter: $options.onItemMouseEnter
1029
- }, null, 8, ["id", "class", "tabindex", "aria-activedescendant", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "aria-labelledby", "aria-label", "visible", "pt", "onFocus", "onBlur", "onKeydown", "onItemClick", "onItemMouseenter"])], 16)) : createCommentVNode("", true)];
1056
+ }, null, 8, ["id", "class", "tabindex", "aria-activedescendant", "menuId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "aria-labelledby", "aria-label", "visible", "pt", "unstyled", "onFocus", "onBlur", "onKeydown", "onItemClick", "onItemMouseenter"])], 16)) : createCommentVNode("", true)];
1030
1057
  }),
1031
1058
  _: 1
1032
1059
  }, 16, ["onEnter", "onAfterEnter", "onLeave", "onAfterLeave"])];