UNPKG

primevue

Version:

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![npm version](https://badge.fury.io/js/primevue.svg)](https://badge.fury.io/js/primevue)

2 lines (1 loc) 3.73 kB
import{DomHandler as e}from"primevue/utils";import t from"primevue/ripple";import{resolveComponent as n,resolveDirective as i,openBlock as l,createBlock as s,createVNode as a,Fragment as r,renderList as o,withCtx as d,withDirectives as p,createCommentVNode as m,toDisplayString as c}from"vue";var u={props:{model:{type:Array,default:null}},mounted(){this.updateInkBar()},updated(){this.updateInkBar()},methods:{onItemClick(e,t,n){t.disabled?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),t.to&&n&&n(e))},isActive(e){return this.activeRoute===e.to},getItemClass(e){return["p-tabmenuitem",e.class,{"p-highlight":this.isActive(e),"p-disabled":e.disabled}]},getItemIcon:e=>["p-menuitem-icon",e.icon],visible:e=>"function"==typeof e.visible?e.visible():!1!==e.visible,findActiveTabIndex(){if(this.model)for(let e=0;e<this.model.length;e++)if(this.isActive(this.model[e]))return e;return null},updateInkBar(){let t=this.findActiveTabIndex();if(null!==t){let n=this.$refs.nav.children[t];this.$refs.inkbar.style.width=e.getWidth(n)+"px",this.$refs.inkbar.style.left=e.getOffset(n).left-e.getOffset(this.$refs.nav).left+"px"}else this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px"}},computed:{activeRoute(){return this.$route.path}},directives:{ripple:t}};const f={class:"p-tabmenu p-component"},b={ref:"nav",class:"p-tabmenu-nav p-reset",role:"tablist"},h={class:"p-menuitem-text"},v={class:"p-menuitem-text"},x={ref:"inkbar",class:"p-tabmenu-ink-bar"};!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-tabmenu-nav {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n}\n.p-tabmenu-nav a {\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\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 position: relative;\n text-decoration: none;\n text-decoration: none;\n overflow: hidden;\n}\n.p-tabmenu-nav a:focus {\n z-index: 1;\n}\n.p-tabmenu-nav .p-menuitem-text {\n line-height: 1;\n}\n.p-tabmenu-ink-bar {\n display: none;\n z-index: 1;\n}\n"),u.render=function(e,t,u,k,y,g){const I=n("router-link"),C=i("ripple");return l(),s("div",f,[a("ul",b,[(l(!0),s(r,null,o(u.model,((e,t)=>(l(),s(r,{key:e.label+"_"+t.toString()},[g.visible(e)?(l(),s("li",{key:0,class:g.getItemClass(e),style:e.style,role:"tab","aria-selected":g.isActive(e),"aria-expanded":g.isActive(e)},[e.to&&!e.disabled?(l(),s(I,{key:0,to:e.to,custom:""},{default:d((({navigate:t,href:n})=>[p(a("a",{href:n,class:"p-menuitem-link",onClick:n=>g.onItemClick(n,e,t),role:"presentation"},[e.icon?(l(),s("span",{key:0,class:g.getItemIcon(e)},null,2)):m("",!0),a("span",h,c(e.label),1)],8,["href","onClick"]),[[C]])])),_:2},1032,["to"])):p((l(),s("a",{key:1,href:e.url,class:"p-menuitem-link",target:e.target,onClick:t=>g.onItemClick(t,e),role:"presentation",tabindex:e.disabled?null:"0"},[e.icon?(l(),s("span",{key:0,class:g.getItemIcon(e)},null,2)):m("",!0),a("span",v,c(e.label),1)],8,["href","target","onClick","tabindex"])),[[C]])],14,["aria-selected","aria-expanded"])):m("",!0)],64)))),128)),a("li",x,null,512)],512)])};export default u;