UNPKG

@blueking/vxe-table

Version:

一个基于 vue 的 PC 端表格组件,支持增删改查、虚拟树、列拖拽,懒加载、快捷菜单、数据校验、树形结构、打印、导入导出、自定义模板、渲染器、JSON 配置式...

1 lines 3.01 kB
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../../ui"),_utils=require("../../../ui/src/utils"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let getIcon=_ui.VxeUI.getIcon;var _default=exports.default=(0,_vue.defineComponent)({name:"VxeTableMenuPanel",setup(e,t){var n=_xeUtils.default.uniqueId();let c=(0,_vue.inject)("$xeTable",{}),u=c.reactData,s=(0,_vue.ref)(),i={refElem:s};n={xID:n,props:e,context:t,getRefMaps:()=>i};return n.renderVN=()=>{let o=u.ctxMenuStore;var e=c.getComputeMaps().computeMenuOpts,e=e.value;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!1},[(0,_vue.h)("div",{ref:s,class:["vxe-table--context-menu-wrapper",e.className,{"is--visible":o.visible}],style:o.style},o.list.map((e,l)=>e.every(e=>!1===e.visible)?(0,_vue.createCommentVNode)():(0,_vue.h)("ul",{class:"vxe-context-menu--option-wrapper",key:l},e.map((s,i)=>{var e=s.children&&s.children.some(e=>!1!==e.visible),t=Object.assign({},s.prefixConfig),n=Object.assign({},s.suffixConfig);return!1===s.visible?null:(0,_vue.h)("li",{class:[s.className,{"link--disabled":s.disabled,"link--active":s===o.selected}],key:l+"_"+i},[(0,_vue.h)("a",{class:"vxe-context-menu--link",onClick(e){c.ctxMenuLinkEvent(e,s)},onMouseover(e){c.ctxMenuMouseoverEvent(e,s)},onMouseout(e){c.ctxMenuMouseoutEvent(e,s)}},[(0,_vue.h)("div",{class:["vxe-context-menu--link-prefix",t.className||""]},[(0,_vue.h)("i",{class:t.icon||s.prefixIcon}),t.content?(0,_vue.h)("span",{},""+t.content):(0,_vue.createCommentVNode)()]),(0,_vue.h)("div",{class:"vxe-context-menu--link-content"},(0,_utils.getFuncText)(s.name)),(0,_vue.h)("div",{class:["vxe-context-menu--link-suffix",n.className||""]},[(0,_vue.h)("i",{class:n.icon||s.suffixIcon||(e?getIcon().TABLE_MENU_OPTIONS:"")}),n.content?(0,_vue.h)("span",""+n.content):(0,_vue.createCommentVNode)()])]),e?(0,_vue.h)("ul",{class:["vxe-table--context-menu-clild-wrapper",{"is--show":s===o.selected&&o.showChild}]},s.children.map((t,e)=>{var n=Object.assign({},t.prefixConfig),u=Object.assign({},t.suffixConfig);return!1===t.visible?null:(0,_vue.h)("li",{class:[t.className,{"link--disabled":t.disabled,"link--active":t===o.selectChild}],key:l+`_${i}_`+e},[(0,_vue.h)("a",{class:"vxe-context-menu--link",onClick(e){c.ctxMenuLinkEvent(e,t)},onMouseover(e){c.ctxMenuMouseoverEvent(e,s,t)},onMouseout(e){c.ctxMenuMouseoutEvent(e,s)}},[(0,_vue.h)("div",{class:["vxe-context-menu--link-prefix",n.className||""]},[(0,_vue.h)("i",{class:n.icon||t.prefixIcon}),n.content?(0,_vue.h)("span",""+n.content):(0,_vue.createCommentVNode)()]),(0,_vue.h)("div",{class:"vxe-context-menu--link-content"},(0,_utils.getFuncText)(t.name)),(0,_vue.h)("div",{class:["vxe-context-menu--link-suffix",u.className||""]},[(0,_vue.h)("i",{class:u.icon}),u.content?(0,_vue.h)("span",""+u.content):(0,_vue.createCommentVNode)()])])])})):null])}))))])},n},render(){return this.renderVN()}});