primevue 3.50.0 → 3.52.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 (413) hide show
  1. package/accordion/Accordion.d.ts +2 -2
  2. package/accordiontab/AccordionTab.d.ts +2 -2
  3. package/autocomplete/AutoComplete.d.ts +2 -2
  4. package/autocomplete/AutoComplete.vue +10 -4
  5. package/autocomplete/autocomplete.cjs.js +35 -25
  6. package/autocomplete/autocomplete.cjs.min.js +1 -1
  7. package/autocomplete/autocomplete.esm.js +35 -25
  8. package/autocomplete/autocomplete.esm.min.js +1 -1
  9. package/autocomplete/autocomplete.js +35 -25
  10. package/autocomplete/autocomplete.min.js +1 -1
  11. package/avatar/Avatar.d.ts +2 -2
  12. package/avatargroup/AvatarGroup.d.ts +2 -2
  13. package/badge/Badge.d.ts +2 -2
  14. package/blockui/BlockUI.d.ts +2 -2
  15. package/breadcrumb/Breadcrumb.d.ts +2 -2
  16. package/button/Button.d.ts +2 -2
  17. package/buttongroup/ButtonGroup.d.ts +2 -2
  18. package/calendar/Calendar.d.ts +6 -5
  19. package/calendar/Calendar.vue +10 -13
  20. package/calendar/calendar.cjs.js +9 -11
  21. package/calendar/calendar.cjs.min.js +1 -1
  22. package/calendar/calendar.esm.js +10 -12
  23. package/calendar/calendar.esm.min.js +1 -1
  24. package/calendar/calendar.js +9 -11
  25. package/calendar/calendar.min.js +1 -1
  26. package/card/Card.d.ts +2 -2
  27. package/carousel/Carousel.d.ts +6 -2
  28. package/carousel/Carousel.vue +62 -52
  29. package/carousel/carousel.cjs.js +65 -49
  30. package/carousel/carousel.cjs.min.js +1 -1
  31. package/carousel/carousel.esm.js +66 -50
  32. package/carousel/carousel.esm.min.js +1 -1
  33. package/carousel/carousel.js +65 -49
  34. package/carousel/carousel.min.js +1 -1
  35. package/cascadeselect/CascadeSelect.d.ts +2 -2
  36. package/cascadeselect/CascadeSelectSub.vue +4 -1
  37. package/cascadeselect/cascadeselect.cjs.js +11 -6
  38. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  39. package/cascadeselect/cascadeselect.esm.js +11 -6
  40. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  41. package/cascadeselect/cascadeselect.js +11 -6
  42. package/cascadeselect/cascadeselect.min.js +1 -1
  43. package/chart/Chart.d.ts +2 -2
  44. package/checkbox/Checkbox.d.ts +2 -2
  45. package/chip/Chip.d.ts +2 -2
  46. package/chips/Chips.d.ts +2 -2
  47. package/colorpicker/ColorPicker.d.ts +2 -2
  48. package/column/Column.d.ts +2 -2
  49. package/columngroup/ColumnGroup.d.ts +2 -2
  50. package/config/PrimeVue.d.ts +1 -0
  51. package/config/config.cjs.js +2 -1
  52. package/config/config.cjs.min.js +1 -1
  53. package/config/config.esm.js +2 -1
  54. package/config/config.esm.min.js +1 -1
  55. package/config/config.js +2 -1
  56. package/config/config.min.js +1 -1
  57. package/confirmdialog/ConfirmDialog.d.ts +2 -2
  58. package/confirmpopup/ConfirmPopup.d.ts +2 -2
  59. package/contextmenu/ContextMenu.d.ts +2 -2
  60. package/contextmenu/ContextMenu.vue +4 -1
  61. package/contextmenu/contextmenu.cjs.js +4 -1
  62. package/contextmenu/contextmenu.cjs.min.js +1 -1
  63. package/contextmenu/contextmenu.esm.js +4 -1
  64. package/contextmenu/contextmenu.esm.min.js +1 -1
  65. package/contextmenu/contextmenu.js +4 -1
  66. package/contextmenu/contextmenu.min.js +1 -1
  67. package/core/core.js +60 -34
  68. package/core/core.min.js +8 -8
  69. package/datatable/BodyRow.vue +1 -0
  70. package/datatable/DataTable.d.ts +10 -7
  71. package/datatable/DataTable.vue +1 -0
  72. package/datatable/TableHeader.vue +5 -0
  73. package/datatable/datatable.cjs.js +9 -2
  74. package/datatable/datatable.cjs.min.js +1 -1
  75. package/datatable/datatable.esm.js +9 -2
  76. package/datatable/datatable.esm.min.js +1 -1
  77. package/datatable/datatable.js +9 -2
  78. package/datatable/datatable.min.js +1 -1
  79. package/dataview/DataView.d.ts +2 -2
  80. package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +2 -2
  81. package/deferredcontent/DeferredContent.d.ts +2 -2
  82. package/dialog/Dialog.d.ts +2 -2
  83. package/divider/Divider.d.ts +2 -2
  84. package/dock/Dock.d.ts +2 -2
  85. package/dropdown/Dropdown.d.ts +11 -3
  86. package/dropdown/Dropdown.vue +6 -1
  87. package/dropdown/dropdown.cjs.js +8 -2
  88. package/dropdown/dropdown.cjs.min.js +1 -1
  89. package/dropdown/dropdown.esm.js +8 -2
  90. package/dropdown/dropdown.esm.min.js +1 -1
  91. package/dropdown/dropdown.js +8 -2
  92. package/dropdown/dropdown.min.js +1 -1
  93. package/dropdown/style/dropdownstyle.cjs.js +2 -1
  94. package/dropdown/style/dropdownstyle.cjs.min.js +1 -1
  95. package/dropdown/style/dropdownstyle.esm.js +2 -1
  96. package/dropdown/style/dropdownstyle.esm.min.js +1 -1
  97. package/dropdown/style/dropdownstyle.js +2 -1
  98. package/dropdown/style/dropdownstyle.min.js +1 -1
  99. package/dynamicdialog/DynamicDialog.d.ts +2 -2
  100. package/editor/Editor.d.ts +2 -2
  101. package/fieldset/Fieldset.d.ts +2 -2
  102. package/fileupload/FileUpload.d.ts +2 -2
  103. package/fileupload/FileUpload.vue +1 -1
  104. package/fileupload/fileupload.cjs.js +10 -10
  105. package/fileupload/fileupload.cjs.min.js +1 -1
  106. package/fileupload/fileupload.esm.js +10 -10
  107. package/fileupload/fileupload.esm.min.js +1 -1
  108. package/fileupload/fileupload.js +10 -10
  109. package/fileupload/fileupload.min.js +1 -1
  110. package/floatlabel/FloatLabel.d.ts +2 -2
  111. package/galleria/Galleria.d.ts +2 -2
  112. package/iconfield/IconField.d.ts +2 -2
  113. package/icons/angledoubledown/index.d.ts +2 -2
  114. package/icons/angledoubleleft/index.d.ts +2 -2
  115. package/icons/angledoubleright/index.d.ts +2 -2
  116. package/icons/angledoubleup/index.d.ts +2 -2
  117. package/icons/angledown/index.d.ts +2 -2
  118. package/icons/angleleft/index.d.ts +2 -2
  119. package/icons/angleright/index.d.ts +2 -2
  120. package/icons/angleup/index.d.ts +2 -2
  121. package/icons/arrowdown/index.d.ts +2 -2
  122. package/icons/arrowup/index.d.ts +2 -2
  123. package/icons/ban/index.d.ts +2 -2
  124. package/icons/bars/index.d.ts +2 -2
  125. package/icons/blank/index.d.ts +2 -2
  126. package/icons/calendar/index.d.ts +2 -2
  127. package/icons/check/index.d.ts +2 -2
  128. package/icons/chevrondown/index.d.ts +2 -2
  129. package/icons/chevronleft/index.d.ts +2 -2
  130. package/icons/chevronright/index.d.ts +2 -2
  131. package/icons/chevronup/index.d.ts +2 -2
  132. package/icons/exclamationtriangle/index.d.ts +2 -2
  133. package/icons/eye/index.d.ts +2 -2
  134. package/icons/eyeslash/index.d.ts +2 -2
  135. package/icons/filter/index.d.ts +2 -2
  136. package/icons/filterslash/index.d.ts +2 -2
  137. package/icons/infocircle/index.d.ts +2 -2
  138. package/icons/minus/index.d.ts +2 -2
  139. package/icons/pencil/index.d.ts +2 -2
  140. package/icons/plus/index.d.ts +2 -2
  141. package/icons/refresh/index.d.ts +2 -2
  142. package/icons/search/index.d.ts +2 -2
  143. package/icons/searchminus/index.d.ts +2 -2
  144. package/icons/searchplus/index.d.ts +2 -2
  145. package/icons/sortalt/index.d.ts +2 -2
  146. package/icons/sortamountdown/index.d.ts +2 -2
  147. package/icons/sortamountupalt/index.d.ts +2 -2
  148. package/icons/spinner/index.d.ts +2 -2
  149. package/icons/star/index.d.ts +2 -2
  150. package/icons/starfill/index.d.ts +2 -2
  151. package/icons/thlarge/index.d.ts +2 -2
  152. package/icons/times/index.d.ts +2 -2
  153. package/icons/timescircle/index.d.ts +2 -2
  154. package/icons/trash/index.d.ts +2 -2
  155. package/icons/undo/index.d.ts +2 -2
  156. package/icons/upload/index.d.ts +2 -2
  157. package/icons/windowmaximize/index.d.ts +2 -2
  158. package/icons/windowminimize/index.d.ts +2 -2
  159. package/image/Image.d.ts +2 -2
  160. package/inlinemessage/InlineMessage.d.ts +2 -2
  161. package/inplace/Inplace.d.ts +2 -2
  162. package/inputgroup/InputGroup.d.ts +2 -2
  163. package/inputgroupaddon/InputGroupAddon.d.ts +2 -2
  164. package/inputicon/InputIcon.d.ts +2 -2
  165. package/inputmask/InputMask.d.ts +2 -2
  166. package/inputnumber/InputNumber.d.ts +6 -2
  167. package/inputnumber/InputNumber.vue +20 -17
  168. package/inputnumber/inputnumber.cjs.js +23 -20
  169. package/inputnumber/inputnumber.cjs.min.js +1 -1
  170. package/inputnumber/inputnumber.esm.js +23 -20
  171. package/inputnumber/inputnumber.esm.min.js +1 -1
  172. package/inputnumber/inputnumber.js +23 -20
  173. package/inputnumber/inputnumber.min.js +1 -1
  174. package/inputotp/InputOtp.d.ts +2 -2
  175. package/inputotp/InputOtp.vue +1 -1
  176. package/inputotp/inputotp.cjs.js +1 -1
  177. package/inputotp/inputotp.cjs.min.js +1 -1
  178. package/inputotp/inputotp.esm.js +1 -1
  179. package/inputotp/inputotp.esm.min.js +1 -1
  180. package/inputotp/inputotp.js +1 -1
  181. package/inputotp/inputotp.min.js +1 -1
  182. package/inputswitch/InputSwitch.d.ts +2 -2
  183. package/inputtext/InputText.d.ts +2 -2
  184. package/knob/BaseKnob.vue +1 -1
  185. package/knob/Knob.d.ts +3 -3
  186. package/knob/Knob.vue +5 -1
  187. package/knob/knob.cjs.js +6 -2
  188. package/knob/knob.cjs.min.js +1 -1
  189. package/knob/knob.esm.js +6 -2
  190. package/knob/knob.esm.min.js +1 -1
  191. package/knob/knob.js +6 -2
  192. package/knob/knob.min.js +1 -1
  193. package/listbox/Listbox.d.ts +2 -2
  194. package/megamenu/MegaMenu.d.ts +2 -2
  195. package/megamenu/MegaMenu.vue +4 -1
  196. package/megamenu/megamenu.cjs.js +4 -1
  197. package/megamenu/megamenu.cjs.min.js +1 -1
  198. package/megamenu/megamenu.esm.js +4 -1
  199. package/megamenu/megamenu.esm.min.js +1 -1
  200. package/megamenu/megamenu.js +4 -1
  201. package/megamenu/megamenu.min.js +1 -1
  202. package/menu/Menu.d.ts +2 -2
  203. package/menu/Menu.vue +15 -2
  204. package/menu/menu.cjs.js +5 -2
  205. package/menu/menu.cjs.min.js +1 -1
  206. package/menu/menu.esm.js +5 -2
  207. package/menu/menu.esm.min.js +1 -1
  208. package/menu/menu.js +5 -2
  209. package/menu/menu.min.js +1 -1
  210. package/menubar/Menubar.d.ts +2 -2
  211. package/menubar/Menubar.vue +4 -1
  212. package/menubar/menubar.cjs.js +4 -1
  213. package/menubar/menubar.cjs.min.js +1 -1
  214. package/menubar/menubar.esm.js +4 -1
  215. package/menubar/menubar.esm.min.js +1 -1
  216. package/menubar/menubar.js +4 -1
  217. package/menubar/menubar.min.js +1 -1
  218. package/message/Message.d.ts +2 -2
  219. package/metergroup/MeterGroup.d.ts +2 -2
  220. package/multiselect/MultiSelect.d.ts +2 -2
  221. package/multiselect/MultiSelect.vue +6 -3
  222. package/multiselect/multiselect.cjs.js +8 -4
  223. package/multiselect/multiselect.cjs.min.js +1 -1
  224. package/multiselect/multiselect.esm.js +8 -4
  225. package/multiselect/multiselect.esm.min.js +1 -1
  226. package/multiselect/multiselect.js +8 -4
  227. package/multiselect/multiselect.min.js +1 -1
  228. package/orderlist/OrderList.d.ts +2 -2
  229. package/organizationchart/OrganizationChart.d.ts +2 -2
  230. package/overlaypanel/OverlayPanel.d.ts +2 -2
  231. package/package.json +1 -1
  232. package/paginator/Paginator.d.ts +2 -2
  233. package/paginator/Paginator.vue +0 -1
  234. package/paginator/paginator.cjs.js +1 -1
  235. package/paginator/paginator.cjs.min.js +1 -1
  236. package/paginator/paginator.esm.js +1 -1
  237. package/paginator/paginator.esm.min.js +1 -1
  238. package/paginator/paginator.js +1 -1
  239. package/paginator/paginator.min.js +1 -1
  240. package/panel/Panel.d.ts +2 -2
  241. package/panelmenu/PanelMenu.d.ts +2 -2
  242. package/password/Password.d.ts +2 -2
  243. package/picklist/PickList.d.ts +2 -2
  244. package/portal/Portal.d.ts +2 -2
  245. package/progressbar/ProgressBar.d.ts +2 -2
  246. package/progressspinner/ProgressSpinner.d.ts +2 -2
  247. package/radiobutton/RadioButton.d.ts +2 -2
  248. package/rating/Rating.d.ts +2 -2
  249. package/resources/themes/arya-blue/theme.css +1 -0
  250. package/resources/themes/arya-green/theme.css +1 -0
  251. package/resources/themes/arya-orange/theme.css +1 -0
  252. package/resources/themes/arya-purple/theme.css +1 -0
  253. package/resources/themes/aura-dark-amber/theme.css +1 -0
  254. package/resources/themes/aura-dark-blue/theme.css +1 -0
  255. package/resources/themes/aura-dark-cyan/theme.css +1 -0
  256. package/resources/themes/aura-dark-green/theme.css +1 -0
  257. package/resources/themes/aura-dark-indigo/theme.css +1 -0
  258. package/resources/themes/aura-dark-lime/theme.css +1 -0
  259. package/resources/themes/aura-dark-noir/theme.css +1 -0
  260. package/resources/themes/aura-dark-pink/theme.css +1 -0
  261. package/resources/themes/aura-dark-purple/theme.css +1 -0
  262. package/resources/themes/aura-dark-teal/theme.css +1 -0
  263. package/resources/themes/aura-light-amber/theme.css +7 -1
  264. package/resources/themes/aura-light-blue/theme.css +7 -1
  265. package/resources/themes/aura-light-cyan/theme.css +7 -1
  266. package/resources/themes/aura-light-green/theme.css +7 -1
  267. package/resources/themes/aura-light-indigo/theme.css +7 -1
  268. package/resources/themes/aura-light-lime/theme.css +7 -1
  269. package/resources/themes/aura-light-noir/theme.css +7 -1
  270. package/resources/themes/aura-light-pink/theme.css +7 -1
  271. package/resources/themes/aura-light-purple/theme.css +7 -1
  272. package/resources/themes/aura-light-teal/theme.css +7 -1
  273. package/resources/themes/bootstrap4-dark-blue/theme.css +1 -0
  274. package/resources/themes/bootstrap4-dark-purple/theme.css +1 -0
  275. package/resources/themes/bootstrap4-light-blue/theme.css +1 -0
  276. package/resources/themes/bootstrap4-light-purple/theme.css +1 -0
  277. package/resources/themes/fluent-light/theme.css +1 -0
  278. package/resources/themes/lara-dark-amber/theme.css +1 -0
  279. package/resources/themes/lara-dark-blue/theme.css +1 -0
  280. package/resources/themes/lara-dark-cyan/theme.css +1 -0
  281. package/resources/themes/lara-dark-green/theme.css +1 -0
  282. package/resources/themes/lara-dark-indigo/theme.css +1 -0
  283. package/resources/themes/lara-dark-pink/theme.css +1 -0
  284. package/resources/themes/lara-dark-purple/theme.css +1 -0
  285. package/resources/themes/lara-dark-teal/theme.css +1 -0
  286. package/resources/themes/lara-light-amber/theme.css +1 -0
  287. package/resources/themes/lara-light-blue/theme.css +1 -0
  288. package/resources/themes/lara-light-cyan/theme.css +1 -0
  289. package/resources/themes/lara-light-green/theme.css +1 -0
  290. package/resources/themes/lara-light-indigo/theme.css +1 -0
  291. package/resources/themes/lara-light-pink/theme.css +1 -0
  292. package/resources/themes/lara-light-purple/theme.css +1 -0
  293. package/resources/themes/lara-light-teal/theme.css +1 -0
  294. package/resources/themes/luna-amber/theme.css +1 -0
  295. package/resources/themes/luna-blue/theme.css +1 -0
  296. package/resources/themes/luna-green/theme.css +1 -0
  297. package/resources/themes/luna-pink/theme.css +1 -0
  298. package/resources/themes/md-dark-deeppurple/theme.css +1 -0
  299. package/resources/themes/md-dark-indigo/theme.css +1 -0
  300. package/resources/themes/md-light-deeppurple/theme.css +1 -0
  301. package/resources/themes/md-light-indigo/theme.css +1 -0
  302. package/resources/themes/mdc-dark-deeppurple/theme.css +1 -0
  303. package/resources/themes/mdc-dark-indigo/theme.css +1 -0
  304. package/resources/themes/mdc-light-deeppurple/theme.css +1 -0
  305. package/resources/themes/mdc-light-indigo/theme.css +1 -0
  306. package/resources/themes/mira/theme.css +1 -0
  307. package/resources/themes/nano/theme.css +1 -0
  308. package/resources/themes/nova/theme.css +1 -0
  309. package/resources/themes/nova-accent/theme.css +1 -0
  310. package/resources/themes/nova-alt/theme.css +1 -0
  311. package/resources/themes/nova-vue/theme.css +1 -0
  312. package/resources/themes/rhea/theme.css +1 -0
  313. package/resources/themes/saga-blue/theme.css +1 -0
  314. package/resources/themes/saga-green/theme.css +1 -0
  315. package/resources/themes/saga-orange/theme.css +1 -0
  316. package/resources/themes/saga-purple/theme.css +1 -0
  317. package/resources/themes/soho-dark/theme.css +1 -0
  318. package/resources/themes/soho-light/theme.css +1 -0
  319. package/resources/themes/tailwind-light/theme.css +1 -0
  320. package/resources/themes/vela-blue/theme.css +1 -0
  321. package/resources/themes/vela-green/theme.css +1 -0
  322. package/resources/themes/vela-orange/theme.css +1 -0
  323. package/resources/themes/vela-purple/theme.css +1 -0
  324. package/resources/themes/viva-dark/theme.css +1 -0
  325. package/resources/themes/viva-light/theme.css +1 -0
  326. package/row/Row.d.ts +2 -2
  327. package/scrollpanel/ScrollPanel.d.ts +2 -2
  328. package/scrollpanel/ScrollPanel.vue +19 -14
  329. package/scrollpanel/scrollpanel.cjs.js +18 -14
  330. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  331. package/scrollpanel/scrollpanel.esm.js +18 -14
  332. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  333. package/scrollpanel/scrollpanel.js +18 -14
  334. package/scrollpanel/scrollpanel.min.js +1 -1
  335. package/scrolltop/ScrollTop.d.ts +2 -2
  336. package/selectbutton/SelectButton.d.ts +2 -2
  337. package/sidebar/BaseSidebar.vue +9 -0
  338. package/sidebar/Sidebar.d.ts +2 -2
  339. package/sidebar/sidebar.cjs.js +9 -0
  340. package/sidebar/sidebar.cjs.min.js +1 -1
  341. package/sidebar/sidebar.esm.js +9 -0
  342. package/sidebar/sidebar.esm.min.js +1 -1
  343. package/sidebar/sidebar.js +9 -0
  344. package/sidebar/sidebar.min.js +1 -1
  345. package/skeleton/Skeleton.d.ts +2 -2
  346. package/slider/Slider.d.ts +2 -2
  347. package/slider/Slider.vue +7 -6
  348. package/slider/slider.cjs.js +7 -6
  349. package/slider/slider.cjs.min.js +1 -1
  350. package/slider/slider.esm.js +7 -6
  351. package/slider/slider.esm.min.js +1 -1
  352. package/slider/slider.js +7 -6
  353. package/slider/slider.min.js +1 -1
  354. package/speeddial/SpeedDial.d.ts +2 -2
  355. package/splitbutton/SplitButton.d.ts +2 -2
  356. package/splitter/Splitter.d.ts +2 -2
  357. package/splitterpanel/SplitterPanel.d.ts +2 -2
  358. package/stepper/Stepper.d.ts +2 -2
  359. package/stepper/Stepper.vue +4 -3
  360. package/stepper/stepper.cjs.js +14 -15
  361. package/stepper/stepper.cjs.min.js +1 -1
  362. package/stepper/stepper.esm.js +15 -16
  363. package/stepper/stepper.esm.min.js +1 -1
  364. package/stepper/stepper.js +14 -15
  365. package/stepper/stepper.min.js +1 -1
  366. package/stepperpanel/StepperPanel.d.ts +3 -3
  367. package/steps/Steps.d.ts +2 -2
  368. package/tabmenu/TabMenu.d.ts +2 -2
  369. package/tabpanel/TabPanel.d.ts +2 -2
  370. package/tabview/TabView.d.ts +2 -2
  371. package/tag/Tag.d.ts +2 -2
  372. package/terminal/Terminal.d.ts +2 -2
  373. package/textarea/Textarea.d.ts +2 -2
  374. package/tieredmenu/TieredMenu.d.ts +2 -2
  375. package/tieredmenu/TieredMenu.vue +10 -3
  376. package/tieredmenu/tieredmenu.cjs.js +13 -3
  377. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  378. package/tieredmenu/tieredmenu.esm.js +13 -3
  379. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  380. package/tieredmenu/tieredmenu.js +13 -3
  381. package/tieredmenu/tieredmenu.min.js +1 -1
  382. package/timeline/Timeline.d.ts +2 -2
  383. package/toast/Toast.d.ts +2 -2
  384. package/toast/Toast.vue +4 -9
  385. package/toast/toast.cjs.js +8 -10
  386. package/toast/toast.cjs.min.js +1 -1
  387. package/toast/toast.esm.js +8 -10
  388. package/toast/toast.esm.min.js +1 -1
  389. package/toast/toast.js +8 -10
  390. package/toast/toast.min.js +1 -1
  391. package/togglebutton/ToggleButton.d.ts +2 -2
  392. package/toolbar/Toolbar.d.ts +2 -2
  393. package/tree/Tree.d.ts +7 -3
  394. package/tree/TreeNode.vue +2 -1
  395. package/tree/tree.cjs.js +6 -4
  396. package/tree/tree.cjs.min.js +1 -1
  397. package/tree/tree.esm.js +6 -4
  398. package/tree/tree.esm.min.js +1 -1
  399. package/tree/tree.js +6 -4
  400. package/tree/tree.min.js +1 -1
  401. package/treeselect/TreeSelect.d.ts +2 -2
  402. package/treetable/TreeTable.d.ts +2 -2
  403. package/treetable/TreeTable.vue +3 -3
  404. package/treetable/treetable.cjs.js +3 -3
  405. package/treetable/treetable.cjs.min.js +1 -1
  406. package/treetable/treetable.esm.js +3 -3
  407. package/treetable/treetable.esm.min.js +1 -1
  408. package/treetable/treetable.js +3 -3
  409. package/treetable/treetable.min.js +1 -1
  410. package/tristatecheckbox/TriStateCheckbox.d.ts +2 -2
  411. package/vetur-attributes.json +3 -3
  412. package/virtualscroller/VirtualScroller.d.ts +2 -2
  413. package/web-types.json +9 -4
