primevue 3.17.0 → 3.18.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.
- package/LICENSE.md +1 -1
- package/accordion/Accordion.vue +4 -4
- package/accordion/accordion.cjs.js +4 -4
- package/accordion/accordion.cjs.min.js +1 -1
- package/accordion/accordion.esm.js +4 -4
- package/accordion/accordion.esm.min.js +1 -1
- package/accordion/accordion.js +5 -5
- package/accordion/accordion.min.js +1 -1
- package/api/api.cjs.js +24 -2
- package/api/api.cjs.min.js +1 -1
- package/api/api.esm.js +24 -2
- package/api/api.esm.min.js +1 -1
- package/api/api.js +24 -2
- package/api/api.min.js +1 -1
- package/autocomplete/AutoComplete.d.ts +10 -0
- package/autocomplete/AutoComplete.vue +14 -6
- package/autocomplete/autocomplete.cjs.js +18 -10
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.esm.js +16 -8
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +17 -9
- package/autocomplete/autocomplete.min.js +1 -1
- package/breadcrumb/Breadcrumb.d.ts +9 -1
- package/breadcrumb/Breadcrumb.vue +14 -5
- package/breadcrumb/BreadcrumbItem.vue +9 -3
- package/breadcrumb/breadcrumb.cjs.js +25 -14
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.esm.js +25 -14
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +25 -14
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/button/Button.vue +6 -3
- package/button/button.cjs.js +6 -3
- package/button/button.cjs.min.js +1 -1
- package/button/button.esm.js +6 -3
- package/button/button.esm.min.js +1 -1
- package/button/button.js +6 -3
- package/button/button.min.js +1 -1
- package/calendar/Calendar.vue +71 -26
- package/calendar/calendar.cjs.js +140 -95
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.esm.js +138 -93
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +139 -94
- package/calendar/calendar.min.js +1 -1
- package/cascadeselect/CascadeSelect.d.ts +10 -0
- package/cascadeselect/CascadeSelect.vue +13 -4
- package/cascadeselect/CascadeSelectSub.vue +18 -13
- package/cascadeselect/cascadeselect.cjs.js +39 -26
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.esm.js +38 -25
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +39 -26
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/config/PrimeVue.d.ts +4 -1
- package/config/config.cjs.js +5 -2
- package/config/config.cjs.min.js +1 -1
- package/config/config.esm.js +5 -2
- package/config/config.esm.min.js +1 -1
- package/config/config.js +6 -3
- package/config/config.min.js +1 -1
- package/contextmenu/ContextMenu.d.ts +41 -2
- package/contextmenu/ContextMenu.vue +440 -33
- package/contextmenu/ContextMenuSub.vue +119 -98
- package/contextmenu/contextmenu.cjs.js +619 -194
- package/contextmenu/contextmenu.cjs.min.js +1 -1
- package/contextmenu/contextmenu.esm.js +620 -195
- package/contextmenu/contextmenu.esm.min.js +1 -1
- package/contextmenu/contextmenu.js +620 -195
- package/contextmenu/contextmenu.min.js +1 -1
- package/core/core.js +1369 -675
- package/core/core.min.js +10 -10
- package/datatable/DataTable.d.ts +1 -2
- package/datatable/DataTable.vue +3 -3
- package/datatable/datatable.cjs.js +2334 -2334
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.esm.js +2319 -2319
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +2319 -2319
- package/datatable/datatable.min.js +1 -1
- package/dock/Dock.d.ts +33 -2
- package/dock/Dock.vue +18 -2
- package/dock/DockSub.vue +206 -53
- package/dock/dock.cjs.js +261 -90
- package/dock/dock.cjs.min.js +1 -1
- package/dock/dock.esm.js +261 -90
- package/dock/dock.esm.min.js +1 -1
- package/dock/dock.js +262 -92
- package/dock/dock.min.js +1 -1
- package/dropdown/Dropdown.d.ts +15 -0
- package/dropdown/Dropdown.vue +19 -7
- package/dropdown/dropdown.cjs.js +37 -24
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.esm.js +36 -23
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +36 -23
- package/dropdown/dropdown.min.js +1 -1
- package/fileupload/FileContent.vue +51 -0
- package/fileupload/FileUpload.d.ts +21 -1
- package/fileupload/FileUpload.vue +62 -48
- package/fileupload/fileupload.cjs.js +214 -115
- package/fileupload/fileupload.cjs.min.js +1 -1
- package/fileupload/fileupload.esm.js +214 -115
- package/fileupload/fileupload.esm.min.js +1 -1
- package/fileupload/fileupload.js +214 -115
- package/fileupload/fileupload.min.js +1 -1
- package/galleria/GalleriaThumbnails.vue +2 -2
- package/galleria/galleria.cjs.js +1 -1
- package/galleria/galleria.cjs.min.js +1 -1
- package/galleria/galleria.esm.js +1 -1
- package/galleria/galleria.esm.min.js +1 -1
- package/galleria/galleria.js +1 -1
- package/galleria/galleria.min.js +1 -1
- package/inlinemessage/inlinemessage.cjs.js +1 -2
- package/inlinemessage/inlinemessage.cjs.min.js +1 -1
- package/inlinemessage/inlinemessage.esm.js +1 -2
- package/inlinemessage/inlinemessage.esm.min.js +1 -1
- package/inlinemessage/inlinemessage.js +1 -2
- package/inlinemessage/inlinemessage.min.js +1 -1
- package/inputnumber/InputNumber.vue +11 -4
- package/inputnumber/inputnumber.cjs.js +12 -5
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.esm.js +11 -4
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +12 -6
- package/inputnumber/inputnumber.min.js +1 -1
- package/listbox/Listbox.d.ts +5 -0
- package/listbox/Listbox.vue +5 -1
- package/listbox/listbox.cjs.js +25 -20
- package/listbox/listbox.cjs.min.js +1 -1
- package/listbox/listbox.esm.js +25 -20
- package/listbox/listbox.esm.min.js +1 -1
- package/listbox/listbox.js +25 -20
- package/listbox/listbox.min.js +1 -1
- package/megamenu/MegaMenu.d.ts +29 -2
- package/megamenu/MegaMenu.vue +486 -228
- package/megamenu/MegaMenuSub.vue +231 -0
- package/megamenu/megamenu.cjs.js +818 -377
- package/megamenu/megamenu.cjs.min.js +1 -1
- package/megamenu/megamenu.esm.js +820 -379
- package/megamenu/megamenu.esm.min.js +1 -1
- package/megamenu/megamenu.js +818 -377
- package/megamenu/megamenu.min.js +1 -1
- package/menu/Menu.d.ts +25 -2
- package/menu/Menu.vue +182 -18
- package/menu/Menuitem.vue +35 -28
- package/menu/menu.cjs.js +293 -114
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.esm.js +293 -114
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +293 -114
- package/menu/menu.min.js +1 -1
- package/menubar/Menubar.d.ts +14 -2
- package/menubar/Menubar.vue +526 -15
- package/menubar/MenubarSub.vue +105 -238
- package/menubar/menubar.cjs.js +691 -316
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +693 -318
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +691 -316
- package/menubar/menubar.min.js +1 -1
- package/multiselect/MultiSelect.d.ts +25 -0
- package/multiselect/MultiSelect.vue +31 -11
- package/multiselect/multiselect.cjs.js +58 -37
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.esm.js +57 -36
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +57 -36
- package/multiselect/multiselect.min.js +1 -1
- package/package.json +3 -3
- package/paginator/Paginator.d.ts +2 -2
- package/paginator/Paginator.vue +118 -23
- package/paginator/paginator.cjs.js +277 -182
- package/paginator/paginator.cjs.min.js +1 -1
- package/paginator/paginator.esm.js +278 -183
- package/paginator/paginator.esm.min.js +1 -1
- package/paginator/paginator.js +278 -184
- package/paginator/paginator.min.js +1 -1
- package/panelmenu/PanelMenu.d.ts +32 -1
- package/panelmenu/PanelMenu.vue +189 -83
- package/panelmenu/PanelMenuList.vue +335 -0
- package/panelmenu/PanelMenuSub.vue +124 -85
- package/panelmenu/panelmenu.cjs.js +1383 -285
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.esm.js +1380 -286
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +1383 -286
- package/panelmenu/panelmenu.min.js +1 -1
- package/password/Password.vue +5 -4
- package/password/password.cjs.js +6 -5
- package/password/password.cjs.min.js +1 -1
- package/password/password.esm.js +5 -4
- package/password/password.esm.min.js +1 -1
- package/password/password.js +6 -5
- package/password/password.min.js +1 -1
- package/resources/primevue.css +21 -2
- package/resources/primevue.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +317 -270
- package/resources/themes/arya-green/theme.css +317 -270
- package/resources/themes/arya-orange/theme.css +317 -270
- package/resources/themes/arya-purple/theme.css +317 -270
- package/resources/themes/bootstrap4-dark-blue/theme.css +332 -285
- package/resources/themes/bootstrap4-dark-purple/theme.css +332 -285
- package/resources/themes/bootstrap4-light-blue/theme.css +345 -298
- package/resources/themes/bootstrap4-light-purple/theme.css +345 -298
- package/resources/themes/fluent-light/theme.css +327 -280
- package/resources/themes/lara-dark-blue/theme.css +320 -273
- package/resources/themes/lara-dark-indigo/theme.css +320 -273
- package/resources/themes/lara-dark-purple/theme.css +320 -273
- package/resources/themes/lara-dark-teal/theme.css +320 -273
- package/resources/themes/lara-light-blue/theme.css +344 -297
- package/resources/themes/lara-light-indigo/theme.css +344 -297
- package/resources/themes/lara-light-purple/theme.css +344 -297
- package/resources/themes/lara-light-teal/theme.css +344 -297
- package/resources/themes/luna-amber/theme.css +348 -301
- package/resources/themes/luna-blue/theme.css +348 -301
- package/resources/themes/luna-green/theme.css +348 -301
- package/resources/themes/luna-pink/theme.css +348 -301
- package/resources/themes/md-dark-deeppurple/theme.css +367 -298
- package/resources/themes/md-dark-indigo/theme.css +367 -298
- package/resources/themes/md-light-deeppurple/theme.css +367 -298
- package/resources/themes/md-light-indigo/theme.css +367 -298
- package/resources/themes/mdc-dark-deeppurple/theme.css +367 -298
- package/resources/themes/mdc-dark-indigo/theme.css +367 -298
- package/resources/themes/mdc-light-deeppurple/theme.css +367 -298
- package/resources/themes/mdc-light-indigo/theme.css +367 -298
- package/resources/themes/nova/theme.css +312 -265
- package/resources/themes/nova-accent/theme.css +312 -265
- package/resources/themes/nova-alt/theme.css +312 -265
- package/resources/themes/nova-vue/theme.css +312 -265
- package/resources/themes/rhea/theme.css +312 -265
- package/resources/themes/saga-blue/theme.css +324 -277
- package/resources/themes/saga-green/theme.css +324 -277
- package/resources/themes/saga-orange/theme.css +324 -277
- package/resources/themes/saga-purple/theme.css +324 -277
- package/resources/themes/tailwind-light/theme.css +336 -289
- package/resources/themes/vela-blue/theme.css +324 -277
- package/resources/themes/vela-green/theme.css +324 -277
- package/resources/themes/vela-orange/theme.css +324 -277
- package/resources/themes/vela-purple/theme.css +324 -277
- package/ripple/ripple.cjs.js +12 -0
- package/ripple/ripple.cjs.min.js +1 -1
- package/ripple/ripple.esm.js +12 -0
- package/ripple/ripple.esm.min.js +1 -1
- package/ripple/ripple.js +12 -0
- package/ripple/ripple.min.js +1 -1
- package/speeddial/SpeedDial.vue +21 -16
- package/speeddial/speeddial.cjs.js +34 -27
- package/speeddial/speeddial.cjs.min.js +1 -1
- package/speeddial/speeddial.esm.js +34 -27
- package/speeddial/speeddial.esm.min.js +1 -1
- package/speeddial/speeddial.js +34 -27
- package/speeddial/speeddial.min.js +1 -1
- package/steps/Steps.vue +108 -9
- package/steps/steps.cjs.js +111 -20
- package/steps/steps.cjs.min.js +1 -1
- package/steps/steps.esm.js +112 -21
- package/steps/steps.esm.min.js +1 -1
- package/steps/steps.js +111 -20
- package/steps/steps.min.js +1 -1
- package/styleclass/styleclass.cjs.js +1 -1
- package/styleclass/styleclass.cjs.min.js +1 -1
- package/styleclass/styleclass.esm.js +1 -1
- package/styleclass/styleclass.esm.min.js +1 -1
- package/styleclass/styleclass.js +1 -1
- package/styleclass/styleclass.min.js +1 -1
- package/tabmenu/TabMenu.d.ts +9 -1
- package/tabmenu/TabMenu.vue +135 -6
- package/tabmenu/tabmenu.cjs.js +137 -17
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.esm.js +137 -17
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +138 -18
- package/tabmenu/tabmenu.min.js +1 -1
- package/tabview/TabView.vue +2 -2
- package/tabview/tabview.cjs.js +2 -2
- package/tabview/tabview.cjs.min.js +1 -1
- package/tabview/tabview.esm.js +2 -2
- package/tabview/tabview.esm.min.js +1 -1
- package/tabview/tabview.js +3 -3
- package/tabview/tabview.min.js +1 -1
- package/tieredmenu/TieredMenu.d.ts +46 -3
- package/tieredmenu/TieredMenu.vue +482 -48
- package/tieredmenu/TieredMenuSub.vue +111 -204
- package/tieredmenu/tieredmenu.cjs.js +656 -320
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.esm.js +657 -321
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +657 -321
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/toast/Toast.vue +5 -3
- package/toast/ToastMessage.vue +5 -3
- package/toast/toast.cjs.js +19 -15
- package/toast/toast.cjs.min.js +1 -1
- package/toast/toast.esm.js +18 -14
- package/toast/toast.esm.min.js +1 -1
- package/toast/toast.js +19 -15
- package/toast/toast.min.js +1 -1
- package/togglebutton/ToggleButton.vue +42 -7
- package/togglebutton/togglebutton.cjs.js +42 -6
- package/togglebutton/togglebutton.cjs.min.js +1 -1
- package/togglebutton/togglebutton.esm.js +42 -6
- package/togglebutton/togglebutton.esm.min.js +1 -1
- package/togglebutton/togglebutton.js +42 -6
- package/togglebutton/togglebutton.min.js +1 -1
- package/tree/Tree.d.ts +8 -0
- package/utils/Utils.d.ts +3 -0
- package/utils/utils.cjs.js +26 -0
- package/utils/utils.cjs.min.js +1 -1
- package/utils/utils.esm.js +26 -0
- package/utils/utils.esm.min.js +1 -1
- package/utils/utils.js +26 -0
- package/utils/utils.min.js +1 -1
- package/vetur-attributes.json +175 -3
- package/vetur-tags.json +54 -11
- package/web-types.json +675 -51
|
@@ -1 +1 @@
|
|
|
1
|
-
import{resolveComponent as e,openBlock as t,createElementBlock as n,Fragment as i,renderList as l,normalizeClass as a,normalizeStyle as s,createBlock as o,withCtx as d,createElementVNode as c,toDisplayString as m,createCommentVNode as p,resolveDynamicComponent as r,createVNode as u,Transition as y,withDirectives as v,vShow as b}from"vue";import{UniqueComponentId as h}from"primevue/utils";var x={name:"PanelMenuSub",emits:["item-toggle"],props:{model:{type:null,default:null},template:{type:Function,default:null},expandedKeys:{type:null,default:null},exact:{type:Boolean,default:!0}},data:()=>({activeItem:null}),methods:{onItemClick(e,t,n){this.isActive(t)&&null===this.activeItem&&(this.activeItem=t),this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.activeItem&&this.activeItem===t?this.activeItem=null:this.activeItem=t,this.$emit("item-toggle",{item:t,expanded:null!=this.activeItem}),t.to&&n&&n(e))},onItemKeydown(e,t){13===e.which&&this.onItemClick(e,t)},getItemClass:e=>["p-menuitem",e.className],linkClass(e,t){return["p-menuitem-link",{"p-disabled":this.disabled(e),"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},isActive(e){return this.expandedKeys?this.expandedKeys[e.key]:e===this.activeItem},getSubmenuIcon(e){const t=this.isActive(e);return["p-panelmenu-icon pi pi-fw",{"pi-angle-right":!t,"pi-angle-down":t}]},visible:e=>"function"==typeof e.visible?e.visible():!1!==e.visible,disabled:e=>"function"==typeof e.disabled?e.disabled():e.disabled,label:e=>"function"==typeof e.label?e.label():e.label}};const g={class:"p-submenu-list",role:"tree"},k=["href","onClick","aria-expanded"],f={class:"p-menuitem-text"},I=["href","target","onClick","onKeydown","aria-expanded","tabindex"],C={class:"p-menuitem-text"},K={class:"p-toggleable-content"};x.render=function(h,x,A,w,_,E){const P=e("router-link"),S=e("PanelMenuSub",!0);return t(),n("ul",g,[(t(!0),n(i,null,l(A.model,((e,l)=>(t(),n(i,{key:E.label(e)+l.toString()},[E.visible(e)&&!e.separator?(t(),n("li",{key:0,role:"none",class:a(E.getItemClass(e)),style:s(e.style)},[A.template?(t(),o(r(A.template),{key:1,item:e},null,8,["item"])):(t(),n(i,{key:0},[e.to&&!E.disabled(e)?(t(),o(P,{key:0,to:e.to,custom:""},{default:d((({navigate:t,href:n,isActive:i,isExactActive:l})=>[c("a",{href:n,class:a(E.linkClass(e,{isActive:i,isExactActive:l})),onClick:n=>E.onItemClick(n,e,t),role:"treeitem","aria-expanded":E.isActive(e)},[c("span",{class:a(["p-menuitem-icon",e.icon])},null,2),c("span",f,m(E.label(e)),1)],10,k)])),_:2},1032,["to"])):(t(),n("a",{key:1,href:e.url,class:a(E.linkClass(e)),target:e.target,onClick:t=>E.onItemClick(t,e),onKeydown:t=>E.onItemKeydown(t,e),role:"treeitem","aria-expanded":E.isActive(e),tabindex:E.disabled(e)?null:"0"},[e.items?(t(),n("span",{key:0,class:a(E.getSubmenuIcon(e))},null,2)):p("",!0),c("span",{class:a(["p-menuitem-icon",e.icon])},null,2),c("span",C,m(E.label(e)),1)],42,I))],64)),u(y,{name:"p-toggleable-content"},{default:d((()=>[v(c("div",K,[E.visible(e)&&e.items?(t(),o(S,{key:E.label(e)+"_sub_",model:e.items,template:A.template,expandedKeys:A.expandedKeys,onItemToggle:x[0]||(x[0]=e=>h.$emit("item-toggle",e)),exact:A.exact},null,8,["model","template","expandedKeys","exact"])):p("",!0)],512),[[b,E.isActive(e)]])])),_:2},1024)],6)):p("",!0),E.visible(e)&&e.separator?(t(),n("li",{key:"separator"+l.toString(),class:a(["p-menu-separator",e.class]),style:s(e.style)},null,6)):p("",!0)],64)))),128))])};var A={name:"PanelMenu",emits:["update:expandedKeys"],props:{model:{type:Array,default:null},expandedKeys:{type:null,default:null},exact:{type:Boolean,default:!0}},data:()=>({activeItem:null}),methods:{onItemClick(e,t,n){this.isActive(t)&&null===this.activeItem&&(this.activeItem=t),this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.activeItem&&this.activeItem===t?this.activeItem=null:this.activeItem=t,this.updateExpandedKeys({item:t,expanded:null!=this.activeItem}),t.to&&n&&n(e))},onItemKeydown(e,t){13===e.which&&this.onItemClick(e,t)},updateExpandedKeys(e){if(this.expandedKeys){let t=e.item,n={...this.expandedKeys};e.expanded?n[t.key]=!0:delete n[t.key],this.$emit("update:expandedKeys",n)}},getPanelClass:e=>["p-panelmenu-panel",e.class],getPanelToggleIcon(e){const t=this.isActive(e);return["p-panelmenu-icon pi",{"pi-chevron-right":!t," pi-chevron-down":t}]},getPanelIcon:e=>["p-menuitem-icon",e.icon],getHeaderLinkClass(e,t){return["p-panelmenu-header-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},isActive(e){return this.expandedKeys?this.expandedKeys[e.key]:e===this.activeItem},getHeaderClass(e){return["p-component p-panelmenu-header",{"p-highlight":this.isActive(e),"p-disabled":this.disabled(e)}]},visible:e=>"function"==typeof e.visible?e.visible():!1!==e.visible,disabled:e=>"function"==typeof e.disabled?e.disabled():e.disabled,label:e=>"function"==typeof e.label?e.label():e.label},computed:{ariaId:()=>h()},components:{PanelMenuSub:x}};const w={class:"p-panelmenu p-component"},_=["href","onClick"],E={class:"p-menuitem-text"},P=["id","href","onClick","onKeydown","tabindex","aria-expanded","aria-controls"],S={class:"p-menuitem-text"},T=["id","aria-labelledby"],$={key:0,class:"p-panelmenu-content"};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===n&&i.firstChild?i.insertBefore(l,i.firstChild):i.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}("\n.p-panelmenu .p-panelmenu-header-link {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n}\n.p-panelmenu .p-panelmenu-header-link:focus {\n z-index: 1;\n}\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.p-panelmenu .p-menuitem-link {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n}\n.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n"),A.render=function(h,x,g,k,f,I){const C=e("router-link"),K=e("PanelMenuSub");return t(),n("div",w,[(t(!0),n(i,null,l(g.model,((e,l)=>(t(),n(i,{key:I.label(e)+"_"+l},[I.visible(e)?(t(),n("div",{key:0,class:a(I.getPanelClass(e)),style:s(e.style)},[c("div",{class:a(I.getHeaderClass(e)),style:s(e.style)},[h.$slots.item?(t(),o(r(h.$slots.item),{key:1,item:e},null,8,["item"])):(t(),n(i,{key:0},[e.to&&!I.disabled(e)?(t(),o(C,{key:0,to:e.to,custom:""},{default:d((({navigate:i,href:l,isActive:s,isExactActive:o})=>[c("a",{href:l,class:a(I.getHeaderLinkClass(e,{isActive:s,isExactActive:o})),onClick:t=>I.onItemClick(t,e,i),role:"treeitem"},[e.icon?(t(),n("span",{key:0,class:a(I.getPanelIcon(e))},null,2)):p("",!0),c("span",E,m(I.label(e)),1)],10,_)])),_:2},1032,["to"])):(t(),n("a",{key:1,id:I.ariaId+"_header_"+l,href:e.url,class:a(I.getHeaderLinkClass(e)),onClick:t=>I.onItemClick(t,e),onKeydown:t=>I.onItemKeydown(t,e),tabindex:I.disabled(e)?null:"0","aria-expanded":I.isActive(e),"aria-controls":I.ariaId+"_content_"+l},[e.items?(t(),n("span",{key:0,class:a(I.getPanelToggleIcon(e))},null,2)):p("",!0),e.icon?(t(),n("span",{key:1,class:a(I.getPanelIcon(e))},null,2)):p("",!0),c("span",S,m(I.label(e)),1)],42,P))],64))],6),u(y,{name:"p-toggleable-content"},{default:d((()=>[v(c("div",{id:I.ariaId+"_content_"+l,class:"p-toggleable-content",role:"region","aria-labelledby":I.ariaId+"_header_"+l},[e.items?(t(),n("div",$,[u(K,{model:e.items,class:"p-panelmenu-root-submenu",template:h.$slots.item,expandedKeys:g.expandedKeys,onItemToggle:I.updateExpandedKeys,exact:g.exact},null,8,["model","template","expandedKeys","onItemToggle","exact"])])):p("",!0)],8,T),[[b,I.isActive(e)]])])),_:2},1024)],6)):p("",!0)],64)))),128))])};export{A as default};
|
|
1
|
+
import{ObjectUtils as e,DomHandler as t,UniqueComponentId as i}from"primevue/utils";import n from"primevue/ripple";import{resolveComponent as s,resolveDirective as o,openBlock as l,createElementBlock as a,Fragment as r,renderList as d,normalizeStyle as c,normalizeClass as m,createElementVNode as p,createBlock as u,withCtx as h,withDirectives as g,createCommentVNode as f,toDisplayString as I,resolveDynamicComponent as y,createVNode as b,Transition as v,vShow as w}from"vue";var x={innerWidth(e){if(e){let t=e.offsetWidth,i=getComputedStyle(e);return t+=parseFloat(i.paddingLeft)+parseFloat(i.paddingRight),t}return 0},width(e){if(e){let t=e.offsetWidth,i=getComputedStyle(e);return t-=parseFloat(i.paddingLeft)+parseFloat(i.paddingRight),t}return 0},getWindowScrollTop(){let e=document.documentElement;return(window.pageYOffset||e.scrollTop)-(e.clientTop||0)},getWindowScrollLeft(){let e=document.documentElement;return(window.pageXOffset||e.scrollLeft)-(e.clientLeft||0)},getOuterWidth(e,t){if(e){let i=e.offsetWidth;if(t){let t=getComputedStyle(e);i+=parseFloat(t.marginLeft)+parseFloat(t.marginRight)}return i}return 0},getOuterHeight(e,t){if(e){let i=e.offsetHeight;if(t){let t=getComputedStyle(e);i+=parseFloat(t.marginTop)+parseFloat(t.marginBottom)}return i}return 0},getClientHeight(e,t){if(e){let i=e.clientHeight;if(t){let t=getComputedStyle(e);i+=parseFloat(t.marginTop)+parseFloat(t.marginBottom)}return i}return 0},getViewport(){let e=window,t=document,i=t.documentElement,n=t.getElementsByTagName("body")[0];return{width:e.innerWidth||i.clientWidth||n.clientWidth,height:e.innerHeight||i.clientHeight||n.clientHeight}},getOffset(e){if(e){let t=e.getBoundingClientRect();return{top:t.top+(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0),left:t.left+(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0)}}return{top:"auto",left:"auto"}},index(e){if(e){let t=e.parentNode.childNodes,i=0;for(let n=0;n<t.length;n++){if(t[n]===e)return i;1===t[n].nodeType&&i++}}return-1},addMultipleClasses(e,t){if(e&&t)if(e.classList){let i=t.split(" ");for(let t=0;t<i.length;t++)e.classList.add(i[t])}else{let i=t.split(" ");for(let t=0;t<i.length;t++)e.className+=" "+i[t]}},addClass(e,t){e&&t&&(e.classList?e.classList.add(t):e.className+=" "+t)},removeClass(e,t){e&&t&&(e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp("(^|\\b)"+t.split(" ").join("|")+"(\\b|$)","gi")," "))},hasClass:(e,t)=>!!e&&(e.classList?e.classList.contains(t):new RegExp("(^| )"+t+"( |$)","gi").test(e.className)),find:(e,t)=>e?e.querySelectorAll(t):[],findSingle:(e,t)=>e?e.querySelector(t):null,getHeight(e){if(e){let t=e.offsetHeight,i=getComputedStyle(e);return t-=parseFloat(i.paddingTop)+parseFloat(i.paddingBottom)+parseFloat(i.borderTopWidth)+parseFloat(i.borderBottomWidth),t}return 0},getWidth(e){if(e){let t=e.offsetWidth,i=getComputedStyle(e);return t-=parseFloat(i.paddingLeft)+parseFloat(i.paddingRight)+parseFloat(i.borderLeftWidth)+parseFloat(i.borderRightWidth),t}return 0},absolutePosition(e,t){if(e){let i,n,s=e.offsetParent?{width:e.offsetWidth,height:e.offsetHeight}:this.getHiddenElementDimensions(e),o=s.height,l=s.width,a=t.offsetHeight,r=t.offsetWidth,d=t.getBoundingClientRect(),c=this.getWindowScrollTop(),m=this.getWindowScrollLeft(),p=this.getViewport();d.top+a+o>p.height?(i=d.top+c-o,e.style.transformOrigin="bottom",i<0&&(i=c)):(i=a+d.top+c,e.style.transformOrigin="top"),n=d.left+l>p.width?Math.max(0,d.left+m+r-l):d.left+m,e.style.top=i+"px",e.style.left=n+"px"}},relativePosition(e,t){if(e){let i=e.offsetParent?{width:e.offsetWidth,height:e.offsetHeight}:this.getHiddenElementDimensions(e);const n=t.offsetHeight,s=t.getBoundingClientRect(),o=this.getViewport();let l,a;s.top+n+i.height>o.height?(l=-1*i.height,e.style.transformOrigin="bottom",s.top+l<0&&(l=-1*s.top)):(l=n,e.style.transformOrigin="top"),a=i.width>o.width?-1*s.left:s.left+i.width>o.width?-1*(s.left+i.width-o.width):0,e.style.top=l+"px",e.style.left=a+"px"}},getParents(e,t=[]){return null===e.parentNode?t:this.getParents(e.parentNode,t.concat([e.parentNode]))},getScrollableParents(e){let t=[];if(e){let i=this.getParents(e);const n=/(auto|scroll)/,s=e=>{let t=window.getComputedStyle(e,null);return n.test(t.getPropertyValue("overflow"))||n.test(t.getPropertyValue("overflowX"))||n.test(t.getPropertyValue("overflowY"))};for(let e of i){let i=1===e.nodeType&&e.dataset.scrollselectors;if(i){let n=i.split(",");for(let i of n){let n=this.findSingle(e,i);n&&s(n)&&t.push(n)}}9!==e.nodeType&&s(e)&&t.push(e)}}return t},getHiddenElementOuterHeight(e){if(e){e.style.visibility="hidden",e.style.display="block";let t=e.offsetHeight;return e.style.display="none",e.style.visibility="visible",t}return 0},getHiddenElementOuterWidth(e){if(e){e.style.visibility="hidden",e.style.display="block";let t=e.offsetWidth;return e.style.display="none",e.style.visibility="visible",t}return 0},getHiddenElementDimensions(e){if(e){let t={};return e.style.visibility="hidden",e.style.display="block",t.width=e.offsetWidth,t.height=e.offsetHeight,e.style.display="none",e.style.visibility="visible",t}return 0},fadeIn(e,t){if(e){e.style.opacity=0;let i=+new Date,n=0,s=function(){n=+e.style.opacity+((new Date).getTime()-i)/t,e.style.opacity=n,i=+new Date,+n<1&&(window.requestAnimationFrame&&requestAnimationFrame(s)||setTimeout(s,16))};s()}},fadeOut(e,t){if(e){let i=1,n=50,s=n/t,o=setInterval((()=>{i-=s,i<=0&&(i=0,clearInterval(o)),e.style.opacity=i}),n)}},getUserAgent:()=>navigator.userAgent,appendChild(e,t){if(this.isElement(t))t.appendChild(e);else{if(!t.el||!t.elElement)throw new Error("Cannot append "+t+" to "+e);t.elElement.appendChild(e)}},scrollInView(e,t){let i=getComputedStyle(e).getPropertyValue("borderTopWidth"),n=i?parseFloat(i):0,s=getComputedStyle(e).getPropertyValue("paddingTop"),o=s?parseFloat(s):0,l=e.getBoundingClientRect(),a=t.getBoundingClientRect().top+document.body.scrollTop-(l.top+document.body.scrollTop)-n-o,r=e.scrollTop,d=e.clientHeight,c=this.getOuterHeight(t);a<0?e.scrollTop=r+a:a+c>d&&(e.scrollTop=r+a-d+c)},clearSelection(){if(window.getSelection)window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().rangeCount>0&&window.getSelection().getRangeAt(0).getClientRects().length>0&&window.getSelection().removeAllRanges();else if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}},getSelection:()=>window.getSelection?window.getSelection().toString():document.getSelection?document.getSelection().toString():document.selection?document.selection.createRange().text:null,calculateScrollbarWidth(){if(null!=this.calculatedScrollbarWidth)return this.calculatedScrollbarWidth;let e=document.createElement("div");e.className="p-scrollbar-measure",document.body.appendChild(e);let t=e.offsetWidth-e.clientWidth;return document.body.removeChild(e),this.calculatedScrollbarWidth=t,t},getBrowser(){if(!this.browser){let e=this.resolveUserAgent();this.browser={},e.browser&&(this.browser[e.browser]=!0,this.browser.version=e.version),this.browser.chrome?this.browser.webkit=!0:this.browser.webkit&&(this.browser.safari=!0)}return this.browser},resolveUserAgent(){let e=navigator.userAgent.toLowerCase(),t=/(chrome)[ ]([\w.]+)/.exec(e)||/(webkit)[ ]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ ]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},isVisible:e=>e&&null!=e.offsetParent,invokeElementMethod(e,t,i){e[t].apply(e,i)},isExist:e=>null!=e&&e.nodeName&&e.parentNode,isClient:()=>!("undefined"==typeof window||!window.document||!window.document.createElement),focus(e,t){e&&document.activeElement!==e&&e.focus(t)},getFocusableElements(e,t=""){let i=this.find(e,`button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n [href][clientHeight][clientWidth]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t},\n [contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden])${t}`),n=[];for(let e of i)"none"!=getComputedStyle(e).display&&"hidden"!=getComputedStyle(e).visibility&&n.push(e);return n},getFirstFocusableElement(e,t){const i=this.getFocusableElements(e,t);return i.length>0?i[0]:null},isClickable(e){const t=e.nodeName,i=e.parentElement&&e.parentElement.nodeName;return"INPUT"==t||"BUTTON"==t||"A"==t||"INPUT"==i||"BUTTON"==i||"A"==i||this.hasClass(e,"p-button")||this.hasClass(e.parentElement,"p-button")||this.hasClass(e.parentElement,"p-checkbox")||this.hasClass(e.parentElement,"p-radiobutton")},applyStyle(e,t){if("string"==typeof t)e.style.cssText=t;else for(let i in t)e.style[i]=t[i]},isIOS:()=>/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,isAndroid:()=>/(android)/i.test(navigator.userAgent),isTouchDevice:()=>"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0,exportCSV(e,t){let i=new Blob([e],{type:"application/csv;charset=utf-8;"});if(window.navigator.msSaveOrOpenBlob)navigator.msSaveOrOpenBlob(i,t+".csv");else{let n=document.createElement("a");void 0!==n.download?(n.setAttribute("href",URL.createObjectURL(i)),n.setAttribute("download",t+".csv"),n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n)):(e="data:text/csv;charset=utf-8,"+e,window.open(encodeURI(e)))}}},P={name:"PanelMenuSub",emits:["item-toggle"],props:{panelId:{type:String,default:null},focusedItemId:{type:String,default:null},items:{type:Array,default:null},level:{type:Number,default:0},template:{type:Function,default:null},activeItemPath:{type:Object,default:null},exact:{type:Boolean,default:!0}},methods:{getItemId(e){return`${this.panelId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(t,i)=>t&&t.item?e.getItemValue(t.item[i]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.key))},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemFocused(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:t=>e.isNotEmpty(t.items),onItemClick(e,t){const i=this.getItemProp(t,"command");i&&i({originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle(e){this.$emit("item-toggle",e)},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getItemToggleIconClass(e){return["p-submenu-icon",this.isItemActive(e)?"pi pi-fw pi-chevron-down":"pi pi-fw pi-chevron-right"]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},directives:{ripple:n}};const k={class:"p-submenu-list"},C=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset"],E=["onClick"],H=["href","onClick"],A={class:"p-menuitem-text"},S=["href","target"],K={class:"p-menuitem-text"},F={class:"p-toggleable-content"};P.render=function(e,t,i,n,x,P){const T=s("router-link"),N=s("PanelMenuSub",!0),L=o("ripple");return l(),a("ul",k,[(l(!0),a(r,null,d(i.items,((e,t)=>(l(),a(r,{key:P.getItemKey(e)},[P.isItemVisible(e)&&!P.getItemProp(e,"separator")?(l(),a("li",{key:0,id:P.getItemId(e),style:c(P.getItemProp(e,"style")),class:m(P.getItemClass(e)),role:"treeitem","aria-label":P.getItemLabel(e),"aria-expanded":P.isItemGroup(e)?P.isItemActive(e):void 0,"aria-level":i.level+1,"aria-setsize":P.getAriaSetSize(),"aria-posinset":P.getAriaPosInset(t)},[p("div",{class:"p-menuitem-content",onClick:t=>P.onItemClick(t,e)},[i.template?(l(),u(y(i.template),{key:1,item:e.item},null,8,["item"])):(l(),a(r,{key:0},[P.getItemProp(e,"to")&&!P.isItemDisabled(e)?(l(),u(T,{key:0,to:P.getItemProp(e,"to"),custom:""},{default:h((({navigate:t,href:i,isActive:n,isExactActive:s})=>[g((l(),a("a",{href:i,class:m(P.getItemActionClass(e,{isActive:n,isExactActive:s})),tabindex:"-1","aria-hidden":"true",onClick:e=>P.onItemActionClick(e,t)},[P.getItemProp(e,"icon")?(l(),a("span",{key:0,class:m(P.getItemIconClass(e))},null,2)):f("",!0),p("span",A,I(P.getItemLabel(e)),1)],10,H)),[[L]])])),_:2},1032,["to"])):g((l(),a("a",{key:1,href:P.getItemProp(e,"url"),class:m(P.getItemActionClass(e)),target:P.getItemProp(e,"target"),tabindex:"-1","aria-hidden":"true"},[P.isItemGroup(e)?(l(),a("span",{key:0,class:m(P.getItemToggleIconClass(e))},null,2)):f("",!0),P.getItemProp(e,"icon")?(l(),a("span",{key:1,class:m(P.getItemIconClass(e))},null,2)):f("",!0),p("span",K,I(P.getItemLabel(e)),1)],10,S)),[[L]])],64))],8,E),b(v,{name:"p-toggleable-content"},{default:h((()=>[g(p("div",F,[P.isItemVisible(e)&&P.isItemGroup(e)?(l(),u(N,{key:0,id:P.getItemId(e)+"_list",role:"group",panelId:i.panelId,focusedItemId:i.focusedItemId,items:e.items,level:i.level+1,template:i.template,activeItemPath:i.activeItemPath,exact:i.exact,onItemToggle:P.onItemToggle},null,8,["id","panelId","focusedItemId","items","level","template","activeItemPath","exact","onItemToggle"])):f("",!0)],512),[[w,P.isItemActive(e)]])])),_:2},1024)],14,C)):f("",!0),P.isItemVisible(e)&&P.getItemProp(e,"separator")?(l(),a("li",{key:1,style:c(P.getItemProp(e,"style")),class:m(P.getSeparatorItemClass(e)),role:"separator"},null,6)):f("",!0)],64)))),128))])};var T={name:"PanelMenuList",emits:["item-toggle","header-focus"],props:{panelId:{type:String,default:null},items:{type:Array,default:null},template:{type:Function,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0}},data:()=>({focused:!1,focusedItem:null,activeItemPath:[]}),watch:{expandedKeys(e){this.autoUpdateActiveItemPath(e)}},mounted(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:(t,i)=>t&&t.item?e.getItemValue(t.item[i]):void 0,isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.parentKey))},isItemGroup:t=>e.isNotEmpty(t.items),onFocus(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur(){this.focused=!1,this.focusedItem=null},onKeyDown(e){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e)}},onArrowDownKey(t){const i=e.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:t,processedItem:i,focusOnNext:!0}),t.preventDefault()},onArrowUpKey(t){const i=e.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:t,processedItem:i,selfCheck:!0}),t.preventDefault()},onArrowLeftKey(t){if(e.isNotEmpty(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.activeItemPath=this.activeItemPath.filter((e=>e.key!==this.focusedItem.key)):this.focusedItem=e.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,t.preventDefault()}},onArrowRightKey(t){if(e.isNotEmpty(this.focusedItem)){if(this.isItemGroup(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.onArrowDownKey(t):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItem.parentKey)),this.activeItemPath.push(this.focusedItem))}t.preventDefault()}},onHomeKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey(t){if(e.isNotEmpty(this.focusedItem)){const e=x.findSingle(this.$el,`li[id="${this.focusedItemId}"]`),t=e&&x.findSingle(e,".p-menuitem-link");t?t.click():e&&e.click()}t.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onItemToggle(e){const{processedItem:t,expanded:i}=e;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:i}):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==t.parentKey)),i&&this.activeItemPath.push(t)),this.focusedItem=t,x.focus(this.$el)},isElementInPanel(e,t){const i=e.currentTarget.closest(".p-panelmenu-panel");return i&&i.contains(t)},isVisibleItem(e){return!!e&&(0===e.level||this.isItemActive(e))&&this.isItemVisible(e)},isValidItem(e){return!!e&&!this.isItemDisabled(e)},findFirstItem(){return this.visibleItems.find((e=>this.isValidItem(e)))},findLastItem(){return e.findLast(this.visibleItems,(e=>this.isValidItem(e)))},findNextItem(e){const t=this.visibleItems.findIndex((t=>t.key===e.key));return(t<this.visibleItems.length-1?this.visibleItems.slice(t+1).find((e=>this.isValidItem(e))):void 0)||e},findPrevItem(t){const i=this.visibleItems.findIndex((e=>e.key===t.key));return(i>0?e.findLast(this.visibleItems.slice(0,i),(e=>this.isValidItem(e))):void 0)||t},changeFocusedItem(t){const{originalEvent:i,processedItem:n,focusOnNext:s,selfCheck:o,allowHeaderFocus:l=!0}=t;e.isNotEmpty(this.focusedItem)&&this.focusedItem.key!==n.key?(this.focusedItem=n,this.scrollInView()):l&&this.$emit("header-focus",{originalEvent:i,focusOnNext:s,selfCheck:o})},scrollInView(){const e=x.findSingle(this.$el,`li[id="${this.focusedItemId}"]`);e&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"start"})},autoUpdateActiveItemPath(e){this.activeItemPath=Object.entries(e||{}).reduce(((e,[t,i])=>{if(i){const i=this.findProcessedItemByItemKey(t);i&&e.push(i)}return e}),[])},findProcessedItemByItemKey(e,t,i=0){if(!(t=t||0===i&&this.processedItems))return null;for(let n=0;n<t.length;n++){const s=t[n];if(this.getItemProp(s,"key")===e)return s;const o=this.findProcessedItemByItemKey(e,s.items,i+1);if(o)return o}},createProcessedItems(e,t=0,i={},n=""){const s=[];return e&&e.forEach(((e,o)=>{const l=(""!==n?n+"_":"")+o,a={item:e,index:o,level:t,key:l,parent:i,parentKey:n};a.items=this.createProcessedItems(e.items,t+1,a,l),s.push(a)})),s},flatItems(e,t=[]){return e&&e.forEach((e=>{this.isVisibleItem(e)&&(t.push(e),this.flatItems(e.items,t))})),t}},computed:{processedItems(){return this.createProcessedItems(this.items||[])},visibleItems(){return this.flatItems(this.processedItems)},focusedItemId(){return e.isNotEmpty(this.focusedItem)?`${this.panelId}_${this.focusedItem.key}`:null}},components:{PanelMenuSub:P}};T.render=function(e,t,i,n,o,a){const r=s("PanelMenuSub");return l(),u(r,{id:i.panelId+"_list",class:"p-panelmenu-root-list",role:"tree",tabindex:-1,"aria-activedescendant":o.focused?a.focusedItemId:void 0,panelId:i.panelId,focusedItemId:o.focused?a.focusedItemId:void 0,items:a.processedItems,template:i.template,activeItemPath:o.activeItemPath,exact:i.exact,onFocus:a.onFocus,onBlur:a.onBlur,onKeydown:a.onKeyDown,onItemToggle:a.onItemToggle},null,8,["id","aria-activedescendant","panelId","focusedItemId","items","template","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemToggle"])};var N={name:"PanelMenu",emits:["update:expandedKeys","panel-open","panel-close"],props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},data:()=>({activeItem:null}),methods:{getItemProp:(t,i)=>t?e.getItemValue(t[i]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemActive(e){return this.expandedKeys?this.expandedKeys[this.getItemProp(e,"key")]:e===this.activeItem},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},getPanelId(e){return`${this.id}_${e}`},getPanelKey(e){return this.getPanelId(e)},getHeaderId(e){return`${this.getPanelId(e)}_header`},getContentId(e){return`${this.getPanelId(e)}_content`},onHeaderClick(e,i){this.isItemDisabled(i)?e.preventDefault():(i.command&&i.command({originalEvent:e,item:i}),this.changeActiveItem(e,i),t.focus(e.currentTarget))},onHeaderKeyDown(e,t){switch(e.code){case"ArrowDown":this.onHeaderArrowDownKey(e);break;case"ArrowUp":this.onHeaderArrowUpKey(e);break;case"Home":this.onHeaderHomeKey(e);break;case"End":this.onHeaderEndKey(e);break;case"Enter":case"Space":this.onHeaderEnterKey(e,t)}},onHeaderArrowDownKey(e){const i=t.hasClass(e.currentTarget,"p-highlight")?t.findSingle(e.currentTarget.nextElementSibling,".p-panelmenu-root-list"):null;i?t.focus(i):this.updateFocusedHeader({originalEvent:e,focusOnNext:!0}),e.preventDefault()},onHeaderArrowUpKey(e){const i=this.findPrevHeader(e.currentTarget.parentElement)||this.findLastHeader(),n=t.hasClass(i,"p-highlight")?t.findSingle(i.nextElementSibling,".p-panelmenu-root-list"):null;n?t.focus(n):this.updateFocusedHeader({originalEvent:e,focusOnNext:!1}),e.preventDefault()},onHeaderHomeKey(e){this.changeFocusedHeader(e,this.findFirstHeader()),e.preventDefault()},onHeaderEndKey(e){this.changeFocusedHeader(e,this.findLastHeader()),e.preventDefault()},onHeaderEnterKey(e,i){const n=t.findSingle(e.currentTarget,".p-panelmenu-header-action");n?n.click():this.onHeaderClick(e,i),e.preventDefault()},onHeaderActionClick(e,t){t&&t(e)},findNextHeader(e,i=!1){const n=i?e:e.nextElementSibling,s=t.findSingle(n,".p-panelmenu-header");return s?t.hasClass(s,"p-disabled")?this.findNextHeader(s.parentElement):s:null},findPrevHeader(e,i=!1){const n=i?e:e.previousElementSibling,s=t.findSingle(n,".p-panelmenu-header");return s?t.hasClass(s,"p-disabled")?this.findPrevHeader(s.parentElement):s:null},findFirstHeader(){return this.findNextHeader(this.$el.firstElementChild,!0)},findLastHeader(){return this.findPrevHeader(this.$el.lastElementChild,!0)},updateFocusedHeader(e){const{originalEvent:i,focusOnNext:n,selfCheck:s}=e,o=i.currentTarget.closest(".p-panelmenu-panel"),l=s?t.findSingle(o,".p-panelmenu-header"):n?this.findNextHeader(o):this.findPrevHeader(o);l?this.changeFocusedHeader(i,l):n?this.onHeaderHomeKey(i):this.onHeaderEndKey(i)},changeActiveItem(e,t,i=!1){if(!this.isItemDisabled(t)){this.activeItem=i?t:this.activeItem&&this.activeItem===t?null:t;const n=this.isItemActive(t),s=n?"panel-open":"panel-close";this.changeExpandedKeys({item:t,expanded:!n}),this.$emit(s,{originalEvent:e,item:t})}},changeExpandedKeys({item:e,expanded:t=!1}){if(this.expandedKeys){let i={...this.expandedKeys};t?i[e.key]=!0:delete i[e.key],this.$emit("update:expandedKeys",i)}},changeFocusedHeader(e,i){i&&t.focus(i)},getPanelClass(e){return["p-panelmenu-panel",this.getItemProp(e,"class")]},getHeaderClass(e){return["p-panelmenu-header",this.getItemProp(e,"headerClass"),{"p-highlight":this.isItemActive(e),"p-disabled":this.isItemDisabled(e)}]},getHeaderActionClass(e,t){return["p-panelmenu-header-action",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getHeaderIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getHeaderToggleIconClass(e){return["p-submenu-icon",this.isItemActive(e)?"pi pi-chevron-down":"pi pi-chevron-right"]}},computed:{id(){return this.$attrs.id||i()}},components:{PanelMenuList:T}};const L=["id"],D=["id","tabindex","aria-label","aria-expanded","aria-controls","aria-disabled","onClick","onKeydown"],O={class:"p-panelmenu-header-content"},V=["href","onClick"],$={class:"p-menuitem-text"},W=["href"],B={class:"p-menuitem-text"},R=["id","aria-labelledby"],U={key:0,class:"p-panelmenu-content"};!function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===i&&n.firstChild?n.insertBefore(s,n.firstChild):n.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}("\n.p-panelmenu .p-panelmenu-header-action {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n}\n.p-panelmenu .p-panelmenu-header-action:focus {\n z-index: 1;\n}\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.p-panelmenu .p-menuitem-link {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n position: relative;\n overflow: hidden;\n}\n.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n"),N.render=function(e,t,i,n,o,x){const P=s("router-link"),k=s("PanelMenuList");return l(),a("div",{id:x.id,class:"p-panelmenu p-component"},[(l(!0),a(r,null,d(i.model,((t,n)=>(l(),a(r,{key:x.getPanelKey(n)},[x.isItemVisible(t)?(l(),a("div",{key:0,style:c(x.getItemProp(t,"style")),class:m(x.getPanelClass(t))},[p("div",{id:x.getHeaderId(n),class:m(x.getHeaderClass(t)),tabindex:x.isItemDisabled(t)?-1:i.tabindex,role:"button","aria-label":x.getItemLabel(t),"aria-expanded":x.isItemActive(t),"aria-controls":x.getContentId(n),"aria-disabled":x.isItemDisabled(t),onClick:e=>x.onHeaderClick(e,t),onKeydown:e=>x.onHeaderKeyDown(e,t)},[p("div",O,[e.$slots.item?(l(),u(y(e.$slots.item),{key:1,item:t},null,8,["item"])):(l(),a(r,{key:0},[x.getItemProp(t,"to")&&!x.isItemDisabled(t)?(l(),u(P,{key:0,to:x.getItemProp(t,"to"),custom:""},{default:h((({navigate:e,href:i,isActive:n,isExactActive:s})=>[p("a",{href:i,class:m(x.getHeaderActionClass(t,{isActive:n,isExactActive:s})),tabindex:-1,onClick:t=>x.onHeaderActionClick(t,e)},[x.getItemProp(t,"icon")?(l(),a("span",{key:0,class:m(x.getHeaderIconClass(t))},null,2)):f("",!0),p("span",$,I(x.getItemLabel(t)),1)],10,V)])),_:2},1032,["to"])):(l(),a("a",{key:1,href:x.getItemProp(t,"url"),class:m(x.getHeaderActionClass(t)),tabindex:-1},[x.getItemProp(t,"items")?(l(),a("span",{key:0,class:m(x.getHeaderToggleIconClass(t))},null,2)):f("",!0),x.getItemProp(t,"icon")?(l(),a("span",{key:1,class:m(x.getHeaderIconClass(t))},null,2)):f("",!0),p("span",B,I(x.getItemLabel(t)),1)],10,W))],64))])],42,D),b(v,{name:"p-toggleable-content"},{default:h((()=>[g(p("div",{id:x.getContentId(n),class:"p-toggleable-content",role:"region","aria-labelledby":x.getHeaderId(n)},[x.getItemProp(t,"items")?(l(),a("div",U,[b(k,{panelId:x.getPanelId(n),items:x.getItemProp(t,"items"),template:e.$slots.item,expandedKeys:i.expandedKeys,onItemToggle:x.changeExpandedKeys,onHeaderFocus:x.updateFocusedHeader,exact:i.exact},null,8,["panelId","items","template","expandedKeys","onItemToggle","onHeaderFocus","exact"])])):f("",!0)],8,R),[[w,x.isItemActive(t)]])])),_:2},1024)],6)):f("",!0)],64)))),128))],8,L)};export{N as default};
|