@@ -290,8 +290,8 @@ export interface ConfirmDialogEmits {}
290
290
  */
291
291
  declare class ConfirmDialog extends ClassComponent<ConfirmDialogProps, ConfirmDialogSlots, ConfirmDialogEmits> {}
292
292
 
293
- declare module '@vue/runtime-core' {
294
- interface GlobalComponents {
293
+ declare module 'vue' {
294
+ export interface GlobalComponents {
295
295
  ConfirmDialog: GlobalComponentConstructor<ConfirmDialog>;
296
296
  }
297
297
  }
@@ -235,8 +235,8 @@ export interface ConfirmPopupEmits {}
235
235
  */
236
236
  declare class ConfirmPopup extends ClassComponent<ConfirmPopupProps, ConfirmPopupSlots, ConfirmPopupEmits> {}
237
237
 
238
- declare module '@vue/runtime-core' {
239
- interface GlobalComponents {
238
+ declare module 'vue' {
239
+ export interface GlobalComponents {
240
240
  ConfirmPopup: GlobalComponentConstructor<ConfirmPopup>;
241
241
  }
242
242
  }
@@ -402,8 +402,8 @@ declare class ContextMenu extends ClassComponent<ContextMenuProps, ContextMenuSl
402
402
  hide(): void;
403
403
  }
404
404
 
405
- declare module '@vue/runtime-core' {
406
- interface GlobalComponents {
405
+ declare module 'vue' {
406
+ export interface GlobalComponents {
407
407
  ContextMenu: GlobalComponentConstructor<ContextMenu>;
408
408
  }
409
409
  }
@@ -106,6 +106,9 @@ export default {
106
106
  isItemDisabled(item) {
107
107
  return this.getItemProp(item, 'disabled');
108
108
  },
109
+ isItemVisible(item) {
110
+ return this.getItemProp(item, 'visible') !== false;
111
+ },
109
112
  isItemGroup(item) {
110
113
  return ObjectUtils.isNotEmpty(this.getItemProp(item, 'items'));
111
114
  },
@@ -459,7 +462,7 @@ export default {
459
462
  return this.isValidItem(processedItem) && this.getProccessedItemLabel(processedItem)?.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase());
460
463
  },
461
464
  isValidItem(processedItem) {
462
- return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item);
465
+ return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);
463
466
  },
464
467
  isValidSelectedItem(processedItem) {
465
468
  return this.isValidItem(processedItem) && this.isSelected(processedItem);
@@ -404,6 +404,9 @@ var script = {
404
404
  isItemDisabled: function isItemDisabled(item) {
405
405
  return this.getItemProp(item, 'disabled');
406
406
  },
407
+ isItemVisible: function isItemVisible(item) {
408
+ return this.getItemProp(item, 'visible') !== false;
409
+ },
407
410
  isItemGroup: function isItemGroup(item) {
408
411
  return utils.ObjectUtils.isNotEmpty(this.getItemProp(item, 'items'));
409
412
  },
@@ -773,7 +776,7 @@ var script = {
773
776
  return this.isValidItem(processedItem) && ((_this$getProccessedIt = this.getProccessedItemLabel(processedItem)) === null || _this$getProccessedIt === void 0 ? void 0 : _this$getProccessedIt.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()));
774
777
  },
775
778
  isValidItem: function isValidItem(processedItem) {
776
- return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item);
779
+ return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);
777
780
  },
778
781
  isValidSelectedItem: function isValidSelectedItem(processedItem) {
779
782
  return this.isValidItem(processedItem) && this.isSelected(processedItem);
@@ -1 +1 @@
1
- "use strict";var e=require("primevue/portal"),t=require("primevue/utils"),i=require("primevue/basecomponent"),n=require("primevue/contextmenu/style"),s=require("primevue/icons/angleright"),o=require("primevue/ripple"),r=require("vue");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),u=a(i),l={name:"BaseContextMenu",extends:u.default,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:a(n).default,provide:function(){return{$parentInstance:this}}},m={name:"ContextMenuSub",hostName:"ContextMenu",extends:u.default,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.ObjectUtils.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){t.DomHandler.nestedPosition(this.$refs.container,this.level)},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:a(s).default},directives:{ripple:a(o).default}},d=["tabindex"],h=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],I=["onClick","onMouseenter","onMousemove"],f=["href","target"],p=["id"],v=["id"];m.render=function(e,t,i,n,s,o){var a=r.resolveComponent("AngleRightIcon"),c=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[i.root||i.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.items,(function(n,s){return r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:r.normalizeClass(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),r.toDisplayString(o.getItemLabel(n)),17,p),o.getItemProp(n,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[i.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.submenuicon),{key:0,active:o.isItemActive(n),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",n,s)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,f)),[[u]])],16,I),o.isItemVisible(n)&&o.isItemGroup(n)?(r.openBlock(),r.createBlock(c,r.mergeProps({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):r.createCommentVNode("",!0)],16,h)):r.createCommentVNode("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,v)):r.createCommentVNode("",!0)],64)})),128))],16,d)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var b={name:"ContextMenu",extends:l,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.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},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,i){return e?t.ObjectUtils.getItemValue(e[i]):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 i=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":case"NumpadEnter":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:!i&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var i=e.processedItem,n=e.isFocus;if(!t.ObjectUtils.isEmpty(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey,c=t.ObjectUtils.isNotEmpty(i.items),u=this.activeItemPath.filter((function(e){return e.parentKey!==a&&e.parentKey!==o}));c&&(u.push(i),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:a},this.activeItemPath=u,n&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var i=e.processedItem,n=this.isProccessedItemGroup(i);if(this.isSelected(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},t.DomHandler.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.ObjectUtils.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 i=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=i&&t.DomHandler.findSingle(i,'a[data-pc-section="action"]');n?n.click():i&&i.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.$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()},position:function(){var e=this.pageX+1,i=this.pageY+1,n=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+n-document.body.scrollLeft>o.width&&(e-=n),i+s-document.body.scrollTop>o.height&&(i-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),i<document.body.scrollTop&&(i=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=i+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.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,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,i=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=t.DomHandler.findSingle(this.list,'li[id="'.concat(i,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,c={item:e,index:r,level:i,key:a,parent:n,parentKey:s};c.items=t.createProcessedItems(e.items,i+1,c,a),o.push(c)})),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},focusedItemIdx: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:m,Portal:c.default}};b.render=function(e,t,i,n,s,o){var a=r.resolveComponent("ContextMenuSub"),c=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(c,{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")},e.ptmi("root")),[r.createVNode(a,{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.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},module.exports=b;
1
+ "use strict";var e=require("primevue/portal"),t=require("primevue/utils"),i=require("primevue/basecomponent"),n=require("primevue/contextmenu/style"),s=require("primevue/icons/angleright"),o=require("primevue/ripple"),r=require("vue");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),u=a(i),l={name:"BaseContextMenu",extends:u.default,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:a(n).default,provide:function(){return{$parentInstance:this}}},m={name:"ContextMenuSub",hostName:"ContextMenu",extends:u.default,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.ObjectUtils.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){t.DomHandler.nestedPosition(this.$refs.container,this.level)},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:a(s).default},directives:{ripple:a(o).default}},d=["tabindex"],h=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],I=["onClick","onMouseenter","onMousemove"],f=["href","target"],p=["id"],v=["id"];m.render=function(e,t,i,n,s,o){var a=r.resolveComponent("AngleRightIcon"),c=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[i.root||i.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.items,(function(n,s){return r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:r.normalizeClass(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),r.toDisplayString(o.getItemLabel(n)),17,p),o.getItemProp(n,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[i.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.submenuicon),{key:0,active:o.isItemActive(n),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",n,s)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,f)),[[u]])],16,I),o.isItemVisible(n)&&o.isItemGroup(n)?(r.openBlock(),r.createBlock(c,r.mergeProps({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):r.createCommentVNode("",!0)],16,h)):r.createCommentVNode("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,v)):r.createCommentVNode("",!0)],64)})),128))],16,d)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var b={name:"ContextMenu",extends:l,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.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},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,i){return e?t.ObjectUtils.getItemValue(e[i]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},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 i=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":case"NumpadEnter":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:!i&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var i=e.processedItem,n=e.isFocus;if(!t.ObjectUtils.isEmpty(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey,c=t.ObjectUtils.isNotEmpty(i.items),u=this.activeItemPath.filter((function(e){return e.parentKey!==a&&e.parentKey!==o}));c&&(u.push(i),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:a},this.activeItemPath=u,n&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var i=e.processedItem,n=this.isProccessedItemGroup(i);if(this.isSelected(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},t.DomHandler.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.ObjectUtils.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 i=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=i&&t.DomHandler.findSingle(i,'a[data-pc-section="action"]');n?n.click():i&&i.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.$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()},position:function(){var e=this.pageX+1,i=this.pageY+1,n=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+n-document.body.scrollLeft>o.width&&(e-=n),i+s-document.body.scrollTop>o.height&&(i-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),i<document.body.scrollTop&&(i=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=i+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()))},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)&&this.isItemVisible(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,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,i=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=t.DomHandler.findSingle(this.list,'li[id="'.concat(i,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,c={item:e,index:r,level:i,key:a,parent:n,parentKey:s};c.items=t.createProcessedItems(e.items,i+1,c,a),o.push(c)})),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},focusedItemIdx: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:m,Portal:c.default}};b.render=function(e,t,i,n,s,o){var a=r.resolveComponent("ContextMenuSub"),c=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(c,{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")},e.ptmi("root")),[r.createVNode(a,{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.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},module.exports=b;
@@ -394,6 +394,9 @@ var script = {
394
394
  isItemDisabled: function isItemDisabled(item) {
395
395
  return this.getItemProp(item, 'disabled');
396
396
  },
397
+ isItemVisible: function isItemVisible(item) {
398
+ return this.getItemProp(item, 'visible') !== false;
399
+ },
397
400
  isItemGroup: function isItemGroup(item) {
398
401
  return ObjectUtils.isNotEmpty(this.getItemProp(item, 'items'));
399
402
  },
@@ -763,7 +766,7 @@ var script = {
763
766
  return this.isValidItem(processedItem) && ((_this$getProccessedIt = this.getProccessedItemLabel(processedItem)) === null || _this$getProccessedIt === void 0 ? void 0 : _this$getProccessedIt.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()));
764
767
  },
765
768
  isValidItem: function isValidItem(processedItem) {
766
- return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item);
769
+ return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);
767
770
  },
768
771
  isValidSelectedItem: function isValidSelectedItem(processedItem) {
769
772
  return this.isValidItem(processedItem) && this.isSelected(processedItem);
@@ -1 +1 @@
1
- import e from"primevue/portal";import{ObjectUtils as t,DomHandler as i,UniqueComponentId as n,ZIndexUtils as s}from"primevue/utils";import o from"primevue/basecomponent";import r from"primevue/contextmenu/style";import a from"primevue/icons/angleright";import u from"primevue/ripple";import{mergeProps as c,resolveComponent as d,resolveDirective as m,openBlock as l,createBlock as h,Transition as I,withCtx as f,createElementBlock as p,Fragment as v,renderList as b,createElementVNode as g,withDirectives as x,resolveDynamicComponent as y,normalizeClass as L,createCommentVNode as P,toDisplayString as k,createVNode as K}from"vue";var E={name:"BaseContextMenu",extends:o,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:r,provide:function(){return{$parentInstance:this}}},C={name:"ContextMenuSub",hostName:"ContextMenu",extends:o,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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.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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){i.nestedPosition(this.$refs.container,this.level)},getMenuItemProps:function(e,t){return{action:c({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions("action",e,t)),icon:c({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions("icon",e,t)),label:c({class:this.cx("label")},this.getPTOptions("label",e,t)),submenuicon:c({class:this.cx("submenuIcon")},this.getPTOptions("submenuicon",e,t))}}},components:{AngleRightIcon:a},directives:{ripple:u}},M=["tabindex"],w=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],A=["onClick","onMouseenter","onMousemove"],S=["href","target"],F=["id"],V=["id"];C.render=function(e,t,i,n,s,o){var r=d("AngleRightIcon"),a=d("ContextMenuSub",!0),u=m("ripple");return l(),h(I,c({name:"p-contextmenusub",onEnter:o.onEnter},e.ptm("menu.transition")),{default:f((function(){return[i.root||i.visible?(l(),p("ul",c({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(l(!0),p(v,null,b(i.items,(function(n,s){return l(),p(v,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(l(),p("li",c({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[g("div",c({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(l(),h(y(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):x((l(),p("a",c({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(l(),h(y(i.templates.itemicon),{key:0,item:n.item,class:L(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(l(),p("span",c({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):P("",!0),g("span",c({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),k(o.getItemLabel(n)),17,F),o.getItemProp(n,"items")?(l(),p(v,{key:2},[i.templates.submenuicon?(l(),h(y(i.templates.submenuicon),{key:0,active:o.isItemActive(n),class:L(e.cx("submenuIcon"))},null,8,["active","class"])):(l(),h(r,c({key:1,class:e.cx("submenuIcon")},o.getPTOptions("submenuicon",n,s)),null,16,["class"]))],64)):P("",!0)],16,S)),[[u]])],16,A),o.isItemVisible(n)&&o.isItemGroup(n)?(l(),h(a,c({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):P("",!0)],16,w)):P("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(l(),p("li",c({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,V)):P("",!0)],64)})),128))],16,M)):P("",!0)]})),_:1},16,["onEnter"])};var D={name:"ContextMenu",extends:E,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||n()},activeItemPath:function(e){t.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):this.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},mounted:function(){this.id=this.id||n(),this.global&&this.bindDocumentContextMenuListener()},beforeUnmount:function(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.unbindDocumentContextMenuListener(),this.container&&this.autoZIndex&&s.clear(this.container),this.target=null,this.container=null},methods:{getItemProp:function(e,i){return e?t.getItemValue(e[i]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemGroup:function(e){return t.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.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:""},i.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 i=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":case"NumpadEnter":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:!i&&t.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,s=e.isFocus;if(!t.isEmpty(n)){var o=n.index,r=n.key,a=n.level,u=n.parentKey,c=t.isNotEmpty(n.items),d=this.activeItemPath.filter((function(e){return e.parentKey!==u&&e.parentKey!==r}));c&&(d.push(n),this.submenuVisible=!0),this.focusedItemInfo={index:o,level:a,parentKey:u},this.activeItemPath=d,s&&i.focus(this.list)}},onItemClick:function(e){var t=e.processedItem,n=this.isProccessedItemGroup(t);if(this.isSelected(t)){var s=t.index,o=t.key,r=t.level,a=t.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},i.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 t=i.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=t&&i.findSingle(t,'a[data-pc-section="action"]');n?n.click():t&&t.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){i.addStyles(e,{position:"absolute"}),this.position(),this.autoZIndex&&s.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu)},onAfterEnter:function(){this.bindOutsideClickListener(),this.bindResizeListener(),this.$emit("show"),i.focus(this.list)},onLeave:function(){this.$emit("hide"),this.container=null},onAfterLeave:function(e){this.autoZIndex&&s.clear(e),this.unbindOutsideClickListener(),this.unbindResizeListener()},position:function(){var e=this.pageX+1,t=this.pageY+1,n=this.container.offsetParent?this.container.offsetWidth:i.getHiddenElementOuterWidth(this.container),s=this.container.offsetParent?this.container.offsetHeight:i.getHiddenElementOuterHeight(this.container),o=i.getViewport();e+n-document.body.scrollLeft>o.width&&(e-=n),t+s-document.body.scrollTop>o.height&&(t-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),t<document.body.scrollTop&&(t=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=t+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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&&!i.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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.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.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,t=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=i.findSingle(this.list,'li[id="'.concat(t,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,u={item:e,index:r,level:i,key:a,parent:n,parentKey:s};u.items=t.createProcessedItems(e.items,i+1,u,a),o.push(u)})),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},focusedItemIdx:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{ContextMenuSub:C,Portal:e}};D.render=function(e,t,i,n,s,o){var r=d("ContextMenuSub"),a=d("Portal");return l(),h(a,{appendTo:e.appendTo},{default:f((function(){return[K(I,c({name:"p-contextmenu",onEnter:o.onEnter,onAfterEnter:o.onAfterEnter,onLeave:o.onLeave,onAfterLeave:o.onAfterLeave},e.ptm("transition")),{default:f((function(){return[s.visible?(l(),p("div",c({key:0,ref:o.containerRef,class:e.cx("root")},e.ptmi("root")),[K(r,{ref:o.listRef,id:s.id+"_list",class:L(e.cx("menu")),role:"menubar",root:!0,tabindex:e.tabindex,"aria-orientation":"vertical","aria-activedescendant":s.focused?o.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):P("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])};export{D as default};
1
+ import e from"primevue/portal";import{ObjectUtils as t,DomHandler as i,UniqueComponentId as n,ZIndexUtils as s}from"primevue/utils";import o from"primevue/basecomponent";import r from"primevue/contextmenu/style";import a from"primevue/icons/angleright";import u from"primevue/ripple";import{mergeProps as c,resolveComponent as d,resolveDirective as m,openBlock as l,createBlock as h,Transition as I,withCtx as f,createElementBlock as p,Fragment as v,renderList as b,createElementVNode as g,withDirectives as x,resolveDynamicComponent as y,normalizeClass as L,createCommentVNode as P,toDisplayString as k,createVNode as K}from"vue";var E={name:"BaseContextMenu",extends:o,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:r,provide:function(){return{$parentInstance:this}}},C={name:"ContextMenuSub",hostName:"ContextMenu",extends:o,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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.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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){i.nestedPosition(this.$refs.container,this.level)},getMenuItemProps:function(e,t){return{action:c({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions("action",e,t)),icon:c({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions("icon",e,t)),label:c({class:this.cx("label")},this.getPTOptions("label",e,t)),submenuicon:c({class:this.cx("submenuIcon")},this.getPTOptions("submenuicon",e,t))}}},components:{AngleRightIcon:a},directives:{ripple:u}},M=["tabindex"],w=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],A=["onClick","onMouseenter","onMousemove"],S=["href","target"],V=["id"],F=["id"];C.render=function(e,t,i,n,s,o){var r=d("AngleRightIcon"),a=d("ContextMenuSub",!0),u=m("ripple");return l(),h(I,c({name:"p-contextmenusub",onEnter:o.onEnter},e.ptm("menu.transition")),{default:f((function(){return[i.root||i.visible?(l(),p("ul",c({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(l(!0),p(v,null,b(i.items,(function(n,s){return l(),p(v,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(l(),p("li",c({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[g("div",c({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(l(),h(y(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):x((l(),p("a",c({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(l(),h(y(i.templates.itemicon),{key:0,item:n.item,class:L(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(l(),p("span",c({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):P("",!0),g("span",c({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),k(o.getItemLabel(n)),17,V),o.getItemProp(n,"items")?(l(),p(v,{key:2},[i.templates.submenuicon?(l(),h(y(i.templates.submenuicon),{key:0,active:o.isItemActive(n),class:L(e.cx("submenuIcon"))},null,8,["active","class"])):(l(),h(r,c({key:1,class:e.cx("submenuIcon")},o.getPTOptions("submenuicon",n,s)),null,16,["class"]))],64)):P("",!0)],16,S)),[[u]])],16,A),o.isItemVisible(n)&&o.isItemGroup(n)?(l(),h(a,c({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):P("",!0)],16,w)):P("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(l(),p("li",c({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,F)):P("",!0)],64)})),128))],16,M)):P("",!0)]})),_:1},16,["onEnter"])};var D={name:"ContextMenu",extends:E,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||n()},activeItemPath:function(e){t.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):this.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},mounted:function(){this.id=this.id||n(),this.global&&this.bindDocumentContextMenuListener()},beforeUnmount:function(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.unbindDocumentContextMenuListener(),this.container&&this.autoZIndex&&s.clear(this.container),this.target=null,this.container=null},methods:{getItemProp:function(e,i){return e?t.getItemValue(e[i]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemGroup:function(e){return t.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.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:""},i.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 i=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":case"NumpadEnter":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:!i&&t.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,s=e.isFocus;if(!t.isEmpty(n)){var o=n.index,r=n.key,a=n.level,u=n.parentKey,c=t.isNotEmpty(n.items),d=this.activeItemPath.filter((function(e){return e.parentKey!==u&&e.parentKey!==r}));c&&(d.push(n),this.submenuVisible=!0),this.focusedItemInfo={index:o,level:a,parentKey:u},this.activeItemPath=d,s&&i.focus(this.list)}},onItemClick:function(e){var t=e.processedItem,n=this.isProccessedItemGroup(t);if(this.isSelected(t)){var s=t.index,o=t.key,r=t.level,a=t.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},i.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 t=i.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=t&&i.findSingle(t,'a[data-pc-section="action"]');n?n.click():t&&t.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){i.addStyles(e,{position:"absolute"}),this.position(),this.autoZIndex&&s.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu)},onAfterEnter:function(){this.bindOutsideClickListener(),this.bindResizeListener(),this.$emit("show"),i.focus(this.list)},onLeave:function(){this.$emit("hide"),this.container=null},onAfterLeave:function(e){this.autoZIndex&&s.clear(e),this.unbindOutsideClickListener(),this.unbindResizeListener()},position:function(){var e=this.pageX+1,t=this.pageY+1,n=this.container.offsetParent?this.container.offsetWidth:i.getHiddenElementOuterWidth(this.container),s=this.container.offsetParent?this.container.offsetHeight:i.getHiddenElementOuterHeight(this.container),o=i.getViewport();e+n-document.body.scrollLeft>o.width&&(e-=n),t+s-document.body.scrollTop>o.height&&(t-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),t<document.body.scrollTop&&(t=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=t+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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&&!i.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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()))},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)&&this.isItemVisible(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.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,t=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=i.findSingle(this.list,'li[id="'.concat(t,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,u={item:e,index:r,level:i,key:a,parent:n,parentKey:s};u.items=t.createProcessedItems(e.items,i+1,u,a),o.push(u)})),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},focusedItemIdx:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{ContextMenuSub:C,Portal:e}};D.render=function(e,t,i,n,s,o){var r=d("ContextMenuSub"),a=d("Portal");return l(),h(a,{appendTo:e.appendTo},{default:f((function(){return[K(I,c({name:"p-contextmenu",onEnter:o.onEnter,onAfterEnter:o.onAfterEnter,onLeave:o.onLeave,onAfterLeave:o.onAfterLeave},e.ptm("transition")),{default:f((function(){return[s.visible?(l(),p("div",c({key:0,ref:o.containerRef,class:e.cx("root")},e.ptmi("root")),[K(r,{ref:o.listRef,id:s.id+"_list",class:L(e.cx("menu")),role:"menubar",root:!0,tabindex:e.tabindex,"aria-orientation":"vertical","aria-activedescendant":s.focused?o.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):P("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])};export{D as default};
@@ -398,6 +398,9 @@ this.primevue.contextmenu = (function (Portal, utils, BaseComponent, ContextMenu
398
398
  isItemDisabled: function isItemDisabled(item) {
399
399
  return this.getItemProp(item, 'disabled');
400
400
  },
401
+ isItemVisible: function isItemVisible(item) {
402
+ return this.getItemProp(item, 'visible') !== false;
403
+ },
401
404
  isItemGroup: function isItemGroup(item) {
402
405
  return utils.ObjectUtils.isNotEmpty(this.getItemProp(item, 'items'));
403
406
  },
@@ -767,7 +770,7 @@ this.primevue.contextmenu = (function (Portal, utils, BaseComponent, ContextMenu
767
770
  return this.isValidItem(processedItem) && ((_this$getProccessedIt = this.getProccessedItemLabel(processedItem)) === null || _this$getProccessedIt === void 0 ? void 0 : _this$getProccessedIt.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()));
768
771
  },
769
772
  isValidItem: function isValidItem(processedItem) {
770
- return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item);
773
+ return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);
771
774
  },
772
775
  isValidSelectedItem: function isValidSelectedItem(processedItem) {
773
776
  return this.isValidItem(processedItem) && this.isSelected(processedItem);
@@ -1 +1 @@
1
- this.primevue=this.primevue||{},this.primevue.contextmenu=function(e,t,i,n,s,o,r){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),u=a(i),l={name:"BaseContextMenu",extends:u.default,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:a(n).default,provide:function(){return{$parentInstance:this}}},m={name:"ContextMenuSub",hostName:"ContextMenu",extends:u.default,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.ObjectUtils.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){t.DomHandler.nestedPosition(this.$refs.container,this.level)},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:a(s).default},directives:{ripple:a(o).default}},d=["tabindex"],h=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],I=["onClick","onMouseenter","onMousemove"],f=["href","target"],p=["id"],v=["id"];m.render=function(e,t,i,n,s,o){var a=r.resolveComponent("AngleRightIcon"),c=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[i.root||i.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.items,(function(n,s){return r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:r.normalizeClass(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),r.toDisplayString(o.getItemLabel(n)),17,p),o.getItemProp(n,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[i.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.submenuicon),{key:0,active:o.isItemActive(n),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",n,s)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,f)),[[u]])],16,I),o.isItemVisible(n)&&o.isItemGroup(n)?(r.openBlock(),r.createBlock(c,r.mergeProps({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):r.createCommentVNode("",!0)],16,h)):r.createCommentVNode("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,v)):r.createCommentVNode("",!0)],64)})),128))],16,d)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var b={name:"ContextMenu",extends:l,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.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},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,i){return e?t.ObjectUtils.getItemValue(e[i]):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 i=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":case"NumpadEnter":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:!i&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var i=e.processedItem,n=e.isFocus;if(!t.ObjectUtils.isEmpty(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey,c=t.ObjectUtils.isNotEmpty(i.items),u=this.activeItemPath.filter((function(e){return e.parentKey!==a&&e.parentKey!==o}));c&&(u.push(i),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:a},this.activeItemPath=u,n&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var i=e.processedItem,n=this.isProccessedItemGroup(i);if(this.isSelected(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},t.DomHandler.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.ObjectUtils.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 i=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=i&&t.DomHandler.findSingle(i,'a[data-pc-section="action"]');n?n.click():i&&i.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.$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()},position:function(){var e=this.pageX+1,i=this.pageY+1,n=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+n-document.body.scrollLeft>o.width&&(e-=n),i+s-document.body.scrollTop>o.height&&(i-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),i<document.body.scrollTop&&(i=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=i+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.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,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,i=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=t.DomHandler.findSingle(this.list,'li[id="'.concat(i,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,c={item:e,index:r,level:i,key:a,parent:n,parentKey:s};c.items=t.createProcessedItems(e.items,i+1,c,a),o.push(c)})),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},focusedItemIdx: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:m,Portal:c.default}};return b.render=function(e,t,i,n,s,o){var a=r.resolveComponent("ContextMenuSub"),c=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(c,{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")},e.ptmi("root")),[r.createVNode(a,{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.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},b}(primevue.portal,primevue.utils,primevue.basecomponent,primevue.contextmenu.style,primevue.icons.angleright,primevue.ripple,Vue);
1
+ this.primevue=this.primevue||{},this.primevue.contextmenu=function(e,t,i,n,s,o,r){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),u=a(i),l={name:"BaseContextMenu",extends:u.default,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:a(n).default,provide:function(){return{$parentInstance:this}}},m={name:"ContextMenuSub",hostName:"ContextMenu",extends:u.default,emits:["item-click","item-mouseenter","item-mousemove"],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},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,i,n){return e&&e.item?t.ObjectUtils.getItemValue(e.item[i],n):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,i){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:i}})},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})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},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(){t.DomHandler.nestedPosition(this.$refs.container,this.level)},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:a(s).default},directives:{ripple:a(o).default}},d=["tabindex"],h=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],I=["onClick","onMouseenter","onMousemove"],f=["href","target"],p=["id"],v=["id"];m.render=function(e,t,i,n,s,o){var a=r.resolveComponent("AngleRightIcon"),c=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[i.root||i.visible?(r.openBlock(),r.createElementBlock("ul",r.mergeProps({key:0,ref:"container",tabindex:i.tabindex},e.ptm("menu")),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.items,(function(n,s){return r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(n)},[o.isItemVisible(n)&&!o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("menuitem",{processedItem:n}),o.getItemProp(n,"class")],role:"menuitem","aria-label":o.getItemLabel(n),"aria-disabled":o.isItemDisabled(n)||void 0,"aria-expanded":o.isItemGroup(n)?o.isItemActive(n):void 0,"aria-haspopup":o.isItemGroup(n)&&!o.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions("menuitem",n,s),{"data-p-highlight":o.isItemActive(n),"data-p-focused":o.isItemFocused(n),"data-p-disabled":o.isItemDisabled(n)}),[r.createElementVNode("div",r.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,n)},onMouseenter:function(e){return o.onItemMouseEnter(e,n)},onMousemove:function(e){return o.onItemMouseMove(e,n)}},o.getPTOptions("content",n,s)),[i.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.item),{key:1,item:n.item,hasSubmenu:o.getItemProp(n,"items"),label:o.getItemLabel(n),props:o.getMenuItemProps(n,s)},null,8,["item","hasSubmenu","label","props"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0,href:o.getItemProp(n,"url"),class:e.cx("action"),target:o.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions("action",n,s)),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:r.normalizeClass(e.cx("icon"))},null,8,["item","class"])):o.getItemProp(n,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(n,"icon")]},o.getPTOptions("icon",n,s)),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({id:o.getItemLabelId(n),class:e.cx("label")},o.getPTOptions("label",n,s)),r.toDisplayString(o.getItemLabel(n)),17,p),o.getItemProp(n,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[i.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.submenuicon),{key:0,active:o.isItemActive(n),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",n,s)),null,16,["class"]))],64)):r.createCommentVNode("",!0)],16,f)),[[u]])],16,I),o.isItemVisible(n)&&o.isItemGroup(n)?(r.openBlock(),r.createBlock(c,r.mergeProps({key:0,id:o.getItemId(n)+"_list",role:"menu",class:e.cx("submenu"),menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,level:i.level+1,visible:o.isItemActive(n)&&o.isItemGroup(n),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)}),onItemMousemove:t[2]||(t[2]=function(t){return e.$emit("item-mousemove",t)}),"aria-labelledby":o.getItemLabelId(n)},e.ptm("submenu")),null,16,["id","class","menuId","focusedItemId","items","templates","activeItemPath","level","visible","pt","unstyled","aria-labelledby"])):r.createCommentVNode("",!0)],16,h)):r.createCommentVNode("",!0),o.isItemVisible(n)&&o.getItemProp(n,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(n),style:o.getItemProp(n,"style"),class:[e.cx("separator"),o.getItemProp(n,"class")],role:"separator"},e.ptm("separator")),null,16,v)):r.createCommentVNode("",!0)],64)})),128))],16,d)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter"])};var b={name:"ContextMenu",extends:l,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.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener())}},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,i){return e?t.ObjectUtils.getItemValue(e[i]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},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 i=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":case"NumpadEnter":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:!i&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var i=e.processedItem,n=e.isFocus;if(!t.ObjectUtils.isEmpty(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey,c=t.ObjectUtils.isNotEmpty(i.items),u=this.activeItemPath.filter((function(e){return e.parentKey!==a&&e.parentKey!==o}));c&&(u.push(i),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:a},this.activeItemPath=u,n&&t.DomHandler.focus(this.list)}},onItemClick:function(e){var i=e.processedItem,n=this.isProccessedItemGroup(i);if(this.isSelected(i)){var s=i.index,o=i.key,r=i.level,a=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return o!==e.key&&o.startsWith(e.key)})),this.focusedItemInfo={index:s,level:r,parentKey:a},t.DomHandler.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter:function(e){this.onItemChange(e)},onItemMouseMove:function(e){this.focused&&this.changeFocusedItemIndex(e,e.processedItem.index)},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 i=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowLeftKey:function(e){var i=this,n=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((function(e){return e.key===n.parentKey}));t.ObjectUtils.isEmpty(n.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==i.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 i=t.DomHandler.findSingle(this.list,'li[id="'.concat("".concat(this.focusedItemIdx),'"]')),n=i&&t.DomHandler.findSingle(i,'a[data-pc-section="action"]');n?n.click():i&&i.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.$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()},position:function(){var e=this.pageX+1,i=this.pageY+1,n=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+n-document.body.scrollLeft>o.width&&(e-=n),i+s-document.body.scrollTop>o.height&&(i-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),i<document.body.scrollTop&&(i=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=i+"px"},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var i=e.container&&!e.container.contains(t.target),n=!e.visible||!(e.target&&(e.target===t.target||e.target.contains(t.target)));i&&n&&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)},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener:function(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched:function(e){var t;return this.isValidItem(e)&&(null===(t=this.getProccessedItemLabel(e))||void 0===t?void 0:t.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()))},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)&&this.isItemVisible(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,i=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return i>-1?i+e+1:e},findPrevItemIndex:function(e){var i=this,n=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return i.isValidItem(e)})):-1;return n>-1?n: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 i=this;this.searchValue=(this.searchValue||"")+t;var n=-1,s=!1;return-1!==(n=-1!==this.focusedItemInfo.index?-1===(n=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return i.isItemMatched(e)})):n+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return i.isItemMatched(e)})))&&(s=!0),-1===n&&-1===this.focusedItemInfo.index&&(n=this.findFirstFocusedItemIndex()),-1!==n&&this.changeFocusedItemIndex(e,n),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.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,i=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemIdx,n=t.DomHandler.findSingle(this.list,'li[id="'.concat(i,'"]'));n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=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 a=(""!==s?s+"_":"")+r,c={item:e,index:r,level:i,key:a,parent:n,parentKey:s};c.items=t.createProcessedItems(e.items,i+1,c,a),o.push(c)})),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},focusedItemIdx: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:m,Portal:c.default}};return b.render=function(e,t,i,n,s,o){var a=r.resolveComponent("ContextMenuSub"),c=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(c,{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")},e.ptmi("root")),[r.createVNode(a,{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.focusedItemIdx:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemIdx:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,"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,onItemMousemove:o.onItemMouseMove},null,8,["id","class","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","aria-labelledby","aria-label","visible","pt","unstyled","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter","onItemMousemove"])],16)):r.createCommentVNode("",!0)]})),_:1},16,["onEnter","onAfterEnter","onLeave","onAfterLeave"])]})),_:1},8,["appendTo"])},b}(primevue.portal,primevue.utils,primevue.basecomponent,primevue.contextmenu.style,primevue.icons.angleright,primevue.ripple,Vue);